aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib
diff options
context:
space:
mode:
authorAviZi <avi.ziv@amdocs.com>2017-06-09 02:39:56 +0300
committerAviZi <avi.ziv@amdocs.com>2017-06-09 02:39:56 +0300
commit280f8015d06af1f41a3ef12e8300801c7a5e0d54 (patch)
tree9c1d3978c04cd28068f02073038c936bb49ca9e0 /openecomp-be/lib
parentfd3821dad11780d33c5373d74c957c442489945e (diff)
[SDC-29] Amdocs OnBoard 1707 initial commit.
Change-Id: Ie4d12a3f574008b792899b368a0902a8b46b5370 Signed-off-by: AviZi <avi.ziv@amdocs.com>
Diffstat (limited to 'openecomp-be/lib')
-rw-r--r--openecomp-be/lib/openecomp-common-lib/pom.xml29
-rw-r--r--openecomp-be/lib/openecomp-common-lib/pom.xml.versionsBackup44
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCategory.java12
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCode.java13
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCodeAndMessage.java1
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/GeneralErrorBuilder.java8
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/JsonMappingErrorBuilder.java8
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/Messages.java (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/Messages.java)91
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ValidationErrorBuilder.java11
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/CommonUtil.java106
-rw-r--r--openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/SdcCommon.java (renamed from openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/AsdcCommon.java)8
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml39
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml.versionsBackup36
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfig.java1
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfigFactory.java1
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoCassandraImpl.java14
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigImpl.java3
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/type/ConfigurationData.java1
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/additional-logback.xml66
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/logback.xml316
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/test/java/org/openecomp/sdc/applicationconfig/dao/ApplicationConfigImplDaoTest.java37
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml16
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml.versionsBackup35
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/api/AbstractFactory.java2
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/impl/AbstractFactoryBase.java25
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml17
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml.versionsBackup41
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml14
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml.versionsBackup34
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml19
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml.versionsBackup45
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/src/main/java/org/openecomp/core/util/UniqueValueUtil.java41
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml39
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml.versionsBackup46
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/dao/impl/UniqueValueCassandraDaoImpl.java4
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraNoSqlDbFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraSessionFactory.java15
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/util/ConfigurationManager.java8
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/resources/configuration.yaml7
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/nosqldb/NoSqlDbTest.java80
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/Yaml/YamlUtilTest.java30
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java23
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/InnerP.java21
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/Parameter.java21
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/YamlFile.java21
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml13
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml.versionsBackup35
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml40
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml.versionsBackup83
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/CommonMethods.java178
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileContentHandler.java5
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileUtils.java32
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonSchemaDataGenerator.java31
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonUtil.java35
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/yaml/YamlUtil.java77
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonSchemaDataGeneratorTest.java24
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java22
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/pom.xml49
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenAdaptor.java76
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenAdaptorFactory.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/EnrichmentArtifactsServiceFactory.java)10
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenUtil.java40
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/resources/factoryConfiguration.json3
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/pom.xml85
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnector.java51
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnectorFactory.java31
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorFactoryImpl.java39
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorImpl.java200
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/CassandraConnectionInitializer.java59
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ItemElementLoggerTargetServiceName.java27
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ZusammenAdaptorFactoryImpl.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VspQuestionnaireDaoFactoryImpl.java)14
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ZusammenAdaptorImpl.java228
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/resources/factoryConfiguration.json3
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/pom.xml37
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginConstants.java25
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginUtil.java95
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/ElementCollaborationStore.java101
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/VersionCollaborationStore.java79
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepository.java25
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepositoryFactory.java14
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraDaoUtils.java27
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java358
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepositoryFactory.java31
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/types/ElementEntity.java134
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraCollaborationStorePluginImpl.java160
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraStateStorePluginImpl.java58
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/factoryConfiguration.json3
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/zusammen.json23
-rw-r--r--openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/pom.xml24
-rw-r--r--openecomp-be/lib/openecomp-core-lib/pom.xml15
-rw-r--r--openecomp-be/lib/openecomp-core-lib/pom.xml.versionsBackup22
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml33
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml.versionsBackup35
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/api/HealingManager.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Directive.java)24
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/factory/HealingManagerFactory.java34
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/interfaces/Healer.java30
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/types/HealCode.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Scalar.java)21
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/resources/factoryConfiguration.json3
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml33
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml.versionsBackup35
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerFactoryImpl.java35
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerImpl.java91
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/utils/HealingConfiguration.java27
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/utils/HealingUtil.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/InterfaceType.java)7
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/resources/healingConfiguration.json7
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml34
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml.versionsBackup36
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java224
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/FileDataStructureHealer.java116
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/HeatToToscaTranslationHealer.java82
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/SubEntitiesQuestionnaireHealer.java129
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java88
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/pom.xml23
-rw-r--r--openecomp-be/lib/openecomp-healing-lib/pom.xml.versionsBackup23
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/pom.xml27
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/pom.xml.versionsBackup50
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java4
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/manifest/FileData.java20
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Constraint.java16
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailResourceTypes.java69
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailV2ResourceTypes.java60
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplate.java8
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatResourcesTypes.java89
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Parameter.java4
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Resource.java12
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/Artifact.java11
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/HeatStructureTree.java173
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/ErrorCodes.java1
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java27
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatStructureUtil.java178
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/manifest/ManifestUtil.java6
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManager.java47
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerUtil.java186
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/EnvironmentTest.java24
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplateTest.java26
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml51
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml.versionsBackup57
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/BaseFactory.java58
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java107
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerCreationService.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/EnrichmentConstants.java)18
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java207
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/annotations/Debug.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/enrichmentartifacts/EnrichmentArtifactsService.java)15
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/annotations/Metrics.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentArtifactType.java)19
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/ContextPropagationService.java32
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/TaskFactory.java79
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/context/MdcData.java59
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/AuditMessages.java28
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/DebugMessages.java34
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/DebugConstants.java32
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerConstants.java41
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCategory.java30
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCode.java45
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorDescription.java109
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerServiceName.java153
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerTragetServiceName.java186
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/factoryConfiguration.json3
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/logback.xml284
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml45
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml.versionsBackup58
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/Markers.java50
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/SLF4JLoggerCreationService.java240
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/DebugAspect.java70
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/MetricsAspect.java70
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MDCPropagationService.java74
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MdcUtil.java59
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataDebugMessage.java88
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataErrorMessage.java76
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/DispatchingAppender.java148
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java121
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/method/LoggingInvocationHandler.java45
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/servlet/LoggingFilter.java139
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/util/LoggingUtils.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityFilterDefinition.java)18
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.LoggerCreationService1
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.context.ContextPropagationService1
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/pom.xml25
-rw-r--r--openecomp-be/lib/openecomp-logging-lib/pom.xml.versionsBackup24
-rw-r--r--openecomp-be/lib/openecomp-migration-lib/pom.xml192
-rw-r--r--openecomp-be/lib/openecomp-migration-lib/pom.xml.versionsBackup151
-rw-r--r--openecomp-be/lib/openecomp-migration-lib/src/main/assembly/migration-lib-assembly.xml26
-rw-r--r--openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/TestScript.java11
-rw-r--r--openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java247
-rw-r--r--openecomp-be/lib/openecomp-migration-lib/src/main/resources/logback.xml280
-rw-r--r--openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zipbin0 -> 36737135 bytes
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml16
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml.versionsBackup47
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDao.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDaoFactory.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionDao.java18
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/ActionEntity.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/OpenEcompComponentEntity.java (renamed from openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/EcompComponentEntity.java)18
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionErrorConstants.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionException.java21
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionExceptionMapper.java134
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/Action.java18
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionArtifact.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionRequest.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionSubOperation.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/OpenEcompComponent.java (renamed from openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/EcompComponent.java)18
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java39
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml18
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml.versionsBackup30
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoFactoryImpl.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java14
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoFactoryImpl.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java403
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/pom.xml8
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/pom.xml.versionsBackup23
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/pom.xml34
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDao.java31
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDaoFactory.java30
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/type/ActivityLogEntity.java126
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/resources/factoryConfiguration.json3
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/pom.xml29
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoCassandraImpl.java87
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoFactoryImpl.java32
-rw-r--r--openecomp-be/lib/openecomp-sdc-activity-log-lib/pom.xml21
-rw-r--r--openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml22
-rw-r--r--openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml.versionsBackup39
-rw-r--r--openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/configuration/ImplementationConfiguration.java (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidatorConfiguration.java)44
-rw-r--r--openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorLevel.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorMessage.java15
-rw-r--r--openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/model/heat/ForbiddenHeatResourceTypes.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml18
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml.versionsBackup45
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/api/EnrichmentManager.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/factory/EnrichmentManagerFactory.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ArtifactCategory.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/heatextend/PropertyTypeExt.java)34
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ArtifactType.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/InterfaceDefinition.java)10
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerMetric.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerInfo.java)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerMetrics.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentCeilometerInfo.java)12
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentProcessInfo.java26
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/InformationArtifactFolderNames.java28
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml52
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml.versionsBackup94
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/enrichmentartifacts/EnrichmentArtifactsServiceImpl.java61
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImpl.java38
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImplTest.java146
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST.yaml550
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST_01.yaml550
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST.yaml550
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST_01.yaml550
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/logback.xml13
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/ComputeGlobalTypesServiceTemplate.yaml1202
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/OnlyComponentsST.yaml)24
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/PortGlobalTypesServiceTemplate.yaml284
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/input/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/OnlyComponentsST_01.yaml)24
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/AbstractSubstituteGlobalTypesServiceTemplate.yaml)26
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/CinderVolumeGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/CommonGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/CommonGlobalTypesServiceTemplate.yaml)166
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml11
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailComputeGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailComputeGlobalTypesServiceTemplate.yaml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml)42
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailPortGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailPortGlobalTypesServiceTemplate.yaml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml)112
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml)52
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml)18
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NativeTypesServiceTemplateServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NativeTypesServiceTemplateServiceTemplate.yaml)3
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NetworkGlobalTypesServiceTemplate.yaml11
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml)8
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronPortGlobalTypesServiceTemplate.yaml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NovaServerGlobalTypesServiceTemplate.yaml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/PortGlobalTypesServiceTemplate.yaml11
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml82
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml.versionsBackup127
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/EnrichmentInfo.java64
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/factory/EnricherHandlerFactory.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerFactoryImpl.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerImpl.java62
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ExternalArtifactEnricher.java100
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricher.java236
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricher.java144
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/VspInformationArtifactEnricher.java134
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricher.java243
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/CeilometerEnricher.java112
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireData.java123
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ToscaEnricher.java42
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/util/EnrichmentConstants.java12
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/Enricher.java19
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/EnricherHandler.java14
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/ExternalArtifactEnricherInterface.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/SnmpEnricher.java)18
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/resources/ExternalArtifactConfiguration.json5
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricherTest.java167
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricherTest.java128
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricherTest.java162
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/BaseToscaEnrichmentTest.java206
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireDataTest.java115
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml1134
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/PortGlobalTypesServiceTemplate.yaml46
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichComputeCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml1134
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/MainServiceTemplate.yaml479
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/Nested_pd_serverServiceTemplate.yaml378
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/out/MainServiceTemplate.yaml483
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/in/MainServiceTemplate.yaml476
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/out/MainServiceTemplate.yaml478
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/MainServiceTemplate.yaml479
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/Nested_pd_serverServiceTemplate.yaml378
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/out/MainServiceTemplate.yaml481
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichMib/MIB.zipbin0 -> 7029 bytes
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichPortCeilometerOutput/PortGlobalTypesServiceTemplate.yaml46
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichProcess/artifact_1kb.txt2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingComputeGlobalTypeServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml11
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingPortGlobalTypeServiceTemplates/PortGlobalTypesServiceTemplate.yaml11
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml518
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/_index.yml13
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/data.yml762
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/groups.yml22
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/nodes.yml1191
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/_index.yml17
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/capabilities.yml77
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/data.yml475
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/groups.yml61
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml519
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/relationships.yml36
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/_index.yml21
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/artifacts.yml31
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/capabilities.yml232
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/data.yml179
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/groups.yml13
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/interfaces.yml42
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/nodes.yml434
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/policies.yml22
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/relationships.yml90
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/AbstractSubstituteGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/CinderVolumeGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/CommonGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/CommonGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/GlobalSubstitutionTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/GlobalSubstitutionTypesServiceTemplate.yaml)87
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NativeTypesServiceTemplateServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NativeTypesServiceTemplateServiceTemplate.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronNetGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronNetGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronPortGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NovaServerGlobalTypesServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml20
-rw-r--r--openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml.versionsBackup44
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml20
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml.versionsBackup51
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceModelDao.java12
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceTemplateDao.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceArtifactDaoInter.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceModelDao.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceTemplateDaoInter.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceArtifactEntity.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceTemplateEntity.java16
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifact.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifactEntity.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceElement.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplate.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplateEntity.java14
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/resources/factoryConfiguration.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml35
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml.versionsBackup56
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/src/main/java/org/openecomp/sdc/model/impl/AbstractServiceModelDao.java78
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml41
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml.versionsBackup49
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraImpl.java32
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoFactoryImpl.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoImpl.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraImpl.java54
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraImpl.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoFactoryImpl.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoImpl.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraImpl.java53
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ElementType.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/EnrichedServiceModelDaoZusammenImpl.java51
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ServiceModelDaoZusammenImpl.java208
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/StructureElement.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/pom.xml12
-rw-r--r--openecomp-be/lib/openecomp-sdc-model-lib/pom.xml.versionsBackup44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml.versionsBackup70
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/tosca/datatypes/AttToscaPolicyType.java21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImpl.java301
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaMapping.json15
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaTranslator.json13
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-override-heatToToscaTranslator.json36
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java324
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImplTest.java159
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/logback.xml13
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/expectedoutputfiles/MainServiceTemplate.yaml304
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/main.yml144
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/expectedoutputfiles/MainServiceTemplate.yaml292
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/main.yml124
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/expectedoutputfiles/MainServiceTemplate.yaml303
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/main.yml132
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/expectedoutputfiles/MainServiceTemplate.yaml202
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/main.yml111
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/expectedoutputfiles/MainServiceTemplate.yaml610
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/MANIFEST.json28
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.env14
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.yaml318
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.env28
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.yaml299
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/expectedoutputfiles/MainServiceTemplate.yaml292
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/main.yml132
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/expectedoutputfiles/MainServiceTemplate.yaml209
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/main.yml88
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/expectedoutputfiles/MainServiceTemplate.yaml209
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/main.yml96
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/expectedoutputfiles/MainServiceTemplate.yaml209
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/main.yml103
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/expectedoutputfiles/MainServiceTemplate.yaml210
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/main.yml91
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/expectedoutputfiles/MainServiceTemplate.yaml209
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/main.yml90
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml43
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml.versionsBackup68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/api/HeatToToscaTranslator.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/datatypes/TranslatorOutput.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/factory/HeatToToscaTranslatorFactory.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml78
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml.versionsBackup75
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedPropertyVal.java57
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedResourceId.java12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/PropertyRegexMatcher.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/PropertyRegexMatcher.java)16
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/ReferenceType.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/ResourceReferenceType.java)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/TranslationContext.java452
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/ResourceFileDataAndIDs.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/TranslateTo.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/NodeTemplateInformation.java38
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionData.java95
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionEntity.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionMode.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedSubstitutionData.java145
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeConsolidationData.java52
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeTemplateConsolidationData.java88
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ConsolidationData.java109
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/EntityConsolidationData.java245
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileComputeConsolidationData.java56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileNestedConsolidationData.java55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FilePortConsolidationData.java54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/GetAttrFuncData.java62
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedConsolidationData.java50
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedTemplateConsolidationData.java11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java48
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/RequirementAssignmentData.java60
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/TypeComputeConsolidationData.java59
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorFactoryImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorImpl.java27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConfigConstants.java49
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationDataUtil.java621
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationEntityType.java86
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java937
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslation.java38
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslationFactory.java70
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/HeatToToscaUtil.java1297
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/NameExtractor.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Status.java)24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/NameExtractorUtil.java77
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslation.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslationFactory.java103
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationContext.java172
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationService.java185
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedComposition.java37
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionManager.java80
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java2575
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionUtil.java55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/IncorrectResourceReferenceErrorBuilder.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/NotInSyncNumberOfInterfacesErrorBuilder.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/ReferenceToUnsupportedResourceErrorBuilder.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/TranslatorErrorCodes.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/AbstractSubstituteGlobalType.java167
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CinderVolumeGlobalType.java242
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CommonGlobalTypes.java500
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailAbstractSubstituteGlobalType.java196
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailComputeGlobalType.java128
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailNetworkRuleGlobalType.java227
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailPortGlobalType.java107
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2NetworkRuleGlobalType.java274
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualMachineInterfaceGlobalType.java136
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualNetworkGlobalType.java239
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailVirtualNetworkGlobalType.java134
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesGenerator.java93
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesServiceTemplates.java61
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesUtil.java69
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronNetGlobalType.java143
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronPortGlobalType.java203
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronSecurityRulesGlobalType.java175
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NovaServerGlobalType.java307
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelper.java134
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailV2VirtualMachineInterfaceHelper.java184
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/FunctionTranslationHelper.java47
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ResourceTranslationNeutronPortHelper.java202
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/VolumeTranslationHelper.java44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImpl.java76
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/BaseResourceConnection.java174
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaAndPortResourceConnectionHelper.java106
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnection.java200
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationBase.java456
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VmInterfaceImpl.java126
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNestedImpl.java781
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImpl.java119
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnection.java203
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImpl.java491
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImpl.java87
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImpl.java128
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetResourceImpl.java52
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImpl.java49
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorNovaServerImpl.java50
-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/BaseResourceConnection.java338
-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/ContrailPortToNetResourceConnection.java191
-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/ContrailV2VlanToInterfaceResourceConnection.java172
-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/ContrailV2VmInterfaceToNetResourceConnection.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ContrailV2VmInterfaceToNetResourceConnection.java)121
-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/NovaToVolResourceConnection.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaToVolResourceConnection.java)235
-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/PortToNetResourceConnection.java159
-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/ResourceConnectionUsingCapabilityHelper.java210
-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/ResourceConnectionUsingRequirementHelper.java163
-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/ResourceTranslationBase.java354
-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/ResourceTranslationCinderVolumeAttachmentImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeAttachmentImpl.java)102
-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/ResourceTranslationCinderVolumeImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeImpl.java)49
-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/ResourceTranslationContrailAttachPolicyImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailAttachPolicyImpl.java)107
-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/ResourceTranslationContrailNetworkPolicyImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailNetworkPolicyImpl.java)19
-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/ResourceTranslationContrailServiceInstanceImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceInstanceImpl.java)404
-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/ResourceTranslationContrailServiceTemplateImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceTemplateImpl.java)81
-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/ResourceTranslationContrailV2NetworkPolicyImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2NetworkPolicyImpl.java)19
-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/ResourceTranslationContrailV2VirtualNetworkImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VirtualNetworkImpl.java)85
-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/ResourceTranslationContrailV2VlanSubInterfaceImpl.java132
-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/ResourceTranslationContrailV2VmInterfaceImpl.java138
-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/ResourceTranslationContrailVirtualNetworkImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronNetImpl.java)25
-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/ResourceTranslationDefaultImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationDefaultImpl.java)26
-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.java236
-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/ResourceTranslationNeutronNetImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailVirtualNetworkImpl.java)36
-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/ResourceTranslationNeutronPortImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronPortImpl.java)121
-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/ResourceTranslationNeutronSecurityGroupImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSecurityGroupImpl.java)14
-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/ResourceTranslationNeutronSubnetImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSubnetImpl.java)79
-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/ResourceTranslationNovaServerGroupsImpl.java208
-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/ResourceTranslationNovaServerImpl.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerImpl.java)331
-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.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationResourceGroupImpl.java)65
-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/SecurityRulesToPortResourceConnection.java182
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionCatalogInstance.java28
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionNestedSingleCompute.java38
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionScalingInstances.java48
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionSingleSubstitution.java65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverter.java410
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaParameterConverter.java86
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaPropertyConverter.java56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/utils/ResourceWalker.java144
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaMapping.json322
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaTranslator.json35
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-heatToToscaTranslator.json77
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-unifiedModel.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/heatToToscaMapping.json298
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/TestUtils.java576
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/multi/Translate_Heat_Nested_Multi.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumelocal/NestedVolumelocal.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumeseperatefile/NestedVolumeSeperateFile.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/recursive/TranslateHeatNestedRecursiveTest.java25
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/reusenestedfrommultibase/Translate_Heat_Nested_From_Multi_Base.java24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/separatevol/NestedAndSeparateVolTranslationTest.java25
-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.java25
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/outputs/HeatOutputConversionTest.java53
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/parameters/HeatParameterConversionTest.java58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/ContrailNetworkRuleTest.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSContrailVirtualNetworkTest.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNeutronNetTest.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNovaServerTest.java51
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/sharedresource/HeatSharedResourceTest.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java1990
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/GlobalTypesGeneratorTest.java18
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionServiceTest.java1640
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/BuildConsolidationDataTest.java24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataTestUtil.java1095
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataValidationType.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/TestConstants.java56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/hotmog/HotMogTranslationTest.java24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/vmmesmall/VmmeSmallTranslationTest.java25
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelperTest.java149
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ContrailV2VMInterfaceToNetResourceConnectionTest.java46
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/DependsOnResourceBaseTranslationlTest.java15
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/MultipleHeatTranslationTest.java31
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToContrailV2VirtualNetworkResourceConnectionTest.java45
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnectionTest.java38
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeAttachmentImplTest.java52
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeImplTest.java15
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceInstanceImplTest.java72
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceTemplateImplTest.java55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VMInterfaceImplTest.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronPortImplTest.java17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSecurityGroupImplTest.java19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImplTest.java16
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityGroupToNovaResourceConnectionTest.java24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnectionTest.java55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionCatalogInstanceFullTest.java53
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionMixPatternFullTest.java72
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionNestedSingleComputeFullTest.java154
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionScalingInstancesFullTest.java169
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionSingleSubstitutionFullTest.java227
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImplTest.java104
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImplTest.java97
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImplTest.java249
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImplTest.java98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorNovaServerImplTest.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImplTest.java)77
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseFullTranslationTest.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/BaseResourceTranslationTest.java)90
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java366
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VlanToInterfaceResourceConnectionTest.java77
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VmInterfaceToNetResourceConnectionTest.java138
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/DependsOnResourceBaseTranslationlTest.java148
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/MultipleHeatTranslationTest.java52
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/NovaToVolResourceConnectionTest.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaToVolResourceConnectionTest.java)75
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToContrailV2VirtualNetworkResourceConnectionTest.java66
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToNetResourceConnectionTest.java78
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeAttachmentImplTest.java85
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeImplTest.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceInstanceImplTest.java99
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2Test.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2Test.java)24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VlanSubInterfaceImplTest.java62
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VmInterfaceImplTest.java113
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronPortImplTest.java60
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSecurityGroupImplTest.java40
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerGroupsImplTest.java72
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImplTest.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationResourceGroupImplTest.java)41
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityGroupToNovaResourceConnectionTest.java44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityRulesToPortResourceConnectionTest.java109
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverterTest.java68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/logback.xml13
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml826
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/MainServiceTemplate.yaml46
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml249
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml249
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/inputs/MANIFEST.json11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml396
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml218
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1190
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/MainServiceTemplate.yaml71
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nested2levelServiceTemplate.yaml241
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nestedServiceTemplate.yaml464
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/addOn.yml8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/nested.yml7
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml2366
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/MainServiceTemplate.yaml68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested2levelServiceTemplate.yaml454
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested3levelServiceTemplate.yaml241
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nestedServiceTemplate.yaml669
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml264
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml153
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/inputs/MANIFEST.json3
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml264
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/MainServiceTemplate.yaml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml153
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/inputs/MANIFEST.json6
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1285
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/MainServiceTemplate.yaml46
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml500
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml262
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/inputs/MANIFEST.json11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml366
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml192
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/MANIFEST.json19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/mvs.nested.heat.yaml129
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/mvs.vfmodule.heat.yaml166
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml428
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/MainServiceTemplate.yaml38
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/dns_nested_01ServiceTemplate.yaml239
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/inputs/MANIFEST.json64
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml366
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml192
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml396
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml218
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml429
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/MainServiceTemplate.yaml74
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml249
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/MANIFEST.json8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/hot-nimbus-pcm_v0.4.yaml17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml429
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/MainServiceTemplate.yaml64
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml249
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/MANIFEST.json5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/hot-nimbus-pcm_v0.4.yaml16
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/outputs/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/parameters/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_Network_Rule/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_VirtualNetwork/expectedoutputfiles/MainServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Neutron_Net/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Nova_Server/expectedoutputfiles/MainServiceTemplate.yaml98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/expectedoutputfiles/MainServiceTemplate.yaml119
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/inputfiles/MANIFEST.json11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/inputfiles/hot_template.yml49
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/sharedresources/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/MANIFEST.json177
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/cmaui.yml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam.yaml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam_nested.yaml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested1.yaml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested2.yaml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/expectedOutput/MainServiceTemplate.yaml1145
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/MANIFEST.json80
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/cmaui.yml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/eca_oam.yaml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/GlobalSubstitutionTypesServiceTemplate.yaml1254
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/MainServiceTemplate.yaml1045
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/eca_oamServiceTemplate.yaml737
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/MANIFEST.json80
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/cmaui.yml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/eca_oam.yaml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_MultiPolicy_single_net_translation/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_Multi_net_single_policy_translation/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/invalid_policy_resource_type/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/simple/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml416
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml223
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml470
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/MainServiceTemplate.yaml55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/nestedServiceTemplate.yaml339
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/main.yml29
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/nested.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/addOn.yml)19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml4341
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml156
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml967
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml767
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml556
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml332
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/MANIFEST.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/main.yml63
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested1.yml75
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested2.yml80
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested3.yml76
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested4.yml68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1112
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml48
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml423
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/expectedoutputfiles/MainServiceTemplate.yaml)76
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/addOn.yml86
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/main.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml4420
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml176
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml1021
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml767
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml556
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml332
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json37
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/addOn.yml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/base.yml48
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested1.yml86
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested2.yml80
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested3.yml76
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested4.yml68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml202
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml95
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml319
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/main.yml27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/nested.yml169
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1055
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml206
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml381
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml356
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml318
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/MANIFEST.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/main.yml63
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested1.yml133
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested2.yml138
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested3.yml134
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested4.yml126
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml427
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml186
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml471
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/nestedServiceTemplate.yaml)220
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/MANIFEST.json27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/addOn.yml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/main.yml29
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested1.yml254
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested2.yml105
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml393
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/addOn.yml230
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/main.yml28
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles/MainServiceTemplate.yaml55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/inputfiles/hot_template.yml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/expectedoutputfiles/MainServiceTemplate.yaml185
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/inputfiles/hot_template.yml131
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/expectedoutputfiles/MainServiceTemplate.yaml219
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/input.yaml120
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/expectedoutputfiles/MainServiceTemplate.yaml185
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/input.yaml101
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/expectedoutputfiles/MainServiceTemplate.yaml131
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/input.yaml65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/expectedoutputfiles/MainServiceTemplate.yaml195
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/input.yaml105
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/expectedoutputfiles/MainServiceTemplate.yaml194
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/input.yaml104
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/expectedoutputfiles/MainServiceTemplate.yaml127
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/input.yaml69
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/expectedoutputfiles/MainServiceTemplate.yaml194
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/input.yaml104
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml494
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/MANIFEST.json21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.env14
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.yaml93
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/nested-pcm_v0.1.yaml114
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/cinder_volume_translation/expectedoutputfiles/MainServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_flavor_name_diff/MainServiceTemplate.yaml190
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_name_diff/MainServiceTemplate.yaml214
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_allowed_address_pairs/MainServiceTemplate.yaml201
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_fixed_ips/MainServiceTemplate.yaml201
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_mac_address/MainServiceTemplate.yaml204
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/ports_with_none_of_the_properties/MainServiceTemplate.yaml173
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_valid/MainServiceTemplate.yaml190
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_with_same_relations/MainServiceTemplate.yaml237
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations/MainServiceTemplate.yaml254
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/different_port_types/MainServiceTemplate.yaml195
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/more_than_one_port/MainServiceTemplate.yaml193
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_compute_node/MainServiceTemplate.yaml181
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_instance_for_two_types/MainServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_two_similar_one_diff/MainServiceTemplate.yaml223
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_valid/MainServiceTemplate.yaml200
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/valid_pre_condition/MainServiceTemplate.yaml207
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1089
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/MainServiceTemplate.yaml133
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml481
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw3ServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml)163
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml541
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/MANIFEST.json26
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw.yml198
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw2.yml198
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw3.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/OCS-fw.yml)26
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/main.yml)9
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1089
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/MainServiceTemplate.yaml142
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml481
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3ServiceTemplate.yaml331
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml541
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/MANIFEST.json31
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw.yml198
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw2.yml198
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw3.yml173
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/addOn.yml37
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/base.yml37
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml28
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_1ServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml)56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_2ServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml)56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml52
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/lcp1_mss.oam-fw_si_service_instanceServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/service_instanceServiceTemplate.yaml)58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json26
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml4
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml28
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_1ServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml)56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_2ServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml)56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml28
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml40
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/OCS-fw_service_instanceServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/service_instanceServiceTemplate.yaml)56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml154
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml90
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml275
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/listNet/expectedoutputfiles/MainServiceTemplate.yaml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/expectedoutputfiles/MainServiceTemplate.yaml71
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/vmme_vlc.yml47
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/expectedoutputfiles/MainServiceTemplate.yaml71
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/vmme_vlc.yml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/expectedoutputfiles/MainServiceTemplate.yaml83
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/vmme_vlc.yml61
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/expectedoutputfiles/MainServiceTemplate.yaml72
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/vmme_vlc.yml47
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/expectedoutputfiles/MainServiceTemplate.yaml68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/vmme_vlc.yml47
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/expectedoutputfiles/MainServiceTemplate.yaml43
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/inputfiles/hot_template.yml4
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/expectedoutputfiles/MainServiceTemplate.yaml477
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/MANIFEST.json11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/hot_template.yml321
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/expectedoutputfiles/MainServiceTemplate.yaml692
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/MANIFEST.json11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/hot_template.yml546
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.env6
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.yml95
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml1180
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml208
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.env17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml137
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml1204
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml306
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.env6
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.yml102
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml1180
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml214
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/MANIFEST.json19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml384
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-no_vfc_v0.1.yaml137
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-pcm_v0.1.yaml101
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml4527
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml1045
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml430
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml386
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml386
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml372
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml386
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-no_vfc_v0.1ServiceTemplate.yaml675
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-pcm_v0.1ServiceTemplate.yaml391
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/MANIFEST.json23
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml382
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no-nova.yaml40
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no_vfc_v0.1.yaml135
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-pcm_v0.1.yaml98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml4547
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml951
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml413
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml363
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no-novaServiceTemplate.yaml135
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no_vfc_v0.1ServiceTemplate.yaml671
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-pcm_v0.1ServiceTemplate.yaml387
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/MANIFEST.json39
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.env33
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.yml495
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.env50
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.yml336
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.env47
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.yml332
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/MANIFEST.json19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml334
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-no_vfc_v0.1.yaml135
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-pcm_v0.1.yaml98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml4484
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml857
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml413
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml363
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-no_vfc_v0.1ServiceTemplate.yaml671
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-pcm_v0.1ServiceTemplate.yaml387
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/MANIFEST.json19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml787
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-no_vfc_v0.1.yaml137
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-pcm_v0.1.yaml101
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml7251
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml2007
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml312
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml312
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml386
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml369
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml369
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml386
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml295
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml386
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml372
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml378
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml364
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-no_vfc_v0.1ServiceTemplate.yaml675
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-pcm_v0.1ServiceTemplate.yaml391
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/MANIFEST.json25
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml61
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.1.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.2.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml1276
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/MainServiceTemplate.yaml156
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/Nested_computeServiceTemplate.yaml194
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/MANIFEST.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/main.yml78
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested1.yml65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested2.yml70
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested3.yml66
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested4.yml58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/GlobalSubstitutionTypesServiceTemplate.yaml4688
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/MainServiceTemplate.yaml279
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested1ServiceTemplate.yaml1002
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested2ServiceTemplate.yaml796
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested3ServiceTemplate.yaml578
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested4ServiceTemplate.yaml350
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/MANIFEST.json31
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/addOn.yml19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.env17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.yaml173
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-oam_v0.1.yaml96
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-pcm_v0.1.yaml107
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml1302
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/MainServiceTemplate.yaml404
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/Nested_computeServiceTemplate.yaml203
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-oam_v0.1ServiceTemplate.yaml390
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml391
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/MANIFEST.json25
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.env17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml146
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-oam_v0.1.yaml90
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-pcm_v0.1.yaml113
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml1303
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml338
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/Nested_computeServiceTemplate.yaml212
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml379
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml398
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/MANIFEST.json25
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.env17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml152
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-oam_v0.1.yaml90
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1.yaml109
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml1286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml351
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/Nested_computeServiceTemplate.yaml194
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml379
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml392
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/MANIFEST.json21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.env14
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.yaml103
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/nested-pcm_v0.1.yaml101
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml795
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/MainServiceTemplate.yaml243
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/Nested_computeServiceTemplate.yaml203
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/MANIFEST.json21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.env14
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.yaml115
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/nested-pcm_v0.1.yaml112
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/GlobalSubstitutionTypesServiceTemplate.yaml1049
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/MainServiceTemplate.yaml272
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/Nested_computeServiceTemplate.yaml194
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/nested-pcm_v0.1ServiceTemplate.yaml526
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/MANIFEST.json21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.env17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.yaml113
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/nested-pcm_v0.1.yaml124
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/GlobalSubstitutionTypesServiceTemplate.yaml769
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/MainServiceTemplate.yaml252
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/nested-pcm_v0.1ServiceTemplate.yaml546
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/MANIFEST.json29
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.yaml59
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.1.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.2.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.3.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml1468
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/MainServiceTemplate.yaml132
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.3ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/MANIFEST.json25
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.yaml59
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.1.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.2.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/GlobalSubstitutionTypesServiceTemplate.yaml981
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/MainServiceTemplate.yaml132
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.1ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.2ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/MANIFEST.json21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml61
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/nested-pcm_v0.1.yaml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml789
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/MainServiceTemplate.yaml156
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/Nested_computeServiceTemplate.yaml194
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.yml54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml404
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml103
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.yml66
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml420
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml127
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml302
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.env6
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.yml62
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml410
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml125
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.yml54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml392
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml97
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml267
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.yml73
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml410
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml139
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.yml89
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml404
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml162
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.yml61
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml410
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml118
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.yml65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml420
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml122
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml302
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.env8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.yml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml801
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml183
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.env8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.yml94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml813
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml187
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.yml230
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml506
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml480
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.env8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.yml65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml416
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml132
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml295
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml71
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml530
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml162
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml396
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env10
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml81
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml506
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml173
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml71
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml530
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml162
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml396
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env10
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml90
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml506
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml185
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/MANIFEST.json21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.yml237
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/nested-pcm_v0.1.yaml129
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml1030
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml492
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/nested-pcm_v0.1ServiceTemplate.yaml413
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.yml230
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml506
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml480
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml241
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml522
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml499
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml385
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/MANIFEST.json27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.env97
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.yml644
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.env8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.yml54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml4987
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml1346
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml438
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml438
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml351
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml351
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml351
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml351
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml692
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml692
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.yml239
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml517
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml496
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml377
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml235
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml500
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml488
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml351
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env6
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml500
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml117
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml351
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.yml244
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml522
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml504
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml385
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env55
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml241
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml522
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml499
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml385
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.env24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.yml224
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml1256
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml474
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml304
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml312
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml303
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.env20
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.yml137
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml1192
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml308
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.env20
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.yml138
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml1174
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml310
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml263
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml263
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.env20
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.yml142
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml1294
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml321
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.env45
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml203
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml813
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml441
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.env45
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.yml203
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml801
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml437
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml277
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/expectedoutputfiles/MainServiceTemplate.yaml349
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/MANIFEST.json19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/ep-jsa_net.yaml245
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/nimbus-ethernet (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/nimbus-ethernet-gw (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/OnlyComponentsST_01.yaml)370
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/MANIFEST.json19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/ep-jsa_net.yaml256
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/nimbus-ethernet (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/nimbus-ethernet-gw (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/expectedoutputfiles/MainServiceTemplate.yaml634
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/MANIFEST.json19
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/ep-jsa_net.yaml411
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/nimbus-ethernet (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/nimbus-ethernet-gw (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml691
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/MainServiceTemplate.yaml453
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_app_serverServiceTemplate.yaml265
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_db_serverServiceTemplate.yaml289
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/MANIFEST.json38
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.env67
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.yaml284
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.env7
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.yaml77
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_app_server.yaml137
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_db_server.yaml204
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/expectedoutputfiles/MainServiceTemplate.yaml770
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.env71
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.yml592
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles/MainServiceTemplate.yaml854
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-ATTGRP.template.yaml352
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Base.template.yaml382
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-OPENECOMP.template.yaml364
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-PairGroup.template.yaml687
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Port.template.yaml719
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Xlate.template.yaml15
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-XlateL2J.template.yaml50
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/MANIFEST.json52
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.env127
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.yml490
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.env5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.yml54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/expectedoutputfiles/MainServiceTemplate.yaml641
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.env71
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.yml526
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/MainServiceTemplate.yaml196
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/hot_template.yml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/MainServiceTemplate.yaml460
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml407
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml694
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/MANIFEST.json27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_CPM_base_template_nested.yaml98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_IOM_template_nested.yaml153
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.env92
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.yaml213
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/MainServiceTemplate.yaml448
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml407
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml698
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/MANIFEST.json27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_CPM_base_template_nested.yaml98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_IOM_template_nested.yaml153
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.env92
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.yaml209
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-mog-0108-bs1271/expectedoutputfiles/MainServiceTemplate.yaml373
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/inputfiles/MANIFEST.json50
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/GlobalSubstitutionTypesServiceTemplate.yaml2320
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/MainServiceTemplate.yaml98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-oam_v1.0ServiceTemplate.yaml241
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pcm_v1.0ServiceTemplate.yaml249
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-ppd_v1.0ServiceTemplate.yaml521
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pps_v1.0ServiceTemplate.yaml196
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-psm_v1.0ServiceTemplate.yaml194
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/expectedoutputfiles/MainServiceTemplate.yaml58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/inputfiles/hot_template.yml2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles/MainServiceTemplate.yaml40
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/expectedoutputfiles/MainServiceTemplate.yaml621
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles/hot_template.yml403
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/expectedoutputfiles/MainServiceTemplate.yaml509
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/addOn.yml33
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/hot_template.yml328
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/expectedoutputfiles/MainServiceTemplate.yaml)102
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/inputfiles/hot_template.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/inputfiles/hot_template.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml6958
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/MainServiceTemplate.yaml166
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested1ServiceTemplate.yaml1532
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested2ServiceTemplate.yaml1192
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested3ServiceTemplate.yaml846
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested4ServiceTemplate.yaml488
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/MANIFEST.json44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/main.yml39
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested1.yml93
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested2.yml95
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested3.yml91
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested4.yml83
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_a.yml27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_b.yml27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml682
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/MainServiceTemplate.yaml58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml380
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/MANIFEST.json2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/a_vol.yml4
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/main.yml5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/nested.yml10
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multinotconnected/expectedoutputfiles/MainServiceTemplate.yaml86
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml6958
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml154
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml1532
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml1192
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml846
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml488
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/MANIFEST.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/main.yml56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested1.yml93
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested2.yml95
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested3.yml91
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested4.yml83
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml346
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/inputfiles/nested.yml6
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml346
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml41
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/expectedoutputfiles/MainServiceTemplate.yaml)74
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/addOn.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/addOn.yml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/main.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml6958
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml178
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml1532
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml1192
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml846
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml488
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json37
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/addOn.yml46
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/base.yml43
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested1.yml93
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested2.yml95
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested3.yml91
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested4.yml83
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml654
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml368
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml654
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml57
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml368
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumemulticonnection/expectedoutputfiles/MainServiceTemplate.yaml26
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumesharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml20
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml344
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1048
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml50
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml412
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/expectedoutputfiles/MainServiceTemplate.yaml)57
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/addOn.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/addOn.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/main.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml422
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml73
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml280
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/main.yml21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/nested.yml17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml4327
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml143
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml933
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml789
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml574
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml345
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/MANIFEST.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/main.yml58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested1.yml54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested2.yml67
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested3.yml64
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested4.yml56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml1048
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml76
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml412
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/addOn.yml10
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/main.yml14
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/expectedoutputfiles/MainServiceTemplate.yaml)57
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/addOn.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/addOn.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/main.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml4327
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml174
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml933
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml789
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml574
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml345
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json37
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/addOn.yml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/base.yml48
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested1.yml54
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested2.yml67
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested3.yml64
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested4.yml56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml344
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/nestedServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml730
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml46
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/nested1ServiceTemplate.yaml412
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml)128
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn1.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn1.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn2.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn2.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn3.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn3.yml)14
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/main.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml4409
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml272
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml1002
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml796
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml578
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml350
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/MANIFEST.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/main.yml78
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested1.yml65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested2.yml70
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested3.yml66
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested4.yml58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_QRouterCloudConfig (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_QRouterCloudConfig)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_QRouterTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_QRouterTemplate.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBAgentCloudConfig (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBAgentCloudConfig)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBAgentTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBAgentTemplate.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBCloudConfig (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBCloudConfig)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBTemplate.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vProbeCloudConfig (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vProbeCloudConfig)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vProbeTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vProbeTemplate.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEBase_Module.env (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEBase_Module.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEBase_Module.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEBase_Module.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/MANIFEST.json89
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/call_home.py (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/call_home.py)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/check_availability.py (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/check_availability.py)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/qrouterdependencies.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/qrouterdependencies.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/register_status.py (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/register_status.py)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbagentdependencies_with_vLB.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbagentdependencies_with_vLB.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbagentdependencies_without_vLB.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbagentdependencies_without_vLB.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbdependencies.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbdependencies.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vprobedependencies.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vprobedependencies.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/wait_for_resources.py (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/wait_for_resources.py)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_QRouterTemplateServiceTemplate.yaml565
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBAgentTemplateServiceTemplate.yaml690
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBTemplateServiceTemplate.yaml667
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vProbeTemplateServiceTemplate.yaml694
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/GlobalSubstitutionTypesServiceTemplate.yaml2661
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/expectedoutputfiles/MainServiceTemplate.yaml)56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml)105
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/MANIFEST.json)9
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/addOn.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/addOn.yml)10
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/main.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/MANIFEST.json89
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml544
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/MainServiceTemplate.yaml32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml312
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/inputfiles/nested.yml11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml466
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml56
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/nestedServiceTemplate.yaml245
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/inputfiles/addOn.yml5
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml4409
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml299
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml1002
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml796
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml578
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml350
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json37
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/addOn.yml38
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/base.yml68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested1.yml65
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested2.yml70
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested3.yml66
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested4.yml58
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml20
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml20
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml418
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/nestedServiceTemplate.yaml245
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml128
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml343
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml240
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/main.yml187
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/nested.yml159
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml664
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml313
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml244
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml287
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml266
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml238
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/MANIFEST.json32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/main.yml105
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested1.yml125
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested2.yml154
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested3.yml149
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested4.yml141
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/base_perimeta_deployment_create.env307
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/custom.ini22
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml2919
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/MainServiceTemplate.yaml737
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swServiceTemplate.yaml902
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_aServiceTemplate.yaml613
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_bServiceTemplate.yaml604
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmuServiceTemplate.yaml1076
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_aServiceTemplate.yaml719
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_bServiceTemplate.yaml710
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/vlan_subinterface_dualServiceTemplate.yaml156
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/MANIFEST.json94
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/base_perimeta_deployment_create.yaml442
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_a_healing.yaml384
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_b_healing.yaml384
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_rebuild.yaml384
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_a_healing.yaml381
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_b_healing.yaml381
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_rebuild_scaling.yaml381
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/msc_a_template.json33
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw.yaml480
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_a.yaml332
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_b.yaml327
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu.yaml561
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_a.yaml381
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_b.yaml376
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/ssc_a_template.json34
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/vlan_subinterface_dual.yaml98
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/in/MainServiceTemplate.yaml333
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/out/MainServiceTemplate.yaml259
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/mockAbstractNodeTemplate.yaml63
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/in/MainServiceTemplate.yaml253
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/out/MainServiceTemplate.yaml241
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/in/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/VariouseST.yaml)243
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml658
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml456
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/in/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/OnlyComponentsST.yaml)160
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml298
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/SubstitutionServiceTemplate.yaml196
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/in/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/VariouseST.yaml)231
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml568
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml391
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/in/MainServiceTemplate.yaml287
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml519
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml391
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/in/MainServiceTemplate.yaml431
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml604
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml448
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/in/MainServiceTemplate.yaml288
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml513
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml390
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/in/MainServiceTemplate.yaml401
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml580
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml423
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/in/MainServiceTemplate.yaml187
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml228
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/in/MainServiceTemplate.yaml164
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml201
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/in/MainServiceTemplate.yaml250
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml299
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/in/MainServiceTemplate.yaml204
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/out/MainServiceTemplate.yaml204
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/mockComputeNodeTemplate.yaml9
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/in/MainServiceTemplate.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/out/MainServiceTemplate.yaml196
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/in/MainServiceTemplate.yaml240
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml294
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/GlobalSubstitutionTypesServiceTemplate.yaml494
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/MainServiceTemplate.yaml191
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/nested-pcm_v0.1ServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml494
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/MainServiceTemplate.yaml191
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml494
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/MainServiceTemplate.yaml229
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml494
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml229
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml494
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/MainServiceTemplate.yaml240
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml494
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml240
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/GlobalSubstitutionTypesServiceTemplate.yaml331
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/MainServiceTemplate.yaml168
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/nested-pcm_v0.1ServiceTemplate.yaml233
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/GlobalSubstitutionTypesServiceTemplate.yaml331
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/MainServiceTemplate.yaml168
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/nested-pcm_v0.1ServiceTemplate.yaml233
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/GlobalSubstitutionTypesServiceTemplate.yaml439
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/MainServiceTemplate.yaml318
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-oam_v0.1ServiceTemplate.yaml227
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-pcm_v0.1ServiceTemplate.yaml228
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml439
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/MainServiceTemplate.yaml318
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-oam_v0.1ServiceTemplate.yaml227
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml228
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/in/MainServiceTemplate.yaml260
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml320
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/in/MainServiceTemplate.yaml126
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/out/MainServiceTemplate.yaml167
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/in/MainServiceTemplate.yaml268
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml322
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/in/MainServiceTemplate.yaml103
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/out/MainServiceTemplate.yaml130
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/in/MainServiceTemplate.yaml250
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml312
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/in/MainServiceTemplate.yaml182
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml236
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/in/MainServiceTemplate.yaml324
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/out/MainServiceTemplate.yaml366
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml220
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml261
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/in/MainServiceTemplate.yaml333
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/out/MainServiceTemplate.yaml366
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml264
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml297
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/in/MainServiceTemplate.yaml290
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml360
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/in/MainServiceTemplate.yaml202
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml264
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vmme_small/expectedoutputfiles/MainServiceTemplate.yaml270
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/MANIFEST.json)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/a_vol.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/a_vol.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/main.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/main.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/nested.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/nested.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/GlobalSubstitutionTypesServiceTemplate.yaml457
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/MainServiceTemplate.yaml)32
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/nestedServiceTemplate.yaml378
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/expectedoutputfiles/MainServiceTemplate.yaml)42
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles/MANIFEST.json11
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles/hot_template.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/inputfiles/hot_template.yml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles/MainServiceTemplate.yaml)44
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/MANIFEST.json)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/a_vol.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/a_vol.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/hot_template.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/hot_template.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/expectedoutputfiles/MainServiceTemplate.yaml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/expectedoutputfiles/MainServiceTemplate.yaml)42
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/a_vol.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/a_vol.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/hot_template.yml (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/hot_template.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/testManifestFormat.json20
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/vmme_small_create_fsb/MANIFEST.json8
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml66
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml.versionsBackup68
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml45
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml.versionsBackup45
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml.versionsBackup26
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml92
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml.versionsBackup92
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttHeatResourceTypes.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/GroupDefinition.java)45
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerErrorDescription.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerTargetServiceName.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttValetGroupTypeValues.java (renamed from openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/GroupTypeValues.java)14
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidator.java60
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/messages/Messages.java20
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/resources/config-merge-validaton.json18
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidatorTest.java61
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/first.yaml22
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/first.yaml17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml29
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml.versionsBackup49
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/api/ValidationManager.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/ErrorMessagesFormatBuilder.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/factory/ValidationManagerFactory.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/FileValidationContext.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/GlobalValidationContext.java48
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainer.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/util/MessageContainerUtil.java (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainerUtil.java)11
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/resources/validationConfiguration.json24
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml93
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml.versionsBackup110
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/impl/ValidationManagerImpl.java32
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/services/ValidationFactory.java58
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationConfigurationManager.java74
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationManagerUtil.java65
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-mandatory-validaton.json20
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-validaton.json87
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/test/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerTest.java31
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml64
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml.versionsBackup103
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/HeatValidationService.java328
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/ResourceValidationHeatValidator.java617
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/YamlValidatorUtil.java52
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ContrailValidator.java201
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/EcompGuideLineValidator.java784
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidator.java125
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidator.java341
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatValidator.java296
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ManifestValidator.java82
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/NamingConventionGuideLineValidator.java29
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidator.java199
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidator.java92
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidator.java94
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidator.java166
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidator.java67
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidator.java128
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidator.java118
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidator.java136
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidator.java81
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidator.java209
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java177
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java596
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/tos/ContrailResourcesMappingTo.java118
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/type/ValidatorConstants.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ContrailValidatorTest.java99
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ErrorMessagesTest.java25
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidatorTest.java55
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/HeatValidatorTest.java230
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ManifestValidatorTest.java142
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java155
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ValidatorBaseTest.java84
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/YamlValidatorTest.java (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/YamlValidatorTest.java)62
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidatorTest.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidatorTest.java70
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidatorTest.java35
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidatorTest.java53
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidatorTest.java51
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidatorTest.java53
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidatorTest.java106
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidatorTest.java41
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidatorTest.java58
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java64
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java154
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompGuideLineValidatorTest.java281
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompNamingConventionTest.java104
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/HeatValidatorTest.java356
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/ManifestValidatorTest.java125
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/configuration/mock_resource_validator_configuration.json13
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/MANIFEST.json26
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.env59
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.yaml143
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/nested_virc.yaml207
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/user_data.sh285
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/MANIFEST.json26
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.env59
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.yaml188
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/nested_virc.yaml207
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/user_data.sh292
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/first.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.yaml)6
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.yaml)4
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.yaml)4
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.yaml)17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/first.yaml)19
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/first.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/first.yaml)12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/MANIFEST.json27
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/second.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/second.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/MANIFEST.json27
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/illegalTypeFile.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/first.yaml45
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/first.yaml45
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/first.yaml17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/first.yaml17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/first.yaml17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/single.env.illegalSuffix)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/first.yaml14
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/firstVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/second.yaml14
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/single.yaml.illegalSuffix)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/singleVol.yaml.illegalSuffix)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/firstVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/single.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/second.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/single.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/MANIFEST.json27
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/singleVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/first.yaml61
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/firstVol.yaml19
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/second.yaml14
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.yaml)8
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.yaml)24
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/first.yaml22
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/second.yaml19
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/MANIFEST.json17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/first.yaml14
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/second.yaml15
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/first.yaml19
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/first.yaml18
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/MANIFEST.json12
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/first.yaml15
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/env_empty_value.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/env_empty_value.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/env_empty_value.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/env_empty_value.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/invalid_heat_format/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/invalid_heat_format/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/invalid_heat_format/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/invalid_heat_format/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.env10
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.yaml52
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/nested-pps_v1.0.yaml86
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-points-to-hot-nimbus-psm.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-points-to-hot-nimbus-psm.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/yaml-point-to-itself.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/yaml-point-to-itself.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/MANIFEST.json21
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/pseudo_parameters/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/pseudo_parameters/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/pseudo_parameters/input/pseudo_parameters.yml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/pseudo_parameters/input/pseudo_parameters.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/artifact.sh (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/artifact.sh)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/cloud-nimbus.sh (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/cloud-nimbus.sh)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nimbus-ethernet (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nimbus-ethernet)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/hot-nimbus-psm_v1.0.yaml138
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/yamlFile.yaml56
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/MANIFEST.json11
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/yamlFile.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/yamlFile.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-from-resources-group.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-from-resources-group.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-from-resources-group.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-from-resources-group.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/baseFile.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/baseFile.yaml)5
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/notBaseFile.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/notBaseFile.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.yaml)2
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-pps_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-pps_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/first.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/extraFile.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/first.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/first.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/second.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/single.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/illegalTypeFile.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/single.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/single.env.illegalSuffix (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/singleVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/single.yaml.illegalSuffix (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/extraFile.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/singleVol.yaml.illegalSuffix (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/single.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/single.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/single.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/singleVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/singleVol.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/extraFile.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/single.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/single.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/single.env)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/single.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/single.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/singleVol.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/emptyYaml.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/extraFile.env (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_empty.yml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.env0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.yaml0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.env0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.yaml0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.env0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.yaml0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/singleVol.yaml0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/duplicateKey.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/duplicateKey.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/emptyYaml.yaml0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalidTabYamlStructure.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalidTabYamlStructure.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalidYamlStructure.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalidYamlStructure.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/heat_missing_from_manifast.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/heat_missing_from_manifast.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/mainValid.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/mainValid.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/validHeat.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/validHeat.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/expected_output/expected_output.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/expected_output/expected_output.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/heat_missing_from_manifast.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/heat_missing_from_manifast.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_additionalSpaceBeforeProperty.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_additionalSpaceBeforeProperty.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_duplicateKey.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_duplicateKey.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_empty.yml0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_yamlInXMLFormat.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_yamlInXMLFormat.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/validHeat.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/validHeat.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/MANIFEST.json (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/MANIFEST.json)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/heat_missing_from_manifast.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/heat_missing_from_manifast.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/mainValid.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/mainValid.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml)0
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml45
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml.versionsBackup42
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ResourceValidator.java15
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ValidationContext.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/Validator.java (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/interfaces/Validator.java)14
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/base/ResourceBaseValidator.java159
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/ConfigConstants.java17
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/HeatResourceValidationContext.java44
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/NamingConventionValidationContext.java28
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationTestUtil.java192
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationUtil.java277
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml33
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml.versionsBackup24
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml19
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml.versionsBackup55
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/VendorLicenseConstants.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/EntitlementPoolDao.java11
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDao.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDaoFactory.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseAgreementDao.java18
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDao.java14
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDaoFactory.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/VendorLicenseModelDao.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/AggregationFunction.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java27
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementMetric.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementPoolEntity.java93
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementTime.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupEntity.java53
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupModel.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseAgreementEntity.java32
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyGroupEntity.java75
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyType.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseTerm.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/MultiChoiceOrOther.java28
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/OperationalScope.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/VendorLicenseModelEntity.java21
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/SubmitUncompletedLicenseModelErrorBuilder.java37
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/UncompletedVendorLicenseModelErrorType.java28
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/VendorLicenseErrorCodes.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/facade/VendorLicenseFacade.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml24
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml.versionsBackup53
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolCassandraDaoImpl.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupCassandraDaoImpl.java43
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementCassandraDaoImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupCassandraDaoImpl.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupDaoFactoryImpl.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelCassandraDaoImpl.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementPropertyName.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementType.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/EntitlementPoolZusammenDaoImpl.java291
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/FeatureGroupDaoZusammenImpl.java326
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseAgreementDaoZusammenImpl.java249
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseKeyGroupZusammenDaoImpl.java243
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/RelationType.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/StructureElement.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VendorLicenseModelDaoZusammenImpl.java138
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VlmZusammenUtil.java68
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/facade/impl/VendorLicenseFacadeImpl.java291
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/healing/impl/SimpleHealingServiceImpl.java28
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/VendorLicenseArtifactsServiceImpl.java174
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/VnfLicenseArtifact.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/XmlArtifact.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVendorLicenseArtifact.java20
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVnfArtifact.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinFeatureGroupModel.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVendorLicenseArtifact.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVnfArtifact.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/util/VendorLicenseArtifactsServiceUtils.java132
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/util/VersionableEntitySortByVlmMajorVersion.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentArtifactDaoFactoryImpl.java)19
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml12
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml.versionsBackup23
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml31
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml.versionsBackup67
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/VendorSoftwareProductConstants.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDao.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDao.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDaoFactory.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/MibDao.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentArtifactDao.java)17
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/MibDaoFactory.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessArtifactDaoFactory.java)8
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NetworkDao.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NicDao.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDao.java40
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDaoFactory.java32
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateDao.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateDaoFactory.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentArtifactDaoFactory.java)8
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/PackageInfoDao.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessDao.java29
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDao.java88
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDaoFactory.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductInfoDao.java12
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/Action.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentDependencyModelEntity.java155
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentEntity.java74
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/MibEntity.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentArtifactEntity.java)43
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NetworkEntity.java67
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NicEntity.java86
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/OrchestrationTemplateCandidateData.java34
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/OrchestrationTemplateCandidateDataEntity.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessArtifactEntity.java)106
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/PackageInfo.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessEntity.java83
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessType.java27
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/TranslatedFileData.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadData.java90
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadDataEntity.java13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspDetails.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspQuestionnaireEntity.java32
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/errors/utils/ErrorsUtil.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeFilter.java)39
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CandidateServiceFactory.java35
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionDataExtractorFactory.java33
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionEntityDataManagerFactory.java33
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/InformationArtifactGeneratorFactory.java33
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/ManifestCreatorFactory.java35
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnnaireDataServiceFactory.java34
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/InformationArtifactData.java83
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/InformationArtifactGenerator.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessArtifactDao.java)17
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/questionnaire/QuestionnaireDataService.java33
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/HeatFileAnalyzer.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Metadata.java)40
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionDataExtractor.java31
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionEntityDataManager.java77
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/CandidateService.java75
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/ManifestCreator.java38
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/HeatFileAnalyzerRowDataImpl.java152
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGenerator.java64
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGeneratorConfig.java154
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateEntityBuilder.java107
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/CandidateDataEntityTo.java90
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/AnalyzedZipHeatFiles.java84
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/Constants.java27
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/FilesDataStructure.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PolicyDefinition.java)46
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/Module.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ArtifactDefinition.java)64
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ComponentData.java29
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityId.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityType.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityValidationData.java132
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ExtractCompositionDataContext.java134
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Network.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Nic.java26
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/ComponentQuestionnaire.java79
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/Compute.java54
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/GuestOS.java54
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/NumOfVMs.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/VmSizing.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/General.java72
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Hypervisor.java54
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Image.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Recovery.java54
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/highAvailability/HighAvailabilityAndLoadBalancing.java100
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/Network.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/NetworkCapacity.java45
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/Backup.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/LogBackup.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/SnapshotBackup.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/Storage.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentInfo.java)57
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/AcceptableJitter.java54
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/IpConfiguration.java45
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Network.java44
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/NicQuestionnaire.java63
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PacketsAndBytes.java45
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PeakAndAvg.java45
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Protocols.java58
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Sizing.java81
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/VspQuestionnaire.java39
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/Availability.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/General.java64
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/RegionsData.java48
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/StorageDataReplication.java72
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/ComponentCompositionSchemaInput.java (renamed from openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationConfiguration.java)27
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/ComponentQuestionnaireSchemaInput.java (renamed from openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/NameExtractorService.java)23
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/NetworkCompositionSchemaInput.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityAssignment.java)27
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/NicCompositionSchemaInput.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/heatextend/ParameterDefinitionExt.java)38
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/SchemaTemplateContext.java26
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/SchemaTemplateInput.java (renamed from openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Template.java)5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/resources/factoryConfiguration.json15
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml114
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml.versionsBackup108
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductCreationFailedBuilder.java28
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductNotFoundErrorBuilder.java47
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentArtifactDaoCassandraImpl.java159
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoCassandraImpl.java48
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoCassandraImpl.java87
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoFactoryImpl.java18
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/MibDaoFactoryImpl.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/UploadDataDaoFactoryImpl.java)13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoCassandraImpl.java26
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoCassandraImpl.java36
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateCandidateDaoFactoryImpl.java38
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateDaoFactoryImpl.java39
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/PackageInfoDaoImpl.java23
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessArtifactDaoCassandraImpl.java82
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoCassandraImpl.java139
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoFactoryImpl.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/UploadDataDaoImpl.java92
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoFactoryImpl.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoImpl.java282
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoFactoryImpl.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoImpl.java33
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VspQuestionnaireDaoCassandraImpl.java72
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDaoZusammenImpl.java244
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDependencyModelDaoZusammenImpl.java201
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementPropertyName.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementType.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/MibDaoZusammenImpl.java171
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NetworkDaoZusammenImpl.java150
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NicDaoZusammenImpl.java257
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateCandidateDaoZusammenImpl.java134
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateDaoZusammenImpl.java111
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ProcessDaoZusammenImpl.java229
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/StructureElement.java20
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VendorSoftwareProductInfoDaoZusammenImpl.java228
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VspZusammenUtil.java61
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/errors/VendorSoftwareProductErrorCodes.java62
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/InformationArtifactGeneratorFactoryImpl.java (renamed from openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessArtifactDaoFactoryImpl.java)15
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnaireDataServiceFactoryImpl.java35
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CandidateServiceFactoryImpl.java37
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionDataExtractorFactoryImpl.java33
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionEntityDataManagerFactoryImpl.java41
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/ManifestCreatorFactoryImpl.java (renamed from openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/EnrichmentArtifactsServiceFactoryImpl.java)18
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactConstants.java105
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImpl.java304
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/quiestionnaire/QuestionnaireDataServiceImpl.java113
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java470
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionEntityDataManagerImpl.java585
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/CandidateServiceImpl.java621
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/ManifestCreatorNamingConventionImpl.java309
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateServiceValidator.java97
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ServiceModelDaoFactoryTest.java226
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImplTest.java252
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/resources/logback.xml13
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml14
-rw-r--r--openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml.versionsBackup22
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml27
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml.versionsBackup75
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/VersioningUtil.java37
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionInfoDeletedDao.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDao.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDaoFactory.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java29
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionStatus.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionType.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckinOnEntityLockedByOtherErrorBuilder.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckoutOnLockedEntityErrorBuilder.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EditOnUnlockedEntityErrorBuilder.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EntityAlreadyFinalizedErrorBuilder.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/RequestedVersionInvalidErrorBuilder.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/SubmitLockedEntityNotAllowedErrorBuilder.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnEntityLockedByOtherErrorBuilder.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnUnlockedEntityErrorBuilder.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityAction.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityMetadata.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityStoreType.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/resources/factoryConfiguration.json3
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml38
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml.versionsBackup54
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionHistoryCassandraDaoImpl.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDaoImpl.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDeletedDaoImpl.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoCassandraImpl.java34
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoFactoryImpl.java21
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoZusammenImpl.java55
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerFactoryImpl.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerImpl.java216
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/VersioningManagerTest.java364
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/impl/VersioningManagerImplTest.java558
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/resources/logback.xml15
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml14
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml.versionsBackup24
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/pom.xml71
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/pom.xml.versionsBackup87
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaArtifactType.java18
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaCapabilityType.java56
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaDataType.java129
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaElementTypes.java9
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaGroupType.java21
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaNodeType.java179
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaPolicyType.java27
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaRelationshipType.java31
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaServiceModel.java31
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaTopologyTemplateElements.java10
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ArtifactType.java83
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/AttributeDefinition.java85
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinition.java113
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityType.java82
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Constraint.java181
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/DataType.java73
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/EntrySchema.java65
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/GroupType.java82
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Import.java61
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeTemplate.java127
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeType.java125
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Old1610ServiceTemplate.java152
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ParameterDefinition.java99
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PolicyType.java73
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyDefinition.java112
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyType.java117
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipTemplate.java99
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipType.java93
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementAssignment.java70
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinition.java82
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ServiceTemplate.java144
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/SubstitutionMapping.java54
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/TopologyTemplate.java114
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidAddActionNullEntityErrorBuilder.java15
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidRequirementAssignmentErrorBuilder.java13
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaInvalidSubstituteNodeTemplateErrorBuilder.java4
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaMissingSubstitutionMappingForReqCapErrorBuilder.java11
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaNodeTypeNotFoundErrorBuilder.java8
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarCreationErrorBuilder.java5
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarMissingEntryPointErrorBuilder.java7
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ConfigConstants.java49
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java871
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaAnalyzerService.java13
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java16
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaNativeTypesServiceTemplate.java309
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java106
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImpl.java529
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImpl.java37
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/yamlutil/ToscaExtensionYamlUtil.java17
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/resources/config.properties17
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/TestUtil.java26
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/PropertyTypeTest.java24
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java47
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinitionTest.java32
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinitionTest.java28
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/DataModelUtilTest.java28
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java160
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImplTest.java64
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/NestedServiceTemplateReqTest.yaml20
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/ServiceTemplateSubstituteTest.yaml18
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/MainServiceTemplate.yaml18
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/nestedServiceTemplate.yaml20
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml18
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplate.yaml4
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplateHeatExtend.yaml8
-rw-r--r--openecomp-be/lib/pom.xml15
-rw-r--r--openecomp-be/lib/pom.xml.versionsBackup33
2706 files changed, 437891 insertions, 29639 deletions
diff --git a/openecomp-be/lib/openecomp-common-lib/pom.xml b/openecomp-be/lib/openecomp-common-lib/pom.xml
index a5f1987708..06e8152af7 100644
--- a/openecomp-be/lib/openecomp-common-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-common-lib/pom.xml
@@ -2,45 +2,38 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-common-lib</name>
+ <artifactId>openecomp-common-lib</artifactId>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <artifactId>openecomp-common-lib</artifactId>
-
- <name>openecomp-common-lib</name>
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>${project.version}</version>
</dependency>
-
<dependency>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-datatypes-lib</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>${project.version}</version>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
- <version>${ws.rs.version}</version>
+ <version>2.1-m05</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
+ <version>${logback.version}</version>
</dependency>
</dependencies>
-
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-common-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-common-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..e2333b5ae3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-common-lib/pom.xml.versionsBackup
@@ -0,0 +1,44 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-common-lib</name>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.ws.rs</groupId>
+ <artifactId>javax.ws.rs-api</artifactId>
+ <version>2.0-m10</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+ <artifactId>openecomp-common-lib</artifactId>
+
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCategory.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCategory.java
index d24ee62124..00f8d74fb7 100644
--- a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCategory.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCategory.java
@@ -44,21 +44,21 @@ public enum ErrorCategory {
VALIDATION,
/**
- * Problems caused by attempt of a user to perform certain operations which contradict the
- * system rules. Mostly applicable to UI-driven flows in presentation tier.
+ * Problems caused by attempt of a user to perform certain operations which contradict the system
+ * rules. Mostly applicable to UI-driven flows in presentation tier.
*/
USER,
/**
* Improper values set in the system configuration (negative numbers, missing or inconsistent
* definitions, mismatch with valid values list etc).
- * */
+ */
CONFIGURATION,
/**
- * Security constraint violations (failed login attempts, lack of permissions to perform
- * operation and so on). Any problems related to authentication/authorization should use the
- * special category for system auditing purposes.
+ * Security constraint violations (failed login attempts, lack of permissions to perform operation
+ * and so on). Any problems related to authentication/authorization should use the special
+ * category for system auditing purposes.
*/
SECURITY
}
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCode.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCode.java
index aa0b123d4a..6a9990dcf1 100644
--- a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCode.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCode.java
@@ -32,6 +32,14 @@ public class ErrorCode implements Serializable {
protected ErrorCode() {
}
+ /*
+ For backward compatibility only - will be removed soon
+ */
+
+ @Override
+ public String toString() {
+ return message;
+ }
public String id() {
return id;
@@ -60,11 +68,6 @@ public class ErrorCode implements Serializable {
this.category = category;
}
- @Override
- public String toString() {
- return message;
- }
-
public static class ErrorCodeBuilder {
private String id;
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCodeAndMessage.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCodeAndMessage.java
index 672397f53c..58f073935a 100644
--- a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCodeAndMessage.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ErrorCodeAndMessage.java
@@ -26,7 +26,6 @@ import javax.ws.rs.core.Response;
/**
* This class represents an error object to be returned in failed REST instead of just returning one
* of HTTP fail statuses.
- *
*/
public class ErrorCodeAndMessage {
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/GeneralErrorBuilder.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/GeneralErrorBuilder.java
index 155d020396..7ded61e2dc 100644
--- a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/GeneralErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/GeneralErrorBuilder.java
@@ -20,9 +20,6 @@
package org.openecomp.sdc.common.errors;
-/**
- * The type General error builder.
- */
public class GeneralErrorBuilder {
private static final String GENERAL_ERROR_REST_ID = "GENERAL_ERROR_REST_ID";
@@ -41,11 +38,6 @@ public class GeneralErrorBuilder {
builder.withMessage(String.format(GENERAL_ERROR_REST_MSG, detailedError));
}
- /**
- * Build error code.
- *
- * @return the error code
- */
public ErrorCode build() {
return builder.build();
}
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/JsonMappingErrorBuilder.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/JsonMappingErrorBuilder.java
index 2a916dbf90..8c5b1cd2ad 100644
--- a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/JsonMappingErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/JsonMappingErrorBuilder.java
@@ -20,9 +20,6 @@
package org.openecomp.sdc.common.errors;
-/**
- * The type Json mapping error builder.
- */
public class JsonMappingErrorBuilder {
private static final String JSON_MAPPING_ERROR_ERR_ID = "JSON_MAPPING_ERROR_ERR_ID";
@@ -41,11 +38,6 @@ public class JsonMappingErrorBuilder {
builder.withMessage(String.format(JSON_MAPPING_ERROR_ERR_ERR_MSG));
}
- /**
- * Build error code.
- *
- * @return the error code
- */
public ErrorCode build() {
return builder.build();
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/Messages.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/Messages.java
index bca4e820a9..0be6a55df6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/Messages.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/Messages.java
@@ -18,16 +18,34 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.core.validation.errors;
+package org.openecomp.sdc.common.errors;
+
public enum Messages {
+ CANT_LOAD_CLASS("Can't load class %s. Error: %s"),
+
+ VERSION_UPGRADE("Item %s is of old version. A check out was made in order to get new " +
+ "functionalities"),
+
INVALID_ZIP_FILE("Invalid zip file"),
- /* upload errors */
+ FAILED_TO_TRANSLATE_ZIP_FILE("Failed to translate zip file"),
+ ZIP_NOT_EXIST("Zip file doesn't exist"),
- //NO_ZIP_UPLOADED("No zip file was uploaded or zip file doesn't exist"),
ZIP_SHOULD_NOT_CONTAIN_FOLDERS("Zip file should not contain folders"),
MANIFEST_NOT_EXIST("Manifest doesn't exist"),
+ FILE_TYPE_NOT_LEGAL("File type not legal as data for other file"),
+ MODULE_IN_MANIFEST_NO_YAML("Module '%s', has no yaml file reference"),
+ NO_MODULES_IN_MANIFEST("At least on Base/Module must be defined \n"),
+ MODULE_IN_MANIFEST_VOL_ENV_NO_VOL("Module '%s', has volume Env. reference with no Volume " +
+ "reference"),
+ ILLEGAL_MANIFEST("Illegal Manifest"),
NO_ZIP_FILE_WAS_UPLOADED_OR_ZIP_NOT_EXIST("no zip file was uploaded or zip file doesn't exist"),
+ MAPPING_OBJECTS_FAILURE("Failed to map object %s to %s. Exception message: %s"),
+ MORE_THEN_ONE_VOL_FOR_HEAT("heat contains more then one vol. selecting only first vol"),
+ ZIP_CONTENT_MAP("failed to load zip content"),
+ CREATE_MANIFEST_FROM_ZIP("cannot create manifest from the attached zip file"),
+ CANDIDATE_PROCESS_FAILED("Candidate zip file process failed"),
+ FOUND_UNASSIGNED_FILES("cannot process zip since it has unassigned files"),
/* manifest errors*/
@@ -49,59 +67,71 @@ public enum Messages {
GENERAL_YAML_PARSER_ERROR("general parser error"),
GENERAL_HEAT_PARSER_ERROR("general parser error"),
INVALID_HEAT_FORMAT_REASON("Invalid HEAT format problem - [%s]"),
- MISSING_RESOURCE_IN_DEPENDS_ON("a Missing resource in depend On Missing Resource ID [%s]"),
- REFERENCED_PARAMETER_NOT_FOUND("Referenced parameter - %s - not found, used in resource - %s"),
- GET_ATTR_NOT_FOUND("get_attr attribute not found - %s in resource %s"),
+ MISSING_RESOURCE_IN_DEPENDS_ON("a Missing resource in depend On, Missing Resource ID [%s]"),
+ REFERENCED_PARAMETER_NOT_FOUND("Referenced parameter - %s - not found, used in resource [%s]"),
+ GET_ATTR_NOT_FOUND("get_attr attribute not found, Attribute name [%s], Resource ID [%s]"),
MISSING_PARAMETER_IN_NESTED(
- "Referenced parameter not found in nested file - %s, resource name - %s, "
- + "parameter name - %s"),
+ "Referenced parameter not found in nested file - %s, parameter name [%s], Resource ID [%s]"),
NESTED_LOOP("Nested files loop - %s"),
MORE_THAN_ONE_BIND_FROM_NOVA_TO_PORT("Resource Port %s exceed allowed relations from NovaServer"),
SERVER_NOT_DEFINED_FROM_NOVA("Missing server group definition - %s, %s"),
WRONG_POLICY_IN_SERVER_GROUP("Wrong policy in server group - %s"),
- MISSING_IMAGE_AND_FLAVOR("Missing both Image and Flavor in NOVA Server - %s"),
+ MISSING_IMAGE_AND_FLAVOR("Missing both Image and Flavor in NOVA Server, Resource ID [%s]"),
ENV_INCLUDES_PARAMETER_NOT_IN_HEAT("Env file %s includes a parameter not in HEAT - %s"),
PARAMETER_ENV_VALUE_NOT_ALIGN_WITH_TYPE("Parameter env value %s not align with type"),
PARAMETER_DEFAULT_VALUE_NOT_ALIGN_WITH_TYPE(
"Parameter - %s default value not align with type %s"),
INVALID_RESOURCE_TYPE("A resource has an invalid or unsupported type - %s, Resource ID [%s]"),
ARTIFACT_FILE_NOT_REFERENCED("Artifact file is not referenced."),
- SERVER_OR_SECURITY_GROUP_NOT_IN_USE("%s not in use, Resource Id [%s]"),
+ RESOURCE_NOT_IN_USE("%s not in use, Resource Id [%s]"),
PORT_NO_BIND_TO_ANY_NOVA_SERVER("Port not bind to any NOVA Server, Resource Id [%s]"),
INVALID_GET_RESOURCE_SYNTAX(
- "invalid get_resource syntax is in use - %s , get_resource function should"
- + " get the resource id of the referenced resource"),
+ "invalid get_resource syntax is in use - %s , get_resource"
+ + " function should get the resource id of the referenced resource"),
INVALID_RESOURCE_GROUP_TYPE(
- "OS::Heat::ResourceGroup resource with resource_def which is not "
- + "pointing to nested heat file is not supported,"
- + " Resource ID [%s], resource_def type [%s]"),
+ "OS::Heat::ResourceGroup resource with resource_def which is not pointing to "
+ + "nested heat file is not supported, Resource ID [%s], resource_def type [%s]"),
+ WRONG_VALUE_TYPE_ASSIGNED_NESTED_INPUT(
+ "Wrong value type assigned to a nested input parameter, nested resource [%s],"
+ + " property name [%s], nested file [%s]"),
+ NOVA_NAME_IMAGE_FLAVOR_NOT_CONSISTENT(
+ "Nova Server naming convention in image, flavor and name properties is not "
+ + "consistent, Resource ID [%s]"),
+ RESOURCE_GROUP_INVALID_INDEX_VAR(
+ "Wrong value assigned to a ResourceGroup index_var property (functions are not allowed"
+ + " but only strings), Resource ID [%s]"),
+ CONTRAIL_2_IN_USE("Contrail 2.x deprecated resource is in use, Resource ID [%s]"),
/* warnings */
REFERENCED_RESOURCE_NOT_FOUND("Referenced resource - %s not found"),
MISSING_GET_PARAM("Missing get_param in %s, Resource Id [%s]"),
- /*Ecomp Guide lines*/
- MISSING_NOVA_SERVER_METADATA("Missing Nova Server Metadata property Resource id [%s]"),
- MISSING_NOVA_SERVER_VNF_ID("Missing VNF_ID Resource id [%s]"),
- MISSING_NOVA_SERVER_VF_MODULE_ID("Missing VF_MODULE_ID, Resource id [%s]"),
+ /*OPENECOMP Guide lines*/
+ MISSING_NOVA_SERVER_METADATA("Missing Nova Server Metadata property, Resource ID [%s]"),
+ MISSING_NOVA_SERVER_VNF_ID("Missing VNF_ID in Metadata property, Resource ID [%s]"),
+ MISSING_NOVA_SERVER_VF_MODULE_ID("Missing VF_MODULE_ID in Metadata property, Resource id [%s]"),
NETWORK_PARAM_NOT_ALIGNED_WITH_GUIDE_LINE(
- "Network Parameter Name not aligned with Guidelines Parameter Name [%s] Resource ID [%s]"),
+ "Network Parameter Name not aligned with Guidelines, Parameter Name [%s] Resource ID [%s]"),
MISSIN_BASE_HEAT_FILE(
"Missing Base HEAT. Pay attention that without Base HEAT, there will be no shared resources"),
MULTI_BASE_HEAT_FILE("Multi Base HEAT. Expected only one. Files %s."),
RESOURCE_NOT_DEFINED_IN_OUTPUT(
- "Resource is not defined as output and thus cannot be Shared. resource id - %s"),
+ "Resource is not defined as output and thus cannot be Shared, Resource ID [%s]"),
RESOURCE_CONNECTED_TO_TWO_EXTERNAL_NETWORKS_WITH_SAME_ROLE(
- "A resource is connected twice to the same network role Resource ID [%s] Network Role [%s]."),
+ "A resource is connected twice to the same network role, Network Role [%s],"
+ + " Resource ID [%s]"),
VOLUME_HEAT_NOT_EXPOSED("Volume is not defined as output and thus cannot be attached %s"),
- FLOATING_IP_NOT_IN_USE("OS::Neutron::FloatingIP is in use, Resource ID [%s]"),
- FIXED_IPS_NOT_ALIGNED_WITH_GUIDE_LINES("Fixed_IPS not aligned with Guidelines, Resource ID [%s]"),
- NOVA_SERVER_NAME_NOT_ALIGNED_WITH_GUIDE_LINES(
- "Server Name not aligned with Guidelines, Resource ID [%s]"),
- AVAILABILITY_ZONE_NOT_ALIGNED_WITH_GUIDE_LINES(
- "Server Availability Zone not aligned with Guidelines, Resource ID [%s]"),
- WRONG_IMAGE_OR_FLAVOR_NAME_NOVA_SERVER("Wrong %s name format in NOVA Server, Resource ID [%s]");
-
+ FORBIDDEN_RESOURCE_IN_USE("%s is in use, Resource ID [%s]"),
+ PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES(
+ "%s '%s' Parameter Name not aligned with Guidelines, Parameter Name [%s], Resource ID [%s]."
+ + " As a result, VF/VFC Profile may miss this information"),
+ /* Contrail validator messages*/
+ MERGE_OF_CONTRAIL2_AND_CONTRAIL3_RESOURCES(
+ "HEAT Package includes both Contrail 2 and Contrail 3 resources. "
+ + "Contrail 2 resources can be found in %s. Contrail 3 resources can be found in %s"),
+ CONTRAIL_VM_TYPE_NAME_NOT_ALIGNED_WITH_NAMING_CONVENSION(
+ "Service Template naming convention in Image and Flavor "
+ + "properties is not consistent in Resource, Resource ID %s");
private String errorMessage;
@@ -113,5 +143,4 @@ public enum Messages {
return errorMessage;
}
-
}
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ValidationErrorBuilder.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ValidationErrorBuilder.java
index eb60a63a4b..129abf3ab7 100644
--- a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ValidationErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/errors/ValidationErrorBuilder.java
@@ -20,14 +20,8 @@
package org.openecomp.sdc.common.errors;
-/**
- * The type Validation error builder.
- */
public class ValidationErrorBuilder {
- /**
- * The constant FIELD_VALIDATION_ERROR_ERR_ID.
- */
public static final String FIELD_VALIDATION_ERROR_ERR_ID = "FIELD_VALIDATION_ERROR_ERR_ID";
private static final String FIELD_VALIDATION_ERROR_ERR_MSG =
"Field does not conform to predefined criteria : %s : %s";
@@ -56,11 +50,6 @@ public class ValidationErrorBuilder {
}
}
- /**
- * Build error code.
- *
- * @return the error code
- */
public ErrorCode build() {
return builder.build();
}
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/CommonUtil.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/CommonUtil.java
new file mode 100644
index 0000000000..8ffddc48d7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/CommonUtil.java
@@ -0,0 +1,106 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.common.utils;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.common.errors.Messages;
+import org.slf4j.MDC;
+
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipInputStream;
+
+public class CommonUtil {
+
+ public static String getMethodName() {
+ return Thread.currentThread().getStackTrace()[2].getMethodName();
+ }
+
+ public static FileContentHandler loadUploadFileContent(byte[] uploadedFileData)
+ throws IOException {
+ return getFileContentMapFromOrchestrationCandidateZip(uploadedFileData);
+ }
+
+ public static FileContentHandler getFileContentMapFromOrchestrationCandidateZip(byte[] uploadFileData)
+ throws IOException {
+ ZipEntry zipEntry;
+ List<String> folderList = new ArrayList<>();
+ FileContentHandler mapFileContent = new FileContentHandler();
+ try {
+ ZipInputStream inputZipStream;
+
+ byte[] fileByteContent;
+ String currentEntryName;
+ inputZipStream = new ZipInputStream(new ByteArrayInputStream(uploadFileData));
+
+ while ((zipEntry = inputZipStream.getNextEntry()) != null) {
+ currentEntryName = zipEntry.getName();
+ // else, get the file content (as byte array) and save it in a map.
+ fileByteContent = FileUtils.toByteArray(inputZipStream);
+
+ int index = lastIndexFileSeparatorIndex(currentEntryName);
+ if (index != -1) { //todo ?
+ folderList.add(currentEntryName);
+ } else {
+ mapFileContent.addFile(currentEntryName, fileByteContent);
+ }
+
+ }
+
+ } catch (RuntimeException exception) {
+ throw new IOException(exception);
+ }
+
+ if (CollectionUtils.isNotEmpty(folderList)) {
+ MDC.put(LoggerConstants.ERROR_DESCRIPTION, LoggerErrorDescription.INVALID_ZIP);
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage(Messages.ZIP_SHOULD_NOT_CONTAIN_FOLDERS.getErrorMessage())
+ .withId(Messages.ZIP_SHOULD_NOT_CONTAIN_FOLDERS.getErrorMessage())
+ .withCategory(ErrorCategory.APPLICATION).build());
+ }
+
+ return mapFileContent;
+ }
+
+ private static int lastIndexFileSeparatorIndex(String filePath) {
+ int length = filePath.length() - 1;
+
+ for (int i = length; i >= 0; i--) {
+ char currChar = filePath.charAt(i);
+ if (currChar == '/' || currChar == File.separatorChar || currChar == File.pathSeparatorChar) {
+ return i;
+ }
+ }
+ // if we've reached to the start of the string and didn't find file separator - return -1
+ return -1;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/AsdcCommon.java b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/SdcCommon.java
index d3806ff34e..156a86c841 100644
--- a/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/AsdcCommon.java
+++ b/openecomp-be/lib/openecomp-common-lib/src/main/java/org/openecomp/sdc/common/utils/SdcCommon.java
@@ -20,12 +20,18 @@
package org.openecomp.sdc.common.utils;
-public class AsdcCommon {
+public class SdcCommon {
public static final String MANIFEST_NAME = "MANIFEST.json";
public static final String UPLOAD_FILE = "uploadFile";
+ public static final String PROCESS_FILE = "Process File";
+ public static final String ILLEGAL_MANIFEST = "Illegal manifest";
public static final String HEAT_TO_TOSCA_MAPPING_CONF = "heatToToscaMapping.json";
public static final String HEAT_META = "HEAT.meta";
public static final String PARENT = "parent";
+
+ public static final String VSP_ID = "vspId";
+ public static final String VERSION = "version";
+ public static final String USER = "user";
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml
index 5f2005d3c4..989895c9cb 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml
@@ -3,46 +3,45 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <artifactId>openecomp-config-lib</artifactId>
<parent>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-core-lib</artifactId>
<version>1.1.0-SNAPSHOT</version>
</parent>
- <artifactId>openecomp-config-lib</artifactId>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.12.4</version>
+ <configuration>
+ <skipTests>true</skipTests>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
<dependencies>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.14</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
- <version>6.9.10</version>
+ <version>${testng.version}</version>
<scope>test</scope>
</dependency>
- <dependency>
+ <!--dependency>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
<version>${project.version}</version>
<scope>test</scope>
- </dependency>
+ </dependency-->
</dependencies>
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..7d6cd8f980
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/pom.xml.versionsBackup
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>6.9.10</version>
+ <scope>test</scope>
+ </dependency>
+ <!--dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency-->
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-core-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>openecomp-config-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfig.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfig.java
index a68c6b614a..1d5fd16ee1 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfig.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfig.java
@@ -25,6 +25,7 @@ import org.openecomp.core.utilities.applicationconfig.type.ConfigurationData;
import java.util.Collection;
+
public interface ApplicationConfig {
ConfigurationData getConfigurationData(String namespace, String key);
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfigFactory.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfigFactory.java
index e022294dfd..c751b98c7e 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfigFactory.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/ApplicationConfigFactory.java
@@ -23,6 +23,7 @@ package org.openecomp.core.utilities.applicationconfig;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
+
public abstract class ApplicationConfigFactory extends AbstractComponentFactory<ApplicationConfig> {
public static ApplicationConfigFactory getInstance() {
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoCassandraImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoCassandraImpl.java
index 7fb0e2f5ae..b7cd576557 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoCassandraImpl.java
@@ -36,8 +36,10 @@ import org.openecomp.core.utilities.applicationconfig.type.ConfigurationData;
import java.util.Collection;
import java.util.Objects;
+
public class ApplicationConfigDaoCassandraImpl extends CassandraBaseDao<ApplicationConfigEntity>
- implements ApplicationConfigDao {
+ implements
+ ApplicationConfigDao {
private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
private static final Mapper<ApplicationConfigEntity> mapper =
@@ -56,11 +58,6 @@ public class ApplicationConfigDaoCassandraImpl extends CassandraBaseDao<Applicat
}
@Override
- public Collection<ApplicationConfigEntity> list(ApplicationConfigEntity entity) {
- return accessor.list(entity.getNamespace()).all();
- }
-
- @Override
public void create(ApplicationConfigEntity entity) {
accessor.updateApplicationConfigData(entity.getNamespace(), entity.getKey(), entity.getValue());
}
@@ -76,6 +73,11 @@ public class ApplicationConfigDaoCassandraImpl extends CassandraBaseDao<Applicat
}
@Override
+ public Collection<ApplicationConfigEntity> list(ApplicationConfigEntity entity) {
+ return accessor.list(entity.getNamespace()).all();
+ }
+
+ @Override
public long getValueTimestamp(String namespace, String key) {
ResultSet resultSet = accessor.getValueAndTimestampOfConfigurationValue(namespace, key);
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoFactoryImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoFactoryImpl.java
index cea49ea8d1..23dde63e18 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/dao/impl/ApplicationConfigDaoFactoryImpl.java
@@ -23,6 +23,7 @@ package org.openecomp.core.utilities.applicationconfig.dao.impl;
import org.openecomp.core.utilities.applicationconfig.dao.ApplicationConfigDao;
import org.openecomp.core.utilities.applicationconfig.dao.ApplicationConfigDaoFactory;
+
public class ApplicationConfigDaoFactoryImpl extends ApplicationConfigDaoFactory {
private static final ApplicationConfigDao INSTANCE = new ApplicationConfigDaoCassandraImpl();
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigFactoryImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigFactoryImpl.java
index cca07fc227..eebd3320f0 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigFactoryImpl.java
@@ -23,6 +23,7 @@ package org.openecomp.core.utilities.applicationconfig.impl;
import org.openecomp.core.utilities.applicationconfig.ApplicationConfig;
import org.openecomp.core.utilities.applicationconfig.ApplicationConfigFactory;
+
public class ApplicationConfigFactoryImpl extends ApplicationConfigFactory {
private static final ApplicationConfig INSTANCE = new ApplicationConfigImpl();
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigImpl.java
index ff9c9aea87..16cd1bce17 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigImpl.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/impl/ApplicationConfigImpl.java
@@ -32,9 +32,6 @@ import org.openecomp.sdc.common.errors.ErrorCode;
import java.util.Collection;
import java.util.Objects;
-/**
- * The type Application config.
- */
public class ApplicationConfigImpl implements ApplicationConfig {
private static final ApplicationConfigDao applicationConfigDao =
ApplicationConfigDaoFactory.getInstance().createInterface();
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/type/ConfigurationData.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/type/ConfigurationData.java
index 53d3797e53..b41cda635d 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/type/ConfigurationData.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/java/org/openecomp/core/utilities/applicationconfig/type/ConfigurationData.java
@@ -20,6 +20,7 @@
package org.openecomp.core.utilities.applicationconfig.type;
+
public class ConfigurationData {
private String value;
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/additional-logback.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/additional-logback.xml
new file mode 100644
index 0000000000..cec94f17b5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/additional-logback.xml
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<included>
+
+ <property scope="system" name="OPENECOMP-component-name" value="ASDC" />
+ <property scope="system" name="OPENECOMP-subcomponent-name" value="ASDC-BE" />
+
+ <!--statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
+ <include resource="asdc_debug_logback.xml"/-->
+
+ <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)-->
+ <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)-->
+ <property name="default-log-pattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{uuid}|%X{serviceInstanceID}|%thread||${OPENECOMP-subcomponent-name}|%X{userId}|%level|%X{alarmSeverity}|%X{localAddr}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n" />
+
+ <property name="asdc-debug-log-pattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg %n"/>
+
+ <appender name="DEBUG_PACKAGE_INCLUDE"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug_by_package_include.log
+ </file>
+
+ <!-- No need to deny audit messages - they are INFO only, will be denied
+ anyway -->
+ <!-- Transaction messages filter - deny Transaction messages, there are
+ some DEBUG level messages among them -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- accept DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= DEBUG.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug_by_package_include.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${asdc-debug-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+
+ <logger name="org.openecomp.sdc.validation.impl.validators" level="DEBUG" additivity ="false">
+ <appender-ref ref="DEBUG_PACKAGE_INCLUDE" />
+ </logger>
+
+</included> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/logback.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/logback.xml
index e256e0b10a..92c486e901 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/logback.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/main/resources/logback.xml
@@ -1,23 +1,173 @@
-<!--
<?xml version="1.0" encoding="UTF-8"?>
-<configuration>
+<configuration scan="true" scanPeriod="5 seconds">
+ <property scope="system" name="OPENECOMP-component-name" value="ASDC" />
+ <property scope="system" name="OPENECOMP-subcomponent-name" value="ASDC-BE" />
+ <property file="${config.home}/catalog-be/configuration.yaml" />
+ <property scope="context" name="enable-all-log" value="false" />
+ <!--statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
+ <include resource="asdc_debug_logback.xml"/-->
+
+ <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)-->
+ <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)-->
+ <property name="default-log-pattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{uuid}|%X{serviceInstanceID}|%thread||${OPENECOMP-subcomponent-name}|%X{userId}|%level|%X{alarmSeverity}|%X{localAddr}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n" />
+
+ <property name="asdc-debug-log-pattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg %n"/>
+
+ <!-- All log -->
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender name="ALL_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/all.log
+ </file>
+
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/all.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ALL_ROLLING" />
+ </appender>
+ </then>
+ </if>
+
+ <!-- Error log -->
+ <appender name="ERROR_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/Error.log
+ </file>
+
+ <!-- Audit messages filter - deny audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>AUDIT_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- Transaction messages filter - deny Transaction messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/Error.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Debug log -->
<appender name="DEBUG_ROLLING"
class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>DOX-BE.log
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug.log
</file>
- &lt;!&ndash; No need to deny audit messages - they are INFO only, will be denied
- anyway &ndash;&gt;
- &lt;!&ndash; Transaction messages filter - deny Transaction messages, there are
- some DEBUG level messages among them &ndash;&gt;
+ <!-- No need to deny audit messages - they are INFO only, will be denied
+ anyway -->
+ <!-- Transaction messages filter - deny Transaction messages, there are
+ some DEBUG level messages among them -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+ <!-- accept DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= DEBUG.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
- &lt;!&ndash; accept DEBUG and TRACE level &ndash;&gt;
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Debug log -->
+ <appender name="PACKAGE_DEBUG_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug_by_package.log
+ </file>
+
+ <!-- No need to deny audit messages - they are INFO only, will be denied
+ anyway -->
+ <!-- Transaction messages filter - deny Transaction messages, there are
+ some DEBUG level messages among them -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- accept DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= DEBUG.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>/DOX-BE.log.%i
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug_by_package.log.%i
</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
@@ -28,63 +178,107 @@
<maxFileSize>20MB</maxFileSize>
</triggeringPolicy>
<encoder>
- <pattern>%level [%d{yyyy-MM-dd'T'HH:mm:ss}] - Method=%M, Desc=&lt;%msg&gt;%n</pattern>
+ <pattern>${asdc-debug-log-pattern}</pattern>
</encoder>
</appender>
+ <!-- Audit log -->
+ <appender name="AUDIT_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
- <root level="info">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/audit.log
+ </file>
+
+ <!-- Audit messages filter - accept audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>AUDIT_MARKER</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/audit.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- SdncTransaction log -->
+ <appender name="TRANSACTION_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/transaction.log
+ </file>
+
+ <!-- Transaction messages filter - accept audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/transaction.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Asynchronicity Configurations -->
+ <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="DEBUG_ROLLING" />
+ </appender>
+
+ <appender name="ASYNC_TRANSACTION" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="TRANSACTION_ROLLING" />
+ </appender>
+
+ <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ERROR_ROLLING" />
+ </appender>
+
+
+ <root level="INFO">
+ <appender-ref ref="ASYNC_ERROR" />
+ <appender-ref ref="ASYNC_DEBUG" />
+ <appender-ref ref="AUDIT_ROLLING" />
+ <appender-ref ref="ASYNC_TRANSACTION" />
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender-ref ref="ALL_ROLLING" />
+ </then>
+ </if>
</root>
-</configuration>-->
-<configuration scan="true" scanPeriod="3 seconds">
-
- <property name="logDir" value="logs"/>
- <property name="componentName" value="ASDC"/>
- <property name="ECOMP-subcomponent-name" value="ASDC-BE"/>
-
- <property name="defaultPattern"
- value="%msg%n"/>
-
- <!--<property name="MetricsLogPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%X{CategoryLogLevel}|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{ClientIP}|%logger%n" />
- <property name="AuditLogPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%X{CategoryLogLevel}|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{ClientIP}%n" />
- <property name="ErrorLogPattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSS, GMT}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ErrorCategory}|%X{ErrorCode}|%X{ErrorDescription}|%msg%n"/>
- <property name="DebugLogPattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSS, GMT}|%X{RequestId}||%logger|%msg%n"/>-->
-
- <!-- new pattern -->
- <property name="default-log-pattern"
- value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{BeginTimestamp}|%X{EndTimestamp}|%X{uuid}|%X{serviceInstanceID}|%thread|%X{ServerName}|%X{ServiceName}|${ECOMP-subcomponent-name}|%X{userId}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%X{ErrorCategory}|%X{ErrorCode}|%X{ErrorDescription}|%level|%X{alarmSeverity}|%X{localAddr}|%X{ElapsedTime}|%X{beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n"/>
-
- <property name="logDirectory" value="${logDir}/${componentName}"/>
-
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>${defaultPattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="DISPATCHER" class="ch.qos.logback.classic.sift.SiftingAppender">
- <discriminator class="org.openecomp.core.logging.logback.EventTypeDiscriminator"/>
- <sift>
- <appender name="${eventType}" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${logDirectory}/${eventType}.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${logDirectory}/${eventType}.%i.log.zip</fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>9</maxIndex>
- </rollingPolicy>
- <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>5MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${default-log-pattern}</pattern>
- </encoder>
- </appender>
- </sift>
- </appender>
-
- <root level="DEBUG">
- <appender-ref ref="DISPATCHER"/>
- </root>
+ <logger name="org.openecomp.sdc" level="INFO" />
+
+ <logger name="org.openecomp.sdc.vendorsoftwareproduct" level="DEBUG" additivity ="false">
+ <appender-ref ref="PACKAGE_DEBUG_ROLLING" />
+ </logger>
+
+ <logger name="org.openecomp.sdc.vendorlicense" level="DEBUG" additivity ="false">
+ <appender-ref ref="PACKAGE_DEBUG_ROLLING" />
+ </logger>
</configuration> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/test/java/org/openecomp/sdc/applicationconfig/dao/ApplicationConfigImplDaoTest.java b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/test/java/org/openecomp/sdc/applicationconfig/dao/ApplicationConfigImplDaoTest.java
index 40cde1ecb2..de41bb8202 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/test/java/org/openecomp/sdc/applicationconfig/dao/ApplicationConfigImplDaoTest.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-config-lib/src/test/java/org/openecomp/sdc/applicationconfig/dao/ApplicationConfigImplDaoTest.java
@@ -1,9 +1,25 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.applicationconfig.dao;
-import org.openecomp.sdc.common.errors.CoreException;
-import org.openecomp.sdc.common.errors.ErrorCategory;
-import org.openecomp.sdc.common.errors.ErrorCode;
-import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
import org.openecomp.core.utilities.applicationconfig.ApplicationConfig;
import org.openecomp.core.utilities.applicationconfig.ApplicationConfigFactory;
import org.openecomp.core.utilities.applicationconfig.dao.ApplicationConfigDao;
@@ -11,6 +27,9 @@ import org.openecomp.core.utilities.applicationconfig.dao.ApplicationConfigDaoFa
import org.openecomp.core.utilities.applicationconfig.dao.type.ApplicationConfigEntity;
import org.openecomp.core.utilities.applicationconfig.type.ConfigurationData;
import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
import org.testng.Assert;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
@@ -27,7 +46,7 @@ public class ApplicationConfigImplDaoTest {
private static ApplicationConfig applicationConfig =
ApplicationConfigFactory.getInstance().createInterface();
-// @BeforeClass
+ @BeforeClass
public static void init() {
try {
@@ -55,17 +74,17 @@ public class ApplicationConfigImplDaoTest {
return new String(FileUtils.toByteArray(FileUtils.loadFileToInputStream(path)));
}
-// @Test
+ @Test
public void testApplicationConfigTimestampValue() {
ConfigurationData configurationData = applicationConfig
- .getConfigurationData("test - namespace", CompositionEntityType.vsp.name());
+ .getConfigurationData("test - namespace", "vsp");
Assert.assertNotNull(configurationData);
Assert.assertNotEquals(configurationData.getTimeStamp(), 0);
}
-// @Test(dependsOnMethods = "testApplicationConfigTimestampValue")
+ @Test(dependsOnMethods = "testApplicationConfigTimestampValue")
public void testNotExistingApplicationConfigTimestampValue() {
try {
applicationConfig.getConfigurationData("test - namespace", "aaa");
@@ -76,7 +95,7 @@ public class ApplicationConfigImplDaoTest {
}
-// @Test(dependsOnMethods = "testApplicationConfigTimestampValue")
+ @Test(dependsOnMethods = "testApplicationConfigTimestampValue")
public void testInsertApplicationConfiguration() {
String testTemplate = loadFileToString("questionnaire/testTemplate.txt");
applicationConfig.insertValue("test_namespace", "test_key", testTemplate);
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml
index b71c0b957e..4e15df1202 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml
@@ -2,29 +2,29 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-facade-api</name>
+ <artifactId>openecomp-facade-api</artifactId>
+ <groupId>org.openecomp.core</groupId>
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
<version>1.1.0-SNAPSHOT</version>
- <relativePath>../../..</relativePath>
+ <relativePath>../../../</relativePath>
</parent>
- <name>openecomp-facade-api</name>
- <artifactId>openecomp-facade-api</artifactId>
-
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-common-lib</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..be88b2799a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/pom.xml.versionsBackup
@@ -0,0 +1,35 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-facade-api</name>
+ <artifactId>openecomp-facade-api</artifactId>
+ <groupId>org.openecomp.core</groupId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../../..</relativePath>
+ </parent>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/api/AbstractFactory.java b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/api/AbstractFactory.java
index 53b8f00fc0..12956417dd 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/api/AbstractFactory.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/api/AbstractFactory.java
@@ -54,7 +54,7 @@ import org.openecomp.core.factory.impl.AbstractFactoryBase;
* static {
* registerFactory(ConcreteFactory.class, BaselineFactoryImpl.class);
* }
- * public static ConcreteFactory getInstance() {
+ * public static ConcreteFactory getInstance() {
* return AbstractFactory.&lt;IUnknown, ConcreteFactory.class&gt;getInstance(ConcreteFactory.class);
* }
* }
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/impl/AbstractFactoryBase.java b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/impl/AbstractFactoryBase.java
index e19d9e972f..9353de662b 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/impl/AbstractFactoryBase.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-api/src/main/java/org/openecomp/core/factory/impl/AbstractFactoryBase.java
@@ -20,6 +20,7 @@
package org.openecomp.core.factory.impl;
+
import static org.openecomp.core.utilities.CommonMethods.isEmpty;
import static org.openecomp.core.utilities.CommonMethods.newInstance;
@@ -27,20 +28,16 @@ import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
-
import java.util.Collection;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-/**
- * The type Abstract factory base.
- */
public abstract class AbstractFactoryBase {
/**
* Temporary registry of default implementations. The map keeps class names rather then class
- * types to allow unloading of those classes from memory by garbage collector if
- * factory is not actually used.
+ * types to allow unloading of those classes from memory by garbage collector if factory is not
+ * actually used.
*/
private static Map<String, String> registry = new ConcurrentHashMap<String, String>();
@@ -51,8 +48,8 @@ public abstract class AbstractFactoryBase {
new ConcurrentHashMap<String, AbstractFactoryBase>();
/**
- * Registers implementor for an abstract factory. The method accepts Java classes rather
- * then class names to ensure type safety at compilation time.
+ * Registers implementor for an abstract factory. The method accepts Java classes rather then
+ * class names to ensure type safety at compilation time.
*
* @param <I> Java interface type instantiated by abstract factory
* @param <F> Type specific abstract factory for concrete Java interface
@@ -78,12 +75,6 @@ public abstract class AbstractFactoryBase {
registry.put(factory.getName(), impl.getName());
} // registerFactory
- /**
- * Register factory.
- *
- * @param factoryName the factory name
- * @param implName the impl name
- */
// TODO: Remove
protected static void registerFactory(String factoryName, String implName) {
registry.put(factoryName, implName);
@@ -197,15 +188,9 @@ public abstract class AbstractFactoryBase {
}
}
- /**
- * Init.
- */
protected void init() {
}
- /**
- * Stop.
- */
protected void stop() {
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml
index fdd7dab8bc..62a1eeca89 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml
@@ -2,6 +2,10 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <artifactId>openecomp-facade-core</artifactId>
+ <name>openecomp-facade-core</name>
+ <groupId>org.openecomp.core</groupId>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
@@ -9,28 +13,23 @@
<relativePath>../../..</relativePath>
</parent>
- <artifactId>openecomp-facade-core</artifactId>
- <name>openecomp-facade-core</name>
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-common-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-api</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
-
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..72ce7fab94
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/openecomp-facade-core/pom.xml.versionsBackup
@@ -0,0 +1,41 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>openecomp-facade-core</artifactId>
+ <name>openecomp-facade-core</name>
+ <groupId>org.openecomp.core</groupId>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../../..</relativePath>
+ </parent>
+
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml
index c8ee00372c..aa90996e23 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml
@@ -2,16 +2,16 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-facade-lib</name>
+ <artifactId>openecomp-facade-lib</artifactId>
+
+ <packaging>pom</packaging>
<parent>
<artifactId>openecomp-core-lib</artifactId>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<version>1.1.0-SNAPSHOT</version>
</parent>
- <packaging>pom</packaging>
- <artifactId>openecomp-facade-lib</artifactId>
- <name>openecomp-facade-lib</name>
-
<modules>
<module>openecomp-facade-api</module>
<module>openecomp-facade-core</module>
@@ -19,13 +19,13 @@
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-api</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
<scope>runtime</scope>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..c4d0d1faf0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-facade-lib/pom.xml.versionsBackup
@@ -0,0 +1,34 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-facade-lib</name>
+ <artifactId>openecomp-facade-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-core-lib</artifactId>
+ <groupId>org.openecomp.core</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-facade-api</module>
+ <module>openecomp-facade-core</module>
+ </modules>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>${project.version}</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml
index 4ff52e5e33..bce553cfde 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml
@@ -2,6 +2,10 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-nosqldb-api</name>
+ <artifactId>openecomp-nosqldb-api</artifactId>
+ <groupId>org.openecomp.core</groupId>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
@@ -9,13 +13,9 @@
<relativePath>../../..</relativePath>
</parent>
- <name>openecomp-nosqldb-api</name>
- <artifactId>openecomp-nosqldb-api</artifactId>
-
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-api</artifactId>
<version>${project.version}</version>
</dependency>
@@ -30,11 +30,16 @@
<version>${datasatx.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..288274d728
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/pom.xml.versionsBackup
@@ -0,0 +1,45 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-nosqldb-api</name>
+ <artifactId>openecomp-nosqldb-api</artifactId>
+ <groupId>org.openecomp.core</groupId>
+
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>com.datastax.cassandra</groupId>
+ <artifactId>cassandra-driver-core</artifactId>
+ <version>${datasatx.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.datastax.cassandra</groupId>
+ <artifactId>cassandra-driver-mapping</artifactId>
+ <version>${datasatx.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/src/main/java/org/openecomp/core/util/UniqueValueUtil.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/src/main/java/org/openecomp/core/util/UniqueValueUtil.java
index a82c97c51c..d2dee5e512 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/src/main/java/org/openecomp/core/util/UniqueValueUtil.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-api/src/main/java/org/openecomp/core/util/UniqueValueUtil.java
@@ -27,21 +27,18 @@ import org.openecomp.core.utilities.CommonMethods;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
import java.util.Optional;
-/**
- * The type Unique value util.
- */
public class UniqueValueUtil {
- /**
- * The constant UNIQUE_VALUE_VIOLATION.
- */
public static final String UNIQUE_VALUE_VIOLATION = "UNIQUE_VALUE_VIOLATION";
private static final String UNIQUE_VALUE_VIOLATION_MSG = "%s with the value '%s' already exists.";
private static final UniqueValueDao uniqueValueDao =
UniqueValueDaoFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
/**
* Create unique value.
@@ -50,12 +47,18 @@ public class UniqueValueUtil {
* @param uniqueCombination the unique combination
*/
public static void createUniqueValue(String type, String... uniqueCombination) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<String> value = formatValue(uniqueCombination);
if (!value.isPresent()) {
return;
}
validateUniqueValue(type, value.get(), uniqueCombination);
uniqueValueDao.create(new UniqueValueEntity(type, value.get()));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -65,11 +68,17 @@ public class UniqueValueUtil {
* @param uniqueCombination the unique combination
*/
public static void deleteUniqueValue(String type, String... uniqueCombination) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<String> value = formatValue(uniqueCombination);
if (!value.isPresent()) {
return;
}
uniqueValueDao.delete(new UniqueValueEntity(type, value.get()));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -82,12 +91,18 @@ public class UniqueValueUtil {
*/
public static void updateUniqueValue(String type, String oldValue, String newValue,
String... uniqueContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if ((newValue != null && oldValue != null
&& !newValue.toLowerCase().equals(oldValue.toLowerCase()))
|| newValue == null || oldValue == null) {
createUniqueValue(type, CommonMethods.concat(uniqueContext, new String[]{newValue}));
deleteUniqueValue(type, CommonMethods.concat(uniqueContext, new String[]{oldValue}));
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -97,14 +112,20 @@ public class UniqueValueUtil {
* @param uniqueCombination the unique combination
*/
public static void validateUniqueValue(String type, String... uniqueCombination) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<String> value = formatValue(uniqueCombination);
if (!value.isPresent()) {
return;
}
validateUniqueValue(type, value.get(), uniqueCombination);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private static void validateUniqueValue(String type, String value, String... uniqueCombination) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (uniqueValueDao.get(new UniqueValueEntity(type, value)) != null) {
throw new CoreException(new ErrorCode.ErrorCodeBuilder()
.withCategory(ErrorCategory.APPLICATION)
@@ -112,9 +133,15 @@ public class UniqueValueUtil {
.withMessage(String.format(UNIQUE_VALUE_VIOLATION_MSG, type,
uniqueCombination[uniqueCombination.length - 1])).build());
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private static Optional<String> formatValue(String[] uniqueCombination) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (uniqueCombination == null || uniqueCombination.length == 0
|| uniqueCombination[uniqueCombination.length - 1] == null) {
return Optional.empty();
@@ -122,6 +149,8 @@ public class UniqueValueUtil {
uniqueCombination[uniqueCombination.length - 1] =
uniqueCombination[uniqueCombination.length - 1].toLowerCase();
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.of(CommonMethods.arrayToSeparatedString(uniqueCombination, '_'));
}
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml
index 3922acdc7f..f091f47bfd 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml
@@ -2,6 +2,10 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-nosqldb-core</name>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <groupId>org.openecomp.core</groupId>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
@@ -9,33 +13,30 @@
<relativePath>../../..</relativePath>
</parent>
- <artifactId>openecomp-nosqldb-core</artifactId>
- <name>openecomp-nosqldb-core</name>
-
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.12.4</version>
+ <configuration>
+ <skipTests>true</skipTests>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.14</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
+ <version>${mockito.all.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
@@ -53,7 +54,7 @@
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
- <version>RELEASE</version>
+ <version>4.11</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..fa859a0db8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/pom.xml.versionsBackup
@@ -0,0 +1,46 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-nosqldb-core</name>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <groupId>org.openecomp.core</groupId>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ <version>4.11</version>
+ </dependency>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/dao/impl/UniqueValueCassandraDaoImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/dao/impl/UniqueValueCassandraDaoImpl.java
index 31dd602400..a2f34bd329 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/dao/impl/UniqueValueCassandraDaoImpl.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/dao/impl/UniqueValueCassandraDaoImpl.java
@@ -31,8 +31,8 @@ import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
import java.util.Collection;
-public class UniqueValueCassandraDaoImpl extends CassandraBaseDao<UniqueValueEntity>
- implements UniqueValueDao {
+public class UniqueValueCassandraDaoImpl extends CassandraBaseDao<UniqueValueEntity> implements
+ UniqueValueDao {
private static NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
private static Mapper<UniqueValueEntity> mapper =
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraNoSqlDbFactoryImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraNoSqlDbFactoryImpl.java
index 2922925171..134d341d05 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraNoSqlDbFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraNoSqlDbFactoryImpl.java
@@ -20,6 +20,7 @@
package org.openecomp.core.nosqldb.impl.cassandra;
+
import com.datastax.driver.core.Session;
import org.openecomp.core.nosqldb.api.NoSqlDb;
import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraSessionFactory.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraSessionFactory.java
index 1b98f095b5..4863e3df0f 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraSessionFactory.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/impl/cassandra/CassandraSessionFactory.java
@@ -25,7 +25,6 @@ import com.google.common.base.Optional;
import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.SSLOptions;
import com.datastax.driver.core.Session;
-
import org.openecomp.core.nosqldb.util.CassandraUtils;
import java.io.FileInputStream;
@@ -56,6 +55,8 @@ public class CassandraSessionFactory {
for (String address : addresses) {
builder.addContactPoint(address);
}
+
+ //Check if ssl
Boolean isSsl = CassandraUtils.isSsl();
if (isSsl) {
builder.withSSL(getSslOptions().get());
@@ -69,7 +70,6 @@ public class CassandraSessionFactory {
if (isAuthenticate) {
builder.withCredentials(CassandraUtils.getUser(), CassandraUtils.getPassword());
}
-
Cluster cluster = builder.build();
String keyStore = CassandraUtils.getKeySpace();
return cluster.connect(keyStore);
@@ -84,8 +84,9 @@ public class CassandraSessionFactory {
try {
context = getSslContext(truststorePath.get(), truststorePassword.get());
} catch (UnrecoverableKeyException | KeyManagementException
- | NoSuchAlgorithmException | KeyStoreException | CertificateException | IOException e0) {
- throw new RuntimeException(e0);
+ | NoSuchAlgorithmException | KeyStoreException | CertificateException
+ | IOException exception) {
+ throw new RuntimeException(exception);
}
String[] css = new String[]{"TLS_RSA_WITH_AES_128_CBC_SHA"};
return Optional.of(new SSLOptions(context, css));
@@ -109,8 +110,8 @@ public class CassandraSessionFactory {
tmf.init(ts);
ctx.init(null, tmf.getTrustManagers(), new SecureRandom());
- } catch (Exception e0) {
- e0.printStackTrace();
+ } catch (Exception exception) {
+ exception.printStackTrace();
} finally {
tsf.close();
@@ -121,4 +122,6 @@ public class CassandraSessionFactory {
private static class ReferenceHolder {
private static final Session CASSANDRA = newCassandraSession();
}
+
+
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/util/ConfigurationManager.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/util/ConfigurationManager.java
index a1c0b528fb..44623ff91b 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/util/ConfigurationManager.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/java/org/openecomp/core/nosqldb/util/ConfigurationManager.java
@@ -97,9 +97,9 @@ public class ConfigurationManager {
if (addresses != null) {
return addresses.split(",");
}
- List locAddresses = (ArrayList) cassandraConfiguration.get(cassandraHostsKey);
+ List lsAddresses = (ArrayList) cassandraConfiguration.get(cassandraHostsKey);
String[] addressesArray;
- addressesArray = (String[]) locAddresses.toArray(new String[locAddresses.size()]);
+ addressesArray = (String[]) lsAddresses.toArray(new String[lsAddresses.size()]);
return addressesArray;
}
@@ -226,8 +226,8 @@ public class ConfigurationManager {
InputStream is = null;
try {
is = new FileInputStream(file);
- } catch (FileNotFoundException e0) {
- e0.printStackTrace();
+ } catch (FileNotFoundException exception) {
+ exception.printStackTrace();
}
return is;
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/resources/configuration.yaml b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/resources/configuration.yaml
index 0988f50237..1551d867b5 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/resources/configuration.yaml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/main/resources/configuration.yaml
@@ -7,9 +7,6 @@ identificationHeaderFields:
-# catalog backend hostname
-beFqdn: sdccatalog.att.com
-
# catalog backend http port
beHttpPort: 8080
@@ -54,7 +51,7 @@ cassandraConfig:
cassandraHosts: ['127.0.0.1']
reconnectTimeout : 30000
authenticate: false
- username: sdc_user
+ username: asdc_user
password: Aa1234%^!
ssl: false
truststorePath : /path/path
@@ -152,7 +149,7 @@ informationalServiceArtifacts:
displayName: Service Artifact Plan
type: OTHER
summaryOfImpactsToECOMPElements:
- displayName: Summary of impacts to ECOMP elements,OSSs, BSSs
+ displayName: Summary of impacts to OPENECOMP elements,OSSs, BSSs
type: OTHER
controlLoopFunctions:
displayName: Control Loop Functions
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/nosqldb/NoSqlDbTest.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/nosqldb/NoSqlDbTest.java
index e53c482b86..25bd6aa380 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/nosqldb/NoSqlDbTest.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/nosqldb/NoSqlDbTest.java
@@ -1,48 +1,68 @@
-package org.openecomp.core.nosqldb;
-
-import org.openecomp.core.nosqldb.api.NoSqlDb;
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
-import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
+package org.openecomp.core.nosqldb;
import com.datastax.driver.core.ResultSet;
import com.datastax.driver.core.Row;
-
+import org.openecomp.core.nosqldb.api.NoSqlDb;
+import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
import org.testng.Assert;
import org.testng.annotations.Test;
import java.util.List;
+
public class NoSqlDbTest {
- private static NoSqlDb noSqlDb;
+ private static NoSqlDb noSqlDb;
-// @Test
- public void testNoSqlDbFactoryFactoryInit(){
- this.noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- Assert.assertNotNull(this.noSqlDb);
- Assert.assertEquals(this.noSqlDb.getClass().getName(),"org.openecomp.core.nosqldb.impl.cassandra.CassandraNoSqlDbImpl");
- }
+ @Test
+ public void testNoSqlDbFactoryFactoryInit() {
+ this.noSqlDb = NoSqlDbFactory.getInstance().createInterface();
+ Assert.assertNotNull(this.noSqlDb);
+ Assert.assertEquals(this.noSqlDb.getClass().getName(),
+ "org.openecomp.core.nosqldb.impl.cassandra.CassandraNoSqlDbImpl");
+ }
-// @Test(dependsOnMethods = {"testNoSqlDbFactoryFactoryInit"})
- public void testCreateTable(){
- this.noSqlDb.execute("test.drop",null);
- this.noSqlDb.execute("test.create",null);
- }
+ @Test(dependsOnMethods = {"testNoSqlDbFactoryFactoryInit"})
+ public void testCreateTable() {
+ this.noSqlDb.execute("test.drop", null);
+ this.noSqlDb.execute("test.create", null);
+ }
-// @Test(dependsOnMethods = {"testCreateTable"})
- public void testInsertTable(){
- this.noSqlDb.insert("test",new String[]{"name","value"},new String[]{"TestName","testValue"});
- this.noSqlDb.execute("test.insert",new String[]{"TestName2","testValue2"});
- }
+ @Test(dependsOnMethods = {"testCreateTable"})
+ public void testInsertTable() {
+ this.noSqlDb
+ .insert("test", new String[]{"name", "value"}, new String[]{"TestName", "testValue"});
+ this.noSqlDb.execute("test.insert", new String[]{"TestName2", "testValue2"});
+ }
-// @Test(dependsOnMethod`s = {"testInsertTable"})
- public void gettestSelectTable(){
- ResultSet result = this.noSqlDb.execute("test.select.all",null);
- List<Row> rows = result.all();
- Assert.assertEquals(rows.size(),2);
- for (Row row:rows){
- System.out.format("%s %s\n", row.getString("name"), row.getString("value"));
- }
+ @Test(dependsOnMethods = {"testInsertTable"})
+ public void gettestSelectTable() {
+ ResultSet result = this.noSqlDb.execute("test.select.all", null);
+ List<Row> rows = result.all();
+ Assert.assertEquals(rows.size(), 2);
+ for (Row row : rows) {
+ System.out.format("%s %s\n", row.getString("name"), row.getString("value"));
}
+ }
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/Yaml/YamlUtilTest.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/Yaml/YamlUtilTest.java
index baf9bfb350..1e3305ef18 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/Yaml/YamlUtilTest.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/Yaml/YamlUtilTest.java
@@ -1,8 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.core.utilities.Yaml;
-import org.openecomp.core.utilities.yaml.YamlUtil;
import org.junit.Before;
import org.junit.Test;
+import org.openecomp.core.utilities.yaml.YamlUtil;
import testobjects.yaml.YamlFile;
@@ -36,12 +56,12 @@ public class YamlUtilTest {
/*public void loadCassandraParameters(){
- YamlUtil yamlutil = new YamlUtil();
+ YamlUtil yamlUtil = new YamlUtil();
String cassandraKey = "cassandraConfig";
String configurationFile = "/configuration.yaml";
- InputStream yamlAsIS = yamlutil.loadYamlFileIs(configurationFile);
- Map<String, LinkedHashMap<String, Object>> configurationMap = yamlutil.yamlToMap(yamlAsIS);
+ InputStream yamlAsIS = yamlUtil.loadYamlFileIs(configurationFile);
+ Map<String, LinkedHashMap<String, Object>> configurationMap = yamlUtil.yamlToMap(yamlAsIS);
LinkedHashMap<String, Object> cassandraConfiguration = configurationMap.get(cassandraKey);
System.out.println(cassandraConfiguration.entrySet());
}*/
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java
index 5cf8988c06..afe2fbbbbb 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java
@@ -1,8 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.core.utilities.json;
import org.junit.Test;
-import static org.junit.Assert.*;
public class JsonUtilTest {
@Test
@@ -10,4 +29,4 @@ public class JsonUtilTest {
System.out.println("as");
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/InnerP.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/InnerP.java
index eda4143e3e..1a790ba439 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/InnerP.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/InnerP.java
@@ -1,5 +1,26 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package testobjects.yaml;
+
public class InnerP {
String name;
String label;
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/Parameter.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/Parameter.java
index febcef9c40..4f6f8253cb 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/Parameter.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/Parameter.java
@@ -1,7 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package testobjects.yaml;
import java.util.Map;
+
public class Parameter {
String name;
String label;
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/YamlFile.java b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/YamlFile.java
index 1c4989da37..2eb78e0ab5 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/YamlFile.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/openecomp-nosqldb-core/src/test/java/testobjects/yaml/YamlFile.java
@@ -1,7 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package testobjects.yaml;
import java.util.Map;
+
public class YamlFile {
String heat_template_version;
String description;
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml
index 63683631df..ce06d86b64 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml
@@ -2,6 +2,10 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-nosqldb-lib</name>
+ <artifactId>openecomp-nosqldb-lib</artifactId>
+ <groupId>org.openecomp.core</groupId>
+ <packaging>pom</packaging>
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
@@ -9,11 +13,6 @@
<relativePath>../..</relativePath>
</parent>
- <artifactId>openecomp-nosqldb-lib</artifactId>
-
- <name>openecomp-nosqldb-lib</name>
- <packaging>pom</packaging>
-
<modules>
<module>openecomp-nosqldb-api</module>
<module>openecomp-nosqldb-core</module>
@@ -21,13 +20,13 @@
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-api</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-core</artifactId>
<version>${project.version}</version>
<scope>runtime</scope>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..3a4bfd4ba0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-nosqldb-lib/pom.xml.versionsBackup
@@ -0,0 +1,35 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-nosqldb-lib</name>
+ <artifactId>openecomp-nosqldb-lib</artifactId>
+ <groupId>org.openecomp.core</groupId>
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <modules>
+ <module>openecomp-nosqldb-api</module>
+ <module>openecomp-nosqldb-core</module>
+ </modules>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-api</artifactId>
+ <version>${project.version}</version>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml
index 3810896784..c139be6f00 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml
@@ -2,49 +2,38 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-utilities-lib</name>
+ <artifactId>openecomp-utilities-lib</artifactId>
+
+
<parent>
<artifactId>openecomp-core-lib</artifactId>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<version>1.1.0-SNAPSHOT</version>
</parent>
- <artifactId>openecomp-utilities-lib</artifactId>
- <name>openecomp-utilities-lib</name>
-
-
<dependencies>
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
- <version>1.17</version>
+ <version>${snakeyaml.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
- <version>3.4</version>
+ <version>${commons.lang3.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
- <version>4.1</version>
+ <version>${commons.collections.version}</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
- <version>2.3.1</version>
+ <version>${gson.version}</version>
</dependency>
<dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
- <!--<dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.17</version>
- </dependency>-->
- <dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>${commons.codec.version}</version>
@@ -53,12 +42,12 @@
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
- <version>RELEASE</version>
+ <version>4.11</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
- <version>${org.codehaus.jackson.version}</version>
+ <version>${jackson.mapper.version}</version>
</dependency>
<dependency>
<groupId>org.everit.json</groupId>
@@ -77,6 +66,11 @@
</exclusion>
</exclusions>
</dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..1e448f5a61
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/pom.xml.versionsBackup
@@ -0,0 +1,83 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-utilities-lib</name>
+ <artifactId>openecomp-utilities-lib</artifactId>
+
+
+ <parent>
+ <artifactId>openecomp-core-lib</artifactId>
+ <groupId>org.openecomp.core</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+
+ <dependencies>
+ <dependency>
+ <groupId>org.yaml</groupId>
+ <artifactId>snakeyaml</artifactId>
+ <version>1.17</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-lang3</artifactId>
+ <version>3.4</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-collections4</artifactId>
+ <version>4.1</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ <version>2.3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ <version>${commons.codec.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-mapper-asl</artifactId>
+ <version>1.9.13</version>
+ </dependency>
+ <dependency>
+ <groupId>org.everit.json</groupId>
+ <artifactId>org.everit.json.schema</artifactId>
+ <version>1.3.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ <version>2.3.1</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/CommonMethods.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/CommonMethods.java
index 343636bd15..81a82c6298 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/CommonMethods.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/CommonMethods.java
@@ -21,6 +21,7 @@
package org.openecomp.core.utilities;
import org.apache.commons.codec.binary.Base64;
+import org.apache.commons.collections4.MapUtils;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -36,8 +37,10 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.Set;
import java.util.UUID;
@@ -45,14 +48,12 @@ import java.util.UUID;
* This class provides auxiliary static methods.
*/
public class CommonMethods {
- //private static final Logger logger = LoggerFactory.getLogger(CommonMethods.class);
-
- private static final char[] hexArray = "0123456789ABCDEF".toCharArray();
private static final char[] CHARS = new char[]{
'0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
};
+ private static final char[] hexArray = "0123456789ABCDEF".toCharArray();
/**
* Private default constructor to prevent instantiation of the class objects.
@@ -73,8 +74,8 @@ public class CommonMethods {
ObjectOutputStream ds = new ObjectOutputStream(byteArray);
ds.writeObject(object);
ds.close();
- } catch (IOException e0) {
- throw new RuntimeException(e0);
+ } catch (IOException exception) {
+ throw new RuntimeException(exception);
}
return byteArray.toByteArray();
@@ -93,8 +94,8 @@ public class CommonMethods {
ObjectInputStream stream = new ObjectInputStream(new ByteArrayInputStream(bytes));
obj = (Serializable) stream.readObject();
stream.close();
- } catch (IOException | ClassNotFoundException e0) {
- throw new RuntimeException(e0);
+ } catch (IOException | ClassNotFoundException exception) {
+ throw new RuntimeException(exception);
}
return obj;
@@ -185,8 +186,8 @@ public class CommonMethods {
/**
* Converts the array with Long elements to the array with long (primitive type).
*
- * @param array input array with Long elements.
- * @return array with the same elements converted to the long type (primitive).
+ * @param array input array with Long elements
+ * @return array with the same elements converted to the long type (primitive)
*/
public static long[] toPrimitive(Long[] array) {
if (array == null) {
@@ -255,12 +256,12 @@ public class CommonMethods {
* empty.
*
* @param <T> the type parameter
- * @param left Elements of this array will be copied to positions from 0 to
- * <tt>left.length - 1</tt> in the target array.
- * @param right Elements of this array will be copied to positions from
- * <tt>left.length</tt> to <tt>left.length + right.length</tt>
- * @return A newly allocate Java array that accommodates elements of source (left/right)
- arraysor one of source arrays if another is empty, <tt>null</tt> - otherwise.
+ * @param left Elements of this array will be copied to positions from 0 to <tt>left.length -
+ * 1</tt> in the target array.
+ * @param right Elements of this array will be copied to positions from <tt>left.length</tt> to
+ * <tt>left.length + right.length</tt>
+ * @return A newly allocate Java array that accommodates elements of source (left/right) arrays
+ orone of source arrays if another is empty, <tt>null</tt> - otherwise.
*/
@SuppressWarnings("unchecked")
public static <T> T[] concat(T[] left, T[] right) {
@@ -288,25 +289,25 @@ public class CommonMethods {
*
* @param <B> the type parameter
* @param <D> the type parameter
- * @param b0 An object instance to be casted to the specified Java type.
+ * @param b1 An object instance to be casted to the specified Java type.
* @param cls Target Java type.
* @return Object instance safely casted to the requested Java type.
- * @throws ClassCastException In case which is the given object is not instance of the
- * specified Java type.
+ * @throws ClassCastException In case which is the given object is not instance of the specified
+ * Java type.
*/
@SuppressWarnings("unchecked")
- public static <B, D> D cast(B b0, Class<D> cls) {
- D d0 = null;
- if (b0 != null) {
- if (!cls.isInstance(b0)) {
+ public static <B, D> D cast(B b1, Class<D> cls) {
+ D d1 = null;
+ if (b1 != null) {
+ if (!cls.isInstance(b1)) {
throw new ClassCastException(String
- .format("Failed to cast from '%s' to '%s'", b0.getClass().getName(), cls.getName()));
+ .format("Failed to cast from '%s' to '%s'", b1.getClass().getName(), cls.getName()));
} else {
- d0 = (D) b0;
+ d1 = (D) b1;
}
}
- return d0;
+ return d1;
} // cast
/**
@@ -349,8 +350,8 @@ public class CommonMethods {
Class<? extends T> impl = (Class<? extends T>) temp;
return newInstance(impl);
- } catch (ClassNotFoundException e0) {
- throw new IllegalArgumentException(e0);
+ } catch (ClassNotFoundException exception) {
+ throw new IllegalArgumentException(exception);
}
}
@@ -364,10 +365,10 @@ public class CommonMethods {
public static <T> T newInstance(Class<T> cls) {
try {
return cls.newInstance();
- } catch (InstantiationException e0) {
- throw new RuntimeException(e0);
- } catch (IllegalAccessException e0) {
- throw new RuntimeException(e0);
+ } catch (InstantiationException exception) {
+ throw new RuntimeException(exception);
+ } catch (IllegalAccessException exception) {
+ throw new RuntimeException(exception);
}
}
@@ -388,15 +389,15 @@ public class CommonMethods {
/**
* Gets stack trace.
*
- * @param t0 the t 0
+ * @param throwable the throwable
* @return the stack trace
*/
- public static String getStackTrace(Throwable t0) {
- if (null == t0) {
+ public static String getStackTrace(Throwable throwable) {
+ if (null == throwable) {
return "";
}
StringWriter sw = new StringWriter();
- t0.printStackTrace(new PrintWriter(sw));
+ throwable.printStackTrace(new PrintWriter(sw));
return sw.toString();
}
@@ -416,8 +417,8 @@ public class CommonMethods {
String str = sw.toString();
try {
sw.close();
- } catch (IOException e0) {
- System.err.println(e0);
+ } catch (IOException exception) {
+ System.err.println(exception);
}
return str;
@@ -530,10 +531,10 @@ public class CommonMethods {
public static String bytesToHex(byte[] bytes) {
char[] hexChars = new char[bytes.length * 2];
for (int j = 0; j < bytes.length; j++) {
- int v0 = bytes[j] & 0xFF;
- int x0 = j << 1;
- hexChars[x0] = hexArray[v0 >>> 4];
- hexChars[x0 + 1] = hexArray[v0 & 0x0F];
+ int var = bytes[j] & 0xFF;
+ int x1 = j << 1;
+ hexChars[x1] = hexArray[var >>> 4];
+ hexChars[x1 + 1] = hexArray[var & 0x0F];
}
return new String(hexChars);
}
@@ -543,13 +544,106 @@ public class CommonMethods {
*
* @param <T> the class of the objects in the set
* @param element the single element to be contained in the returned Set
- * @return an immutable set containing only the specified object.The returned set is serializable.
+ * @return an immutable set containing only the specified object. The returned set is
+ serializable.
*/
public static <T> Set<T> toSingleElementSet(T element) {
return Collections.singleton(element);
}
+ /**
+ * Merge lists of map list.
+ *
+ * @param <T> the type parameter
+ * @param <S> the type parameter
+ * @param target the target
+ * @param source the source
+ * @return the list
+ */
+ public static <T, S> List<Map<T, S>> mergeListsOfMap(List<Map<T, S>> target,
+ List<Map<T, S>> source) {
+ List<Map<T, S>> retList = new ArrayList<>();
+ if (Objects.nonNull(target)) {
+ retList.addAll(target);
+ }
+
+ if (Objects.nonNull(source)) {
+ for (Map<T, S> sourceMap : source) {
+ for (Map.Entry<T, S> entry : sourceMap.entrySet()) {
+ mergeEntryInList(entry.getKey(), entry.getValue(), retList);
+ }
+ }
+ }
+ return retList;
+ }
+
+ /**
+ * Merge lists list.
+ *
+ * @param <T> the type parameter
+ * @param target the target
+ * @param source the source
+ * @return the list
+ */
+ public static <T> List<T> mergeLists(List<T> target, List<T> source) {
+ List<T> retList = new ArrayList<>();
+
+ if (Objects.nonNull(source)) {
+ retList.addAll(source);
+ }
+ if (Objects.nonNull(target)) {
+ retList.addAll(target);
+ }
+
+ return retList;
+ }
+
+ /**
+ * Merge entry in list.
+ *
+ * @param <T> the type parameter
+ * @param <S> the type parameter
+ * @param key the key
+ * @param value the value
+ * @param target the target
+ */
+ public static <T, S> void mergeEntryInList(T key, S value, List<Map<T, S>> target) {
+ boolean found = false;
+ for (Map<T, S> map : target) {
+ if (map.containsKey(key)) {
+ map.put(key, value);
+ found = true;
+ }
+ }
+
+ if (!found) {
+ Map<T, S> newMap = new HashMap<>();
+ newMap.put(key, value);
+ target.add(newMap);
+ }
+ }
+
+
+ /**
+ * Merge maps map.
+ *
+ * @param <T> the type parameter
+ * @param <S> the type parameter
+ * @param target the target
+ * @param source the source
+ * @return the map
+ */
+ public static <T, S> Map<T, S> mergeMaps(Map<T, S> target, Map<T, S> source) {
+ Map<T, S> retMap = new HashMap<>();
+ if (MapUtils.isNotEmpty(source)) {
+ retMap.putAll(source);
+ }
+ if (MapUtils.isNotEmpty(target)) {
+ retMap.putAll(target);
+ }
+ return retMap;
+ }
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileContentHandler.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileContentHandler.java
index 67a79875d4..c828505932 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileContentHandler.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileContentHandler.java
@@ -29,6 +29,7 @@ import java.util.Map;
import java.util.Set;
public class FileContentHandler {
+
private Map<String, byte[]> files = new HashMap<>();
/**
@@ -57,6 +58,10 @@ public class FileContentHandler {
files.put(fileName, FileUtils.toByteArray(is));
}
+ public Map<String, byte[]> getFiles() {
+ return files;
+ }
+
public void setFiles(FileContentHandler extFiles) {
extFiles.getFileList().stream()
.forEach(fileName -> this.addFile(fileName, extFiles.getFileContent(fileName)));
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileUtils.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileUtils.java
index 72fa9ac7b8..664ccb68c6 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileUtils.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/file/FileUtils.java
@@ -20,14 +20,14 @@
package org.openecomp.core.utilities.file;
+import org.apache.commons.collections4.CollectionUtils;
import org.openecomp.core.utilities.json.JsonUtil;
import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.slf4j.MDC;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
+import java.io.*;
import java.net.URL;
import java.util.ArrayList;
import java.util.Enumeration;
@@ -59,6 +59,23 @@ public class FileUtils {
}
/**
+ * Gets file input stream.
+ *
+ * @param urlFile the url file
+ * @return the file input stream
+ */
+ public static InputStream getFileInputStream(URL urlFile) {
+ InputStream is;
+ try {
+ assert urlFile != null;
+ is = urlFile.openStream();
+ } catch (IOException exception) {
+ throw new RuntimeException(exception);
+ }
+ return is;
+ }
+
+ /**
* Gets file input streams.
*
* @param fileName the file name
@@ -134,9 +151,9 @@ public class FileUtils {
* @return the input stream
*/
public static InputStream loadFileToInputStream(String fileName) {
- URL urlFile = FileUtils.class.getClassLoader().getResource(fileName);
+ URL urlFile = Thread.currentThread().getContextClassLoader().getResource(fileName);
try {
- Enumeration<URL> en = FileUtils.class.getClassLoader().getResources(fileName);
+ Enumeration<URL> en = Thread.currentThread().getContextClassLoader().getResources(fileName);
while (en.hasMoreElements()) {
urlFile = en.nextElement();
}
@@ -248,6 +265,7 @@ public class FileUtils {
return mapFileContent;
}
+
/**
* The enum File extension.
*/
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonSchemaDataGenerator.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonSchemaDataGenerator.java
index 8968eeb323..84e4f6d7c9 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonSchemaDataGenerator.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonSchemaDataGenerator.java
@@ -22,22 +22,17 @@ package org.openecomp.core.utilities.json;
import org.json.JSONException;
import org.json.JSONObject;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import java.util.HashMap;
import java.util.Map;
-/**
- * The type Json schema data generator.
- */
public class JsonSchemaDataGenerator {
private static final String ROOT = "root";
- private static final Logger logger = LoggerFactory.getLogger(JsonSchemaDataGenerator.class);
- /**
- * The Include defaults.
- */
+ private static final Logger logger =
+ (Logger) LoggerFactory.getLogger(JsonSchemaDataGenerator.class);
boolean includeDefaults = true;
private JSONObject root;
private Map<String, Object> referencesData;
@@ -54,11 +49,6 @@ public class JsonSchemaDataGenerator {
root = new JSONObject(jsonSchema);
}
- /**
- * Sets include defaults.
- *
- * @param includeDefaults the include defaults
- */
public void setIncludeDefaults(boolean includeDefaults) {
this.includeDefaults = includeDefaults;
}
@@ -66,15 +56,16 @@ public class JsonSchemaDataGenerator {
/**
* Generates json data that conform to the schema according to turned on flags.
*
- * @return json that conform to the schema.
+ * @return json that conform to the schema
*/
public String generateData() {
referencesData = new HashMap<>();
JSONObject data = new JSONObject();
generateData(ROOT, root,
- data); // "root" is dummy name to represent the top level object (which, as apposed to
- // inner objects, doesn't have a name in the schema)
+ data);
+ // "root" is dummy name to represent the top level object
+ // (which, as apposed to inner objects, doesn't have a name in the schema)
return data.has(ROOT) ? data.get(ROOT).toString() : data.toString();
}
@@ -161,12 +152,12 @@ public class JsonSchemaDataGenerator {
default:
break;
}
- } catch (JSONException e0) {
+ } catch (JSONException exception) {
Object defaultValue = property.get(JsonSchemaKeyword.DEFAULT);
logger.error(String.format(
"Invalid schema: '%s' property type is '%s' but it has a default value which is not: %s.",
- propertyName, propertyType, defaultValue), e0);
- throw e0;
+ propertyName, propertyType, defaultValue), exception);
+ throw exception;
}
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonUtil.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonUtil.java
index 6ae3677a8d..87c75fce62 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonUtil.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/json/JsonUtil.java
@@ -20,14 +20,13 @@
package org.openecomp.core.utilities.json;
-
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonIOException;
import com.google.gson.JsonParser;
import com.google.gson.JsonSyntaxException;
-import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.collections4.CollectionUtils;
import org.everit.json.schema.EnumSchema;
import org.everit.json.schema.Schema;
import org.everit.json.schema.ValidationException;
@@ -82,17 +81,17 @@ public class JsonUtil {
* @return the t
*/
public static <T> T json2Object(String json, Class<T> classOfT) {
- T type;
+ T typ;
try {
try (Reader br = new StringReader(json)) {
- type = new Gson().fromJson(br, classOfT);
- } catch (IOException e0) {
- throw e0;
+ typ = new Gson().fromJson(br, classOfT);
+ } catch (IOException exception) {
+ throw exception;
}
- } catch (JsonIOException | JsonSyntaxException | IOException e0) {
- throw new RuntimeException(e0);
+ } catch (JsonIOException | JsonSyntaxException | IOException exception) {
+ throw new RuntimeException(exception);
}
- return type;
+ return typ;
}
/**
@@ -109,8 +108,8 @@ public class JsonUtil {
try (Reader br = new BufferedReader(new InputStreamReader(is))) {
type = new Gson().fromJson(br, classOfT);
}
- } catch (JsonIOException | JsonSyntaxException | IOException e0) {
- throw new RuntimeException(e0);
+ } catch (JsonIOException | JsonSyntaxException | IOException exception) {
+ throw new RuntimeException(exception);
} finally {
if (is != null) {
try {
@@ -153,16 +152,16 @@ public class JsonUtil {
.collect(Collectors.toList());
}
- private static String mapValidationExceptionToMessage(ValidationException e0) {
- if (e0.getViolatedSchema() instanceof EnumSchema) {
- return mapEnumViolationToMessage(e0);
+ private static String mapValidationExceptionToMessage(ValidationException exception) {
+ if (exception.getViolatedSchema() instanceof EnumSchema) {
+ return mapEnumViolationToMessage(exception);
}
- return e0.getMessage();
+ return exception.getMessage();
}
- private static String mapEnumViolationToMessage(ValidationException e1) {
- Set<Object> possibleValues = ((EnumSchema) e1.getViolatedSchema()).getPossibleValues();
- return e1.getMessage().replaceFirst("enum value", possibleValues.size() == 1
+ private static String mapEnumViolationToMessage(ValidationException exception) {
+ Set<Object> possibleValues = ((EnumSchema) exception.getViolatedSchema()).getPossibleValues();
+ return exception.getMessage().replaceFirst("enum value", possibleValues.size() == 1
? String.format("value. %s is the only possible value for this field",
possibleValues.iterator().next())
: String.format("value. Possible values: %s", CommonMethods
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/yaml/YamlUtil.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/yaml/YamlUtil.java
index 56261f08de..d38bf484e4 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/yaml/YamlUtil.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/main/java/org/openecomp/core/utilities/yaml/YamlUtil.java
@@ -20,9 +20,9 @@
package org.openecomp.core.utilities.yaml;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.core.utilities.CommonMethods;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import org.yaml.snakeyaml.DumperOptions;
import org.yaml.snakeyaml.TypeDescription;
import org.yaml.snakeyaml.Yaml;
@@ -45,19 +45,20 @@ import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Set;
+
/**
* The type Yaml util.
*/
public class YamlUtil {
- private static Logger logger = LoggerFactory.getLogger(YamlUtil.class);
+ private static Logger logger = (Logger) LoggerFactory.getLogger(YamlUtil.class);
/**
* Yaml to object t.
*
* @param <T> the type parameter
* @param yamlContent the yaml content
- * @param typClass the typ class
+ * @param typClass the t class
* @return the t
*/
public <T> T yamlToObject(String yamlContent, Class<T> typClass) {
@@ -76,7 +77,7 @@ public class YamlUtil {
*
* @param <T> the type parameter
* @param yamlContent the yaml content
- * @param typClass the typ class
+ * @param typClass the t class
* @return the t
*/
public <T> T yamlToObject(InputStream yamlContent, Class<T> typClass) {
@@ -102,7 +103,7 @@ public class YamlUtil {
yamlContent.close();
}
} catch (IOException ignore) {
- //nothing to dd
+ //do nothing
}
}
}
@@ -111,8 +112,8 @@ public class YamlUtil {
/**
* Gets constructor.
*
- * @param <T> the type parameter
- * @param typClass the typ class
+ * @param <T> the type parameter
+ * @param typClass the t class
* @return the constructor
*/
public <T> Constructor getConstructor(Class<T> typClass) {
@@ -128,6 +129,7 @@ public class YamlUtil {
return new MyPropertyUtils();
}
+
/**
* Yaml to map map.
*
@@ -145,7 +147,7 @@ public class YamlUtil {
* Object to yaml string.
*
* @param <T> the type parameter
- * @param obj the obj
+ * @param obj the obj
* @return the string
*/
public <T> String objectToYaml(Object obj) {
@@ -192,6 +194,16 @@ public class YamlUtil {
private class CustomRepresenter extends Representer {
@Override
+ protected MappingNode representJavaBean(Set<Property> properties, Object javaBean) {
+ //remove the bean type from the output yaml (!! ...)
+ if (!classTags.containsKey(javaBean.getClass())) {
+ addClassTag(javaBean.getClass(), Tag.MAP);
+ }
+
+ return super.representJavaBean(properties, javaBean);
+ }
+
+ @Override
protected NodeTuple representJavaBeanProperty(Object javaBean, Property property,
Object propertyValue, Tag customTag) {
if (propertyValue == null) {
@@ -205,16 +217,6 @@ public class YamlUtil {
: defaultNode;
}
}
-
- @Override
- protected MappingNode representJavaBean(Set<Property> properties, Object javaBean) {
- //remove the bean type from the output yaml (!! ...)
- if (!classTags.containsKey(javaBean.getClass())) {
- addClassTag(javaBean.getClass(), Tag.MAP);
- }
-
- return super.representJavaBean(properties, javaBean);
- }
}
@@ -222,6 +224,14 @@ public class YamlUtil {
* The type My property utils.
*/
public class MyPropertyUtils extends PropertyUtils {
+ //Unsorted properties
+ @Override
+ protected Set<Property> createPropertySet(Class<? extends Object> type, BeanAccess bnAccess)
+ throws IntrospectionException {
+ return new LinkedHashSet<Property>(getPropertiesMap(type,
+ BeanAccess.FIELD).values());
+ }
+
@Override
public Property getProperty(Class<?> type, String name) throws IntrospectionException {
if (name.equals("default")) {
@@ -230,14 +240,6 @@ public class YamlUtil {
return super.getProperty(type, name);
}
- //Unsorted properties
- @Override
- protected Set<Property> createPropertySet(Class<? extends Object> type, BeanAccess beanAccess)
- throws IntrospectionException {
- return new LinkedHashSet<Property>(getPropertiesMap(type,
- BeanAccess.FIELD).values());
- }
-
}
/**
@@ -255,16 +257,6 @@ public class YamlUtil {
}
@Override
- protected Map<Object, Object> constructMapping(MappingNode node) {
- try {
- return super.constructMapping(node);
- } catch (IllegalStateException exception) {
- throw new ParserException("while parsing MappingNode", node.getStartMark(),
- exception.getMessage(), node.getEndMark());
- }
- }
-
- @Override
protected Map<Object, Object> createDefaultMap() {
final Map<Object, Object> delegate = super.createDefaultMap();
return new AbstractMap<Object, Object>() {
@@ -282,6 +274,17 @@ public class YamlUtil {
}
};
}
+
+ @Override
+ protected Map<Object, Object> constructMapping(MappingNode node) {
+ try {
+ return super.constructMapping(node);
+ } catch (IllegalStateException exception) {
+ throw new ParserException("while parsing MappingNode",
+ node.getStartMark(), exception.getMessage(),
+ node.getEndMark());
+ }
+ }
}
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonSchemaDataGeneratorTest.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonSchemaDataGeneratorTest.java
index 83c87737d2..ba34d07034 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonSchemaDataGeneratorTest.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonSchemaDataGeneratorTest.java
@@ -1,8 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.core.utilities.json;
-import org.openecomp.core.utilities.file.FileUtils;
import org.json.JSONException;
import org.json.JSONObject;
+import org.openecomp.core.utilities.file.FileUtils;
import org.testng.Assert;
import org.testng.annotations.Test;
@@ -47,4 +67,4 @@ public class JsonSchemaDataGeneratorTest {
JSONObject dataJson = new JSONObject(data);
Assert.assertTrue(expectedData.similar(dataJson));
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java
index e232f72f38..6b8805797a 100644
--- a/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-utilities-lib/src/test/java/org/openecomp/core/utilities/json/JsonUtilTest.java
@@ -1,3 +1,23 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.core.utilities.json;
@@ -37,4 +57,4 @@ public class JsonUtilTest {
Assert.assertEquals(validationErrors.get(2),
"#/phoneNumber/0/code: expected type: Number, found: String");
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/pom.xml
new file mode 100644
index 0000000000..37930ff9b3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/pom.xml
@@ -0,0 +1,49 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-zusammen-api</name>
+ <artifactId>openecomp-zusammen-api</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen</groupId>
+ <artifactId>zusammen-adaptor-inbound-api</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-lang3</artifactId>
+ <version>3.4</version>
+ </dependency>
+ </dependencies>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenAdaptor.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenAdaptor.java
new file mode 100644
index 0000000000..1495ed27a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenAdaptor.java
@@ -0,0 +1,76 @@
+package org.openecomp.core.zusammen.api;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Item;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.datatypes.item.ItemVersionData;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import org.apache.commons.lang3.tuple.ImmutablePair;
+
+import java.util.Collection;
+import java.util.Optional;
+
+public interface ZusammenAdaptor {
+
+ Collection<Item> listItems(SessionContext context);
+
+ Id createItem(SessionContext context, Info info);
+
+ void updateItem(SessionContext context, Id itemId, Info info);
+
+ // TODO: 4/4/2017 fix this workaround when versionId will be recieved from UI
+ Optional<ItemVersion> getFirstVersion(SessionContext context, Id itemId);
+
+ Id createVersion(SessionContext context, Id itemId, Id baseVersionId,
+ ItemVersionData itemVersionData);
+
+ void updateVersion(SessionContext context, Id itemId, Id versionId,
+ ItemVersionData itemVersionData);
+
+ void tagVersion(SessionContext context, Id itemId, Id versionId, Tag tag);
+
+ void resetVersionHistory(SessionContext context, Id itemId, Id versionId, String changeRef);
+
+ Optional<ElementInfo> getElementInfo(SessionContext context, ElementContext elementContext,
+ Id elementId);
+
+ Optional<Element> getElement(SessionContext context, ElementContext elementContext,
+ String elementId); // TODO: 4/3/2017 change to Id
+
+ Optional<Element> getElementByName(
+ SessionContext context, ElementContext elementContext, Id parentElementId,
+ String elementName);
+
+ Collection<ElementInfo> listElements(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId);
+
+ Collection<Element> listElementData(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId);
+
+ /**
+ * Lists the sub elements of the element named <elementName> which is a sub element of <parentElementId>
+ * @param context
+ * @param elementContext
+ * @param parentElementId
+ * @param elementName
+ * @return
+ */
+ Collection<ElementInfo> listElementsByName(
+ SessionContext context, ElementContext elementContext, Id parentElementId,
+ String elementName);
+
+ Optional<ElementInfo> getElementInfoByName(
+ SessionContext context, ElementContext elementContext, Id parentElementId,
+ String elementName);
+
+ Optional<Element> saveElement(SessionContext context, ElementContext elementContext,
+ ZusammenElement element, String message);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/EnrichmentArtifactsServiceFactory.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenAdaptorFactory.java
index 63daa03f15..53981ba478 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/EnrichmentArtifactsServiceFactory.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenAdaptorFactory.java
@@ -18,16 +18,14 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.core.enrichment;
+package org.openecomp.core.zusammen.api;
-import org.openecomp.core.enrichment.enrichmentartifacts.EnrichmentArtifactsService;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
-public abstract class EnrichmentArtifactsServiceFactory
- extends AbstractComponentFactory<EnrichmentArtifactsService> {
+public abstract class ZusammenAdaptorFactory extends AbstractComponentFactory<ZusammenAdaptor> {
- public static EnrichmentArtifactsServiceFactory getInstance() {
- return AbstractFactory.getInstance(EnrichmentArtifactsServiceFactory.class);
+ public static ZusammenAdaptorFactory getInstance() {
+ return AbstractFactory.getInstance(ZusammenAdaptorFactory.class);
}
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenUtil.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenUtil.java
new file mode 100644
index 0000000000..3df6151fae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/java/org/openecomp/core/zusammen/api/ZusammenUtil.java
@@ -0,0 +1,40 @@
+package org.openecomp.core.zusammen.api;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.UserInfo;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.ItemVersionData;
+
+public class ZusammenUtil {
+ // TODO: 3/19/2017 add user and tenant args
+ public static SessionContext createSessionContext() {
+ SessionContext sessionContext = new SessionContext();
+ sessionContext.setUser(new UserInfo("GLOBAL_USER"));
+ sessionContext.setTenant("dox");
+ return sessionContext;
+ }
+
+ public static ZusammenElement buildStructuralElement(String structureElementName,
+ Action action) {
+ ZusammenElement element = new ZusammenElement();
+ Info info = new Info();
+ info.setName(structureElementName);
+ element.setInfo(info);
+ if (action != null) {
+ element.setAction(action);
+ }
+ return element;
+ }
+
+ // TODO: 4/24/2017 remove upon working with more than one single version
+ public static ItemVersionData createFirstVersionData() {
+ Info info = new Info();
+ info.setName("main version");
+ ItemVersionData itemVersionData = new ItemVersionData();
+ itemVersionData.setInfo(info);
+ return itemVersionData;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/resources/factoryConfiguration.json
new file mode 100644
index 0000000000..30abb9bfed
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-api/src/main/resources/factoryConfiguration.json
@@ -0,0 +1,3 @@
+{
+ "org.openecomp.core.zusammen.api.ZusammenAdaptorFactory": "org.openecomp.core.zusammen.impl.ZusammenAdaptorFactoryImpl"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/pom.xml
new file mode 100644
index 0000000000..eb418eae8f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/pom.xml
@@ -0,0 +1,85 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-zusammen-core</name>
+ <artifactId>openecomp-zusammen-core</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen</groupId>
+ <artifactId>zusammen-commons-utils</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen</groupId>
+ <artifactId>zusammen-adaptor-inbound-api</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen</groupId>
+ <artifactId>zusammen-adaptor-inbound-impl</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-plugin</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>com.datastax.cassandra</groupId>
+ <artifactId>cassandra-driver-core</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.datastax.cassandra</groupId>
+ <artifactId>cassandra-driver-mapping</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen.plugin</groupId>
+ <artifactId>zusammen-search-index-empty-plugin</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>javax.servlet-api</artifactId>
+ <version>3.1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnector.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnector.java
new file mode 100644
index 0000000000..f746d706e1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnector.java
@@ -0,0 +1,51 @@
+package org.openecomp.core.zusammen.db;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Item;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.datatypes.item.ItemVersionData;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import com.amdocs.zusammen.datatypes.response.Response;
+
+import java.util.Collection;
+import java.util.Optional;
+
+public interface ZusammenConnector {
+
+ Collection<Item> listItems(SessionContext context);
+
+ Id createItem(SessionContext context, Info info);
+
+ void updateItem(SessionContext context, Id itemId, Info info);
+
+
+ Collection<ItemVersion> listVersions(SessionContext context, Id itemId);
+
+ Id createVersion(SessionContext context, Id itemId, Id baseVersionId,
+ ItemVersionData itemVersionData);
+
+ void updateVersion(SessionContext context, Id itemId, Id versionId,
+ ItemVersionData itemVersionData);
+
+ void tagVersion(SessionContext context, Id itemId, Id versionId, Tag tag);
+
+ void resetVersionHistory(SessionContext context, Id itemId, Id versionId, String changeRef);
+
+
+ Collection<ElementInfo> listElements(SessionContext context, ElementContext elementContext,
+ Id parentElementId);
+
+ Response<ElementInfo> getElementInfo(SessionContext context, ElementContext elementContext, Id
+ elementId);
+
+ Response<Element> getElement(SessionContext context, ElementContext elementContext, Id elementId);
+
+ Optional<Element> saveElement(SessionContext context, ElementContext elementContext,
+ ZusammenElement element, String message);
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnectorFactory.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnectorFactory.java
new file mode 100644
index 0000000000..31a8bf598d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/ZusammenConnectorFactory.java
@@ -0,0 +1,31 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.core.zusammen.db;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+
+public abstract class ZusammenConnectorFactory extends AbstractComponentFactory<ZusammenConnector> {
+
+ public static ZusammenConnectorFactory getInstance() {
+ return AbstractFactory.getInstance(ZusammenConnectorFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorFactoryImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorFactoryImpl.java
new file mode 100644
index 0000000000..f3916521dd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorFactoryImpl.java
@@ -0,0 +1,39 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.core.zusammen.db.impl;
+
+import com.amdocs.zusammen.adaptor.inbound.api.item.ElementAdaptorFactory;
+import com.amdocs.zusammen.adaptor.inbound.api.item.ItemAdaptorFactory;
+import com.amdocs.zusammen.adaptor.inbound.api.item.ItemVersionAdaptorFactory;
+import org.openecomp.core.zusammen.db.ZusammenConnector;
+import org.openecomp.core.zusammen.db.ZusammenConnectorFactory;
+
+public class ZusammenConnectorFactoryImpl extends ZusammenConnectorFactory {
+ private static final ZusammenConnector INSTANCE =
+ new ZusammenConnectorImpl(ItemAdaptorFactory.getInstance(),
+ ItemVersionAdaptorFactory.getInstance(),
+ ElementAdaptorFactory.getInstance());
+
+ @Override
+ public ZusammenConnector createInterface() {
+ return INSTANCE;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorImpl.java
new file mode 100644
index 0000000000..8aa8e129df
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/db/impl/ZusammenConnectorImpl.java
@@ -0,0 +1,200 @@
+package org.openecomp.core.zusammen.db.impl;
+
+import com.amdocs.zusammen.adaptor.inbound.api.item.ElementAdaptorFactory;
+import com.amdocs.zusammen.adaptor.inbound.api.item.ItemAdaptorFactory;
+import com.amdocs.zusammen.adaptor.inbound.api.item.ItemVersionAdaptorFactory;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.Space;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Item;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.datatypes.item.ItemVersionData;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import com.amdocs.zusammen.datatypes.response.Response;
+import com.amdocs.zusammen.datatypes.response.ReturnCode;
+import org.openecomp.core.zusammen.db.ZusammenConnector;
+import org.openecomp.core.zusammen.impl.CassandraConnectionInitializer;
+import org.openecomp.core.zusammen.impl.ItemElementLoggerTargetServiceName;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+
+import java.util.Collection;
+import java.util.Optional;
+
+public class ZusammenConnectorImpl implements ZusammenConnector {
+
+ private ItemAdaptorFactory itemAdaptorFactory;
+ private ItemVersionAdaptorFactory versionAdaptorFactory;
+ private ElementAdaptorFactory elementAdaptorFactory;
+
+ public ZusammenConnectorImpl(
+ ItemAdaptorFactory itemAdaptorFactory,
+ ItemVersionAdaptorFactory versionAdaptorFactory,
+ ElementAdaptorFactory elementAdaptorFactory) {
+ this.itemAdaptorFactory = itemAdaptorFactory;
+ this.versionAdaptorFactory = versionAdaptorFactory;
+ this.elementAdaptorFactory = elementAdaptorFactory;
+ CassandraConnectionInitializer.setCassandraConnectionPropertiesToSystem();
+ }
+
+ @Override
+ public Collection<Item> listItems(SessionContext context) {
+ Response<Collection<Item>> response =
+ itemAdaptorFactory.createInterface(context).list(context);
+ if (response.isSuccessful()) {
+ return response.getValue();
+ } else {
+ return null;
+ }
+ }
+
+ @Override
+ public Id createItem(SessionContext context, Info info) {
+ Response<Id> response = itemAdaptorFactory.createInterface(context).create(context, info);
+ if (response.isSuccessful()) {
+ return response.getValue();
+ } else {
+ throw new RuntimeException(
+ "failed to create Item. message:" + response.getReturnCode().getMessage());
+ }
+ }
+
+ @Override
+ public void updateItem(SessionContext context, Id itemId, Info info) {
+ Response<Void> response =
+ itemAdaptorFactory.createInterface(context).update(context, itemId, info);
+
+ if (!response.isSuccessful()) {
+ throw new RuntimeException("failed to update Item . ItemId:" + itemId + "" +
+ " message:" + response.getReturnCode().getMessage());
+ }
+ }
+
+ @Override
+ public Collection<ItemVersion> listVersions(SessionContext context, Id itemId) {
+ Response<Collection<ItemVersion>> versions =
+ versionAdaptorFactory.createInterface(context).list(context, Space.PRIVATE, itemId);
+ if (!versions.isSuccessful()) {
+ logErrorMessageToMdc(ItemElementLoggerTargetServiceName.ITEM_VERSION_RETRIEVAL, versions
+ .getReturnCode());
+ throw new RuntimeException(versions.getReturnCode().getMessage()); // TODO: 3/26/2017
+ }
+ return versions.getValue();
+ }
+
+ @Override
+ public Id createVersion(SessionContext context, Id itemId, Id baseVersionId,
+ ItemVersionData itemVersionData) {
+ Response<Id> response = versionAdaptorFactory.createInterface(context).create(context, itemId,
+ baseVersionId, itemVersionData);
+ if (response.isSuccessful()) {
+ return response.getValue();
+ } else {
+ throw new RuntimeException("failed to create Item Version. ItemId:" + itemId + " based " +
+ "on:" + baseVersionId +
+ " message:" + response
+ .getReturnCode().getMessage());
+ }
+ }
+
+ @Override
+ public void updateVersion(SessionContext context, Id itemId, Id versionId,
+ ItemVersionData itemVersionData) {
+ Response<Void> response = versionAdaptorFactory.createInterface(context)
+ .update(context, itemId, versionId, itemVersionData);
+ if (!response.isSuccessful()) {
+ throw new RuntimeException(
+ String.format("failed to create Item Version. ItemId: %s, versionId: %s, message: %s",
+ itemId.getValue(), versionId.getValue(), response.getReturnCode().getMessage()));
+ }
+ }
+
+ @Override
+ public void tagVersion(SessionContext context, Id itemId, Id versionId, Tag tag) {
+ Response<Void> response = versionAdaptorFactory.createInterface(context)
+ .tag(context, itemId, versionId, null, tag);
+ if (!response.isSuccessful()) {
+ throw new RuntimeException(String.format(
+ "failed to tag Item Version with tag %s. ItemId: %s, versionId: %s, message: %s",
+ tag.getName(), itemId.getValue(), versionId.getValue(), response.getReturnCode()
+ .getMessage()));
+ }
+ }
+
+ @Override
+ public void resetVersionHistory(SessionContext context, Id itemId, Id versionId,
+ String changeRef) {
+ Response<Void> response = versionAdaptorFactory.createInterface(context)
+ .resetHistory(context, itemId, versionId, changeRef);
+ if (!response.isSuccessful()) {
+ throw new RuntimeException(String.format(
+ "failed to reset Item Version back to %s. ItemId: %s, versionId: %s, message: %s",
+ changeRef, itemId.getValue(), versionId.getValue(),
+ response.getReturnCode().getMessage()));
+ }
+ }
+
+ @Override
+ public Collection<ElementInfo> listElements(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId) {
+ Response<Collection<ElementInfo>> elementInfosResponse = elementAdaptorFactory
+ .createInterface(context).list(context, elementContext, parentElementId);
+ if (elementInfosResponse.isSuccessful()) {
+ return elementInfosResponse.getValue();
+ } else {
+ logErrorMessageToMdc(ItemElementLoggerTargetServiceName.ELEMENT_GET_BY_PROPERTY,
+ elementInfosResponse.getReturnCode());
+ throw new RuntimeException(elementInfosResponse.getReturnCode().getMessage());
+ }
+ }
+
+ @Override
+ public Response<ElementInfo> getElementInfo(SessionContext context, ElementContext elementContext,
+ Id elementId) {
+ return elementAdaptorFactory.createInterface(context)
+ .getInfo(context, elementContext, elementId);
+ }
+
+
+ @Override
+ public Response<Element> getElement(SessionContext context, ElementContext elementContext,
+ Id elementId) {
+ return elementAdaptorFactory.createInterface(context).get(context, elementContext, elementId);
+ }
+
+ @Override
+ public Optional<Element> saveElement(SessionContext context, ElementContext elementContext,
+ ZusammenElement element, String message) {
+ Response<Element> saveResponse = elementAdaptorFactory.createInterface(context)
+ .save(context, elementContext, element, message);
+ return saveResponse.isSuccessful()
+ ? Optional.of(saveResponse.getValue())
+ : Optional.empty(); // TODO: 3/21/2017 error?
+ }
+
+ private void logErrorMessageToMdc(ItemElementLoggerTargetServiceName
+ itemElementLoggerTargetServiceName,
+ ReturnCode returnCode) {
+ logErrorMessageToMdc(itemElementLoggerTargetServiceName, returnCode.toString());
+ }
+
+ private void logErrorMessageToMdc(ItemElementLoggerTargetServiceName
+ itemElementLoggerTargetServiceName,
+ String message) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ itemElementLoggerTargetServiceName.getDescription(),
+ ErrorLevel.ERROR.name(),
+ LoggerErrorCode.BUSINESS_PROCESS_ERROR.getErrorCode(),
+ message);
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/CassandraConnectionInitializer.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/CassandraConnectionInitializer.java
new file mode 100644
index 0000000000..47cb57c5f7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/CassandraConnectionInitializer.java
@@ -0,0 +1,59 @@
+package org.openecomp.core.zusammen.impl;
+
+
+import org.apache.commons.lang3.StringUtils;
+import org.openecomp.core.nosqldb.util.CassandraUtils;
+
+import javax.servlet.ServletContextEvent;
+import javax.servlet.ServletContextListener;
+
+/**
+ * @author Avrahamg
+ * @since April 25, 2017
+ */
+
+public class CassandraConnectionInitializer implements ServletContextListener {
+ @Override
+ public void contextInitialized(ServletContextEvent servletContextEvent) {
+ setCassandraConnectionPropertiesToSystem();
+ }
+
+ public static void setCassandraConnectionPropertiesToSystem() {
+ if (!System.getProperties().containsKey("cassandra.nodes")) {
+ System.setProperty("cassandra.nodes", StringUtils.join(CassandraUtils.getAddresses(), ','));
+ }
+ if (!System.getProperties().containsKey("cassandra.authenticate")) {
+ System
+ .setProperty("cassandra.authenticate",
+ CassandraUtils.isAuthenticate() ? "true" : "false");
+ }
+ if (!System.getProperties().containsKey("cassandra.ssl")) {
+ System.setProperty("cassandra.ssl",
+ CassandraUtils.isSsl() ? "true" : "false");
+ }
+ if (!System.getProperties().containsKey("cassandra.truststore")) {
+ System.setProperty("cassandra.truststore", CassandraUtils.getTruststore());
+ }
+ if (!System.getProperties().containsKey("cassandra.truststore.password")) {
+ System.setProperty("cassandra.truststore.password", CassandraUtils.getTruststorePassword());
+ }
+ if (!System.getProperties().containsKey("cassandra.user")) {
+ System.setProperty("cassandra.user", CassandraUtils.getUser());
+ }
+ if (!System.getProperties().containsKey("cassandra.password")) {
+ System.setProperty("cassandra.password", CassandraUtils.getPassword());
+ }
+ if (!System.getProperties().containsKey("cassandra.keyspace")) {
+ System.setProperty("cassandra.keyspace", "zusammen");
+ }
+ }
+
+ // -Dcassandra.nodes=10.147.97.145 -Dcassandra.keyspace=zusammen -Dcassandra.authenticate=true -Dcassandra.ssl=true
+ // -Dcassandra.truststore=/apps/jetty/base/be/config/.truststore -Dcassandra.truststore.password=Aa123456
+ // -Dcassandra.user=asdc_user -Dcassandra.password=Aa1234%^!
+
+ @Override
+ public void contextDestroyed(ServletContextEvent servletContextEvent) {
+
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ItemElementLoggerTargetServiceName.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ItemElementLoggerTargetServiceName.java
new file mode 100644
index 0000000000..1a4466a3c5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ItemElementLoggerTargetServiceName.java
@@ -0,0 +1,27 @@
+package org.openecomp.core.zusammen.impl;
+
+/**
+ * @author Avrahamg.
+ * @since February 19, 2017
+ */
+public enum ItemElementLoggerTargetServiceName {
+ ITEM_CREATION("Item Creation"),
+ ITEM_VERSION_CREATION("Item Version Creation"),
+ ELEMENT_CREATION("Element Creation"),
+ ELEMENT_UPDATE("Element Update"),
+ ELEMENT_LIST("Element List"),
+ ELEMENT_GET("Element Get"),
+ ELEMENT_GET_BY_PROPERTY("Element Get By Property"),
+ ITEM_RETRIEVAL("Item retrieval"),
+ ITEM_VERSION_RETRIEVAL("Item version retrieval)");
+
+ private final String description;
+
+ public String getDescription() {
+ return description;
+ }
+
+ ItemElementLoggerTargetServiceName(String description) {
+ this.description = description;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VspQuestionnaireDaoFactoryImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ZusammenAdaptorFactoryImpl.java
index aa91302ca2..edc1abf108 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VspQuestionnaireDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ZusammenAdaptorFactoryImpl.java
@@ -18,16 +18,18 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+package org.openecomp.core.zusammen.impl;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.VspQuestionnaireDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.VspQuestionnaireDaoFactory;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
+import org.openecomp.core.zusammen.db.ZusammenConnectorFactory;
-public class VspQuestionnaireDaoFactoryImpl extends VspQuestionnaireDaoFactory {
- private static final VspQuestionnaireDao INSTANCE = new VspQuestionnaireDaoCassandraImpl();
+public class ZusammenAdaptorFactoryImpl extends ZusammenAdaptorFactory {
+ private static final ZusammenAdaptor INSTANCE =
+ new ZusammenAdaptorImpl(ZusammenConnectorFactory.getInstance().createInterface());
@Override
- public VspQuestionnaireDao createInterface() {
+ public ZusammenAdaptor createInterface() {
return INSTANCE;
}
}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ZusammenAdaptorImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ZusammenAdaptorImpl.java
new file mode 100644
index 0000000000..ad4839bd00
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/ZusammenAdaptorImpl.java
@@ -0,0 +1,228 @@
+package org.openecomp.core.zusammen.impl;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Item;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.datatypes.item.ItemVersionData;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import com.amdocs.zusammen.datatypes.response.Response;
+import com.amdocs.zusammen.datatypes.response.ReturnCode;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.db.ZusammenConnector;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.Optional;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
+
+public class ZusammenAdaptorImpl implements ZusammenAdaptor {
+
+ private ZusammenConnector connector;
+
+ public ZusammenAdaptorImpl(ZusammenConnector connector) {
+ this.connector = connector;
+ }
+
+ @Override
+ public Optional<ItemVersion> getFirstVersion(SessionContext context, Id itemId) {
+ Collection<ItemVersion> versions = connector.listVersions(context, itemId);
+ if(versions == null || versions.size()==0) {
+ return Optional.empty();
+ }
+ List<ItemVersion> itemVersions = new ArrayList<>(versions);
+ sortItemVersionListByModificationTimeDescOrder(itemVersions);
+ ItemVersion itemVersion = itemVersions.iterator().next();
+
+ return Optional.ofNullable(itemVersion);
+ }
+
+ @Override
+ public Optional<ElementInfo> getElementInfo(SessionContext context, ElementContext elementContext,
+ Id elementId) {
+ Response<ElementInfo> response = connector.getElementInfo(context, elementContext, elementId);
+ return response.isSuccessful() ? Optional.ofNullable(response.getValue()) : Optional.empty();
+ }
+
+ @Override
+ public Optional<Element> getElement(SessionContext context, ElementContext elementContext,
+ String elementId) {
+ Response<Element> response = connector.getElement(context, elementContext, new Id(elementId));
+ return response.isSuccessful() ? Optional.ofNullable(response.getValue()) : Optional.empty();
+ }
+
+ @Override
+ public Optional<Element> getElementByName(
+ SessionContext context, ElementContext elementContext, Id parentElementId,
+ String elementName) {
+ Collection<ElementInfo> elementInfos =
+ connector.listElements(context, elementContext, parentElementId);
+ Predicate<ElementInfo> elementInfoPredicate = elementInfo -> elementInfo.getInfo() != null
+ && elementName.equals(elementInfo.getInfo().getName());
+ return getFirstElementInfo(elementInfos, elementInfoPredicate)
+ .map(elementInfo -> getElement(context, elementContext, elementInfo.getId().getValue()))
+ .orElse(Optional.empty());
+ }
+
+ @Override
+ public Collection<ElementInfo> listElements(SessionContext context, ElementContext elementContext,
+ Id parentElementId) {
+ return connector.listElements(context, elementContext, parentElementId);
+ }
+
+ @Override
+ public Collection<Element> listElementData(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId) {
+
+ Collection<ElementInfo> elementInfoList = connector.listElements(context, elementContext,
+ parentElementId);
+ if (elementInfoList != null) {
+ return elementInfoList.stream().map(elementInfo -> connector.getElement(context,
+ elementContext, elementInfo.getId()).getValue()).collect(Collectors.toList());
+ }
+
+ return new ArrayList<>();
+
+ }
+
+
+ @Override
+ public Collection<ElementInfo> listElementsByName(
+ SessionContext context, ElementContext elementContext, Id parentElementId,
+ String elementName) {
+ Optional<ElementInfo> elementInfoByName =
+ getElementInfoByName(context, elementContext, parentElementId, elementName);
+
+ return elementInfoByName.isPresent()
+ ? connector.listElements(context, elementContext, elementInfoByName.get().getId())
+ : new ArrayList<>();
+ }
+
+ @Override
+ public Optional<ElementInfo> getElementInfoByName(
+ SessionContext context, ElementContext elementContext, Id parentElementId,
+ String elementName) {
+ Collection<ElementInfo> elementInfos =
+ connector.listElements(context, elementContext, parentElementId);
+ return getFirstElementInfo(elementInfos,
+ elementInfo -> elementInfo.getInfo() != null &&
+ elementName.equals(elementInfo.getInfo().getName()));
+ }
+
+ @Override
+ public Optional<Element> saveElement(SessionContext context, ElementContext elementContext,
+ ZusammenElement element, String message) {
+ enrichElementHierarchyRec(context, elementContext, null, element);
+ return connector.saveElement(context, elementContext, element, message);
+ }
+
+ private void enrichElementHierarchyRec(SessionContext context, ElementContext
+ elementContext, Id parentElementId, ZusammenElement element) {
+ if (element.getAction() == Action.CREATE) {
+ return;
+ }
+ locateElementAndUpdateAction(context, elementContext, parentElementId, element);
+ element.getSubElements().forEach(subElement -> enrichElementHierarchyRec(
+ context, elementContext, element.getElementId(), (ZusammenElement) subElement));
+ }
+
+ // should be applied only for structural elements
+ private void locateElementAndUpdateAction(SessionContext context, ElementContext elementContext,
+ Id parentElementId, ZusammenElement element) {
+ if (element.getElementId() != null) {
+ return;
+ }
+ Optional<ElementInfo> elementInfo =
+ getElementInfoByName(context, elementContext, parentElementId, element.getInfo().getName());
+ if (elementInfo.isPresent()) {
+ element.setElementId(elementInfo.get().getId());
+ if (element.getAction() == null) {
+ element.setAction(Action.IGNORE);
+ }
+ } else {
+ element.setAction(Action.CREATE);
+ }
+ }
+
+ private Optional<ElementInfo> getFirstElementInfo(Collection<ElementInfo> elementInfos,
+ Predicate<ElementInfo> elementInfoPredicate) {
+ return elementInfos.stream()
+ .filter(elementInfoPredicate)
+ .findFirst();
+ }
+
+ private void logErrorMessageToMdc(ItemElementLoggerTargetServiceName
+ itemElementLoggerTargetServiceName,
+ ReturnCode returnCode) {
+ logErrorMessageToMdc(itemElementLoggerTargetServiceName, returnCode.toString());
+ }
+
+ private void logErrorMessageToMdc(ItemElementLoggerTargetServiceName
+ itemElementLoggerTargetServiceName,
+ String message) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ itemElementLoggerTargetServiceName.getDescription(),
+ ErrorLevel.ERROR.name(),
+ LoggerErrorCode.BUSINESS_PROCESS_ERROR.getErrorCode(),
+ message);
+ }
+
+ @Override
+ public Id createItem(SessionContext context, Info info) {
+ return connector.createItem(context, info);
+ }
+
+ @Override
+ public Id createVersion(SessionContext context, Id itemId, Id baseVersionId, ItemVersionData
+ itemVersionData) {
+ return connector.createVersion(context, itemId, baseVersionId, itemVersionData);
+
+ }
+
+ @Override
+ public Collection<Item> listItems(SessionContext context) {
+ return connector.listItems(context);
+ }
+
+ @Override
+ public void updateVersion(SessionContext context, Id itemId, Id versionId,
+ ItemVersionData itemVersionData) {
+ connector.updateVersion(context, itemId, versionId, itemVersionData);
+ }
+
+ @Override
+ public void tagVersion(SessionContext context, Id itemId, Id versionId, Tag tag) {
+ connector.tagVersion(context, itemId, versionId, tag);
+ }
+
+ @Override
+ public void resetVersionHistory(SessionContext context, Id itemId, Id versionId,
+ String changeRef) {
+ connector.resetVersionHistory(context, itemId, versionId, changeRef);
+ }
+
+ @Override
+ public void updateItem(SessionContext context, Id itemId, Info info) {
+ connector.updateItem(context, itemId, info);
+ }
+
+ private static void sortItemVersionListByModificationTimeDescOrder(
+ List<ItemVersion> itemVersions) {
+ itemVersions.sort((o1, o2) -> ((Integer)o2.getId().getValue().length())
+ .compareTo( (o1.getId().getValue().length())));
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/resources/factoryConfiguration.json
new file mode 100644
index 0000000000..eb20b04531
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/resources/factoryConfiguration.json
@@ -0,0 +1,3 @@
+{
+ "org.openecomp.core.zusammen.db.ZusammenConnectorFactory": "org.openecomp.core.zusammen.db.impl.ZusammenConnectorFactoryImpl"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/pom.xml
new file mode 100644
index 0000000000..7c41ca730c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/pom.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>openecomp-zusammen-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>com.amdocs.zusammen</groupId>
+ <artifactId>zusammen-sdk</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen</groupId>
+ <artifactId>zusammen-commons-db-api</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen</groupId>
+ <artifactId>zusammen-commons-db-impl</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.amdocs.zusammen.plugin</groupId>
+ <artifactId>zusammen-state-store-cassandra-plugin</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginConstants.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginConstants.java
new file mode 100644
index 0000000000..f9e6091fb0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginConstants.java
@@ -0,0 +1,25 @@
+/*
+ * Copyright © 2016-2017 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.core.zusammen.plugin;
+
+
+import com.amdocs.zusammen.datatypes.Id;
+
+public class ZusammenPluginConstants {
+ public static final String PUBLIC_SPACE = "public";
+ public static final Id ROOT_ELEMENTS_PARENT_ID = Id.ZERO;
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginUtil.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginUtil.java
new file mode 100644
index 0000000000..59afa70e9a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/ZusammenPluginUtil.java
@@ -0,0 +1,95 @@
+/*
+ * Copyright © 2016-2017 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.core.zusammen.plugin;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.Space;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationElement;
+import com.amdocs.zusammen.utils.fileutils.FileUtils;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+
+import java.io.ByteArrayInputStream;
+import java.nio.ByteBuffer;
+
+public class ZusammenPluginUtil {
+
+ public static String getSpaceName(SessionContext context, Space space) {
+ switch (space) {
+ case PUBLIC:
+ return ZusammenPluginConstants.PUBLIC_SPACE;
+ case PRIVATE:
+ return ZusammenPluginUtil.getPrivateSpaceName(context);
+ default:
+ throw new IllegalArgumentException(String.format("Space %s is not supported.", space));
+ }
+ }
+
+ public static String getPrivateSpaceName(SessionContext context) {
+ return context.getUser().getUserName();
+ }
+
+ public static ElementEntity getElementEntity(CollaborationElement element) {
+ ElementEntity elementEntity = new ElementEntity(element.getId());
+ elementEntity.setNamespace(element.getNamespace());
+ elementEntity.setParentId(element.getParentId() == null
+ ? ZusammenPluginConstants.ROOT_ELEMENTS_PARENT_ID
+ : element.getParentId());
+ elementEntity.setInfo(element.getInfo());
+ elementEntity.setRelations(element.getRelations());
+ if (element.getData() != null) {
+ elementEntity.setData(ByteBuffer.wrap(FileUtils.toByteArray(element.getData())));
+ }
+ if (element.getSearchableData() != null) {
+ elementEntity.setSearchableData(
+ ByteBuffer.wrap(FileUtils.toByteArray(element.getSearchableData())));
+ }
+ if (element.getVisualization() != null) {
+ elementEntity.setVisualization(
+ ByteBuffer.wrap(FileUtils.toByteArray(element.getVisualization())));
+ }
+ return elementEntity;
+ }
+
+ public static CollaborationElement getCollaborationElement(
+ ElementEntityContext elementEntityContext, ElementEntity elementEntity) {
+ Id parentId =
+ ZusammenPluginConstants.ROOT_ELEMENTS_PARENT_ID.equals(elementEntity.getParentId())
+ ? null
+ : elementEntity.getParentId();
+ CollaborationElement element = new CollaborationElement(elementEntityContext.getItemId(),
+ elementEntityContext.getVersionId(), elementEntity.getNamespace(), elementEntity.getId());
+
+ element.setParentId(parentId);
+ element.setInfo(elementEntity.getInfo());
+ element.setRelations(elementEntity.getRelations());
+
+ if (elementEntity.getData() != null) {
+ element.setData(new ByteArrayInputStream(elementEntity.getData().array()));
+ }
+ if (elementEntity.getSearchableData() != null) {
+ element.setSearchableData(
+ new ByteArrayInputStream(elementEntity.getSearchableData().array()));
+ }
+ if (elementEntity.getVisualization() != null) {
+ element.setVisualization(new ByteArrayInputStream(elementEntity.getVisualization().array()));
+ }
+ element.setSubElements(elementEntity.getSubElementIds());
+ return element;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/ElementCollaborationStore.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/ElementCollaborationStore.java
new file mode 100644
index 0000000000..93ee2d058b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/ElementCollaborationStore.java
@@ -0,0 +1,101 @@
+package org.openecomp.core.zusammen.plugin.collaboration;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationElement;
+import org.openecomp.core.zusammen.plugin.ZusammenPluginConstants;
+import org.openecomp.core.zusammen.plugin.ZusammenPluginUtil;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepository;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepositoryFactory;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+import static org.openecomp.core.zusammen.plugin.ZusammenPluginUtil.getSpaceName;
+
+
+public class ElementCollaborationStore {
+
+ public Collection<CollaborationElement> listElements(SessionContext context,
+ ElementContext elementContext,
+ Id elementId) {
+ ElementEntityContext elementEntityContext =
+ new ElementEntityContext(ZusammenPluginUtil.getPrivateSpaceName(context), elementContext);
+
+ if (elementId == null) {
+ elementId = ZusammenPluginConstants.ROOT_ELEMENTS_PARENT_ID;
+ }
+
+ ElementRepository elementRepository = getElementRepository(context);
+ return elementRepository.get(context, elementEntityContext, new ElementEntity(elementId))
+ .map(ElementEntity::getSubElementIds).orElse(new HashSet<>()).stream()
+ .map(subElementId -> elementRepository
+ .get(context, elementEntityContext, new ElementEntity(subElementId)).get())
+ .filter(Objects::nonNull)
+ .map(subElement -> ZusammenPluginUtil
+ .getCollaborationElement(elementEntityContext, subElement))
+ .collect(Collectors.toList());
+ }
+
+ public CollaborationElement getElement(SessionContext context, ElementContext elementContext,
+ Id elementId) {
+ ElementEntityContext elementEntityContext =
+ new ElementEntityContext(ZusammenPluginUtil.getPrivateSpaceName(context), elementContext);
+ return getElementRepository(context)
+ .get(context, elementEntityContext, new ElementEntity(elementId))
+ .map(elementEntity -> ZusammenPluginUtil
+ .getCollaborationElement(elementEntityContext, elementEntity))
+ .orElse(null);
+ }
+
+ public void createElement(SessionContext context, CollaborationElement element) {
+ getElementRepository(context)
+ .create(context,
+ new ElementEntityContext(getSpaceName(context, element.getSpace()),
+ element.getItemId(), element.getVersionId()),
+ ZusammenPluginUtil.getElementEntity(element));
+ }
+
+ public void updateElement(SessionContext context, CollaborationElement element) {
+ getElementRepository(context)
+ .update(context,
+ new ElementEntityContext(getSpaceName(context, element.getSpace()),
+ element.getItemId(), element.getVersionId()),
+ ZusammenPluginUtil.getElementEntity(element));
+ }
+
+ public void deleteElement(SessionContext context, CollaborationElement element) {
+ deleteElementHierarchy(getElementRepository(context),
+ context,
+ new ElementEntityContext(getSpaceName(context, element.getSpace()),
+ element.getItemId(), element.getVersionId()),
+ ZusammenPluginUtil.getElementEntity(element));
+ }
+
+ private void deleteElementHierarchy(ElementRepository elementRepository, SessionContext context,
+ ElementEntityContext elementEntityContext,
+ ElementEntity elementEntity) {
+ Optional<ElementEntity> retrieved =
+ elementRepository.get(context, elementEntityContext, elementEntity);
+ if (!retrieved.isPresent()) {
+ return;
+ }
+ retrieved.get().getSubElementIds().stream()
+ .map(ElementEntity::new)
+ .forEach(subElementEntity -> deleteElementHierarchy(
+ elementRepository, context, elementEntityContext, subElementEntity));
+
+ // only for the first one the parentId will populated (so it'll be removed from its parent)
+ elementRepository.delete(context, elementEntityContext, elementEntity);
+ }
+
+ protected ElementRepository getElementRepository(SessionContext context) {
+ return ElementRepositoryFactory.getInstance().createInterface(context);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/VersionCollaborationStore.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/VersionCollaborationStore.java
new file mode 100644
index 0000000000..ae23b6e8a9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/collaboration/VersionCollaborationStore.java
@@ -0,0 +1,79 @@
+package org.openecomp.core.zusammen.plugin.collaboration;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.Space;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationElementChange;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationMergeChange;
+import org.openecomp.core.zusammen.plugin.ZusammenPluginUtil;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepository;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepositoryFactory;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+
+import java.util.Collection;
+
+import static org.openecomp.core.zusammen.plugin.ZusammenPluginUtil.getSpaceName;
+
+public class VersionCollaborationStore {
+
+ public void tagItemVersion(SessionContext context, Id itemId, Id versionId, Id changeId,
+ Tag tag) {
+ if (changeId != null) {
+ throw new UnsupportedOperationException(
+ "In this plugin implementation tag is supported only on versionId");
+ }
+ copyElements(context, getSpaceName(context, Space.PRIVATE), itemId, versionId, tag.getName());
+ }
+
+ public CollaborationMergeChange resetItemVersionHistory(SessionContext context, Id itemId,
+ Id versionId, String changeRef) {
+ ElementRepository elementRepository = getElementRepository(context);
+ ElementEntityContext elementContext =
+ new ElementEntityContext(getSpaceName(context, Space.PRIVATE), itemId, versionId);
+
+ CollaborationMergeChange resetChange = new CollaborationMergeChange();
+
+ Collection<ElementEntity> versionElements = elementRepository.list(context, elementContext);
+ versionElements.stream()
+ .map(elementEntity ->
+ convertElementEntityToElementChange(elementEntity, elementContext, Action.DELETE))
+ .forEach(resetChange.getChangedElements()::add);
+
+ elementContext.setChangeRef(changeRef);
+ Collection<ElementEntity> changeRefElements = elementRepository.list(context, elementContext);
+ changeRefElements.stream()
+ .map(elementEntity ->
+ convertElementEntityToElementChange(elementEntity, elementContext, Action.CREATE))
+ .forEach(resetChange.getChangedElements()::add);
+
+ return resetChange; // TODO: 4/19/2017 version change...
+ }
+
+ private void copyElements(SessionContext context, String space, Id itemId, Id sourceVersionId,
+ String targetTag) {
+ ElementRepository elementRepository = getElementRepository(context);
+ ElementEntityContext elementContext = new ElementEntityContext(space, itemId, sourceVersionId);
+
+ Collection<ElementEntity> versionElements = elementRepository.list(context, elementContext);
+
+ elementContext.setChangeRef(targetTag);
+ versionElements
+ .forEach(elementEntity -> elementRepository.create(context, elementContext, elementEntity));
+ }
+
+ private CollaborationElementChange convertElementEntityToElementChange(
+ ElementEntity elementEntity, ElementEntityContext elementContext, Action action) {
+ CollaborationElementChange elementChange = new CollaborationElementChange();
+ elementChange
+ .setElement(ZusammenPluginUtil.getCollaborationElement(elementContext, elementEntity));
+ elementChange.setAction(action);
+ return elementChange;
+ }
+
+ protected ElementRepository getElementRepository(SessionContext context) {
+ return ElementRepositoryFactory.getInstance().createInterface(context);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepository.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepository.java
new file mode 100644
index 0000000000..468b6f0a28
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepository.java
@@ -0,0 +1,25 @@
+package org.openecomp.core.zusammen.plugin.dao;
+
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+
+import java.util.Collection;
+import java.util.Optional;
+
+public interface ElementRepository {
+
+ Collection<ElementEntity> list(SessionContext context, ElementEntityContext elementContext);
+
+ void create(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
+
+ void update(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
+
+ void delete(SessionContext context, ElementEntityContext elementContext, ElementEntity element);
+
+ Optional<ElementEntity> get(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element);
+
+ void createNamespace(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element);
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepositoryFactory.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepositoryFactory.java
new file mode 100644
index 0000000000..c541302d97
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/ElementRepositoryFactory.java
@@ -0,0 +1,14 @@
+package org.openecomp.core.zusammen.plugin.dao;
+
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.utils.facade.api.AbstractComponentFactory;
+import com.amdocs.zusammen.utils.facade.api.AbstractFactory;
+
+public abstract class ElementRepositoryFactory extends AbstractComponentFactory<ElementRepository> {
+ public static ElementRepositoryFactory getInstance() {
+ return AbstractFactory.getInstance(ElementRepositoryFactory.class);
+ }
+
+ public abstract ElementRepository createInterface(SessionContext context);
+}
+
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraDaoUtils.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraDaoUtils.java
new file mode 100644
index 0000000000..20a1e1803f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraDaoUtils.java
@@ -0,0 +1,27 @@
+package org.openecomp.core.zusammen.plugin.dao.impl;
+
+import com.datastax.driver.core.Session;
+import com.amdocs.zusammen.commons.db.api.cassandra.CassandraConnectorFactory;
+import com.amdocs.zusammen.commons.db.api.cassandra.types.CassandraContext;
+import com.amdocs.zusammen.datatypes.SessionContext;
+
+class CassandraDaoUtils {
+
+ static <T> T getAccessor(SessionContext context, Class<T> classOfT) {
+ return CassandraConnectorFactory.getInstance().createInterface(getCassandraContext(context))
+ .getMappingManager()
+ .createAccessor(classOfT);
+ }
+
+ static Session getSession(SessionContext context) {
+ return CassandraConnectorFactory.getInstance().createInterface(getCassandraContext(context))
+ .getMappingManager()
+ .getSession();
+ }
+
+ private static CassandraContext getCassandraContext(SessionContext context) {
+ CassandraContext cassandraContext = new CassandraContext();
+ cassandraContext.setTenant(context.getTenant());
+ return cassandraContext;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java
new file mode 100644
index 0000000000..12fd2dabba
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepository.java
@@ -0,0 +1,358 @@
+/*
+ * Copyright © 2016-2017 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.core.zusammen.plugin.dao.impl;
+
+import com.datastax.driver.core.ResultSet;
+import com.datastax.driver.core.Row;
+import com.datastax.driver.mapping.annotations.Accessor;
+import com.datastax.driver.mapping.annotations.Param;
+import com.datastax.driver.mapping.annotations.Query;
+import com.google.gson.reflect.TypeToken;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.Namespace;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Relation;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import com.amdocs.zusammen.utils.fileutils.json.JsonUtil;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepository;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+
+import java.lang.reflect.Type;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+public class CassandraElementRepository implements ElementRepository {
+
+ @Override
+ public Collection<ElementEntity> list(SessionContext context,
+ ElementEntityContext elementContext) {
+ Set<String> elementIds = getVersionElementIds(context, elementContext);
+
+ return elementIds.stream()
+ .map(elementId -> get(context, elementContext, new ElementEntity(new Id(elementId))).get())
+ .filter(Objects::nonNull)
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public void create(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ createElement(context, elementContext, element);
+ addElementToParent(context, elementContext, element);
+ }
+
+ @Override
+ public void update(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ updateElement(context, elementContext, element);
+ }
+
+ @Override
+ public void delete(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ removeElementFromParent(context, elementContext, element);
+ deleteElement(context, elementContext, element);
+ }
+
+ @Override
+ public Optional<ElementEntity> get(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ Row row = getElementAccessor(context).get(
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ getVersionId(elementContext),
+ element.getId().toString()).one();
+
+ return row == null ? Optional.empty() : Optional.of(getElementEntity(element, row));
+ }
+
+ @Override
+ public void createNamespace(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ getElementNamespaceAccessor(context).create(
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ element.getId().toString(),
+ element.getNamespace().toString());
+ }
+
+ private String getVersionId(ElementEntityContext elementContext) {
+ return elementContext.getChangeRef() == null
+ ? elementContext.getVersionId().toString()
+ : elementContext.getChangeRef();
+ }
+
+ private ElementNamespaceAccessor getElementNamespaceAccessor(SessionContext context) {
+ return CassandraDaoUtils.getAccessor(context, ElementNamespaceAccessor.class);
+ }
+
+ private ElementAccessor getElementAccessor(SessionContext context) {
+ return CassandraDaoUtils.getAccessor(context, ElementAccessor.class);
+ }
+
+ private VersionElementsAccessor getVersionElementsAccessor(SessionContext context) {
+ return CassandraDaoUtils.getAccessor(context, VersionElementsAccessor.class);
+ }
+
+ private void createElement(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ Set<String> subElementIds =
+ element.getSubElementIds().stream().map(Id::toString).collect(Collectors.toSet());
+ String versionId = getVersionId(elementContext);
+
+ getElementAccessor(context).create(
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ versionId,
+ element.getId().toString(),
+ element.getParentId().toString(),
+ element.getNamespace().toString(),
+ JsonUtil.object2Json(element.getInfo()),
+ JsonUtil.object2Json(element.getRelations()),
+ element.getData(),
+ element.getSearchableData(),
+ element.getVisualization(),
+ subElementIds);
+
+ getVersionElementsAccessor(context).addElements(
+ Collections.singleton(element.getId().toString()),
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ versionId);
+ }
+
+ private void updateElement(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ getElementAccessor(context).update(
+ JsonUtil.object2Json(element.getInfo()),
+ JsonUtil.object2Json(element.getRelations()),
+ element.getData(),
+ element.getSearchableData(),
+ element.getVisualization(),
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ elementContext.getVersionId().toString(),
+ element.getId().toString());
+ }
+
+ private void deleteElement(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ String versionId = getVersionId(elementContext);
+
+ getElementAccessor(context).delete(
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ versionId,
+ element.getId().toString());
+
+ getVersionElementsAccessor(context).removeElements(
+ Collections.singleton(element.getId().toString()),
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ versionId);
+ }
+
+ private void addElementToParent(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ getElementAccessor(context).addSubElements(
+ Collections.singleton(element.getId().toString()),
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ getVersionId(elementContext),
+ element.getParentId().toString());
+ }
+
+ private void removeElementFromParent(SessionContext context, ElementEntityContext elementContext,
+ ElementEntity element) {
+ if (element.getParentId() == null) {
+ return;
+ }
+ getElementAccessor(context).removeSubElements(
+ Collections.singleton(element.getId().toString()),
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ getVersionId(elementContext),
+ element.getParentId().toString());
+ }
+
+ private ElementEntity getElementEntity(ElementEntity element, Row row) {
+ element.setNamespace(getNamespace(row.getString(ElementField.NAMESPACE)));
+ element.setParentId(new Id(row.getString(ElementField.PARENT_ID)));
+ element.setInfo(json2Object(row.getString(ElementField.INFO), Info.class));
+ element.setRelations(
+ json2Object(row.getString(ElementField.RELATIONS), new TypeToken<ArrayList<Relation>>() {
+ }.getType()));
+ element.setData(row.getBytes(ElementField.DATA));
+ element.setSearchableData(row.getBytes(ElementField.SEARCHABLE_DATA));
+ element.setVisualization(row.getBytes(ElementField.VISUALIZATION));
+ element.setSubElementIds(row.getSet(ElementField.SUB_ELEMENT_IDS, String.class)
+ .stream().map(Id::new).collect(Collectors.toSet()));
+ return element;
+ }
+
+ private Namespace getNamespace(String namespaceStr) {
+ Namespace namespace = new Namespace();
+ if (namespaceStr != null) {
+ namespace.setValue(namespaceStr);
+ }
+ return namespace;
+ }
+
+ private static <T> T json2Object(String json, Type typeOfT) {
+ return json == null ? null : JsonUtil.json2Object(json, typeOfT);
+ }
+
+ private Set<String> getVersionElementIds(SessionContext context,
+ ElementEntityContext elementContext) {
+ Row row = getVersionElementsAccessor(context).get(
+ elementContext.getSpace(),
+ elementContext.getItemId().toString(),
+ getVersionId(elementContext)).one();
+ return row == null
+ ? new HashSet<>()
+ : row.getSet(CassandraElementRepository.VersionElementsField.ELEMENT_IDS, String.class);
+ }
+
+ /*
+CREATE TABLE IF NOT EXISTS element_namespace (
+ space text,
+ item_id text,
+ element_id text,
+ namespace text,
+ PRIMARY KEY (( space, item_id, element_id ))
+);
+ */
+ @Accessor
+ interface ElementNamespaceAccessor {
+ @Query(
+ "UPDATE element_namespace SET namespace=:ns " +
+ "WHERE space=:space AND item_id=:item AND element_id=:id ")
+ void create(@Param("space") String space,
+ @Param("item") String itemId,
+ @Param("id") String elementId,
+ @Param("ns") String namespace);
+ }
+
+ /*
+CREATE TABLE IF NOT EXISTS element (
+ space text,
+ item_id text,
+ version_id text,
+ element_id text,
+ parent_id text,
+ namespace text,
+ info text,
+ relations text,
+ data blob,
+ searchable_data blob,
+ visualization blob,
+ sub_element_ids set<text>,
+ PRIMARY KEY (( space, item_id, version_id, element_id ))
+);
+ */
+ @Accessor
+ interface ElementAccessor {
+ @Query(
+ "UPDATE element SET parent_id=:parentId, namespace=:ns, info=:info, relations=:rels, " +
+ "data=:data, searchable_data=:searchableData, visualization=:visualization, " +
+ "sub_element_ids=sub_element_ids+:subs " +
+ "WHERE space=:space AND item_id=:item AND version_id=:ver AND element_id=:id ")
+ void create(@Param("space") String space,
+ @Param("item") String itemId,
+ @Param("ver") String versionId,
+ @Param("id") String elementId,
+ @Param("parentId") String parentElementId,
+ @Param("ns") String namespace,
+ @Param("info") String info,
+ @Param("rels") String relations,
+ @Param("data") ByteBuffer data,
+ @Param("searchableData") ByteBuffer searchableData,
+ @Param("visualization") ByteBuffer visualization,
+ @Param("subs") Set<String> subElementIds);
+
+ @Query("UPDATE element SET info=?, relations=?, data=?, searchable_data=?, visualization=?" +
+ " WHERE space=? AND item_id=? AND version_id=? AND element_id=? ")
+ void update(String info, String relations, ByteBuffer data, ByteBuffer searchableData,
+ ByteBuffer visualization, String space, String itemId, String versionId,
+ String elementId);
+
+ @Query("DELETE FROM element WHERE space=? AND item_id=? AND version_id=? AND element_id=?")
+ void delete(String space, String itemId, String versionId, String elementId);
+
+ @Query("SELECT parent_id, namespace, info, relations, data, searchable_data, visualization, " +
+ "sub_element_ids FROM element " +
+ "WHERE space=? AND item_id=? AND version_id=? AND element_id=? ")
+ ResultSet get(String space, String itemId, String versionId, String elementId);
+
+ @Query("UPDATE element SET sub_element_ids=sub_element_ids+? " +
+ " WHERE space=? AND item_id=? AND version_id=? AND element_id=? ")
+ void addSubElements(Set<String> subElementIds, String space, String itemId, String versionId,
+ String elementId);
+
+ @Query("UPDATE element SET sub_element_ids=sub_element_ids-? " +
+ " WHERE space=? AND item_id=? AND version_id=? AND element_id=? ")
+ void removeSubElements(Set<String> subElementIds, String space, String itemId, String versionId,
+ String elementId);
+ }
+
+ private static final class ElementField {
+ private static final String NAMESPACE = "namespace";
+ private static final String PARENT_ID = "parent_id";
+ private static final String INFO = "info";
+ private static final String RELATIONS = "relations";
+ private static final String DATA = "data";
+ private static final String SEARCHABLE_DATA = "searchable_data";
+ private static final String VISUALIZATION = "visualization";
+ private static final String SUB_ELEMENT_IDS = "sub_element_ids";
+ }
+
+ /*
+ CREATE TABLE IF NOT EXISTS version_elements (
+ space text,
+ item_id text,
+ version_id text,
+ element_ids set<text>,
+ PRIMARY KEY (( space, item_id, version_id ))
+ );
+ */
+ @Accessor
+ interface VersionElementsAccessor {
+
+ @Query("UPDATE version_elements SET element_ids=element_ids+? " +
+ "WHERE space=? AND item_id=? AND version_id=?")
+ void addElements(Set<String> elementIds, String space, String itemId, String versionId);
+
+ @Query("UPDATE version_elements SET element_ids=element_ids-? " +
+ "WHERE space=? AND item_id=? AND version_id=?")
+ void removeElements(Set<String> elementIds, String space, String itemId, String versionId);
+
+ @Query("SELECT element_ids FROM version_elements WHERE space=? AND item_id=? AND version_id=?")
+ ResultSet get(String space, String itemId, String versionId);
+ }
+
+ private static final class VersionElementsField {
+ private static final String ELEMENT_IDS = "element_ids";
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepositoryFactory.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepositoryFactory.java
new file mode 100644
index 0000000000..f3072a6502
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/impl/CassandraElementRepositoryFactory.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright © 2016-2017 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.core.zusammen.plugin.dao.impl;
+
+import com.amdocs.zusammen.datatypes.SessionContext;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepository;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepositoryFactory;
+
+public class CassandraElementRepositoryFactory extends ElementRepositoryFactory {
+
+ private static final ElementRepository INSTANCE = new CassandraElementRepository();
+
+ @Override
+ public ElementRepository createInterface(SessionContext context) {
+ return INSTANCE;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/types/ElementEntity.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/types/ElementEntity.java
new file mode 100644
index 0000000000..1663d83427
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/dao/types/ElementEntity.java
@@ -0,0 +1,134 @@
+/*
+ * Copyright © 2016-2017 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.core.zusammen.plugin.dao.types;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.Namespace;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Relation;
+
+import java.nio.ByteBuffer;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Set;
+
+public class ElementEntity {
+ private Id id;
+ private Id parentId;
+ private Namespace namespace;
+ private Info info;
+ private Collection<Relation> relations = Collections.emptyList();
+ private ByteBuffer data;
+ private ByteBuffer searchableData;
+ private ByteBuffer visualization;
+ private Set<Id> subElementIds = Collections.emptySet();
+
+ public ElementEntity(Id id) {
+ this.id = id;
+ }
+
+ public Id getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Id parentId) {
+ this.parentId = parentId;
+ }
+
+ public Id getId() {
+ return id;
+ }
+
+ public void setId(Id id) {
+ this.id = id;
+ }
+
+ public Namespace getNamespace() {
+ return namespace;
+ }
+
+ public void setNamespace(Namespace namespace) {
+ this.namespace = namespace;
+ }
+
+ public Info getInfo() {
+ return info;
+ }
+
+ public void setInfo(Info info) {
+ this.info = info;
+ }
+
+ public Collection<Relation> getRelations() {
+ return relations;
+ }
+
+ public void setRelations(Collection<Relation> relations) {
+ this.relations = relations;
+ }
+
+ public ByteBuffer getData() {
+ return data;
+ }
+
+ public void setData(ByteBuffer data) {
+ this.data = data;
+ }
+
+ public ByteBuffer getSearchableData() {
+ return searchableData;
+ }
+
+ public void setSearchableData(ByteBuffer searchableData) {
+ this.searchableData = searchableData;
+ }
+
+ public ByteBuffer getVisualization() {
+ return visualization;
+ }
+
+ public void setVisualization(ByteBuffer visualization) {
+ this.visualization = visualization;
+ }
+
+ public Set<Id> getSubElementIds() {
+ return subElementIds;
+ }
+
+ public void setSubElementIds(Set<Id> subElementIds) {
+ this.subElementIds = subElementIds;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+
+ ElementEntity that = (ElementEntity) o;
+
+ return id.equals(that.id);
+ }
+
+ @Override
+ public int hashCode() {
+ return id.hashCode();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraCollaborationStorePluginImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraCollaborationStorePluginImpl.java
new file mode 100644
index 0000000000..4bf9a8d25e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraCollaborationStorePluginImpl.java
@@ -0,0 +1,160 @@
+/*
+ * Copyright © 2016-2017 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.core.zusammen.plugin.main;
+
+import com.amdocs.zusammen.commons.health.data.HealthInfo;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.Namespace;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.ItemVersionData;
+import com.amdocs.zusammen.datatypes.itemversion.ItemVersionHistory;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import com.amdocs.zusammen.datatypes.response.Response;
+import com.amdocs.zusammen.datatypes.response.ZusammenException;
+import com.amdocs.zusammen.sdk.collaboration.CollaborationStore;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationElement;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationMergeChange;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationMergeResult;
+import com.amdocs.zusammen.sdk.collaboration.types.CollaborationPublishResult;
+import org.openecomp.core.zusammen.plugin.collaboration.ElementCollaborationStore;
+import org.openecomp.core.zusammen.plugin.collaboration.VersionCollaborationStore;
+
+import java.util.Collection;
+
+public class CassandraCollaborationStorePluginImpl implements CollaborationStore {
+
+ private VersionCollaborationStore versionCollaborationStore = new VersionCollaborationStore();
+ private ElementCollaborationStore elementCollaborationStore = new ElementCollaborationStore();
+
+ @Override
+ public Response<Void> createItem(SessionContext context, Id id, Info info) {
+ // done by state store
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> deleteItem(SessionContext context, Id id) {
+ // done by state store
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> createItemVersion(SessionContext context, Id itemId, Id versionId, Id id2,
+ ItemVersionData itemVersionData) {
+ // done by state store
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> updateItemVersion(SessionContext context, Id itemId, Id versionId,
+ ItemVersionData itemVersionData) {
+ // done by state store
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> deleteItemVersion(SessionContext context, Id itemId, Id versionId) {
+ // done by state store
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> tagItemVersion(SessionContext context, Id itemId, Id versionId, Id changeId,
+ Tag tag) {
+ versionCollaborationStore.tagItemVersion(context, itemId, versionId, changeId, tag);
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<CollaborationPublishResult> publishItemVersion(SessionContext context,
+ Id itemId, Id versionId,
+ String s) {
+ throw new UnsupportedOperationException("publishItemVersion");
+ }
+
+ @Override
+ public Response<CollaborationMergeResult> syncItemVersion(SessionContext context, Id id,
+ Id id1) {
+ throw new UnsupportedOperationException("syncItemVersion");
+ }
+
+ @Override
+ public Response<CollaborationMergeResult> mergeItemVersion(SessionContext context, Id id,
+ Id id1, Id id2) {
+ throw new UnsupportedOperationException("mergeItemVersion");
+ }
+
+ @Override
+ public Response<ItemVersionHistory> listItemVersionHistory(SessionContext context, Id id,
+ Id id1) {
+ throw new UnsupportedOperationException("listItemVersionHistory");
+ }
+
+ @Override
+ public Response<CollaborationMergeChange> resetItemVersionHistory(SessionContext context,
+ Id itemId, Id versionId,
+ String changeRef) {
+ return new Response<>(versionCollaborationStore.resetItemVersionHistory(context, itemId, versionId, changeRef));
+ }
+
+ @Override
+ public Response<Collection<CollaborationElement>> listElements(SessionContext context,
+ ElementContext elementContext,
+ Namespace namespace,
+ Id elementId) {
+ return new Response<>(
+ elementCollaborationStore.listElements(context, elementContext, elementId));
+ }
+
+ @Override
+ public Response<CollaborationElement> getElement(SessionContext context,
+ ElementContext elementContext,
+ Namespace namespace, Id elementId) {
+ return new Response<>(elementCollaborationStore.getElement(context, elementContext, elementId));
+ }
+
+ @Override
+ public Response<Void> createElement(SessionContext context, CollaborationElement element) {
+ elementCollaborationStore.createElement(context, element);
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> updateElement(SessionContext context, CollaborationElement element) {
+ elementCollaborationStore.updateElement(context, element);
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> deleteElement(SessionContext context, CollaborationElement element) {
+ elementCollaborationStore.deleteElement(context, element);
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> commitElements(SessionContext context, Id itemId, Id versionId, String s) {
+ // not needed
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<HealthInfo> checkHealth(SessionContext sessionContext) throws ZusammenException {
+ return null;
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraStateStorePluginImpl.java b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraStateStorePluginImpl.java
new file mode 100644
index 0000000000..b4767b2872
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/java/org/openecomp/core/zusammen/plugin/main/CassandraStateStorePluginImpl.java
@@ -0,0 +1,58 @@
+/*
+ * Copyright © 2016-2017 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openecomp.core.zusammen.plugin.main;
+
+
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.response.Response;
+import com.amdocs.zusammen.plugin.statestore.cassandra.StateStoreImpl;
+import com.amdocs.zusammen.plugin.statestore.cassandra.dao.types.ElementEntityContext;
+import com.amdocs.zusammen.sdk.state.types.StateElement;
+import org.openecomp.core.zusammen.plugin.dao.ElementRepositoryFactory;
+import org.openecomp.core.zusammen.plugin.dao.types.ElementEntity;
+
+import static org.openecomp.core.zusammen.plugin.ZusammenPluginUtil.getSpaceName;
+
+public class CassandraStateStorePluginImpl extends StateStoreImpl {
+
+ @Override
+ public Response<Void> createElement(SessionContext context, StateElement element) {
+ ElementEntity elementEntity = new ElementEntity(element.getId());
+ elementEntity.setNamespace(element.getNamespace());
+
+ ElementRepositoryFactory.getInstance().createInterface(context)
+ .createNamespace(context,
+ new ElementEntityContext(getSpaceName(context, element.getSpace()),
+ element.getItemId(), element.getVersionId()),
+ elementEntity);
+ // create element is done by collaboration store
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> updateElement(SessionContext context, StateElement element) {
+ // done by collaboration store
+ return new Response(Void.TYPE);
+ }
+
+ @Override
+ public Response<Void> deleteElement(SessionContext context, StateElement element) {
+ // done by collaboration store
+ return new Response(Void.TYPE);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/factoryConfiguration.json
new file mode 100644
index 0000000000..cd1e293b4b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/factoryConfiguration.json
@@ -0,0 +1,3 @@
+{
+ "org.openecomp.core.zusammen.plugin.dao.ElementRepositoryFactory": "org.openecomp.core.zusammen.plugin.dao.impl.CassandraElementRepositoryFactory"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/zusammen.json b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/zusammen.json
new file mode 100644
index 0000000000..e90d80f016
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-plugin/src/main/resources/zusammen.json
@@ -0,0 +1,23 @@
+{
+ "configuration": {
+ "level": 10,
+ "plugins": {
+ "zusammen_state_store": {
+ "implementationClass": "org.openecomp.core.zusammen.plugin.main.CassandraStateStorePluginImpl"
+ },
+ "zusammen_collaborative_store": {
+ "implementationClass": "org.openecomp.core.zusammen.plugin.main.CassandraCollaborationStorePluginImpl",
+ "properties": {
+ "master.branch": "main",
+ "private.path": "C:\\git\\private",
+ "public.path": "C:\\git\\public",
+ "blueprint.path": "C:\\git\\BP",
+ "public.url": "C:\\git\\public"
+ }
+ }
+ },
+ "properties": {
+
+ }
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/pom.xml b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/pom.xml
new file mode 100644
index 0000000000..6cded9524b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/pom.xml
@@ -0,0 +1,24 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-zusammen-lib</name>
+ <artifactId>openecomp-zusammen-lib</artifactId>
+ <groupId>org.openecomp.core</groupId>
+ <packaging>pom</packaging>
+ <parent>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-core-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+
+ </parent>
+
+ <modules>
+ <module>openecomp-zusammen-api</module>
+ <module>openecomp-zusammen-core</module>
+ <module>openecomp-zusammen-plugin</module>
+ </modules>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-core-lib/pom.xml b/openecomp-be/lib/openecomp-core-lib/pom.xml
index 95a6ce7c45..2c8726e802 100644
--- a/openecomp-be/lib/openecomp-core-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-core-lib/pom.xml
@@ -2,22 +2,23 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-core-lib</name>
+ <artifactId>openecomp-core-lib</artifactId>
+ <packaging>pom</packaging>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
-
- <artifactId>openecomp-core-lib</artifactId>
- <name>openecomp-core-lib</name>
-
- <packaging>pom</packaging>
-
<modules>
<module>/openecomp-facade-lib</module>
<module>/openecomp-nosqldb-lib</module>
<module>/openecomp-utilities-lib</module>
<module>/openecomp-config-lib</module>
+ <module>/openecomp-zusammen-lib</module>
</modules>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-core-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-core-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..d02ce28af6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-core-lib/pom.xml.versionsBackup
@@ -0,0 +1,22 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-core-lib</name>
+ <artifactId>openecomp-core-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>/openecomp-facade-lib</module>
+ <module>/openecomp-nosqldb-lib</module>
+ <module>/openecomp-utilities-lib</module>
+ <module>/openecomp-config-lib</module>
+ </modules>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml
new file mode 100644
index 0000000000..a3969f983b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-api</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+</project>
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..c9d100dd50
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/pom.xml.versionsBackup
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Directive.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/api/HealingManager.java
index 078a6449ea..a2ce153a82 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Directive.java
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/api/HealingManager.java
@@ -18,23 +18,17 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.healing.api;
-public enum Directive {
+import org.openecomp.sdc.healing.types.HealCode;
+import java.util.Map;
- SELECTABLE("selectable"),
- SUBSTITUTABLE("substitutable");
-
- private String displayName;
-
- Directive(String displayName) {
- this.displayName = displayName;
- }
-
- public String getDisplayName() {
- return displayName;
- }
-
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public interface HealingManager {
+ Object heal(HealCode code, Map<String, Object> healParameters);
+ void healAll(Map<String, Object> healParameters);
}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/factory/HealingManagerFactory.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/factory/HealingManagerFactory.java
new file mode 100644
index 0000000000..8e8d633b42
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/factory/HealingManagerFactory.java
@@ -0,0 +1,34 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.factory;
+
+import org.openecomp.sdc.healing.api.HealingManager;
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public abstract class HealingManagerFactory extends AbstractComponentFactory<HealingManager> {
+ public static HealingManagerFactory getInstance(){
+ return AbstractFactory.getInstance(HealingManagerFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/interfaces/Healer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/interfaces/Healer.java
new file mode 100644
index 0000000000..eb2f9a74d2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/interfaces/Healer.java
@@ -0,0 +1,30 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.interfaces;
+
+import java.util.Map;
+
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public interface Healer {
+ Object heal(Map<String, Object> healingParams) throws Exception;
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Scalar.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/types/HealCode.java
index 619ac510b0..420d75621f 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Scalar.java
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/java/org/openecomp/sdc/healing/types/HealCode.java
@@ -18,17 +18,14 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.healing.types;
-public class Scalar {
-
- private Float value;
-
- public Float getValue() {
- return value;
- }
-
- public void setValue(Float value) {
- this.value = value;
- }
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public enum HealCode {
+ FILE_DATA_STRUCTURE_HEALER,
+ QUESTIONNAIRE_HEALER,
+ COMPOSITION_DATA_HEALER,
+ SUB_ENTITIES_QUESTIONNAIRE_HEALER;
}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/resources/factoryConfiguration.json
new file mode 100644
index 0000000000..e05e00e075
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-api/src/main/resources/factoryConfiguration.json
@@ -0,0 +1,3 @@
+{
+ "org.openecomp.sdc.healing.factory.HealingManagerFactory" : "org.openecomp.sdc.healing.impl.HealingManagerFactoryImpl"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml
new file mode 100644
index 0000000000..a01d79e937
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-core</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+</project>
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..c48c3259e1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/pom.xml.versionsBackup
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerFactoryImpl.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerFactoryImpl.java
new file mode 100644
index 0000000000..84aff4327d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerFactoryImpl.java
@@ -0,0 +1,35 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.impl;
+
+import org.openecomp.sdc.healing.api.HealingManager;
+import org.openecomp.sdc.healing.factory.HealingManagerFactory;
+
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public class HealingManagerFactoryImpl extends HealingManagerFactory {
+
+ @Override
+ public HealingManager createInterface() {
+ return new HealingManagerImpl();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerImpl.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerImpl.java
new file mode 100644
index 0000000000..0d4cb9c0ba
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/impl/HealingManagerImpl.java
@@ -0,0 +1,91 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.impl;
+
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.healing.interfaces.Healer;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.healing.types.HealCode;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.healing.api.HealingManager;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+
+import java.io.InputStream;
+import java.lang.reflect.Constructor;
+import java.util.Map;
+
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public class HealingManagerImpl implements HealingManager {
+ private static String HEALING_CONF_FILE = "healingConfiguration.json";
+ private static Map<String, String> healerCodeToImplClass = initHealers();
+
+ @Override
+ public Object heal(HealCode code, Map<String, Object> healParameters) {
+ String implClassName = healerCodeToImplClass.get(code.name());
+ try {
+ Healer healerImpl = getHealerImplInstance(implClassName);
+ return healerImpl.heal(healParameters);
+
+ } catch (Exception e) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SELF_HEALING, ErrorLevel.ERROR.name(), LoggerErrorCode
+ .DATA_ERROR.getErrorCode(), LoggerErrorDescription.CANT_HEAL);
+ throw new RuntimeException(String.format(Messages.CANT_LOAD_CLASS.getErrorMessage(),
+ implClassName, e.getMessage()));
+ }
+ }
+
+ @Override
+ public void healAll(Map<String, Object> healParameters) {
+ for (String implClassName : healerCodeToImplClass.values()) {
+ try {
+ Healer healerImpl = getHealerImplInstance(implClassName);
+ healerImpl.heal(healParameters);
+ } catch (Exception e) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SELF_HEALING, ErrorLevel.ERROR.name(), LoggerErrorCode
+ .DATA_ERROR.getErrorCode(), LoggerErrorDescription.CANT_HEAL);
+ throw new RuntimeException(String.format(Messages.CANT_LOAD_CLASS.getErrorMessage(),
+ implClassName, e.getMessage()));
+ }
+ }
+ }
+
+ private static Map<String, String> initHealers() {
+ InputStream healingConfigurationJson = FileUtils.getFileInputStream(HEALING_CONF_FILE);
+ return JsonUtil.json2Object(healingConfigurationJson, Map.class);
+ }
+
+ private Healer getHealerImplInstance(String implClassName)
+ throws ClassNotFoundException, NoSuchMethodException, InstantiationException,
+ IllegalAccessException, java.lang.reflect.InvocationTargetException {
+ Class<?> clazz = Class.forName(implClassName);
+ Constructor<?> constructor = clazz.getConstructor();
+ return (Healer) constructor.newInstance();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/utils/HealingConfiguration.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/utils/HealingConfiguration.java
new file mode 100644
index 0000000000..7767277444
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/utils/HealingConfiguration.java
@@ -0,0 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.utils;
+
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public class HealingConfiguration {
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/InterfaceType.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/utils/HealingUtil.java
index b177b0660a..e955c83b79 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/InterfaceType.java
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/java/org/openecomp/sdc/healing/utils/HealingUtil.java
@@ -18,7 +18,10 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.healing.utils;
-public class InterfaceType {
+/**
+ * Created by Talio on 11/29/2016.
+ */
+public class HealingUtil {
}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/resources/healingConfiguration.json b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/resources/healingConfiguration.json
new file mode 100644
index 0000000000..23427ceb6a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-core/src/main/resources/healingConfiguration.json
@@ -0,0 +1,7 @@
+{
+ "FILE_DATA_STRUCTURE_HEALER" : "org.openecomp.sdc.healing.healers.FileDataStructureHealer",
+ "QUESTIONNAIRE_HEALER" : "org.openecomp.sdc.healing.healers.VspQuestionnaireHealer",
+ "COMPOSITION_DATA_HEALER" : "org.openecomp.sdc.healing.healers.CompositionDataHealer",
+ "SUB_ENTITIES_HEALER" : "org.openecomp.sdc.healing.healers.SubEntitiesQuestionnaireHealer",
+ "HEAT_TOSCA_TRANSLATION_HEALER" : "org.openecomp.sdc.healing.healers.HeatToToscaTranslationHealer"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml
new file mode 100644
index 0000000000..70d40be2a6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-impl</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+
+</project>
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml.versionsBackup
new file mode 100644
index 0000000000..c5f936366b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml.versionsBackup
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-healing-impl</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java
new file mode 100644
index 0000000000..283f6c83b6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/CompositionDataHealer.java
@@ -0,0 +1,224 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.healers;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.core.model.dao.ServiceModelDao;
+import org.openecomp.core.model.dao.ServiceModelDaoFactory;
+import org.openecomp.core.model.types.ServiceElement;
+import org.openecomp.core.translator.datatypes.TranslatorOutput;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.healing.interfaces.Healer;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NicEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.CompositionDataExtractorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.CompositionEntityDataManagerFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionDataExtractor;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionEntityDataManager;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.ComponentData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionData;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+public class CompositionDataHealer implements Healer {
+ private static final Version VERSION00 = new Version(0, 0);
+ private static final Version VERSION01 = new Version(0, 1);
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ private static final OrchestrationTemplateDao orchestrationTemplateDataDao =
+ OrchestrationTemplateDaoFactory.getInstance().createInterface();
+
+ private static ComponentDao componentDao = ComponentDaoFactory.getInstance().createInterface();
+ private static NicDao nicDao = NicDaoFactory.getInstance().createInterface();
+ private static NetworkDao networkDao = NetworkDaoFactory.getInstance().createInterface();
+
+ private static final ServiceModelDao<ToscaServiceModel, ServiceElement> serviceModelDao =
+ ServiceModelDaoFactory.getInstance().createInterface();
+ private static CompositionDataExtractor compositionDataExtractor =
+ CompositionDataExtractorFactory.getInstance().createInterface();
+ private static CompositionEntityDataManager compositionEntityDataManager =
+ CompositionEntityDataManagerFactory.getInstance().createInterface();
+
+ public CompositionDataHealer() {
+ }
+
+ @Override
+ public Optional<CompositionData> heal(Map<String, Object> healingParams) throws IOException {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ String vspId = (String) healingParams.get(SdcCommon.VSP_ID);
+ Version version = VERSION00.equals(healingParams.get(SdcCommon.VERSION))
+ ? VERSION01
+ : (Version) healingParams.get(SdcCommon.VERSION);
+
+ Collection<ComponentEntity> componentEntities =
+ componentDao.list(new ComponentEntity(vspId, version, null));
+ Collection<NicEntity> nicEntities = nicDao.listByVsp(vspId, version);
+ Collection<NetworkEntity> networkEntities =
+ networkDao.list(new NetworkEntity(vspId, version, null));
+
+ Optional<ToscaServiceModel> serviceModelForHealing = getServiceModelForHealing(vspId, version);
+
+ if (!doesVspNeedCompositionDataHealing(componentEntities, networkEntities,
+ nicEntities)) {
+ updateComponentsDisplayNames(componentEntities);
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.empty();
+ }
+
+
+ if (!serviceModelForHealing.isPresent()) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.empty();
+ }
+
+ CompositionData compositionData = healCompositionData(vspId, version, serviceModelForHealing);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of(compositionData);
+ }
+
+ private CompositionData healCompositionData(String vspId, Version version,
+ Optional<ToscaServiceModel> serviceModelForHealing) {
+ ToscaServiceModel toscaServiceModel = serviceModelForHealing.get();
+ CompositionData compositionData =
+ getCompositionDataForHealing(vspId, version, toscaServiceModel);
+ compositionEntityDataManager.saveCompositionData(vspId, version, compositionData);
+ return compositionData;
+ }
+
+ private boolean doesVspNeedCompositionDataHealing(Collection<ComponentEntity> componentEntities,
+ Collection<NetworkEntity> networkEntities,
+ Collection<NicEntity> nicEntities) {
+
+ return (CollectionUtils.isEmpty(componentEntities) && CollectionUtils.isEmpty(nicEntities) &&
+ CollectionUtils.isEmpty(networkEntities));
+ }
+
+ private CompositionData getCompositionDataForHealing(String vspId, Version version,
+ ToscaServiceModel toscaServiceModel) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ if (Objects.isNull(toscaServiceModel)) {
+ return null;
+ }
+
+ CompositionData compositionData = new CompositionData();
+ if (Objects.nonNull(toscaServiceModel)) {
+ compositionData = compositionDataExtractor
+ .extractServiceCompositionData(toscaServiceModel);
+ serviceModelDao.storeServiceModel(vspId, version, toscaServiceModel);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return compositionData;
+ }
+
+ private void updateComponentsDisplayNames(Collection<ComponentEntity> componentEntities) {
+ if (CollectionUtils.isEmpty(componentEntities)) {
+ return;
+ }
+
+ for (ComponentEntity component : componentEntities) {
+ updateComponentName(component);
+ componentDao.update(component);
+ }
+ }
+
+ private void updateComponentName(ComponentEntity component) {
+ mdcDataDebugMessage.debugEntryMessage("VSP id, component id", component.getVspId(), component
+ .getId());
+
+ ComponentData componentData =
+ JsonUtil.json2Object(component.getCompositionData(), ComponentData.class);
+ componentData
+ .setDisplayName(compositionDataExtractor.getComponentDisplayName(componentData.getName()));
+ componentData.setVfcCode(componentData.getDisplayName());
+ component.setCompositionData(JsonUtil.object2Json(componentData));
+
+ mdcDataDebugMessage.debugExitMessage("VSP id, component id", component.getVspId(), component
+ .getId());
+
+ }
+
+ private Optional<ToscaServiceModel> getServiceModelForHealing(String vspId, Version version)
+ throws IOException {
+ mdcDataDebugMessage.debugEntryMessage("VSP id", vspId);
+
+ /*UploadDataEntity uploadData =
+ vendorSoftwareProductDao.getUploadData(new UploadDataEntity(vspId, version));*/
+ UploadDataEntity uploadData =
+ orchestrationTemplateDataDao.getOrchestrationTemplate(vspId, version);
+
+ if (Objects.isNull(uploadData) || Objects.isNull(uploadData.getContentData())) {
+ return Optional.empty();
+ }
+
+ TranslatorOutput translatorOutput = getTranslatorOutputForHealing(uploadData);
+
+ if (Objects.isNull(translatorOutput)) {
+ return Optional.empty();
+ }
+
+ try {
+ serviceModelDao.storeServiceModel(vspId, version,
+ translatorOutput.getToscaServiceModel());
+ }catch (Exception e){
+ return Optional.empty();
+ }
+
+ mdcDataDebugMessage.debugExitMessage("VSP id", vspId);
+ return Optional.of(translatorOutput.getToscaServiceModel());
+ }
+
+ private TranslatorOutput getTranslatorOutputForHealing(UploadDataEntity uploadData){
+
+ FileContentHandler fileContentHandler;
+ try {
+ fileContentHandler =
+ CommonUtil.loadUploadFileContent(uploadData.getContentData().array());
+ return HeatToToscaUtil.loadAndTranslateTemplateData(fileContentHandler);
+ }catch (Exception e){
+ return null;
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/FileDataStructureHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/FileDataStructureHealer.java
new file mode 100644
index 0000000000..14fe885d53
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/FileDataStructureHealer.java
@@ -0,0 +1,116 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.healers;
+
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.healing.interfaces.Healer;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.CandidateServiceFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.CandidateService;
+import org.openecomp.sdc.vendorsoftwareproduct.services.utils.CandidateEntityBuilder;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+public class FileDataStructureHealer implements Healer {
+ private static final OrchestrationTemplateDao orchestrationTemplateDataDao =
+ OrchestrationTemplateDaoFactory.getInstance().createInterface();
+ private static CandidateService candidateService =
+ CandidateServiceFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public FileDataStructureHealer() {
+ }
+
+ @Override
+ public Optional<FilesDataStructure> heal(Map<String, Object> healingParams) throws Exception {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Optional<FilesDataStructure> healingResult = Optional.empty();
+ String vspId = (String) healingParams.get(SdcCommon.VSP_ID);
+ Version version = (Version) healingParams.get(SdcCommon.VERSION);
+ String user = (String) healingParams.get(SdcCommon.USER);
+
+ UploadDataEntity uploadData =
+ orchestrationTemplateDataDao.getOrchestrationTemplate(vspId,version);
+ if (uploadData == null || uploadData.getContentData() == null) {
+ FilesDataStructure emptyFilesDataStructure = new FilesDataStructure();
+ return Optional.of(emptyFilesDataStructure);
+ }
+
+ Optional<FilesDataStructure> candidateFileDataStructure =
+ candidateService.getOrchestrationTemplateCandidateFileDataStructure(vspId, version);
+
+ if (!candidateFileDataStructure.isPresent()) {
+ healingResult = healFilesDataStructure(vspId, version, user, uploadData);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return healingResult;
+ }
+
+ private Optional<FilesDataStructure> healFilesDataStructure(String vspId, Version version,
+ String user,
+ UploadDataEntity uploadData)
+ throws Exception {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Optional<FilesDataStructure> healingResult;
+ byte[] byteContentData = uploadData.getContentData().array();
+ FileContentHandler fileContentHandler;
+ try{
+ fileContentHandler = CommonUtil.loadUploadFileContent(byteContentData);
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ OrchestrationTemplateCandidateData candidateDataEntity =
+ new CandidateEntityBuilder(candidateService)
+ .buildCandidateEntityFromZip(new VspDetails(vspId, version), byteContentData,
+ fileContentHandler, errors, user);
+
+ healingResult = getFileDataStructureFromJson(candidateDataEntity.getFilesDataStructure());
+ }catch (Exception e){
+ return Optional.empty();
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return healingResult;
+ }
+
+ private Optional<FilesDataStructure> getFileDataStructureFromJson(String fileDataStructureJson) {
+ return Optional.of(JsonUtil.json2Object(fileDataStructureJson, FilesDataStructure.class));
+ }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/HeatToToscaTranslationHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/HeatToToscaTranslationHealer.java
new file mode 100644
index 0000000000..fb9dfe7e4f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/HeatToToscaTranslationHealer.java
@@ -0,0 +1,82 @@
+package org.openecomp.sdc.healing.healers;
+
+
+import org.openecomp.core.model.dao.ServiceModelDao;
+import org.openecomp.core.model.dao.ServiceModelDaoFactory;
+import org.openecomp.core.model.dao.ServiceTemplateDaoFactory;
+import org.openecomp.core.model.dao.ServiceTemplateDaoInter;
+import org.openecomp.core.model.types.ServiceElement;
+import org.openecomp.core.translator.datatypes.TranslatorOutput;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.healing.interfaces.Healer;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+public class HeatToToscaTranslationHealer implements Healer {
+
+ private static final OrchestrationTemplateDao orchestrationTemplateDao =
+ OrchestrationTemplateDaoFactory.getInstance().createInterface();
+ private static final ServiceModelDao<ToscaServiceModel, ServiceElement> serviceModelDao =
+ ServiceModelDaoFactory.getInstance().createInterface();
+ public static final ServiceTemplateDaoInter
+ templateDao = ServiceTemplateDaoFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public HeatToToscaTranslationHealer(){
+
+ }
+
+ @Override
+ public Object heal(Map<String, Object> healingParams) throws Exception {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ String vspId = (String) healingParams.get(SdcCommon.VSP_ID);
+ Version version = (Version) healingParams.get(SdcCommon.VERSION);
+ String user = (String) healingParams.get(SdcCommon.USER);
+ UploadDataEntity uploadData =
+ orchestrationTemplateDao.getOrchestrationTemplate(vspId, version);
+
+ if (Objects.isNull(uploadData) || Objects.isNull(uploadData.getContentData())) {
+ return Optional.empty();
+ }
+
+ FileContentHandler fileContentHandler;
+ TranslatorOutput translatorOutput;
+ try {
+ fileContentHandler = CommonUtil.loadUploadFileContent(uploadData
+ .getContentData().array());
+ translatorOutput =
+ HeatToToscaUtil.loadAndTranslateTemplateData(fileContentHandler);
+ }catch (Exception e){
+ return Optional.empty();
+ }
+
+ if(Objects.isNull(translatorOutput)){
+ return Optional.empty();
+ }
+
+ if (translatorOutput != null && translatorOutput.getToscaServiceModel() == null) {
+ return Optional.empty();
+ }
+ //templateDao.deleteAll(vspId, version);
+ serviceModelDao.deleteAll(vspId,version);
+ serviceModelDao.storeServiceModel(vspId, version,
+ translatorOutput.getToscaServiceModel());
+ mdcDataDebugMessage.debugExitMessage("VSP id", vspId);
+
+ return translatorOutput;
+
+ }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/SubEntitiesQuestionnaireHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/SubEntitiesQuestionnaireHealer.java
new file mode 100644
index 0000000000..4e8de71ea3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/SubEntitiesQuestionnaireHealer.java
@@ -0,0 +1,129 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.healers;
+
+import org.openecomp.core.utilities.json.JsonSchemaDataGenerator;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.healing.interfaces.Healer;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.CompositionEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NicEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.services.schemagenerator.SchemaGenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateContext;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Collection;
+import java.util.Map;
+import java.util.Objects;
+
+public class SubEntitiesQuestionnaireHealer implements Healer {
+ private static Version version00 = new Version(0, 0);
+ private MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ private static final VendorSoftwareProductDao vendorSoftwareProductDao =
+ VendorSoftwareProductDaoFactory.getInstance().createInterface();
+ private static ComponentDao componentDao = ComponentDaoFactory.getInstance().createInterface();
+ private static NicDao nicDao = NicDaoFactory.getInstance().createInterface();
+ private static NetworkDao networkDao = NetworkDaoFactory.getInstance().createInterface();
+
+ @Override
+ public Object heal(Map<String, Object> healingParams) throws Exception {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ String vspId = (String) healingParams.get(SdcCommon.VSP_ID);
+ Version version = version00.equals(healingParams.get(SdcCommon.VERSION)) ? new Version
+ (0, 1)
+ : (Version) healingParams.get(SdcCommon.VERSION);
+
+ Collection<ComponentEntity> componentEntities =
+
+ componentDao.listCompositionAndQuestionnaire(vspId, version);
+ networkDao.list(new NetworkEntity(vspId, version,null));
+
+ Collection<NicEntity> nicEntities = vendorSoftwareProductDao.listNicsByVsp(vspId, version);
+
+ healCompositionEntityQuestionnaire(componentEntities, version, CompositionEntityType.component);
+ healCompositionEntityQuestionnaire(nicEntities, version, CompositionEntityType.nic);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return new Object();
+ }
+
+
+ private void healCompositionEntityQuestionnaire(Collection
+ compositionEntities,
+ Version newVersion, CompositionEntityType type) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ for (Object entity : compositionEntities) {
+ CompositionEntity compositionEntity = (CompositionEntity) entity;
+ if (Objects.isNull(compositionEntity.getQuestionnaireData())) {
+ compositionEntity.setVersion(newVersion);
+ updateNullQuestionnaire(compositionEntity, type);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void updateNullQuestionnaire(CompositionEntity entity,
+ CompositionEntityType type) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ entity.setQuestionnaireData(
+ new JsonSchemaDataGenerator(SchemaGenerator
+ .generate(SchemaTemplateContext.questionnaire, type,
+ null)).generateData());
+
+ switch (type) {
+ case component:
+ ComponentEntity component = (ComponentEntity) entity;
+ componentDao.updateQuestionnaireData(component.getVspId(), component
+ .getVersion(), component.getId(), component.getQuestionnaireData());
+ break;
+
+ case nic:
+ NicEntity nic = (NicEntity) entity;
+ nicDao.updateQuestionnaireData(nic.getVspId(), nic.getVersion(), nic.getComponentId(),
+ nic.getId(), nic.getQuestionnaireData());
+ break;
+ }
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java
new file mode 100644
index 0000000000..4d2b26df8b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/VspQuestionnaireHealer.java
@@ -0,0 +1,88 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.healing.healers;
+
+import org.openecomp.core.utilities.json.JsonSchemaDataGenerator;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.healing.interfaces.Healer;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.services.schemagenerator.SchemaGenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateContext;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.IOException;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+public class VspQuestionnaireHealer implements Healer {
+ private static final VendorSoftwareProductInfoDao vspInfoDao =
+ VendorSoftwareProductInfoDaoFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public VspQuestionnaireHealer() {
+ }
+
+ @Override
+ public Object heal(Map<String, Object> healingParams) throws IOException {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Optional<String> questionnaireData = null;
+ String vspId = (String) healingParams.get(SdcCommon.VSP_ID);
+ Version version = (Version) healingParams.get(SdcCommon.VERSION);
+
+ VspQuestionnaireEntity vspQuestionnaireEntity =
+ vspInfoDao.getQuestionnaire(vspId, version);
+
+ if(Objects.isNull(vspQuestionnaireEntity.getQuestionnaireData())) {
+ questionnaireData = healQuestionnaire(vspId, version);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return questionnaireData;
+ }
+
+ private Optional<String> healQuestionnaire(String vspId, Version version) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String questionnaireData;
+ String generatedSchema = SchemaGenerator
+ .generate(SchemaTemplateContext.questionnaire, CompositionEntityType.vsp, null);
+ try {
+ questionnaireData = new JsonSchemaDataGenerator(generatedSchema).generateData();
+ vspInfoDao.updateQuestionnaireData(vspId, version, questionnaireData);
+ }catch(Exception e){
+ return Optional.empty();
+ }
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(questionnaireData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/pom.xml b/openecomp-be/lib/openecomp-healing-lib/pom.xml
new file mode 100644
index 0000000000..76f2fdf784
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/pom.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <packaging>pom</packaging>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-healing-api</module>
+ <module>openecomp-sdc-healing-core</module>
+ <module>openecomp-sdc-healing-impl</module>
+ </modules>
+</project>
diff --git a/openecomp-be/lib/openecomp-healing-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-healing-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..02ba7f140b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/pom.xml.versionsBackup
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-healing-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>openecomp-sdc-healing-api</module>
+ <module>openecomp-sdc-healing-core</module>
+ <module>openecomp-sdc-healing-impl</module>
+ </modules>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-heat-lib/pom.xml b/openecomp-be/lib/openecomp-heat-lib/pom.xml
index f04b243dbe..2d79b5ab22 100644
--- a/openecomp-be/lib/openecomp-heat-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-heat-lib/pom.xml
@@ -2,26 +2,20 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-heat-lib</name>
+ <artifactId>openecomp-heat-lib</artifactId>
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <artifactId>openecomp-heat-lib</artifactId>
-
- <name>openecomp-heat-lib</name>
-
<dependencies>
<dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.17</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -31,19 +25,19 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-common-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
+ <version>${logback.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>RELEASE</version>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -53,7 +47,4 @@
</dependency>
</dependencies>
-
-
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-heat-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-heat-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..f434a8e24c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-heat-lib/pom.xml.versionsBackup
@@ -0,0 +1,50 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-heat-lib</name>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+ <artifactId>openecomp-heat-lib</artifactId>
+
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java
index 62364e7a11..d4b6a88ba9 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/DefinedHeatParameterTypes.java
@@ -33,7 +33,6 @@ public enum DefinedHeatParameterTypes {
COMMA_DELIMITED_LIST("comma_delimited_list"),
JSON("json"),
BOOLEAN("boolean");
- // TODO : ASK SEGEV ABOUT STRING
private static Map<String, DefinedHeatParameterTypes> stringToDefinedType = new HashMap<>();
@@ -80,11 +79,8 @@ public enum DefinedHeatParameterTypes {
return (value instanceof Map) || (value instanceof List);
case STRING:
- //return value instanceof String;
return true;
-
default:
- // return false;
}
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/manifest/FileData.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/manifest/FileData.java
index 728b714868..dd487603e1 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/manifest/FileData.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/manifest/FileData.java
@@ -20,6 +20,9 @@
package org.openecomp.sdc.heat.datatypes.manifest;
+import org.apache.commons.collections4.CollectionUtils;
+
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
@@ -75,6 +78,18 @@ public class FileData {
this.data = data;
}
+ /**
+ * Add file data.
+ *
+ * @param data the data
+ */
+ public void addFileData(FileData data) {
+ if (CollectionUtils.isEmpty(this.data)) {
+ this.data = new ArrayList<>();
+ }
+ this.data.add(data);
+ }
+
public enum Type {
HEAT("HEAT"),
@@ -103,5 +118,10 @@ public class FileData {
return displayName;
}
+ public static boolean isArtifact(Type fileType)
+ {
+ return !Arrays.asList(HEAT,HEAT_ENV, HEAT_VOL).contains(fileType);
+ }
+
}
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Constraint.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Constraint.java
index 8aad825055..ebbb064ce9 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Constraint.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Constraint.java
@@ -26,7 +26,7 @@ import java.util.List;
public class Constraint {
private Object[] length;
private Integer[] range;
- private List<Object> valid_values;
+ private List<Object> validValues;
private String pattern;
public Constraint() {
@@ -40,12 +40,12 @@ public class Constraint {
this.range = new Integer[]{inRange[0], inRange[1]};
}
- public List<Object> getValid_values() {
- return valid_values;
+ public List<Object> getValidValues() {
+ return validValues;
}
- public void setValid_values(List<Object> validValues) {
- this.valid_values = validValues;
+ public void setValidValues(List<Object> validValues) {
+ this.validValues = validValues;
}
/**
@@ -54,10 +54,10 @@ public class Constraint {
* @param validValue the valid value
*/
public void addValidValue(Object validValue) {
- if (this.valid_values == null) {
- this.valid_values = new ArrayList<>();
+ if (this.validValues == null) {
+ this.validValues = new ArrayList<>();
}
- valid_values.add(validValue);
+ validValues.add(validValue);
}
public Object[] getLength() {
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailResourceTypes.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailResourceTypes.java
new file mode 100644
index 0000000000..47eaefafec
--- /dev/null
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailResourceTypes.java
@@ -0,0 +1,69 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.heat.datatypes.model;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+public enum ContrailResourceTypes {
+ ATTACH_POLICY("OS::Contrail::AttachPolicy"),
+ SERVICE_INSTANCE("OS::Contrail::ServiceInstance"),
+ SERVICE_TEMPLATE("OS::Contrail::ServiceTemplate"),
+ NETWORK_POLICY("OS::Contrail::NetworkPolicy"),
+ VIRTUAL_NETWORK("OS::Contrail::VirtualNetwork");
+
+ private static Map<String, ContrailResourceTypes> stringToContrailResourceTypeMap;
+
+ static {
+ stringToContrailResourceTypeMap = new HashMap<>();
+
+ for (ContrailResourceTypes type : ContrailResourceTypes.values()) {
+ stringToContrailResourceTypeMap.put(type.contrailResourceType, type);
+ }
+ }
+
+ private String contrailResourceType;
+
+ ContrailResourceTypes(String contrailResourceType) {
+ this.contrailResourceType = contrailResourceType;
+ }
+
+ /**
+ * Find by contrail v 2 resource contrail resource types.
+ *
+ * @param contrailV2Resource the contrail v 2 resource
+ * @return the contrail resource types
+ */
+ public static ContrailResourceTypes findByContrailV2Resource(String contrailV2Resource) {
+ return contrailV2Resource == null ? null
+ : stringToContrailResourceTypeMap.get(contrailV2Resource);
+
+ }
+
+ public static boolean isResourceTypeContrail(String resourceType) {
+ return Objects.nonNull(findByContrailV2Resource(resourceType));
+ }
+
+ public String getContrailResourceType() {
+ return contrailResourceType;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailV2ResourceTypes.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailV2ResourceTypes.java
new file mode 100644
index 0000000000..ff706093f8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/ContrailV2ResourceTypes.java
@@ -0,0 +1,60 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.heat.datatypes.model;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+public enum ContrailV2ResourceTypes {
+ NETWROK_IPAM("OS::ContrailV2::NetworkIpam"),
+ VIRTUAL_NETWORK("OS::ContrailV2::VirtualNetwork"),
+ NETWORK_POLICY("OS::ContrailV2::NetworkPolicy"),
+ VIRTUAL_MACHINE_INTERFACE("OS::ContrailV2::VirtualMachineInterface");
+
+ private static Map<String, ContrailV2ResourceTypes> stringToContrailV2ResourceTypeMap;
+
+ static {
+ stringToContrailV2ResourceTypeMap = new HashMap<>();
+
+ for (ContrailV2ResourceTypes type : ContrailV2ResourceTypes.values()) {
+ stringToContrailV2ResourceTypeMap.put(type.contrailV2ResourceType, type);
+ }
+ }
+
+ private String contrailV2ResourceType;
+
+ ContrailV2ResourceTypes(String contrailV2ResourceType) {
+ this.contrailV2ResourceType = contrailV2ResourceType;
+ }
+
+ public static ContrailV2ResourceTypes findByContrailV2Resource(String contrailV2Resource) {
+ return stringToContrailV2ResourceTypeMap.get(contrailV2Resource);
+ }
+
+ public static boolean isResourceTypeContrailV2(String resourceType) {
+ return Objects.nonNull(findByContrailV2Resource(resourceType));
+ }
+
+ public String getContrailV2ResourceType() {
+ return contrailV2ResourceType;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplate.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplate.java
index 4170d35d7a..294bb9e47e 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplate.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplate.java
@@ -36,8 +36,8 @@ public class HeatOrchestrationTemplate {
return heat_template_version;
}
- public void setHeat_template_version(String heatTemplateVersion) {
- this.heat_template_version = heatTemplateVersion;
+ public void setHeat_template_version(String heat_template_version) {
+ this.heat_template_version = heat_template_version;
}
public String getDescription() {
@@ -52,8 +52,8 @@ public class HeatOrchestrationTemplate {
return parameter_groups;
}
- public void setParameter_groups(List<ParameterGroup> parameterGroups) {
- this.parameter_groups = parameterGroups;
+ public void setParameter_groups(List<ParameterGroup> parameter_groups) {
+ this.parameter_groups = parameter_groups;
}
public Map<String, Parameter> getParameters() {
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatResourcesTypes.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatResourcesTypes.java
index d4adfe7d32..b73fe385a6 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatResourcesTypes.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/HeatResourcesTypes.java
@@ -26,93 +26,27 @@ import java.util.List;
import java.util.Map;
import java.util.Objects;
-/**
- * The enum Heat resources types.
- */
public enum HeatResourcesTypes {
- /**
- * Nova server resource type heat resources types.
- */
NOVA_SERVER_RESOURCE_TYPE("OS::Nova::Server"),
- /**
- * Nova server group resource type heat resources types.
- */
NOVA_SERVER_GROUP_RESOURCE_TYPE("OS::Nova::ServerGroup"),
- /**
- * Neutron port resource type heat resources types.
- */
NEUTRON_PORT_RESOURCE_TYPE("OS::Neutron::Port"),
- /**
- * Contrail network rule resource type heat resources types.
- */
CONTRAIL_NETWORK_RULE_RESOURCE_TYPE("OS::Contrail::NetworkPolicy"),
- /**
- * Contrail network attach rule resource type heat resources types.
- */
CONTRAIL_NETWORK_ATTACH_RULE_RESOURCE_TYPE("OS::Contrail::AttachPolicy"),
- /**
- * Contrail virtual network resource type heat resources types.
- */
CONTRAIL_VIRTUAL_NETWORK_RESOURCE_TYPE("OS::Contrail::VirtualNetwork"),
- /**
- * Cinder volume resource type heat resources types.
- */
CINDER_VOLUME_RESOURCE_TYPE("OS::Cinder::Volume"),
- /**
- * Cinder volume attachment resource type heat resources types.
- */
CINDER_VOLUME_ATTACHMENT_RESOURCE_TYPE("OS::Cinder::VolumeAttachment"),
- /**
- * Neutron net resource type heat resources types.
- */
NEUTRON_NET_RESOURCE_TYPE("OS::Neutron::Net"),
- /**
- * Neutron subnet resource type heat resources types.
- */
NEUTRON_SUBNET_RESOURCE_TYPE("OS::Neutron::Subnet"),
- /**
- * Neutron security group resource type heat resources types.
- */
NEUTRON_SECURITY_GROUP_RESOURCE_TYPE("OS::Neutron::SecurityGroup"),
- /**
- * Heat software config type heat resources types.
- */
HEAT_SOFTWARE_CONFIG_TYPE("OS::Heat::SoftwareConfig"),
- /**
- * Heat cloud config type heat resources types.
- */
HEAT_CLOUD_CONFIG_TYPE("OS::Heat::CloudConfig"),
- /**
- * Heat multipart mime type heat resources types.
- */
HEAT_MULTIPART_MIME_TYPE("OS::Heat::MultipartMime"),
- /**
- * Heat contrail network ipam type heat resources types.
- */
HEAT_CONTRAIL_NETWORK_IPAM_TYPE("OS::Contrail::NetworkIpam"),
- /**
- * Contrail v 2 virtual network resource type heat resources types.
- */
CONTRAIL_V2_VIRTUAL_NETWORK_RESOURCE_TYPE("OS::ContrailV2::VirtualNetwork"),
- /**
- * Contrail v 2 virtual machine interface resource type heat resources types.
- */
CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE("OS::ContrailV2::VirtualMachineInterface"),
- /**
- * Contrail service template heat resources types.
- */
CONTRAIL_SERVICE_TEMPLATE("OS::Contrail::ServiceTemplate"),
- /**
- * Contrail service instance heat resources types.
- */
CONTRAIL_SERVICE_INSTANCE("OS::Contrail::ServiceInstance"),
- /**
- * Contrail v 2 network rule resource type heat resources types.
- */
CONTRAIL_V2_NETWORK_RULE_RESOURCE_TYPE("OS::ContrailV2::NetworkPolicy"),
- /**
- * Resource group resource type heat resources types.
- */
RESOURCE_GROUP_RESOURCE_TYPE("OS::Heat::ResourceGroup");
private static Map<String, HeatResourcesTypes> stringToHeatResourceTypeMap;
@@ -132,22 +66,10 @@ public enum HeatResourcesTypes {
this.heatResource = heatResource;
}
- /**
- * Find by heat resource heat resources types.
- *
- * @param heatResource the heat resource
- * @return the heat resources types
- */
public static HeatResourcesTypes findByHeatResource(String heatResource) {
return stringToHeatResourceTypeMap.get(heatResource);
}
- /**
- * Is resource type valid boolean.
- *
- * @param resourceType the resource type
- * @return the boolean
- */
public static boolean isResourceTypeValid(String resourceType) {
return Objects.nonNull(findByHeatResource(resourceType));
}
@@ -159,6 +81,7 @@ public enum HeatResourcesTypes {
* @return the boolean
*/
public static boolean isResourceExpectedToBeExposed(String resourceType) {
+ //todo - check
return (resourceType.equals(NOVA_SERVER_GROUP_RESOURCE_TYPE.getHeatResource())
|| resourceType.equals(CONTRAIL_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource())
|| resourceType.equals(NEUTRON_NET_RESOURCE_TYPE.getHeatResource())
@@ -184,21 +107,11 @@ public enum HeatResourcesTypes {
return result;
}
- /**
- * Gets heat resource.
- *
- * @return the heat resource
- */
public String getHeatResource() {
return heatResource;
}
- /**
- * Sets heat resource.
- *
- * @param heatResource the heat resource
- */
public void setHeatResource(String heatResource) {
this.heatResource = heatResource;
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Parameter.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Parameter.java
index 63681cc80c..d419738942 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Parameter.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Parameter.java
@@ -60,8 +60,8 @@ public class Parameter {
return _default;
}
- public void set_default(Object defaultValue) {
- this._default = defaultValue;
+ public void set_default(Object _default) {
+ this._default = _default;
}
public boolean isHidden() {
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Resource.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Resource.java
index f4c3cd91cb..2c70105da9 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Resource.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/Resource.java
@@ -58,24 +58,24 @@ public class Resource {
return depends_on;
}
- public void setDepends_on(Object dependsOn) {
- this.depends_on = dependsOn;
+ public void setDepends_on(Object depends_on) {
+ this.depends_on = depends_on;
}
public Object getUpdate_policy() {
return update_policy;
}
- public void setUpdate_policy(Object updatePolicy) {
- this.update_policy = updatePolicy;
+ public void setUpdate_policy(Object update_policy) {
+ this.update_policy = update_policy;
}
public Object getDeletion_policy() {
return deletion_policy;
}
- public void setDeletion_policy(Object deletionPolicy) {
- this.deletion_policy = deletionPolicy;
+ public void setDeletion_policy(Object deletion_policy) {
+ this.deletion_policy = deletion_policy;
}
@Override
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/Artifact.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/Artifact.java
index b5c263f545..95ae4e59c7 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/Artifact.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/Artifact.java
@@ -73,6 +73,11 @@ public class Artifact implements Comparable<Artifact> {
this.errors.add(error);
}
+ @Override
+ public int hashCode() {
+ int result = fileName.hashCode();
+ return result;
+ }
@Override
public boolean equals(Object obj) {
@@ -93,12 +98,6 @@ public class Artifact implements Comparable<Artifact> {
}
@Override
- public int hashCode() {
- int result = fileName.hashCode();
- return result;
- }
-
- @Override
public int compareTo(Artifact artifact) {
return artifact.getFileName().compareTo(this.getFileName());
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/HeatStructureTree.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/HeatStructureTree.java
index c86425fd43..5313d4d370 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/HeatStructureTree.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/structure/HeatStructureTree.java
@@ -30,9 +30,6 @@ import java.util.List;
import java.util.Set;
import java.util.TreeSet;
-/**
- * The type Heat structure tree.
- */
public class HeatStructureTree implements Comparable<HeatStructureTree> {
private String fileName;
@@ -40,27 +37,18 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
private Boolean isBase;
private HeatStructureTree env;
private List<ErrorMessage> errors;
- private Set<HeatStructureTree> HEAT;
+ private Set<HeatStructureTree> heat;
private Set<HeatStructureTree> volume;
private Set<HeatStructureTree> network;
private Set<HeatStructureTree> nested;
private Set<HeatStructureTree> other;
private Set<Artifact> artifacts;
- /**
- * Instantiates a new Heat structure tree.
- */
public HeatStructureTree() {
}
;
- /**
- * Instantiates a new Heat structure tree.
- *
- * @param fileName the file name
- * @param isBase the is base
- */
public HeatStructureTree(String fileName, boolean isBase) {
setBase(isBase);
setFileName(fileName);
@@ -84,102 +72,47 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
return null;
}
- /**
- * Sets type.
- *
- * @param type the type
- */
public void setType(FileData.Type type) {
this.type = type;
}
- /**
- * Gets base.
- *
- * @return the base
- */
public Boolean getBase() {
return isBase;
}
- /**
- * Sets base.
- *
- * @param base the base
- */
public void setBase(Boolean base) {
isBase = base;
}
- /**
- * Gets file name.
- *
- * @return the file name
- */
public String getFileName() {
return fileName;
}
- /**
- * Sets file name.
- *
- * @param file the file
- */
public void setFileName(String file) {
this.fileName = file;
}
- /**
- * Gets heat.
- *
- * @return the heat
- */
- @JsonProperty(value = "HEAT")
- public Set<HeatStructureTree> getHEAT() {
- return HEAT;
+ @JsonProperty(value = "heat")
+ public Set<HeatStructureTree> getHeat() {
+ return heat;
}
- /**
- * Sets heat.
- *
- * @param heat the heat
- */
- public void setHEAT(Set<HeatStructureTree> heat) {
- this.HEAT = heat;
+ public void setHeat(Set<HeatStructureTree> heat) {
+ this.heat = heat;
}
- /**
- * Gets nested.
- *
- * @return the nested
- */
public Set<HeatStructureTree> getNested() {
return nested;
}
- /**
- * Sets nested.
- *
- * @param nested the nested
- */
public void setNested(Set<HeatStructureTree> nested) {
this.nested = nested;
}
- /**
- * Gets artifacts.
- *
- * @return the artifacts
- */
public Set<Artifact> getArtifacts() {
return artifacts;
}
- /**
- * Sets artifacts.
- *
- * @param artifacts the artifacts
- */
public void setArtifacts(Set<Artifact> artifacts) {
this.artifacts = artifacts;
}
@@ -210,56 +143,26 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
this.artifacts.add(artifact);
}
- /**
- * Gets env.
- *
- * @return the env
- */
public HeatStructureTree getEnv() {
return env;
}
- /**
- * Sets env.
- *
- * @param env the env
- */
public void setEnv(HeatStructureTree env) {
this.env = env;
}
- /**
- * Gets volume.
- *
- * @return the volume
- */
public Set<HeatStructureTree> getVolume() {
return volume;
}
- /**
- * Sets volume.
- *
- * @param volume the volume
- */
public void setVolume(Set<HeatStructureTree> volume) {
this.volume = volume;
}
- /**
- * Gets network.
- *
- * @return the network
- */
public Set<HeatStructureTree> getNetwork() {
return network;
}
- /**
- * Sets network.
- *
- * @param network the network
- */
public void setNetwork(Set<HeatStructureTree> network) {
this.network = network;
}
@@ -297,12 +200,12 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
*
* @param heat the heat
*/
- public void addHeatToHEATList(HeatStructureTree heat) {
- if (this.HEAT == null) {
- this.HEAT = new TreeSet<>();
+ public void addHeatToHeatList(HeatStructureTree heat) {
+ if (this.heat == null) {
+ this.heat = new TreeSet<>();
}
- this.HEAT.add(heat);
+ this.heat.add(heat);
}
/**
@@ -351,6 +254,21 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
}
@Override
+ public int hashCode() {
+ int result1 = fileName != null ? fileName.hashCode() : 0;
+ result1 = 31 * result1 + (env != null ? env.hashCode() : 0);
+ result1 = 31 * result1 + (heat != null ? heat.hashCode() : 0);
+ result1 = 31 * result1 + (volume != null ? volume.hashCode() : 0);
+ result1 = 31 * result1 + (network != null ? network.hashCode() : 0);
+ result1 = 31 * result1 + (artifacts != null ? artifacts.hashCode() : 0);
+ result1 = 31 * result1 + (nested != null ? nested.hashCode() : 0);
+ result1 = 31 * result1 + (errors != null ? errors.hashCode() : 0);
+
+
+ return result1;
+ }
+
+ @Override
public boolean equals(Object other) {
if (this == other) {
return true;
@@ -368,7 +286,7 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
if (env != null ? !env.equals(heatStructureTree.env) : heatStructureTree.env != null) {
return false;
}
- if (HEAT != null ? !HEAT.equals(heatStructureTree.HEAT) : heatStructureTree.HEAT != null) {
+ if (heat != null ? !heat.equals(heatStructureTree.heat) : heatStructureTree.heat != null) {
return false;
}
if (volume != null ? !volume.equals(heatStructureTree.volume)
@@ -395,35 +313,10 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
return true;
}
- @Override
- public int hashCode() {
- int result1 = fileName != null ? fileName.hashCode() : 0;
- result1 = 31 * result1 + (env != null ? env.hashCode() : 0);
- result1 = 31 * result1 + (HEAT != null ? HEAT.hashCode() : 0);
- result1 = 31 * result1 + (volume != null ? volume.hashCode() : 0);
- result1 = 31 * result1 + (network != null ? network.hashCode() : 0);
- result1 = 31 * result1 + (artifacts != null ? artifacts.hashCode() : 0);
- result1 = 31 * result1 + (nested != null ? nested.hashCode() : 0);
- result1 = 31 * result1 + (errors != null ? errors.hashCode() : 0);
-
-
- return result1;
- }
-
- /**
- * Gets errors.
- *
- * @return the errors
- */
public List<ErrorMessage> getErrors() {
return errors;
}
- /**
- * Sets errors.
- *
- * @param errors the errors
- */
public void setErrors(List<ErrorMessage> errors) {
this.errors = errors;
}
@@ -442,26 +335,16 @@ public class HeatStructureTree implements Comparable<HeatStructureTree> {
}
}
- /**
- * Gets other.
- *
- * @return the other
- */
public Set<HeatStructureTree> getOther() {
return other;
}
- /**
- * Sets other.
- *
- * @param other the other
- */
public void setOther(Set<HeatStructureTree> other) {
this.other = other;
}
@Override
- public int compareTo(HeatStructureTree heatStructureTree) {
- return heatStructureTree.getFileName().compareTo(this.getFileName());
+ public int compareTo(HeatStructureTree obj) {
+ return obj.getFileName().compareTo(this.getFileName());
}
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/ErrorCodes.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/ErrorCodes.java
index c48d732e63..e239d225e8 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/ErrorCodes.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/ErrorCodes.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.heat.services;
+
public class ErrorCodes {
public static final String INVALID_BOOLEAN = "INVALID_BOOLEAN";
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java
index e2afe89a06..91f36a17d1 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java
@@ -21,7 +21,7 @@
package org.openecomp.sdc.heat.services;
public class HeatConstants {
- public static final String GET_ATT_FROM_RESOURCE_GROUP_PREFIX = "resource.";
+ public static final String GET_ATTR_FROM_RESOURCE_GROUP_PREFIX = "resource.";
public static final String RESOURCE_GROUP_INDEX_VAR_DEFAULT_VALUE = "%index%";
public static final String INDEX_PROPERTY_NAME = "index_var";
@@ -30,5 +30,30 @@ public class HeatConstants {
public static final String VOLUME_ID_PROPERTY_NAME = "volume_id";
public static final String RESOURCE_DEF_PROPERTY_NAME = "resource_def";
public static final String SCALE_OUT_PROPERTY_NAME = "scale_out";
+ public static final String INTERFACE_LIST_PROPERTY_NAME = "interface_list";
+ public static final String VIRTUAL_NETWORK_PROPERTY_NAME = "virtual_network";
+ public static final String VMI_SUB_INTERFACE_VLAN_TAG_PROPERTY_NAME
+ = "virtual_machine_interface_properties_sub_interface_vlan_tag";
+ public static final String VMI_PROPERTIES_PROPERTY_NAME = "virtual_machine_interface_properties";
+ public static final String VMI_REFS_PROPERTY_NAME = "virtual_machine_interface_refs";
+ public static final String VMI_MAC_ADDRESSES = "virtual_machine_interface_mac_addresses";
+ public static final String VMI_MAC_ADDRESSES_MAC_ADDRESSES =
+ "virtual_machine_interface_mac_addresses#virtual_machine_interface_mac_addresses_mac_address";
+ public static final String VIRTUAL_NETWORK_REFS_PROPERTY_NAME = "virtual_network_refs";
+ public static final String READ_ONLY_PROPERTY_NAME = "read_only";
+ public static final String VOL_ID_PROPERTY_NAME = "volume_id";
+ public static final String CONFIG_DRIVE_PROPERTY_NAME = "config_drive";
+ public static final String AVAILABILITY_ZONE_ENABLE_PROPERTY_NAME = "availability_zone_enable";
+ public static final String ORDERED_INTERFACES_PROPERTY_NAME = "ordered_interfaces";
+ public static final String SHARED_IP_LIST_PROPERTY_NAME = "shared_ip_list";
+ public static final String STATIC_ROUTES_LIST_PROPERTY_NAME = "static_routes_list";
+ public static final String SERVICE_INTERFCAE_TYPE_LIST_PROPERTY_NAME =
+ "service_interface_type_list";
+ public static final String PORT_SECURITY_ENABLED_PROPERTY_NAME = "port_security_enabled";
+ public static final String SHARED_PROPERTY_NAME = "shared";
+ public static final String ADMIN_STATE_UP_PROPERTY_NAME = "admin_state_up";
+
+ public static final String CONTRAIL_RESOURCE_PREFIX = "OS::Contrail::";
+ public static final String CONTRAIL_V2_RESOURCE_PREFIX = "OS::ContrailV2::";
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatStructureUtil.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatStructureUtil.java
index a216b224af..cd217a50ef 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatStructureUtil.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatStructureUtil.java
@@ -21,18 +21,13 @@
package org.openecomp.sdc.heat.services;
import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.collections4.MapUtils;
import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
-import org.openecomp.sdc.heat.datatypes.model.PropertiesMapKeyTypes;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
-import java.util.Collection;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
@@ -40,151 +35,11 @@ import java.util.Objects;
import java.util.Set;
/**
- * The type Heat structure util.
+ * Created by TALIO on 2/19/2017.
*/
public class HeatStructureUtil {
/**
- * Gets nested files.
- *
- * @param filename the filename
- * @param hot the hot
- * @param globalContext the global context
- * @return the nested files
- */
- public static Set<String> getNestedFiles(String filename, HeatOrchestrationTemplate hot,
- GlobalValidationContext globalContext) {
-
- Set<String> nestedFileList = new HashSet<>();
- Set<String> resourceDefNestedFiles;
- hot.getResources().values().stream().filter(
- resource -> (resource.getType().endsWith(".yaml") || resource.getType().endsWith(".yml")))
- .forEach(resource -> nestedFileList.add(resource.getType()));
-
- resourceDefNestedFiles = getResourceDefNestedFiles(filename, hot, globalContext);
- nestedFileList.addAll(resourceDefNestedFiles);
-
- return nestedFileList;
- }
-
-
- private static Set<String> getResourceDefNestedFiles(String filename,
- HeatOrchestrationTemplate hot,
- GlobalValidationContext globalContext) {
- Set<String> resourceDefNestedFiles = new HashSet<>();
- hot.getResources()
- .entrySet()
- .stream()
- .filter(entry -> entry.getValue().getType()
- .equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource()))
- .filter(entry ->
- getResourceDef(filename, entry.getKey(), entry.getValue(), globalContext) != null
- && isNestedResource(
- getResourceDef(filename, entry.getKey(), entry.getValue(), globalContext)
- .getType()))
- .forEach(entry -> resourceDefNestedFiles.add(
- getResourceDef(filename, entry.getKey(), entry.getValue(), globalContext).getType()));
-
- return resourceDefNestedFiles;
- }
-
-
- /**
- * Gets resource def.
- *
- * @param filename the filename
- * @param resourceName the resource name
- * @param resource the resource
- * @param globalContext the global context
- * @return the resource def
- */
- @SuppressWarnings("unchecked")
- public static Resource getResourceDef(String filename, String resourceName, Resource resource,
- GlobalValidationContext globalContext) {
- Resource resourceDef = null;
- Map<String, Object> resourceDefValueMap = resource.getProperties() == null ? null
- : (Map<String, Object>) resource.getProperties()
- .get(PropertiesMapKeyTypes.RESOURCE_DEF.getKeyMap());
- if (MapUtils.isNotEmpty(resourceDefValueMap)) {
- Object resourceDefType = resourceDefValueMap.get("type");
- if (Objects.nonNull(resourceDefType)) {
- if (resourceDefType instanceof String) {
- boolean isNested =
- checkIfResourceGroupTypeIsNested(filename, resourceName, (String) resourceDefType,
- globalContext);
- if (isNested) {
- resourceDef = new Resource();
- resourceDef.setType((String) resourceDefType);
- //noinspection unchecked
- resourceDef.setProperties((Map<String, Object>) resourceDefValueMap.get("properties"));
- }
- } else {
- globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_RESOURCE_GROUP_TYPE.getErrorMessage(),
- resourceName, resourceDefType.toString()));
- }
- } else {
- globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_RESOURCE_TYPE.getErrorMessage(), "null",
- resourceName));
- }
-
- }
- return resourceDef;
- }
-
-
- /**
- * Check if resource group type is nested boolean.
- *
- * @param filename the filename
- * @param resourceName the resource name
- * @param resourceDefType the resource def type
- * @param globalContext the global context
- * @return the boolean
- */
- public static boolean checkIfResourceGroupTypeIsNested(String filename, String resourceName,
- String resourceDefType,
- GlobalValidationContext globalContext) {
- if (!HeatStructureUtil.isNestedResource(resourceDefType)) {
- globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_RESOURCE_GROUP_TYPE.getErrorMessage(),
- resourceName, resourceDefType));
- return false;
- }
- return true;
- }
-
- /**
- * Gets artifact files.
- *
- * @param filename the filename
- * @param hot the hot
- * @param globalContext the global context
- * @return the artifact files
- */
- public static Set<String> getArtifactFiles(String filename, HeatOrchestrationTemplate hot,
- GlobalValidationContext globalContext) {
- Set<String> artifactSet = new HashSet<>();
- Collection<Resource> resourcesValue =
- hot.getResources() == null ? null : hot.getResources().values();
- if (CollectionUtils.isNotEmpty(resourcesValue)) {
- for (Resource resource : resourcesValue) {
- Collection<Object> properties =
- resource.getProperties() == null ? null : resource.getProperties().values();
- if (CollectionUtils.isNotEmpty(properties)) {
- for (Object property : properties) {
- Set<String> artifactNames =
- getReferencedValuesByFunctionName(filename, "get_file", property, globalContext);
- artifactSet.addAll(artifactNames);
- }
- }
- }
- }
- return artifactSet;
- }
-
- /**
* Gets referenced values by function name.
*
* @param filename the filename
@@ -194,18 +49,19 @@ public class HeatStructureUtil {
* @return the referenced values by function name
*/
public static Set<String> getReferencedValuesByFunctionName(String filename, String functionName,
- Object propertyValue,
- GlobalValidationContext globalContext) {
+ Object propertyValue,
+ GlobalValidationContext globalContext) {
Set<String> valuesNames = new HashSet<>();
if (propertyValue instanceof Map) {
Map<String, Object> currPropertyMap = (Map<String, Object>) propertyValue;
if (currPropertyMap.containsKey(functionName)) {
Object getFunctionValue = currPropertyMap.get(functionName);
- if (!(getFunctionValue instanceof String)
- && functionName.equals(ResourceReferenceFunctions.GET_RESOURCE.getFunction())) {
+ if (!(getFunctionValue instanceof String) && functionName.equals(
+ ResourceReferenceFunctions.GET_RESOURCE.getFunction())) {
globalContext.addMessage(filename, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_GET_RESOURCE_SYNTAX.getErrorMessage(),
- getFunctionValue == null ? "null" : getFunctionValue.toString()));
+ .getErrorWithParameters(Messages.INVALID_GET_RESOURCE_SYNTAX.getErrorMessage(),
+ getFunctionValue == null ? "null" : getFunctionValue.toString()),
+ LoggerTragetServiceName.VALIDATE_GET_RESOURCE, "Invalid get_resource syntax");
return valuesNames;
}
if (getFunctionValue instanceof String) {
@@ -238,9 +94,9 @@ public class HeatStructureUtil {
}
} else if (propertyValue instanceof List) {
List propertyValueArray = (List) propertyValue;
- for (Object propertyValueArrayInstance : propertyValueArray) {
+ for (Object propValue : propertyValueArray) {
valuesNames.addAll(
- getReferencedValuesByFunctionName(filename, functionName, propertyValueArrayInstance,
+ getReferencedValuesByFunctionName(filename, functionName, propValue,
globalContext));
}
}
@@ -249,13 +105,11 @@ public class HeatStructureUtil {
}
- /**
- * Is nested resource boolean.
- *
- * @param resourceType the resource type
- * @return the boolean
- */
public static boolean isNestedResource(String resourceType) {
+ if(Objects.isNull(resourceType)){
+ return false;
+ }
return resourceType.endsWith(".yaml") || resourceType.endsWith(".yml");
}
+
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/manifest/ManifestUtil.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/manifest/ManifestUtil.java
index 09378cebf4..af2a71d42c 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/manifest/ManifestUtil.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/manifest/ManifestUtil.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.heat.services.manifest;
+
import org.apache.commons.collections4.CollectionUtils;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
@@ -31,9 +32,6 @@ import java.util.Map;
import java.util.Set;
-/**
- * The type Manifest util.
- */
public class ManifestUtil {
@@ -59,6 +57,7 @@ public class ManifestUtil {
*/
public static void scanFileEnvMap(FileData fileData, List<FileData> fileDataList,
Map<String, FileData> fileEnvMap) {
+
if (CollectionUtils.isEmpty(fileDataList)) {
return;
}
@@ -165,6 +164,7 @@ public class ManifestUtil {
baseFiles.add(fileData.getFile());
}
}
+
if (data == null) {
return;
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManager.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManager.java
index 71c532dbd3..02278acf3f 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManager.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManager.java
@@ -25,31 +25,28 @@ import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.core.utilities.json.JsonUtil;
import org.openecomp.core.utilities.yaml.YamlUtil;
import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.sdc.common.utils.AsdcCommon;
+import org.openecomp.sdc.common.utils.SdcCommon;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.structure.Artifact;
import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
-import org.openecomp.sdc.heat.services.HeatStructureUtil;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import java.io.InputStream;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.Set;
-/**
- * The type Heat tree manager.
- */
+
public class HeatTreeManager {
- private static Logger logger = LoggerFactory.getLogger(HeatTreeManager.class);
+ private static Logger logger = (Logger) LoggerFactory.getLogger(HeatTreeManager.class);
private FileContentHandler heatContentMap = new FileContentHandler();
@@ -70,7 +67,7 @@ public class HeatTreeManager {
* @param content the content
*/
public void addFile(String fileName, InputStream content) {
- if (fileName.equals(AsdcCommon.MANIFEST_NAME)) {
+ if (fileName.equals(SdcCommon.MANIFEST_NAME)) {
manifest = FileUtils.toByteArray(content);
} else {
@@ -93,18 +90,16 @@ public class HeatTreeManager {
addNonNestedVolumeNetworkToTree(networkFileToParent, nestedFiles.keySet(), false);
handleOrphans();
- tree = fileTreeRef.get(AsdcCommon.PARENT);
+ tree = fileTreeRef.get(SdcCommon.PARENT);
}
private void handleOrphans() {
- tree = fileTreeRef.get(AsdcCommon.PARENT);
+ tree = fileTreeRef.get(SdcCommon.PARENT);
candidateOrphanArtifacts.entrySet().stream()
.forEach(entry -> tree.addArtifactToArtifactList(entry.getValue()));
nestedFiles
- .values()
- .stream()
- .filter(heatStructureTree -> tree.getHEAT().contains(heatStructureTree))
- .forEach(heatStructureTree -> tree.getHEAT().remove(heatStructureTree));
+ .values().stream().filter(heatStructureTree -> tree.getHeat().contains(heatStructureTree))
+ .forEach(heatStructureTree -> tree.getHeat().remove(heatStructureTree));
heatContentMap.getFileList().stream().filter(fileName -> !manifestFiles.contains(fileName))
.forEach(fileName -> addTreeOther(fileName));
@@ -132,14 +127,15 @@ public class HeatTreeManager {
HeatOrchestrationTemplate hot =
new YamlUtil().yamlToObject(fileContent, HeatOrchestrationTemplate.class);
- Set<String> nestedSet = HeatStructureUtil.getNestedFiles(filename, hot, globalContext);
+ Set<String> nestedSet = HeatTreeManagerUtil.getNestedFiles(filename, hot, globalContext);
addHeatNestedFiles(fileHeatStructureTree, nestedSet);
- Set<String> artifactSet = HeatStructureUtil.getArtifactFiles(filename, hot, globalContext);
+ Set<String> artifactSet = HeatTreeManagerUtil.getArtifactFiles(filename, hot, globalContext);
addHeatArtifactFiles(fileHeatStructureTree, artifactSet);
} catch (Exception ignore) { /* invalid yaml no need to process reference */ }
}
+
private void addHeatArtifactFiles(HeatStructureTree fileHeatStructureTree,
Set<String> artifactSet) {
Artifact artifact;
@@ -203,7 +199,7 @@ public class HeatTreeManager {
Artifact artifact;
if (parent == null) {
parentHeatStructureTree = new HeatStructureTree();
- fileTreeRef.put(AsdcCommon.PARENT, parentHeatStructureTree);
+ fileTreeRef.put(SdcCommon.PARENT, parentHeatStructureTree);
} else {
parentHeatStructureTree = fileTreeRef.get(parent);
}
@@ -213,7 +209,7 @@ public class HeatTreeManager {
manifestFiles.add(fileName);
type = fileData.getType();
- if (FileData.Type.HEAT.equals(type)) {
+ if (Objects.nonNull(type) && FileData.Type.HEAT.equals(type)) {
fileHeatStructureTree = fileTreeRef.get(fileName);
if (fileHeatStructureTree == null) {
fileHeatStructureTree = new HeatStructureTree();
@@ -223,7 +219,7 @@ public class HeatTreeManager {
fileHeatStructureTree.setBase(fileData.getBase());
fileHeatStructureTree.setType(type);
handleHeatContentReference(null, fileHeatStructureTree, null);
- parentHeatStructureTree.addHeatToHEATList(fileHeatStructureTree);
+ parentHeatStructureTree.addHeatToHeatList(fileHeatStructureTree);
if (fileData.getData() != null) {
scanTree(fileName, fileData.getData());
}
@@ -237,14 +233,14 @@ public class HeatTreeManager {
if (type == null) {
parentHeatStructureTree.addOtherToOtherList(childHeatStructureTree);
} else if (FileData.Type.HEAT_NET.equals(type)) {
- // parentHeatStructureTree.addNetworkToNetworkList(childHeatStructureTree);
+ //parentHeatStructureTree.addNetworkToNetworkList(childHeatStructureTree);
networkFileToParent.put(childHeatStructureTree, parentHeatStructureTree);
if (fileData.getData() != null) {
scanTree(fileName, fileData.getData());
}
} else if (FileData.Type.HEAT_VOL.equals(type)) {
- // parentHeatStructureTree.addVolumeFileToVolumeList(childHeatStructureTree);
+ //parentHeatStructureTree.addVolumeFileToVolumeList(childHeatStructureTree);
volumeFileToParent.put(childHeatStructureTree, parentHeatStructureTree);
if (fileData.getData() != null) {
scanTree(fileName, fileData.getData());
@@ -287,11 +283,6 @@ public class HeatTreeManager {
}
- /**
- * Gets tree.
- *
- * @return the tree
- */
public HeatStructureTree getTree() {
return tree;
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerUtil.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerUtil.java
index dac7cdbbcb..b8df50b87c 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerUtil.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerUtil.java
@@ -20,12 +20,31 @@
package org.openecomp.sdc.heat.services.tree;
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.PropertiesMapKeyTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
-/**
- * The type Heat tree manager util.
- */
public class HeatTreeManagerUtil {
+
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
/**
* Init heat tree manager heat tree manager.
*
@@ -40,4 +59,165 @@ public class HeatTreeManagerUtil {
return heatTreeManager;
}
+
+ /**
+ * Gets nested files.
+ *
+ * @param filename the filename
+ * @param hot the hot
+ * @param globalContext the global context
+ * @return the nested files
+ */
+ public static Set<String> getNestedFiles(String filename, HeatOrchestrationTemplate hot,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Set<String> nestedFileList = new HashSet<>();
+ Set<String> resourceDefNestedFiles;
+ hot.getResources().values().stream().filter(
+ resource -> (resource.getType().endsWith(".yaml") || resource.getType().endsWith(".yml")))
+ .forEach(resource -> nestedFileList.add(resource.getType()));
+
+ resourceDefNestedFiles = getResourceDefNestedFiles(filename, hot, globalContext);
+ nestedFileList.addAll(resourceDefNestedFiles);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return nestedFileList;
+ }
+
+ /**
+ * Gets artifact files.
+ *
+ * @param filename the filename
+ * @param hot the hot
+ * @param globalContext the global context
+ * @return the artifact files
+ */
+ public static Set<String> getArtifactFiles(String filename, HeatOrchestrationTemplate hot,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Set<String> artifactSet = new HashSet<>();
+ Collection<Resource> resourcesValue =
+ hot.getResources() == null ? null : hot.getResources().values();
+ if (CollectionUtils.isNotEmpty(resourcesValue)) {
+ for (Resource resource : resourcesValue) {
+ Collection<Object> properties =
+ resource.getProperties() == null ? null : resource.getProperties().values();
+ if (CollectionUtils.isNotEmpty(properties)) {
+ for (Object property : properties) {
+ Set<String> artifactNames =
+ HeatStructureUtil.getReferencedValuesByFunctionName(filename, "get_file", property,
+ globalContext);
+ artifactSet.addAll(artifactNames);
+ }
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return artifactSet;
+ }
+
+ private static Set<String> getResourceDefNestedFiles(String filename,
+ HeatOrchestrationTemplate hot,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Set<String> resourceDefNestedFiles = new HashSet<>();
+ hot.getResources()
+ .entrySet().stream().filter(entry -> entry.getValue().getType()
+ .equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource()))
+ .filter(entry ->
+ getResourceDef(filename, entry.getKey(), entry.getValue(), globalContext) != null
+ && HeatStructureUtil.isNestedResource(
+ getResourceDef(filename, entry.getKey(), entry.getValue(), globalContext)
+ .getType()))
+ .forEach(entry -> resourceDefNestedFiles.add(
+ getResourceDef(filename, entry.getKey(), entry.getValue(), globalContext).getType()));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return resourceDefNestedFiles;
+ }
+
+ /**
+ * Gets resource def.
+ *
+ * @param filename the filename
+ * @param resourceName the resource name
+ * @param resource the resource
+ * @param globalContext the global context
+ * @return the resource def
+ */
+ @SuppressWarnings("unchecked")
+ public static Resource getResourceDef(String filename, String resourceName, Resource resource,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Resource resourceDef = null;
+ Map<String, Object> resourceDefValueMap = resource.getProperties() == null ? null
+ : (Map<String, Object>) resource.getProperties().get(
+ PropertiesMapKeyTypes.RESOURCE_DEF.getKeyMap());
+ if (MapUtils.isNotEmpty(resourceDefValueMap)) {
+ Object resourceDefType = resourceDefValueMap.get("type");
+ if (Objects.nonNull(resourceDefType)) {
+ if (resourceDefType instanceof String) {
+ boolean isNested =
+ checkIfResourceGroupTypeIsNested(filename, resourceName, (String) resourceDefType,
+ globalContext);
+ if (isNested) {
+ resourceDef = new Resource();
+ resourceDef.setType((String) resourceDefType);
+ //noinspection unchecked
+ resourceDef.setProperties((Map<String, Object>) resourceDefValueMap.get("properties"));
+ }
+ } else {
+ globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_RESOURCE_GROUP_TYPE.getErrorMessage(),
+ resourceName, resourceDefType.toString()),
+ LoggerTragetServiceName.VALIDATE_RESOURCE_GROUP_TYPE, "Invalid resource group type");
+ }
+ } else {
+ globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_RESOURCE_TYPE.getErrorMessage(), "null",
+ resourceName), LoggerTragetServiceName.VALIDATE_RESOURCE_GROUP_TYPE,
+ "Invalid resource type");
+ }
+
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return resourceDef;
+ }
+
+ /**
+ * Check if resource group type is nested boolean.
+ *
+ * @param filename the filename
+ * @param resourceName the resource name
+ * @param resourceDefType the resource def type
+ * @param globalContext the global context
+ * @return the boolean
+ */
+ public static boolean checkIfResourceGroupTypeIsNested(String filename, String resourceName,
+ String resourceDefType,
+ GlobalValidationContext globalContext) {
+ if (!HeatStructureUtil.isNestedResource(resourceDefType)) {
+ globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_RESOURCE_GROUP_TYPE.getErrorMessage(),
+ resourceName, resourceDefType),
+ LoggerTragetServiceName.VALIDATE_RESOURCE_GROUP_TYPE,
+ "Invalid resource group type");
+ return false;
+ }
+ return true;
+ }
}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/EnvironmentTest.java b/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/EnvironmentTest.java
index 2c0cf0b1aa..ee2fb6cab7 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/EnvironmentTest.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/EnvironmentTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.heat.datatypes.model;
-import org.openecomp.core.utilities.yaml.YamlUtil;
import org.junit.Test;
+import org.openecomp.core.utilities.yaml.YamlUtil;
import java.io.InputStream;
@@ -35,4 +55,4 @@ public class EnvironmentTest {
}
}
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplateTest.java b/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplateTest.java
index 09c83ca217..73cc6811ff 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplateTest.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/test/java/org/openecomp/sdc/heat/datatypes/model/HeatOrchestrationTemplateTest.java
@@ -1,8 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.heat.datatypes.model;
-import org.openecomp.core.utilities.yaml.YamlUtil;
import org.junit.Assert;
import org.junit.Test;
+import org.openecomp.core.utilities.yaml.YamlUtil;
import java.io.InputStream;
import java.util.ArrayList;
@@ -115,8 +135,8 @@ public class HeatOrchestrationTemplateTest {
List<Object> validValues = new ArrayList<>();
validValues.add("abc");
validValues.add("def");
- constraint.setValid_values(validValues);
+ constraint.setValidValues(validValues);
constraints.add(constraint);
return constraints;
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml
new file mode 100644
index 0000000000..e1e5c12cd6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <name>openecomp-sdc-logging-api</name>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-logging-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>aspectjrt</artifactId>
+ <version>${aspectj.version}</version>
+ </dependency>
+ </dependencies>
+
+ <!--dependencies>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>${spring.framework.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>${spring.framework.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ <version>${spring.framework.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ <version>${spring.framework.version}</version>
+ </dependency>
+ </dependencies-->
+
+
+</project>
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..a2786b2401
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/pom.xml.versionsBackup
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.aspectj</groupId>
+ <artifactId>aspectjrt</artifactId>
+ <version>1.8.9</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-logging-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <name>openecomp-sdc-logging-api</name>
+ <version>1.0-SNAPSHOT</version>
+
+ <!--dependencies>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>4.1.3.RELEASE</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>4.1.3.RELEASE</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ <version>4.1.3.RELEASE</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ <version>4.1.3.RELEASE</version>
+ </dependency>
+ </dependencies-->
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/BaseFactory.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/BaseFactory.java
new file mode 100644
index 0000000000..3be67dfde2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/BaseFactory.java
@@ -0,0 +1,58 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.api;
+
+import java.util.Iterator;
+import java.util.ServiceLoader;
+
+/**
+ * Contains common functionality for factories used in the logging framework.
+ *
+ * <p>In order to use the factory, a particular (e.g. framework-specific) implementation of a service must be
+ * configured as described in
+ * <a href="http://docs.oracle.com/javase/8/docs/api/java/util/ServiceLoader.html">java.util.ServiceLoader</a>).</p>
+ *
+ * @author evitaliy
+ * @since 13/09/2016.
+ *
+ * @see ServiceLoader
+ */
+public class BaseFactory {
+
+ protected static <T> T locateService(Class<T> clazz) throws Exception {
+
+ T service;
+ ServiceLoader<T> loader = ServiceLoader.load(clazz);
+ Iterator<T> iterator = loader.iterator();
+ if (iterator.hasNext()) {
+
+ service = iterator.next();
+ if (iterator.hasNext()) {
+ System.err.println(String.format("Warning! Configured more than one implementation of %s",
+ clazz.getName()));
+ }
+
+ return service;
+ }
+
+ throw new IllegalArgumentException((String.format("No implementations configured for %s", clazz.getName())));
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java
new file mode 100644
index 0000000000..9055e64f8b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java
@@ -0,0 +1,107 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.api;
+
+/**
+ * <p>This interface defines logging as specified by Open OPENECOMP logging requirements.</p>
+ *
+ * <p>Formatted messages must follow the <a href="http://www.slf4j.org/api/org/slf4j/helpers/MessageFormatter.html>SLF4J
+ * format</a>.</p>
+ *
+ * @author evitaliy
+ * @since 13/09/2016.
+ */
+public interface Logger {
+
+ String getName();
+
+ boolean isMetricsEnabled();
+
+ void metrics(String msg);
+
+ void metrics(String msg, Object arg);
+
+ void metrics(String msg, Object arg1, Object arg2);
+
+ void metrics(String msg, Object... arguments);
+
+ void metrics(String msg, Throwable t);
+
+ boolean isAuditEnabled();
+
+ void audit(String msg);
+
+ void audit(String msg, Object arg);
+
+ void audit(String msg, Object arg1, Object arg2);
+
+ void audit(String msg, Object... arguments);
+
+ void audit(String msg, Throwable t);
+
+ boolean isDebugEnabled();
+
+ void debug(String msg);
+
+ void debug(String msg, Object arg);
+
+ void debug(String msg, Object arg1, Object arg2);
+
+ void debug(String msg, Object... arguments);
+
+ void debug(String msg, Throwable t);
+
+ boolean isInfoEnabled();
+
+ void info(String msg);
+
+ void info(String msg, Object arg);
+
+ void info(String msg, Object arg1, Object arg2);
+
+ void info(String msg, Object... arguments);
+
+ void info(String msg, Throwable t);
+
+ boolean isWarnEnabled();
+
+ void warn(String msg);
+
+ void warn(String msg, Object arg);
+
+ void warn(String msg, Object... arguments);
+
+ void warn(String msg, Object arg1, Object arg2);
+
+ void warn(String msg, Throwable t);
+
+ boolean isErrorEnabled();
+
+ void error(String msg);
+
+ void error(String msg, Object arg);
+
+ void error(String msg, Object arg1, Object arg2);
+
+ void error(String msg, Object... arguments);
+
+ void error(String msg, Throwable t);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/EnrichmentConstants.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerCreationService.java
index c3726aa4e9..fbad636412 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/EnrichmentConstants.java
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerCreationService.java
@@ -18,12 +18,18 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.core.enrichment;
+package org.openecomp.sdc.logging.api;
-import java.io.File;
+/**
+ *
+ * Implements a framework-specific logging, to be used by {@link LoggerFactory}.
+ *
+ * @author evitaliy
+ * @since 13/09/2016.
+ */
+public interface LoggerCreationService {
+
+ Logger getLogger(String className);
-public final class EnrichmentConstants {
- public static final String EXTERNAL_ARTIFACTS_DIR =
- "Artifacts" + File.separator + "ExternalArtifacts";
- //public static final String HEAT_META_FILNAME = "HEAT.meta";
+ Logger getLogger(Class<?> clazz);
}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java
new file mode 100644
index 0000000000..7029ded38d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java
@@ -0,0 +1,207 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.api;
+
+
+/**
+ * <a>Factory to hide a concrete, framework-specific implementation of logger creation.</a>
+ *
+ * <p>The service used by this factory must implement {@link LoggerCreationService}. If no implementation has been
+ * configured or could not be instantiated, a <b>no-op logger</b> will be used, and <b>no events</b> will be logged.
+ * This is done to prevent recursion if attempts are being made to log exceptions that resulted from logger
+ * initialization.
+ * </p>
+ *
+ * @author evitaliy
+ * @since 13/09/2016.
+ *
+ * @see BaseFactory
+ * @see LoggerCreationService
+ */
+@SuppressWarnings("ThrowableInstanceNeverThrown")
+public class LoggerFactory extends BaseFactory {
+
+ private static final LoggerCreationService SERVICE;
+
+ static {
+ LoggerCreationService service;
+
+ try {
+ service = locateService(LoggerCreationService.class);
+ } catch (Throwable e) {
+ new RuntimeException("Failed to instantiate logger factory", e).printStackTrace();
+ // use the no-op service to prevent recursion in case of an attempt to log an exception as a
+ // result of a logger initialization error
+ service = new NoOpLoggerCreationService();
+ }
+
+ SERVICE = service;
+ }
+
+ public static Logger getLogger(String clazzName) {
+ return SERVICE.getLogger(clazzName);
+ }
+
+ public static Logger getLogger(Class<?> clazz) {
+ return SERVICE.getLogger(clazz);
+ }
+
+ private static class NoOpLoggerCreationService implements LoggerCreationService {
+
+ private static final Logger NO_OP_LOGGER = new Logger() {
+
+ @Override
+ public String getName() {
+ return "No-Op Logger";
+ }
+
+ @Override
+ public boolean isMetricsEnabled() {
+ return false;
+ }
+
+ @Override
+ public void metrics(String msg) { }
+
+ @Override
+ public void metrics(String msg, Object arg) { }
+
+ @Override
+ public void metrics(String msg, Object arg1, Object arg2) { }
+
+ @Override
+ public void metrics(String msg, Object... arguments) { }
+
+ @Override
+ public void metrics(String msg, Throwable t) { }
+
+ @Override
+ public boolean isAuditEnabled() {
+ return false;
+ }
+
+ @Override
+ public void audit(String msg) { }
+
+ @Override
+ public void audit(String msg, Object arg) { }
+
+ @Override
+ public void audit(String msg, Object arg1, Object arg2) { }
+
+ @Override
+ public void audit(String msg, Object... arguments) { }
+
+ @Override
+ public void audit(String msg, Throwable t) { }
+
+ @Override
+ public boolean isDebugEnabled() {
+ return false;
+ }
+
+ @Override
+ public void debug(String msg) { }
+
+ @Override
+ public void debug(String msg, Object arg) { }
+
+ @Override
+ public void debug(String msg, Object arg1, Object arg2) { }
+
+ @Override
+ public void debug(String msg, Object... arguments) { }
+
+ @Override
+ public void debug(String msg, Throwable t) { }
+
+ @Override
+ public boolean isInfoEnabled() {
+ return false;
+ }
+
+ @Override
+ public void info(String msg) { }
+
+ @Override
+ public void info(String msg, Object arg) { }
+
+ @Override
+ public void info(String msg, Object arg1, Object arg2) { }
+
+ @Override
+ public void info(String msg, Object... arguments) { }
+
+ @Override
+ public void info(String msg, Throwable t) { }
+
+ @Override
+ public boolean isWarnEnabled() {
+ return false;
+ }
+
+ @Override
+ public void warn(String msg) { }
+
+ @Override
+ public void warn(String msg, Object arg) { }
+
+ @Override
+ public void warn(String msg, Object... arguments) { }
+
+ @Override
+ public void warn(String msg, Object arg1, Object arg2) { }
+
+ @Override
+ public void warn(String msg, Throwable t) { }
+
+ @Override
+ public boolean isErrorEnabled() {
+ return false;
+ }
+
+ @Override
+ public void error(String msg) { }
+
+ @Override
+ public void error(String msg, Object arg) { }
+
+ @Override
+ public void error(String msg, Object arg1, Object arg2) { }
+
+ @Override
+ public void error(String msg, Object... arguments) { }
+
+ @Override
+ public void error(String msg, Throwable t) { }
+ };
+
+ @Override
+ public Logger getLogger(String className) {
+ return NO_OP_LOGGER;
+ }
+
+ @Override
+ public Logger getLogger(Class<?> clazz) {
+ return NO_OP_LOGGER;
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/enrichmentartifacts/EnrichmentArtifactsService.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/annotations/Debug.java
index 0eab0a916c..b00b85a814 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/enrichmentartifacts/EnrichmentArtifactsService.java
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/annotations/Debug.java
@@ -18,12 +18,17 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.core.enrichment.enrichmentartifacts;
+package org.openecomp.sdc.logging.api.annotations;
-import org.openecomp.core.utilities.file.FileContentHandler;
-import org.openecomp.sdc.versioning.dao.types.Version;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
-public interface EnrichmentArtifactsService {
+/**
+ * Created by TALIO on 12/26/2016.
+ */
+
+public @interface Debug {
- FileContentHandler addMibs(String vspId, Version version);
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentArtifactType.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/annotations/Metrics.java
index c91cff0e1e..2bcad91e38 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentArtifactType.java
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/annotations/Metrics.java
@@ -18,17 +18,14 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.core.enrichment.types;
+package org.openecomp.sdc.logging.api.annotations;
-public enum ComponentArtifactType {
- SNMP_POLL,
- SNMP_TRAP;
-
-
- public static ComponentArtifactType getComponentArtifactType(boolean isTrap) {
- return isTrap ? SNMP_TRAP : SNMP_POLL;
- }
+/**
+ * Indicates a method whose execution time should be measured and logged as required for Open OPENECOMP metrics.
+ *
+ * @author evitaliy
+ * @since 27/07/2016.
+ */
+public @interface Metrics {
}
-
-
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/ContextPropagationService.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/ContextPropagationService.java
new file mode 100644
index 0000000000..98200da337
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/ContextPropagationService.java
@@ -0,0 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.api.context;
+
+/**
+ * Should be used to implement a framework-specific mechanism of propagation of a diagnostic context to child threads.
+ *
+ * @author evitaliy
+ * @since 12/09/2016.
+ */
+public interface ContextPropagationService {
+
+ Runnable create(Runnable task);
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/TaskFactory.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/TaskFactory.java
new file mode 100644
index 0000000000..3ad999f272
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/context/TaskFactory.java
@@ -0,0 +1,79 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.api.context;
+
+import org.openecomp.sdc.logging.api.BaseFactory;
+
+/**
+ * <p>Should be used to propagate a diagnostic context (for instance
+ * <a href="http://www.slf4j.org/manual.html#mdc">MDC</a>) to other threads.</p>
+ *
+ * <p>Applicable when creating a child thread directly, or submitting tasks for potentially postponed execution via
+ * an <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Executor.html">Executor</a> (including
+ * any of the <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutorService.html">executor
+ * services</a> and
+ * <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ForkJoinPool.html">ForkJoinPool</a>).</p>
+ *
+ * <p>The service used by this factory must implement {@link ContextPropagationService}.</p>
+ *
+ * @author evitaliy
+ * @since 12/09/2016.
+ *
+ * @see ContextPropagationService
+ */
+@SuppressWarnings("ThrowableInstanceNeverThrown")
+public class TaskFactory extends BaseFactory {
+
+ private static final ContextPropagationService SERVICE;
+ private static final RuntimeException ERROR;
+
+ static {
+
+ ContextPropagationService service = null;
+ RuntimeException error = null;
+
+ try {
+ service = locateService(ContextPropagationService.class);
+ } catch (Throwable e) {
+ error = new RuntimeException("Failed to instantiate task factory", e);
+ }
+
+ SERVICE = service;
+ ERROR = error;
+ }
+
+ /**
+ * Modify a task so that a diagnostic context is propagated to the thread when the task runs. Done in a
+ * logging-framework specific way.
+ *
+ * @param task any Runnable that will run in a thread
+ * @return modified (wrapped) original task that runs the same business logic, but also takes care of copying the
+ * diagnostic context for logging
+ */
+ public static Runnable create(Runnable task) {
+
+ if (SERVICE == null) {
+ throw ERROR;
+ }
+
+ return SERVICE.create(task);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/context/MdcData.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/context/MdcData.java
new file mode 100644
index 0000000000..a6a673d9dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/context/MdcData.java
@@ -0,0 +1,59 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.context;
+
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.slf4j.MDC;
+
+
+public abstract class MdcData {
+ private String level;
+ private String errorCode;
+
+ MdcData() {
+ }
+
+ public MdcData(String level, String errorCode) {
+ this.level = level;
+ this.errorCode = errorCode;
+ }
+
+ public void setMdcValues() {
+ MDC.put(LoggerConstants.ERROR_CATEGORY, this.level);
+ MDC.put(LoggerConstants.ERROR_CODE, this.errorCode);
+ }
+
+ public String getLevel() {
+ return level;
+ }
+
+ public void setLevel(String level) {
+ this.level = level;
+ }
+
+ public String getErrorCode() {
+ return errorCode;
+ }
+
+ public void setErrorCode(String errorCode) {
+ this.errorCode = errorCode;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/AuditMessages.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/AuditMessages.java
new file mode 100644
index 0000000000..028a1bcb38
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/AuditMessages.java
@@ -0,0 +1,28 @@
+package org.openecomp.sdc.logging.messages;
+
+/**
+ * Created by ayalaben on 4/20/2017.
+ */
+public class AuditMessages {
+
+ public static final String AUDIT_MSG = " --Audit-- ";
+
+ public static final String CREATE_VLM = "Create VLM. VLM Name: ";
+ public static final String CHECK_IN_VLM = "Check in VLM. VLM Id: ";
+ public static final String CHECK_OUT_VLM = "Check out VLM. VLM Id: ";
+ public static final String SUBMIT_VLM = "submit VLM. VLM Name: ";
+
+ public static final String CREATE_VSP = "Create VSP. VSP Name: ";
+ public static final String CHECK_IN_VSP = "Check in VSP. VSP Id: ";
+ public static final String CHECK_OUT_VSP = "Check out VSP. VSP Id: ";
+ public static final String SUBMIT_VSP = "Submit VSP. VSP Id: ";
+
+ public static final String UPLOAD_HEAT = "Upload HEAT. VSP Id: ";
+ public static final String UPLOAD_PROCESS_ARTIFACT = "Upload Process Artifact. VSP Id: ";
+ public static final String UPLOAD_ARTIFACT_MIB_POLL = "Upload Artifact SNMP POLL. VSP Id: ";
+ public static final String UPLOAD_ARTIFACT_MIB_TRAP = "Upload Artifact SNMP TRAP. VSP Id: ";
+
+ public static final String IMPORT_SUCCESS = "VSP import to VF success. VSP Id: ";
+ public static final String IMPORT_FAIL = "VSP import to VF fail. VSP Id: ";
+
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/DebugMessages.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/DebugMessages.java
new file mode 100644
index 0000000000..c3e5f977cc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/messages/DebugMessages.java
@@ -0,0 +1,34 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.messages;
+
+
+public class DebugMessages {
+ public static final String DEFAULT_ENTER_METHOD = "Entering %s";
+ public static final String DEFAULT_EXIT_METHOD = "Exiting %s";
+
+ public static final String ENTER_METHOD = "Entering %s with %s = %s";
+ public static final String EXIT_METHOD = "Exiting %s with %s = %s";
+
+ public static final String ENTER_METHOD_FORMATTED = "Entering %s with %s";
+ public static final String EXIT_METHOD_FORMATTED = "Exiting %s with %s";
+
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/DebugConstants.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/DebugConstants.java
new file mode 100644
index 0000000000..71884cff70
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/DebugConstants.java
@@ -0,0 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.types;
+
+/**
+ * Created by TALIO on 1/10/2017.
+ */
+public class DebugConstants {
+ public static final String EXIT = "Exit";
+ public static final String EXIT_DEFAULT = "Exit_Default";
+ public static final String ENTER = "Enter";
+ public static final String ENTER_DEFAULT = "Enter_Default";
+ public static final String DEFAULT = "Default";
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerConstants.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerConstants.java
new file mode 100644
index 0000000000..0d591be095
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerConstants.java
@@ -0,0 +1,41 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.types;
+
+
+public class LoggerConstants {
+
+ public static final String REQUEST_ID = "RequestId";
+ public static final String PARTNER_NAME = "PartnerName";
+ public static final String SERVICE_NAME = "ServiceName";
+ public static final String INSTANCE_UUID = "InstanceUUID";
+ public static final String CATEGORY_LOG_LEVEL = "level";
+ public static final String STATUS_CODE = "StatusCode";
+ public static final String RESPONSE_CODE = "ResponseCode";
+ public static final String RESPONSE_DESCRIPTION = "ResponseDescription";
+ public static final String TARGET_SERVICE_NAME = "TargetServiceName";
+ public static final String TARGET_ENTITY = "TargetEntity";
+ public static final String TARGET_ENTITY_API = "API";
+ public static final String TARGET_ENTITY_DB = "DB";
+ public static final String ERROR_CATEGORY = "ErrorCategory";
+ public static final String ERROR_CODE = "ErrorCode";
+ public static final String ERROR_DESCRIPTION = "ErrorDescription";
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCategory.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCategory.java
new file mode 100644
index 0000000000..5addccde7d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCategory.java
@@ -0,0 +1,30 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.types;
+
+
+public enum LoggerErrorCategory {
+ ERROR,
+ WARN,
+ DEBUG,
+ INFO,
+ FATAL;
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCode.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCode.java
new file mode 100644
index 0000000000..141a1496f0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorCode.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.types;
+
+
+public enum LoggerErrorCode {
+ PERMISSION_ERROR("100"),
+ AVAILABILITY_ERROR("200"),
+ DATA_ERROR("300"),
+ SCHEMA_ERROR("400"),
+ BUSINESS_PROCESS_ERROR("500"),
+ UNKNOWN_ERROR("900");
+
+ private String errorCode;
+
+ LoggerErrorCode(String errorCode) {
+ this.errorCode = errorCode;
+ }
+
+ public String getErrorCode() {
+ return errorCode;
+ }
+
+ public void setErrorCode(String errorCode) {
+ this.errorCode = errorCode;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorDescription.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorDescription.java
new file mode 100644
index 0000000000..16a7b430b8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerErrorDescription.java
@@ -0,0 +1,109 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.types;
+
+
+public class LoggerErrorDescription {
+ public static final String ARTIFACT_NOT_REFERENCED = "Artifact not referenced";
+ public static final String WRONG_FILE_EXTENSION = "Wrong file extention";
+ public static final String INVALID_HEAT_FORMAT = "Invalid HEAT format";
+ public static final String PARAMETER_NOT_FOUND = "Referenced parameter not found";
+ public static final String ENV_PARAMETER_NOT_IN_HEAT = "env includes parameter not in HEAT";
+ public static final String PARAMETER_DEFAULT_VALUE_NOT_ALIGNED_WITH_TYPE =
+ "Parameter default value not alinged with type";
+ public static final String INVALID_RESOURCE_TYPE = "Invalid resource type";
+ public static final String INVALID_GET_RESOURCE_SYNTAX = "Invalid get resource syntax";
+ public static final String RESOURCE_NOT_FOUND = "Resource not found";
+ public static final String INVALID_INDEX_VAR = "Invalid Resource Group index var";
+ public static final String MISSING_FILE = "Missing file";
+ public static final String MISSING_NOVA_PROPERTIES = "Missing NOVA server properties";
+ public static final String NESTED_LOOP = "Found nested loop";
+ public static final String MISSING_PARAMETER_IN_NESTED = "Missing parameter in nested file";
+ public static final String WRONG_VALUE_ASSIGNED_NESTED_PARAMETER =
+ "Wrong value assigned in nested parameters";
+ public static final String SERVER_NOT_DEFINED_NOVA = "Server not defined from nova";
+ public static final String WRONG_POLICY_SERVER_GROUP = "Wrong policy in server group";
+ public static final String SERVER_GROUP_SECURITY_GROUP_NOT_IN_USE =
+ "Server group or security group is not in use";
+ public static final String NETWORK_ATTACH_POLICY_NOT_IN_USE =
+ "Network Attach Policy is not in use";
+ public static final String NO_BIND_FROM_PORT_TO_NOVA = "No bind from port to nova sever";
+ public static final String PORT_BINDS_MORE_THAN_ONE_NOVA =
+ "Port binds to more than one nova sever";
+ public static final String MISSING_RESOURCE_DEPENDS_ON = "Missing resource in depends_on";
+ public static final String GET_ATTR_NOT_FOUND = "get_attr not found";
+ public static final String MISSING_GET_PARAM = "Missing get_param";
+ public static final String EMPTY_FILE = "Empty file";
+ public static final String VALIDATE_FILE = "Can't validate file";
+ public static final String INVALID_FILE_TYPE = "Invalid file type";
+ public static final String INVALID_ZIP = "Invalid zip file";
+
+
+ public static final String RESOURCE_UNIQUE_NETWORK_ROLE =
+ "Resource connects to two networks with the same role";
+ public static final String NAME_NOT_ALIGNED_WITH_GUIDELINES = "Name not aligned with guidelines";
+ public static final String VOLUME_FILE_NOT_EXPOSED = "Volume file not exposed";
+ public static final String RESOURCE_NOT_DEFINED_AS_OUTPUT = "Resource is not defined as output";
+ public static final String FLOATING_IP_IN_USE = "Floating IP resource type is in use";
+ public static final String MISSING_BASE_HEAT = "Missing base HEAT file";
+ public static final String MULTI_BASE_HEAT = "Multi base HEAT file";
+
+ public static final String EXTRACT_COMPOSITION_DATA = "Can't extract composition data";
+
+ public static final String MERGE_CONTRAIL_2_AND_3 =
+ "Merge of Contrail 2 and Contrail 3 resources";
+ public static final String CONTRAIL_2_IN_USE = "Contrail 2 resource is in use";
+
+ public static final String INVALID_MANIFEST = "Invalid manifest file";
+
+ public static final String INVALID_YAML_FORMAT = "Invalid YAML format";
+
+ public static final String CREATE_SERVICE_ARTIFACT = "Can't create service artifact";
+ public static final String CREATE_ENRICH_SERVICE_ARTIFACT =
+ "Can't create enriched service artifact";
+ public static final String CREATE_SERVICE_TEMPLATE = "Can't create service template";
+ public static final String CREATE_ENRICH_SERVICE_TEMPLATE =
+ "Can't create enriched service template";
+ public static final String GET_SERVICE_MODEL = "Can't get service model";
+ public static final String MISSING_MANDATORY_PROPERTY = "Missing mandatory property";
+ public static final String INVALID_PROPERTY = "Invalid Property";
+ public static final String INVALID_ADD_ACTION = "Invalid add action";
+ public static final String UNSUPPORTED_ENTITY = "Unsupported entity";
+ public static final String CREATE_CSAR = "Can't create CSAR file";
+ public static final String PACK_ARTIFACTS = "Can't pack artifacts into CSAR file";
+
+ public static final String TRANSLATE_HEAT = "Can't translate HEAT file";
+ public static final String RESOURCE_FILE_READ_ERROR = "Can't read resource file from class path.";
+ public static final String FAILED_TO_GENERATE_GLOBAL_TYPES = "Failed to generate globalTypes";
+
+ public static final String CHECKOUT_ENTITY = "Can't checkout versionable entity";
+ public static final String SUBMIT_ENTITY = "Can't submit versionable entity";
+ public static final String ENTITY_NOT_FOUND = "Versionable entity not found";
+ public static final String INVALID_VALUE = "Invalid value";
+
+ public static final String UNSUPPORTED_OPERATION = "Unsupported operation";
+ public static final String INVALID_JSON = "Invalid JSON format";
+
+ public static final String INSERT_INTO_APPLICATION_CONFIG =
+ "Can't insert value into application config table";
+
+ public static final String CANT_HEAL = "Can't perform healing operation";
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerServiceName.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerServiceName.java
new file mode 100644
index 0000000000..3fac9547d3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerServiceName.java
@@ -0,0 +1,153 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.types;
+
+
+public enum LoggerServiceName {
+
+ Create_VLM,
+ Get_VLM,
+ Checkout_VLM,
+ Checkin_VLM,
+ Undo_Checkout_VLM,
+ Submit_VLM,
+ Update_VLM,
+ List_VLM,
+
+ List_EP,
+ Create_EP,
+ Update_EP,
+ Get_EP,
+ Delete_EP,
+
+ List_FG,
+ Create_FG,
+ Update_FG,
+ Get_FG,
+ Delete_FG,
+
+ List_LA,
+ Create_LA,
+ Update_LA,
+ Get_LA,
+ Delete_LA,
+
+ List_LKG,
+ Create_LKG,
+ Update_LKG,
+ Get_LKG,
+ Delete_LKG,
+
+ List_VSPs,
+ List_Packages,
+ Create_VSP,
+ Get_VSP,
+ Checkout_VSP,
+ Checkin_VSP,
+ Undo_Checkout_VSP,
+ Submit_VSP,
+ Update_VSP,
+ Create_Package,
+ List_VSP,
+ Upload_File,
+ Get_Uploaded_File,
+ Get_Translated_File,
+ Get_Questionnaire_VSP,
+ Update_Questionnaire_VSP,
+ Get_Information_Artifact,
+
+
+ List_Component_Processes,
+ Delete_List_Component_Processes,
+ Create_Component_Processes,
+ Update_Component_Processes,
+ Get_Component_Processes,
+ Delete_Component_Processes,
+ Upload_File_Component_Processes,
+ Get_Uploaded_File_Component_Processes,
+ Delete_Uploaded_File_Component_Processes,
+
+ List_Processes,
+ Delete_List_Processes,
+ Create_Processes,
+ Update_Processes,
+ Get_Processes,
+ Delete_Processes,
+ Upload_File_Processes,
+ Get_Uploaded_File_Processes,
+ Delete_Uploaded_File_Processes,
+
+ List_Components,
+ Delete_List_Components,
+ Create_Component,
+ Update_Component,
+ Get_Component,
+ Delete_Component,
+ Get_Questionnaire_Component,
+ Update_Questionnaire_Component,
+
+ Upload_MIB_File,
+ Delete_MIB_File,
+ List_MIB_Files,
+
+ List_Network,
+ Create_Network,
+ Update_Network,
+ Get_Network,
+ Delete_Network,
+
+ List_nics,
+ Delete_List_nics,
+ Create_nic,
+ Update_nic,
+ Get_nic,
+ Delete_nic,
+ Get_Questionnaire_nic,
+ Update_Questionnaire_nic,
+
+ Create_Process,
+ Update_Process,
+
+ Insert_To_ApplicationConfig_Table,
+ Get_From_ApplicationConfig_Table,
+ Get_List_From_ApplicationConfig_Table_By_Namespace,
+
+ Get_List_Activity_Log,
+
+ Validate,
+ Enrich, Delete_VSP, Get_Process_Artifact, Create_Entity, Checkout_Entity, Undo_Checkout_Entity,
+ Checkin_Entity, Submit_Entity, Get_Entity_Version, Delete_Entity, Undo_Delete_Entity,
+ Translate_Resource, Translate_HEAT, LoggerServiceName, Get_VSP_List, Delete_VLM, Update_Manifest,
+
+ CREATE_COMPONENT_DEPENDENCY_MODEL,
+ GET_COMPONENT_DEPENDENCY_MODEL;
+
+ public static String getServiceName(LoggerServiceName serviceName) {
+ return serviceName.name().replace("_", " ");
+ }
+
+ @Override
+ public String toString(){
+ return this.name().replace("_", " ");
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerTragetServiceName.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerTragetServiceName.java
new file mode 100644
index 0000000000..b496d73d83
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/types/LoggerTragetServiceName.java
@@ -0,0 +1,186 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.types;
+
+
+public class LoggerTragetServiceName {
+ /*HEAT validator*/
+ public static final String VALIDATE_HEAT_BASE_STRUCTURE = "Validate Heat Base Structure";
+ public static final String VALIDATE_ARTIFACTS_EXISTENCE = "Validate Artifacts Existence";
+ public static final String VALIDATE_RESOURCE_REFERENCE_EXISTENCE =
+ "Validate Resource Reference Existence";
+ public static final String VALIDATE_PARAMETER_REFERENCE_EXITENCE =
+ "Validate Parameter Reference Existence";
+ public static final String VALIDATE_GET_ATTR_FROM_NESTED = "Validate get_attr From Nested";
+ public static final String VALIDATE_ENV_FILE = "Validate env File";
+ public static final String VALIDATE_BASE_PORTS_EXISTENCE = "Validate Base Ports Existence";
+ public static final String VALIDATE_ASSIGNED_VALUES_FOR_NOVA_IMAGE_FLAVOR =
+ "Validate Assigned Value For Nova Server Image Or Flavor";
+ public static final String VALIDATE_NOVA_SERVER_PORT_BINDING =
+ "Validate Ports Binding From Nova Server";
+ public static final String VALIDATE_SERVER_GROUP_EXISTENCE =
+ "Validate Nova Server Group Existence";
+ public static final String VALIDATE_PROPERTIES_MATCH_NESTED_PARAMETERS =
+ "Validate All Properties Match Nested Parameters";
+ public static final String VALIDATE_NESTING_LOOPS = "Validate Nested Loops";
+ public static final String VALIDATE_NOVA_SEVER_GROUP_POLICY = "Validate Nova Server Group Policy";
+ public static final String VALIDATE_RESOURCE_GROUP_TYPE = "Validate Resource Group Resource Type";
+ public static final String VALIDATE_ALL_SECURITY_GROUP_USED =
+ "Validate All Security Group Are Used From Neutron Port Resource";
+ public static final String VALIDATE_CONTRAIL_ATTACH_POLICY_TYPE =
+ "Validate Contrail Attach Policy Type";
+ public static final String VALIDATE_SECURITY_GROUP_FROM_BASE_OUTPUT =
+ "Validate Security Groups From Base File Outputs";
+ public static final String CHECK_FOR_ORPHAN_PORTS = "Validate All Referenced Ports Are Used";
+ public static final String CHECK_FOR_ORPHAN_ARTIFACTS = "Validate All Artifacts Are Referenced";
+ public static final String CHECK_FOR_VALID_FILE_EXTENTION = "Validate File Extention";
+ public static final String VALIDATE_PARAMTER_DEFAULT_MATCH_TYPE =
+ "Validate Parameter Default Aligns With Type";
+ public static final String VALIDATE_ENV_PARAMETER_MATCH_TYPE =
+ "Validate env Parameter Matches Type";
+ public static final String VALIDATE_RESOURCE_TYPE = "Validate Resource Type";
+ public static final String VALIDATE_FILE_EXISTENCE = "Validate File Exitence";
+ public static final String GET_RESOURCE_LIST_BY_TYPE =
+ "Get All Resources By Specific Resource Type";
+ public static final String VALIDATE_ALL_SERVER_GROUP_OR_SECURITY_GROUP_IN_USE =
+ "Validate All Security Group Or Server Group Are In Use";
+ public static final String VALIDATE_ATTACH_POLICY_IN_USE =
+ "Validate All Network Attach Policies Are In Use";
+ public static final String CHECK_RESOURCE_DEPENDS_ON = "Check Resource dependes_on";
+ public static final String GET_SHARED_RESOURCES_FROM_OUTPUTS =
+ "Get Shared Resources From Outputs";
+ public static final String VALIDATE_GET_RESOURCE = "Validate get_resource Syntax";
+ public static final String VALIDATE_FILE = "Validate File";
+
+ /*manifest validator*/
+ public static final String VALIDATE_MANIFEST_CONTENT = "Validate Manifest Content";
+ public static final String VALIDATE_FILE_IN_ZIP = "Validate File In Zip";
+ public static final String VALIDATE_FILE_IN_MANIFEST = "Validate File In Manifest";
+ public static final String VALIDATE_FILE_TYPE_AND_NAME =
+ "Validate File Type And Name In Manifest";
+ public static final String SCAN_MANIFEST_STRUCTURE = "Scan Manifest Structure";
+ public static final String VALIDATE_FILE_TYPE = "Validate File Type";
+
+ /*YAML validator*/
+ public static final String VALIDATE_YAML_CONTENT = "Validate YAML Content";
+
+
+ /*OPENECOMP guide line validator*/
+ public static final String VALIDATE_BASE_FILE =
+ "Validate If All Resources In Base File Are Exposed";
+ public static final String VALIDATE_FORBIDDEN_RESOURCE = "Validate If Resource Type Is Forbidden";
+ public static final String VALIDATE_FIXED_IPS_NAME = "Validate fixed_ips Naming Convention";
+ public static final String VALIDATE_IMAGE_AND_FLAVOR_NAME =
+ "Validate image And flavor Naming Convention";
+ public static final String VALIDATE_NOVA_SERVER_NAME = "Validate Nova Server Naming Convention";
+ public static final String VALIDATE_AVAILABILITY_ZONE_NAME =
+ "Validate availability_zone Naming Convention";
+ public static final String VALIDATE_NOVA_META_DATA_NAME =
+ "Validate Nova Server Meta Data Naming Convention";
+ public static final String VALIDATE_PORT_NETWORK_NAME = "Validate Port Network Naming Convention";
+ public static final String VALIDATE_VM_SYNC_IN_IMAGE_FLAVOR =
+ "Validate VM Name Is Sync In Image And Flavor";
+ public static final String VALIDATE_RESOURCE_NETWORK_UNIQUE_ROLW =
+ "Validate Nova Server Unique Role";
+ public static final String VALIDATE_VOLUME_FILE = "Validate HEAT Volume File";
+
+
+ public static final String VALIDATE_CONTRAIL_VM_NAME =
+ "Validate Contrail VM Name Aligned With Guidelines";
+ public static final String MERGE_OF_CONTRAIL_2_AND_3 = "Merge Of Contrail 2 And Contrail 3";
+ public static final String CONTRAIL_2_IN_USE = "Validate Contrail 2 Resource Is In Use";
+
+
+ public static final String VALIDATE_MANIFEST_PRE_CONDITION = "Validate Manifest Pre-Condition";
+ public static final String VALIDATE_HEAT_FORMAT = "Validate HEAT Format";
+
+ public static final String CREATE_ENTITY = "Create Entity";
+ public static final String CHECKOUT_ENTITY = "Checkout Entity";
+ public static final String UNDO_CHECKOUT_ENTITY = "Undo Checkout Entity";
+ public static final String CHECKIN_ENTITY = "Checkin Entity";
+ public static final String SUBMIT_ENTITY = "Submit Entity";
+ public static final String DELETE_ENTITY = "Delete Entity";
+ public static final String UNDO_DELETE_ENTITY = "Undo Delete Entity";
+
+ public static final String SUBMIT_VSP = "Submit VSP";
+ public static final String GET_VSP = "Get VSP";
+ public static final String DELETE_VSP = "Delete VSP";
+ public static final String ENRICH = "Enrich";
+ public static final String UPLOAD_FILE = "Upload file";
+ public static final String GET_UPLOADED_HEAT = "Get Uploaded HEAT File";
+ public static final String GET_TRANSLATED_FILE = "Get Translated File";
+ public static final String CREATE_TRANSLATED_FILE = "Create Translated File";
+ public static final String CREATE_PACKAGE = "Create Package";
+
+ public static final String SELF_HEALING = "Self Healing";
+ public static final String WRITE_ARTIFACT_XML = "Write Artifact To XML File";
+
+ public static final String GET_VLM = "Get VLM";
+
+ public static final String VALIDATE_MIB = "Validate MIB File";
+ public static final String UPLOAD_MIB = "Upload MIB file";
+
+ public static final String GET_VERSION_INFO = "Get version info";
+
+ public static final String CREATE_NETWORK = "Create Network";
+ public static final String DELETE_NETWORK = "Delete Network";
+
+ public static final String CREATE_COMPONENT = "Create Component";
+ public static final String DELETE_COMPONENT = "Delete Component";
+
+ public static final String GET_PROCESS_ARTIFACT = "Get Process Artifact";
+ public static final String UPLOAD_PROCESS_ARTIFACT = "Upload Process Artifact";
+
+ public static final String CREATE_NIC = "Create Nic";
+ public static final String DELETE_NIC = "Delete Nic";
+
+ public static final String EXTRACT_COMPOSITION_DATA = "Extract Composition Data";
+
+ public static final String TRANSLATE_RESOURCE = "Translate Resource";
+ public static final String GET_RESOURCE = "Get Resource";
+ public static final String VALIDATE_HEAT_BEFORE_TRANSLATE = "Validate HEAT Before Translate";
+
+ public static final String CREATE_SERVICE_ARTIFACT = "Create Service Artifact In DB";
+ public static final String CREATE_SERVICE_ENRICH_ARTIFACT =
+ "Create Service Enriched Artifact In DB";
+ public static final String CREATE_SERVICE_TEMPLATE = "Create Service Template In DB";
+ public static final String CREATE_ENRICH_SERVICE_TEMPLATE =
+ "Create Enriched Service Template In DB";
+ public static final String GET_SERVICE_MODEL = "Get service model";
+ public static final String GET_SERVICE_TEMPLATE = "Get Service Template";
+ public static final String CREATE_REQUIREMENT_ASSIGNMENT = "Create Requierment Assignment";
+ public static final String GENERATE_TRANSLATED_ID = "Generate Translated Id";
+ public static final String ADD_ENTITIES_TO_TOSCA = "Add Entities To TOSCA";
+ public static final String CREATE_CSAR = "Create CSAR";
+ public static final String PACK_ARTIFACTS = "Pack Artifacts Into CSAR File";
+
+ public static final String VALIDATE_CHOICE_VALUE = "Check Chosen Value";
+
+ public static final String INSERT_INTO_APPLICATION_CONFIG =
+ "Insert Value Into Application Config";
+
+ public static final String VALIDATE_FILE_DATA_STRUCTURE = "Validate Manifest Sent From User";
+
+ public static final String CREATE_COMPONENT_DEPENDENCY_MODEL = "Create Component Dependency "
+ + "Model";
+
+ public static final String READ_RESOURCE_FILE = "Read Resource File";
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/factoryConfiguration.json
new file mode 100644
index 0000000000..33163b32bb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/factoryConfiguration.json
@@ -0,0 +1,3 @@
+{
+ "org.openecomp.sdc.logging.api.BaseFactory": "org.openecomp.sdc.logging.api.LoggerFactory"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/logback.xml b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/logback.xml
new file mode 100644
index 0000000000..8eb22bda96
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-api/src/main/resources/logback.xml
@@ -0,0 +1,284 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration scan="true" scanPeriod="5 seconds">
+
+ <property scope="system" name="OPENECOMP-component-name" value="ASDC" />
+ <property scope="system" name="OPENECOMP-subcomponent-name" value="ASDC-BE" />
+ <property file="${config.home}/catalog-be/configuration.yaml" />
+ <property scope="context" name="enable-all-log" value="false" />
+
+ <!--statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
+ <include resource="asdc_debug_logback.xml"/-->
+
+ <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)-->
+ <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)-->
+ <property name="default-log-pattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{uuid}|%X{serviceInstanceID}|%thread||${OPENECOMP-subcomponent-name}|%X{userId}|%level|%X{alarmSeverity}|%X{localAddr}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n" />
+
+ <property name="asdc-debug-log-pattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg %n"/>
+
+ <!-- All log -->
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender name="ALL_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/all.log
+ </file>
+
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/all.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ALL_ROLLING" />
+ </appender>
+ </then>
+ </if>
+
+ <!-- Error log -->
+ <appender name="ERROR_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/Error.log
+ </file>
+
+ <!-- Audit messages filter - deny audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>AUDIT_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- Transaction messages filter - deny Transaction messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/Error.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Debug log -->
+ <appender name="DEBUG_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug.log
+ </file>
+
+ <!-- No need to deny audit messages - they are INFO only, will be denied
+ anyway -->
+ <!-- Transaction messages filter - deny Transaction messages, there are
+ some DEBUG level messages among them -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- accept DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= DEBUG.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Debug log -->
+ <appender name="PACKAGE_DEBUG_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug_by_package.log
+ </file>
+
+ <!-- No need to deny audit messages - they are INFO only, will be denied
+ anyway -->
+ <!-- Transaction messages filter - deny Transaction messages, there are
+ some DEBUG level messages among them -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- accept DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= DEBUG.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug_by_package.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${asdc-debug-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Audit log -->
+ <appender name="AUDIT_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/audit.log
+ </file>
+
+ <!-- Audit messages filter - accept audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>AUDIT_MARKER</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/audit.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- SdncTransaction log -->
+ <appender name="TRANSACTION_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/transaction.log
+ </file>
+
+ <!-- Transaction messages filter - accept audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/transaction.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Asynchronicity Configurations -->
+ <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="DEBUG_ROLLING" />
+ </appender>
+
+ <appender name="ASYNC_TRANSACTION" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="TRANSACTION_ROLLING" />
+ </appender>
+
+ <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ERROR_ROLLING" />
+ </appender>
+
+
+ <root level="INFO">
+ <appender-ref ref="ASYNC_ERROR" />
+ <appender-ref ref="ASYNC_DEBUG" />
+ <appender-ref ref="AUDIT_ROLLING" />
+ <appender-ref ref="ASYNC_TRANSACTION" />
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender-ref ref="ALL_ROLLING" />
+ </then>
+ </if>
+ </root>
+
+ <logger name="org.openecomp.sdc" level="INFO" />
+
+ <logger name="org.openecomp.sdc.vendorsoftwareproduct" level="DEBUG" additivity ="false">
+ <appender-ref ref="PACKAGE_DEBUG_ROLLING" />
+ </logger>
+
+ <logger name="org.openecomp.sdc.vendorlicense" level="DEBUG" additivity ="false">
+ <appender-ref ref="PACKAGE_DEBUG_ROLLING" />
+ </logger>
+</configuration> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml
new file mode 100644
index 0000000000..a0096e6b1e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-logging-core</name>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-logging-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>${spring.framework.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-webmvc</artifactId>
+ <version>${spring.framework.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>${servlet.version}</version>
+ </dependency>
+ </dependencies>
+
+</project>
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..374de71273
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/pom.xml.versionsBackup
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <dependencies>
+ <!--dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency-->
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>4.1.3.RELEASE</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-webmvc</artifactId>
+ <version>4.1.3.RELEASE</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>2.5</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>1.1.7</version>
+ </dependency>
+
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-logging-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <name>openecomp-sdc-logging-core</name>
+ <version>1.0-SNAPSHOT</version>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/Markers.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/Markers.java
new file mode 100644
index 0000000000..711e6d1559
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/Markers.java
@@ -0,0 +1,50 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging;
+
+import org.slf4j.Marker;
+import org.slf4j.MarkerFactory;
+
+/**
+ * <p>The list of markers that can be used for special logging such as metrics, audit, etc.</p>
+ *
+ * <p>Although markers can be easily instantiated whenever needed, having constants for them helps eliminate mistakes -
+ * misspelling, using a marker that is not handled, etc.</p>
+ *
+ * <p>Usage:</p>
+ *
+ * <pre>
+ *
+ * Logger log = LogFactory.getLogger(this.getClass());
+ * log.info(Markers.AUDIT, "User '{}' logged out", user);
+ *
+ * </pre>
+ *
+ * @author EVITALIY
+ * @since 13/09/2016.
+ *
+ * @see Marker
+ */
+public class Markers {
+
+ public static final Marker AUDIT = MarkerFactory.getMarker("AUDIT");
+ public static final Marker METRICS = MarkerFactory.getMarker("METRICS");
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/SLF4JLoggerCreationService.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/SLF4JLoggerCreationService.java
new file mode 100644
index 0000000000..5b7ed5ef4d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/SLF4JLoggerCreationService.java
@@ -0,0 +1,240 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging;
+
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerCreationService;
+import org.slf4j.LoggerFactory;
+
+/**
+ * @author evitaliy
+ * @since 13/09/2016.
+ */
+public class SLF4JLoggerCreationService implements LoggerCreationService {
+
+ @Override
+ public Logger getLogger(String className) {
+ return new SFL4JWrapper(className);
+ }
+
+ @Override
+ public Logger getLogger(Class<?> clazz) {
+ return new SFL4JWrapper(clazz);
+ }
+
+ private class SFL4JWrapper implements Logger {
+
+ private final org.slf4j.Logger logger;
+
+ public SFL4JWrapper(Class<?> clazz) {
+ logger = LoggerFactory.getLogger(clazz);
+ }
+
+ public SFL4JWrapper(String className) {
+ logger = LoggerFactory.getLogger(className);
+ }
+
+ @Override
+ public String getName() {
+ return logger.getName();
+ }
+
+ @Override
+ public boolean isMetricsEnabled() {
+ return logger.isInfoEnabled(Markers.METRICS);
+ }
+
+ @Override
+ public void metrics(String msg) {
+ logger.info(Markers.METRICS, msg);
+ }
+
+ @Override
+ public void metrics(String msg, Object arg) {
+ logger.info(Markers.METRICS, msg, arg);
+ }
+
+ @Override
+ public void metrics(String msg, Object arg1, Object arg2) {
+ logger.info(Markers.METRICS, msg, arg1, arg2);
+ }
+
+ @Override
+ public void metrics(String msg, Object... arguments) {
+ logger.info(Markers.METRICS, msg, arguments);
+ }
+
+ @Override
+ public void metrics(String msg, Throwable t) {
+ logger.info(Markers.METRICS, msg, t);
+ }
+
+ @Override
+ public boolean isAuditEnabled() {
+ return logger.isInfoEnabled(Markers.AUDIT);
+ }
+
+ @Override
+ public void audit(String msg) {
+ logger.info(Markers.AUDIT, msg);
+ }
+
+ @Override
+ public void audit(String msg, Object arg) {
+ logger.info(Markers.AUDIT, msg, arg);
+ }
+
+ @Override
+ public void audit(String msg, Object arg1, Object arg2) {
+ logger.info(Markers.AUDIT, msg, arg1, arg2);
+ }
+
+ @Override
+ public void audit(String msg, Object... arguments) {
+ logger.info(Markers.AUDIT, msg, arguments);
+ }
+
+ @Override
+ public void audit(String msg, Throwable t) {
+ logger.info(Markers.AUDIT, msg, t);
+ }
+
+ @Override
+ public boolean isDebugEnabled() {
+ return logger.isDebugEnabled();
+ }
+
+ @Override
+ public void debug(String msg) {
+ logger.debug(msg);
+ }
+
+ @Override
+ public void debug(String format, Object arg) {
+ logger.debug(format, arg);
+ }
+
+ @Override
+ public void debug(String format, Object arg1, Object arg2) {
+ logger.debug(format, arg1, arg2);
+ }
+
+ @Override
+ public void debug(String format, Object... arguments) {
+ logger.debug(format, arguments);
+ }
+
+ @Override
+ public void debug(String msg, Throwable t) {
+ logger.debug(msg, t);
+ }
+
+ @Override
+ public boolean isInfoEnabled() {
+ return logger.isInfoEnabled();
+ }
+
+ @Override
+ public void info(String msg) {
+ logger.info(msg);
+ }
+
+ @Override
+ public void info(String format, Object arg) {
+ logger.info(format, arg);
+ }
+
+ @Override
+ public void info(String format, Object arg1, Object arg2) {
+ logger.info(format, arg1, arg2);
+ }
+
+ @Override
+ public void info(String format, Object... arguments) {
+ logger.info(format, arguments);
+ }
+
+ @Override
+ public void info(String msg, Throwable t) {
+ logger.info(msg, t);
+ }
+
+ @Override
+ public boolean isWarnEnabled() {
+ return logger.isWarnEnabled();
+ }
+
+ @Override
+ public void warn(String msg) {
+ logger.warn(msg);
+ }
+
+ @Override
+ public void warn(String format, Object arg) {
+ logger.warn(format, arg);
+ }
+
+ @Override
+ public void warn(String format, Object... arguments) {
+ logger.warn(format, arguments);
+ }
+
+ @Override
+ public void warn(String format, Object arg1, Object arg2) {
+ logger.warn(format, arg1, arg2);
+ }
+
+ @Override
+ public void warn(String msg, Throwable t) {
+ logger.warn(msg, t);
+ }
+
+ @Override
+ public boolean isErrorEnabled() {
+ return logger.isErrorEnabled();
+ }
+
+ @Override
+ public void error(String msg) {
+ logger.error(msg);
+ }
+
+ @Override
+ public void error(String format, Object arg) {
+ logger.error(format, arg);
+ }
+
+ @Override
+ public void error(String format, Object arg1, Object arg2) {
+ logger.error(format, arg1, arg2);
+ }
+
+ @Override
+ public void error(String format, Object... arguments) {
+ logger.error(format, arguments);
+ }
+
+ @Override
+ public void error(String msg, Throwable t) {
+ logger.error(msg, t);
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/DebugAspect.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/DebugAspect.java
new file mode 100644
index 0000000000..7ac5be0591
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/DebugAspect.java
@@ -0,0 +1,70 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.aspects;
+
+import org.aspectj.lang.JoinPoint;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.slf4j.Marker;
+import org.slf4j.MarkerFactory;
+
+import java.lang.reflect.Method;
+
+
+/**
+ * Created by TALIO on 12/26/2016.
+ */
+public class DebugAspect {
+
+ private static final String MESSAGE_TEMPLATE = "'{}' '{}' with '{}'";
+ private static final Marker DEBUG = MarkerFactory.getMarker("DEBUG");
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+// @Autowired
+// private ParameterNameDiscoverer parameterNameDiscoverer;
+
+ public void debugEnterMethod(final JoinPoint joinPoint){
+
+ Class type = joinPoint.getSignature().getDeclaringType();
+ Method currentMethod = null;
+ for(Method method : type.getMethods()){
+ if(method.getName().equals(joinPoint.getSignature().getName())){
+ currentMethod = method;
+ break;
+ }
+ }
+
+// String[] parameterNames = parameterNameDiscoverer.getParameterNames(currentMethod);
+// Object[] args = joinPoint.getArgs();
+// Parameter[] parameters = currentMethod.getParameters();
+// StringBuilder str = new StringBuilder(joinPoint.getSignature().getName() + " with parameters:" +
+// " ");
+// if(args.length == parameters.length) {
+// for (int i = 0; i < args.length; i++) {
+// str.append(parameters[i].getName()).append('=').append(args[i]);
+// }
+// }
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ }
+
+ public void debugExitMethod(final JoinPoint joinPoint){
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/MetricsAspect.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/MetricsAspect.java
new file mode 100644
index 0000000000..782362b912
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/aspects/MetricsAspect.java
@@ -0,0 +1,70 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.aspects;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+import org.slf4j.Marker;
+import org.slf4j.MarkerFactory;
+
+/**
+ * <p>Wraps around any method annotated with {@link Metrics} to measure and log its execution time
+ * in milliseconds.</p>
+ * <p>In order for the aspect to be used, AspectJ annotation processing must be tuned on and this
+ * particular aspect enabled. Conversely, it can be disabled completely if the application does not
+ * need to log metrics.</p>
+ * <p>See, for example, <a href="http://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html">
+ * Aspect Oriented Programming with Spring</a>.</p>
+ *
+ * @author evitaliy
+ * @see Metrics
+ * @since 27/07/2016.
+ */
+@Aspect
+public class MetricsAspect {
+
+ private static final String MESSAGE_TEMPLATE = "'{}' took {} milliseconds";
+ private static final Marker METRICS = MarkerFactory.getMarker("METRICS");
+
+ @Around("@annotation(org.openecomp.sdc.logging.api.annotations.Metrics)")
+ public Object logExecutionTime(ProceedingJoinPoint pjp) throws Throwable {
+
+ final Logger logger = LoggerFactory.getLogger(pjp.getSignature().getDeclaringTypeName());
+ // measure and log only if the logger for this class is enabled
+ if (logger.isInfoEnabled()) {
+
+ final String method = pjp.getSignature().getName();
+ final long start = System.currentTimeMillis();
+
+ try {
+ return pjp.proceed();
+ } finally {
+ logger.info(METRICS, MESSAGE_TEMPLATE, method, System.currentTimeMillis() - start);
+ }
+
+ } else {
+ return pjp.proceed();
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MDCPropagationService.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MDCPropagationService.java
new file mode 100644
index 0000000000..7e29f3c093
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MDCPropagationService.java
@@ -0,0 +1,74 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.context;
+
+import org.openecomp.sdc.logging.api.context.ContextPropagationService;
+import org.slf4j.MDC;
+
+import java.util.Map;
+
+/**
+ * Propagates the <a href="http://www.slf4j.org/manual.html#mdc">SLF4J Mapped Diagnostic Context (MDC)</a>
+ * of a thread onto a runnable created by that thread, so that the context is available when the runnable is executed
+ * in a new thread.
+ *
+ * @author evitaliy
+ * @since 12/09/2016.
+ */
+public class MDCPropagationService implements ContextPropagationService {
+
+ public Runnable create(Runnable task) {
+ return new MDCCopyingWrapper(task);
+ }
+
+ private static class MDCCopyingWrapper implements Runnable {
+
+ private final Runnable task;
+ private final Map<String, String> context;
+
+ private MDCCopyingWrapper(Runnable task) {
+ this.task = task;
+ this.context = MDC.getCopyOfContextMap();
+ }
+
+ @Override
+ public void run() {
+
+ Map<String, String> oldContext = MDC.getCopyOfContextMap();
+ replaceMDC(this.context);
+
+ try {
+ task.run();
+ } finally {
+ replaceMDC(oldContext);
+ }
+ }
+
+ private static void replaceMDC(Map<String, String> context) {
+
+ if (context == null) {
+ MDC.clear();
+ } else {
+ MDC.setContextMap(context);
+ }
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MdcUtil.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MdcUtil.java
new file mode 100644
index 0000000000..24d47162f4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/MdcUtil.java
@@ -0,0 +1,59 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.context;
+
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.slf4j.MDC;
+
+import java.util.UUID;
+
+
+public class MdcUtil {
+
+ /**
+ * Sets values for mdc.
+ *
+ * @param targetEntity the target entity
+ * @param targetServiceName the target service name
+ * @param errorCategory the error category
+ * @param errorCode the error code
+ * @param errorDescription the error description
+ */
+ public static void setValuesForMdc(String targetEntity, String targetServiceName,
+ String errorCategory, String errorCode,
+ String errorDescription) {
+ MDC.put(LoggerConstants.TARGET_ENTITY, targetEntity);
+ MDC.put(LoggerConstants.TARGET_SERVICE_NAME, targetServiceName);
+ MDC.put(LoggerConstants.ERROR_CATEGORY, errorCategory);
+ MDC.put(LoggerConstants.ERROR_CODE, errorCode);
+ MDC.put(LoggerConstants.ERROR_DESCRIPTION, errorDescription);
+ }
+
+
+ /**
+ * Init mdc.
+ * @param serviceName the service name
+ *
+ */
+ public static void initMdc(String serviceName) {
+ MDC.put(LoggerConstants.SERVICE_NAME, serviceName);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataDebugMessage.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataDebugMessage.java
new file mode 100644
index 0000000000..01bc6f446e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataDebugMessage.java
@@ -0,0 +1,88 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.context.impl;
+
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.MdcData;
+import org.openecomp.sdc.logging.messages.DebugMessages;
+import org.openecomp.sdc.logging.types.DebugConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCategory;
+import org.openecomp.sdc.logging.util.LoggingUtils;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class MdcDataDebugMessage extends MdcData {
+
+ private static Logger logger;
+ private static Map<String, String> mapExitOrEntryToMessage;
+
+ static {
+ mapExitOrEntryToMessage = new HashMap<>();
+ mapExitOrEntryToMessage.put(DebugConstants.ENTER, DebugMessages.ENTER_METHOD);
+ mapExitOrEntryToMessage.put(DebugConstants.ENTER_DEFAULT, DebugMessages.DEFAULT_ENTER_METHOD);
+ mapExitOrEntryToMessage.put(DebugConstants.EXIT, DebugMessages.EXIT_METHOD);
+ mapExitOrEntryToMessage.put(DebugConstants.EXIT_DEFAULT, DebugMessages.DEFAULT_EXIT_METHOD);
+ }
+
+ public MdcDataDebugMessage() {
+ super(LoggerErrorCategory.DEBUG.name(), null);
+ }
+
+ //todo add more explanations as to the first parameter structure in case of multiples and in
+ // case of no params in method
+ /**
+ * Debug entry message.
+ *
+ * @param entityParameter the entity parameter
+ * @param ids the ids
+ */
+ public void debugEntryMessage(String entityParameter, String... ids) {
+ logDebugMessage(entityParameter, DebugConstants.ENTER, ids);
+ }
+
+ /**
+ * Debug exit message.
+ *
+ * @param entityParameter the entity parameter
+ * @param ids the ids
+ */
+ public void debugExitMessage(String entityParameter, String... ids) {
+ logDebugMessage(entityParameter, DebugConstants.EXIT, ids);
+ }
+
+ public void logDebugMessage(String entityParameter, String enterOrExit, String... ids) {
+ String methodName = LoggingUtils.getCallingMethodNameForDebugging();
+ String declaringClass = LoggingUtils.getDeclaringClass();
+ logger = (Logger) LoggerFactory.getLogger(declaringClass);
+ String messageToWrite;
+
+ if (entityParameter == null || ids == null) {
+ messageToWrite = mapExitOrEntryToMessage.get(enterOrExit + "_" + DebugConstants.DEFAULT);
+ logger.debug(String.format(messageToWrite, methodName));
+ } else {
+ messageToWrite = mapExitOrEntryToMessage.get(enterOrExit);
+ logger.debug(String
+ .format(messageToWrite, methodName, entityParameter, String.join(",", ids)));
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataErrorMessage.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataErrorMessage.java
new file mode 100644
index 0000000000..190c37d2b6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/context/impl/MdcDataErrorMessage.java
@@ -0,0 +1,76 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.context.impl;
+
+import org.openecomp.sdc.logging.context.MdcData;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.slf4j.MDC;
+
+
+public class MdcDataErrorMessage extends MdcData {
+ private String targetEntity;
+ private String targetServiceName;
+ private String errorDescription;
+
+ /**
+ * Instantiates a new Mdc data error message.
+ *
+ * @param targetEntity the target entity
+ * @param targetServiceName the target service name
+ * @param errorCategory the error category
+ * @param errorCode the error code
+ * @param errorDescription the error description
+ */
+ public MdcDataErrorMessage(String targetEntity, String targetServiceName, String errorCategory,
+ String errorCode, String errorDescription) {
+ super(errorCategory, errorCode);
+ this.targetEntity = targetEntity;
+ this.targetServiceName = targetServiceName;
+ this.errorDescription = errorDescription;
+
+ this.setMdcValues();
+ }
+
+ /**
+ * Create error message and update mdc.
+ *
+ * @param targetEntity the target entity
+ * @param targetServiceName the target service name
+ * @param level the level
+ * @param errorCode the error code
+ * @param errorDescription the error description
+ */
+ public static void createErrorMessageAndUpdateMdc(String targetEntity, String targetServiceName,
+ String level, String errorCode,
+ String errorDescription) {
+ MdcDataErrorMessage mdcDataErrorMessage =
+ new MdcDataErrorMessage(targetEntity, targetServiceName, level, errorCode,
+ errorDescription);
+ }
+
+ @Override
+ public void setMdcValues() {
+ super.setMdcValues();
+ MDC.put(LoggerConstants.TARGET_ENTITY, this.targetEntity);
+ MDC.put(LoggerConstants.TARGET_SERVICE_NAME, this.targetServiceName);
+ MDC.put(LoggerConstants.ERROR_DESCRIPTION, this.errorDescription);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/DispatchingAppender.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/DispatchingAppender.java
new file mode 100644
index 0000000000..2273e1c7ef
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/DispatchingAppender.java
@@ -0,0 +1,148 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.logback;
+
+import ch.qos.logback.classic.Logger;
+import ch.qos.logback.classic.LoggerContext;
+import ch.qos.logback.classic.sift.MDCBasedDiscriminator;
+import ch.qos.logback.classic.spi.ILoggingEvent;
+import ch.qos.logback.core.Appender;
+import ch.qos.logback.core.AppenderBase;
+import ch.qos.logback.core.joran.spi.DefaultClass;
+import ch.qos.logback.core.sift.Discriminator;
+import org.slf4j.LoggerFactory;
+
+import java.util.Iterator;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+/**
+ * <p>Allows to use EELF logging configuration almost as is, by using a custom routing function, but pre-configured
+ * appenders attached to the standard EELF loggers.</p>
+ *
+ * <p>Changes that must be made in <i>logback.xml</i> supplied with EELF:</p>
+ *
+ * <pre>
+ * &lt;appender name="DISPATCHER" class="org.openecomp.sdc.logging.logback.DispatchingAppender"&gt;
+ * &lt;discriminator class="org.openecomp.sdc.logging.logback.EventTypeDiscriminator"/&gt;
+ * &lt;appenderNamePattern&gt;asyncEELF%s&lt;/appenderNamePattern&gt;
+ * &lt;/appender&gt;
+ *
+ * &lt;root level="INFO" additivity="false"&gt;
+ * &lt;appender-ref ref="DISPATCHER" /&gt;
+ * &lt;/root&gt;
+ * </pre>
+ *
+ * @author EVITALIY
+ * @since 17/08/2016.
+ */
+public class DispatchingAppender extends AppenderBase<ILoggingEvent> {
+
+ // "magic" appender to indicate a missing appender
+ private static final Appender<ILoggingEvent> NO_APPENDER = new DispatchingAppender();
+
+ private Map<String, Appender<ILoggingEvent>> appenders = new ConcurrentHashMap<>();
+
+ private Discriminator<ILoggingEvent> discriminator;
+ private String appenderNamePattern;
+
+ @DefaultClass(MDCBasedDiscriminator.class)
+ public void setDiscriminator(Discriminator<ILoggingEvent> discriminator) {
+ this.discriminator = discriminator;
+ }
+
+ public Discriminator<ILoggingEvent> getDiscriminator() {
+ return this.discriminator;
+ }
+
+ public void setAppenderNamePattern(String pattern) {
+ this.appenderNamePattern = pattern;
+ }
+
+ public String getAppenderNamePattern() {
+ return this.appenderNamePattern;
+ }
+
+ @Override
+ protected void append(ILoggingEvent event) {
+
+ if (this.isStarted()) {
+
+ String discriminatingValue = this.discriminator.getDiscriminatingValue(event);
+ String appenderName = String.format(this.appenderNamePattern, discriminatingValue);
+ Appender<ILoggingEvent> appender = this.lookupAppender(appenderName);
+ if (appender == NO_APPENDER) {
+ this.addError(String.format("Appender %s does not exist", appenderName));
+ } else {
+ appender.doAppend(event);
+ }
+ }
+ }
+
+ private Appender<ILoggingEvent> lookupAppender(String key) {
+
+ Appender<ILoggingEvent> appender = appenders.get(key);
+ if (appender != null) {
+ return appender;
+ }
+
+ LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory();
+ for (Logger log : context.getLoggerList()) {
+
+ Iterator<Appender<ILoggingEvent>> iterator = log.iteratorForAppenders();
+ while (iterator.hasNext()) {
+
+ Appender<ILoggingEvent> element = iterator.next();
+ if (key.equals(element.getName())) {
+ this.appenders.putIfAbsent(key, element);
+ return element;
+ }
+ }
+ }
+
+ // to avoid consecutive lookups if the required appender does not exist
+ this.appenders.putIfAbsent(key, NO_APPENDER);
+ return NO_APPENDER;
+ }
+
+ @Override
+ public void start() {
+
+ int errors = 0;
+ if (this.discriminator == null) {
+ this.addError("Missing discriminator. Aborting");
+ }
+
+ if (!this.discriminator.isStarted()) {
+ this.addError("Discriminator has not started successfully. Aborting");
+ ++errors;
+ }
+
+ if (this.appenderNamePattern == null) {
+ this.addError("Missing name pattern. Aborting");
+ ++errors;
+ }
+
+ if (errors == 0) {
+ super.start();
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java
new file mode 100644
index 0000000000..5aa36656af
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java
@@ -0,0 +1,121 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.logback;
+
+import ch.qos.logback.classic.Level;
+import ch.qos.logback.classic.spi.ILoggingEvent;
+import ch.qos.logback.core.sift.AbstractDiscriminator;
+import org.openecomp.sdc.logging.Markers;
+import org.slf4j.Marker;
+
+/**
+ * Can be used with {@link ch.qos.logback.classic.sift.SiftingAppender} to route events of different types to
+ * separate log files. For example,
+ *
+ * <pre>
+ * &lt;configuration&gt;
+ * &lt;appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender"&gt;
+ * &lt;discriminator class="org.openecomp.sdc.logging.logback.EventTypeDiscriminator"/&gt;
+ * &lt;sift&gt;
+ * &lt;appender name="{EventType}" class="ch.qos.logback.core.rolling.RollingFileAppender"&gt;
+ * &lt;file&gt;${logDirectory}/${eventType}.log&lt;/file&gt;
+ * &lt;rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"&gt;
+ * &lt;fileNamePattern&gt;${logDirectory}/${eventType}.%i.log.zip&lt;/fileNamePattern&gt;
+ * &lt;minIndex&gt;1&lt;/minIndex&gt;
+ * &lt;maxIndex&gt;9&lt;/maxIndex&gt;
+ * &lt;/rollingPolicy&gt;
+ * &lt;triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"&gt;
+ * &lt;maxFileSize&gt;5MB&lt;/maxFileSize&gt;
+ * &lt;/triggeringPolicy&gt;
+ * &lt;encoder&gt;
+ * &lt;pattern&gt;${defaultPattern}&lt;/pattern&gt;
+ * &lt;/encoder&gt;
+ * &lt;/appender&gt;
+ * &lt;/sift&gt;
+ * &lt;/appender&gt;
+ *
+ * &lt;root level="INFO"&gt;
+ * &lt;appender-ref ref="SIFT" /&gt;
+ * &lt;/root&gt;
+ * &lt;/configuration&gt;
+ * </pre>
+ *
+ * @author evitaliy
+ * @since 21/07/2016.
+ */
+public class EventTypeDiscriminator extends AbstractDiscriminator<ILoggingEvent> {
+
+ private static final String KEY = "eventType";
+
+ private static final String AUDIT = "Audit";
+ private static final String METRICS = "Metrics";
+ private static final String ERROR = "Error";
+ private static final String DEBUG = "Debug";
+ private static final String DEFAULT = DEBUG;
+
+ private static final int MIN_ERROR_LEVEL = Level.WARN_INT;
+ private static final int MAX_ERROR_LEVEL = Level.ERROR_INT;
+ private static final int DEFAULT_LEVEL = Level.DEBUG_INT;
+
+ @Override
+ public String getDiscriminatingValue(ILoggingEvent event) {
+
+ Level level = event.getLevel();
+ final int levelInt = level == null ? DEFAULT_LEVEL : level.toInt();
+ if ((levelInt > MIN_ERROR_LEVEL - 1) && (levelInt < MAX_ERROR_LEVEL + 1)) {
+ return ERROR;
+ }
+
+ if (levelInt == Level.DEBUG_INT) {
+ return DEBUG;
+ }
+
+ /*
+ * After DEBUG, ERROR, and WARNING have been filtered out,
+ * only TRACE and INFO are left. TRACE is less than DEBUG
+ * and therefore cannot be used. So, INFO should be used for
+ * custom routing like AUDIT and METRICS
+ */
+ if (levelInt == Level.INFO_INT) {
+
+ final Marker marker = event.getMarker();
+ if (marker != null) {
+
+ if (marker.contains(Markers.AUDIT)) {
+ return AUDIT;
+ }
+
+ if (marker.contains(Markers.METRICS)) {
+ return METRICS;
+ }
+ }
+
+ return ERROR;
+ }
+
+ return DEFAULT;
+ }
+
+ @Override
+ public String getKey() {
+ return KEY;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/method/LoggingInvocationHandler.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/method/LoggingInvocationHandler.java
new file mode 100644
index 0000000000..87184455c3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/method/LoggingInvocationHandler.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.method;
+
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+
+import java.lang.reflect.InvocationHandler;
+import java.lang.reflect.Method;
+
+/**
+ * Created by TALIO on 1/8/2017.
+ */
+public class LoggingInvocationHandler implements InvocationHandler {
+
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private final Object invocImpl;
+
+ public LoggingInvocationHandler(final Object invocImpl){
+ this.invocImpl = invocImpl;
+ }
+
+ @Override
+ public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ return method.invoke(invocImpl, args);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/servlet/LoggingFilter.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/servlet/LoggingFilter.java
new file mode 100644
index 0000000000..f617ea6500
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/servlet/LoggingFilter.java
@@ -0,0 +1,139 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.logging.servlet;
+
+import org.omg.CORBA.Request;
+import org.slf4j.MDC;
+
+import javax.servlet.*;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.UUID;
+import java.util.concurrent.atomic.AtomicLong;
+
+
+/**
+ *
+ * <p>Pushes information required by EELF onto MDC (Mapped Diagnostic Context).</p>
+ *
+ * <p>This is servlet filter that should be configured in <i>web.xml</i> to be used. Example:</p>
+ *
+ * <pre>
+ *
+ * &lt;filter&gt;
+ * &lt;filter-name&gt;LoggingServletFilter&lt;/filter-name&gt;
+ * &lt;filter-class&gt;org.openecomp.sdc.logging.servlet.LoggingFilter&lt;/filter-class&gt;
+ * &lt;/filter&gt;
+ *
+ * &lt;filter-mapping&gt;
+ * &lt;filter-name&gt;LoggingServletFilter&lt;/filter-name&gt;
+ * &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
+ * &lt;/filter-mapping&gt;
+ *
+ * </pre>
+ *
+ * @author evitaliy
+ * @since 25/07/2016.
+ */
+public class LoggingFilter implements Filter {
+
+ // should be cashed to avoid low-level call, but with a timeout to account for IP or FQDN changes
+ private static final HostAddressCache HOST_ADDRESS = new HostAddressCache();
+ private static final String UNKNOWN = "UNKNOWN";
+
+ public void destroy() {
+ }
+
+ public void doFilter(ServletRequest request, ServletResponse response,
+ FilterChain chain) throws IOException, ServletException {
+
+ try {
+
+ MDC.clear();
+
+ MDC.put("RequestId", UUID.randomUUID().toString());
+ MDC.put("ServiceInstanceId", "N/A"); // not applicable
+ MDC.put("ServiceName", "ASDC");
+ MDC.put("InstanceUUID", "N/A");
+
+ // For some reason chooses IPv4 or IPv6 in a random way
+ MDC.put("RemoteHost", request.getRemoteHost());
+
+ InetAddress host = HOST_ADDRESS.get();
+
+ String ipAddress, hostName;
+ if (host == null) {
+ ipAddress = UNKNOWN;
+ hostName = UNKNOWN;
+ } else {
+ ipAddress = host.getHostAddress();
+ hostName = host.getHostName();
+ }
+
+ MDC.put("ServerIPAddress", ipAddress);
+ MDC.put("ServerFQDN", hostName);
+
+ if(request instanceof HttpServletRequest) {
+ String userName = ((HttpServletRequest) request).getHeader("USER_ID");
+ MDC.put("PartnerName", userName);
+ }
+ // TODO: Clarify what these stand for
+ // MDC.put("AlertSeverity", );
+ // MDC.put("Timer", );
+
+ chain.doFilter(request, response);
+
+ } finally {
+ MDC.clear();
+ }
+ }
+
+ public void init(FilterConfig config) throws ServletException { }
+
+ private static class HostAddressCache {
+
+ private static final long REFRESH_TIME = 1000L;
+
+ private AtomicLong lastUpdated = new AtomicLong(0L);
+ private InetAddress hostAddress;
+
+ public InetAddress get() {
+
+ long current = System.currentTimeMillis();
+ if (current - lastUpdated.get() > REFRESH_TIME) {
+
+ synchronized (this) {
+
+ try {
+ lastUpdated.set(current); // set now to register the attempt even if failed
+ hostAddress = InetAddress.getLocalHost();
+ } catch (UnknownHostException e) {
+ hostAddress = null;
+ }
+ }
+ }
+
+ return hostAddress;
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityFilterDefinition.java b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/util/LoggingUtils.java
index 3678583384..06b0d5b2bc 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityFilterDefinition.java
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/util/LoggingUtils.java
@@ -18,18 +18,18 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.logging.util;
-import java.util.List;
-
-public class CapabilityFilterDefinition {
- List<Constraint> properties;
+/**
+ * Created by TALIO on 1/10/2017.
+ */
+public class LoggingUtils {
- public List<Constraint> getProperties() {
- return properties;
+ public static String getCallingMethodNameForDebugging() {
+ return Thread.currentThread().getStackTrace()[4].getMethodName();
}
- public void setProperties(List<Constraint> properties) {
- this.properties = properties;
+ public static String getDeclaringClass(){
+ return Thread.currentThread().getStackTrace()[4].getClassName();
}
}
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.LoggerCreationService b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.LoggerCreationService
new file mode 100644
index 0000000000..ee01c4d871
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.LoggerCreationService
@@ -0,0 +1 @@
+org.openecomp.sdc.logging.SLF4JLoggerCreationService \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.context.ContextPropagationService b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.context.ContextPropagationService
new file mode 100644
index 0000000000..2c401614ae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/openecomp-sdc-logging-core/src/main/resources/META-INF/services/org.openecomp.sdc.logging.api.context.ContextPropagationService
@@ -0,0 +1 @@
+org.openecomp.sdc.logging.context.MDCPropagationService \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-logging-lib/pom.xml b/openecomp-be/lib/openecomp-logging-lib/pom.xml
new file mode 100644
index 0000000000..e41b68638c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/pom.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <name>openecomp-logging-lib</name>
+ <artifactId>openecomp-logging-lib</artifactId>
+ <packaging>pom</packaging>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+
+ <modules>
+ <module>/openecomp-sdc-logging-api</module>
+ <module>/openecomp-sdc-logging-core</module>
+ </modules>
+
+
+</project>
diff --git a/openecomp-be/lib/openecomp-logging-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-logging-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..77657139f0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-logging-lib/pom.xml.versionsBackup
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <name>openecomp-logging-lib</name>
+ <artifactId>openecomp-logging-lib</artifactId>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>/openecomp-sdc-logging-api</module>
+ <module>/openecomp-sdc-logging-core</module>
+ </modules>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-migration-lib/pom.xml b/openecomp-be/lib/openecomp-migration-lib/pom.xml
new file mode 100644
index 0000000000..01603fc5e7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-migration-lib/pom.xml
@@ -0,0 +1,192 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>openecomp-migration-lib</artifactId>
+ <name>openecomp-migration-lib</name>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
+ </parent>
+
+ <properties>
+ <groovy.version>2.4.7</groovy.version>
+ <janino.version>2.7.7</janino.version>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-manager</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy</artifactId>
+ <version>${groovy.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.janino</groupId>
+ <artifactId>janino</artifactId>
+ <version>${janino.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.janino</groupId>
+ <artifactId>commons-compiler</artifactId>
+ <version>3.0.6</version>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-dependencies</id>
+ <phase>install</phase>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.directory}/lib</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>false</overWriteSnapshots>
+ <overWriteIfNewer>true</overWriteIfNewer>
+ <!--includeScope>runtime</includeScope-->
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>${mvn.jar.version}</version>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ </execution>
+ </executions>
+ <configuration>
+ <archive>
+ <manifest>
+ <addClasspath>true</addClasspath>
+ <classpathLayoutType>custom</classpathLayoutType>
+ <customClasspathLayout>lib/${artifact.artifactId}-${baseVersion}.${artifact.extension}</customClasspathLayout>
+ <mainClass>org.openecomp.sdc.migration.ToscaNamespaceMigration</mainClass>
+ </manifest>
+ <manifestEntries>
+ <Class-Path>lib/</Class-Path>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>com.google.code.maven-replacer-plugin</groupId>
+ <artifactId>maven-replacer-plugin</artifactId>
+ <version>1.3.5</version>
+ <executions>
+ <execution>
+ <id>replace-for-migration</id>
+ <phase>initialize</phase>
+ <goals>
+ <goal>replace</goal>
+ </goals>
+ <configuration>
+ <file>../../tools/migration/1702_to_1707.sh</file>
+ <preserveDir>false</preserveDir>
+ <outputDir>target</outputDir>
+ <replacements>
+ <replacement>
+ <token>1707.0.0-SNAPSHOT</token>
+ <value>${project.version}</value>
+ </replacement>
+ </replacements>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>ant-test</id>
+ <phase>package</phase>
+ <configuration>
+ <tasks>
+ <fixcrlf srcdir="target" eol="unix" includes="1702_to_1707.sh"/>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <!--<plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>${mvn.assembly.version}</version>
+ <executions>
+ <execution>
+ <id>Generate assembly</id>
+ <phase>install</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <descriptors>
+ <descriptor>${basedir}/src/main/assembly/migration-lib-assembly.xml</descriptor>
+ </descriptors>
+ <finalName>openecomp-migration-lib</finalName>
+ </configuration>
+ </plugin>-->
+
+ </plugins>
+ </build>
+</project>
diff --git a/openecomp-be/lib/openecomp-migration-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-migration-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..bca0cd32a3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-migration-lib/pom.xml.versionsBackup
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <properties>
+
+ <groovy.version>2.4.7</groovy.version>
+ <janino.version>2.7.7</janino.version>
+
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-manager</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy</artifactId>
+ <version>${groovy.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.janino</groupId>
+ <artifactId>janino</artifactId>
+ <version>${janino.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.codehaus.janino</groupId>
+ <artifactId>commons-compiler</artifactId>
+ <version>3.0.6</version>
+ </dependency>
+
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+ <artifactId>openecomp-migration-lib</artifactId>
+ <name>openecomp-migration-lib</name>
+ <version>1.0-SNAPSHOT</version>
+
+ <build>
+ <plugins>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-dependencies</id>
+ <phase>install</phase>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.directory}/lib</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>false</overWriteSnapshots>
+ <overWriteIfNewer>true</overWriteIfNewer>
+ <!--includeScope>runtime</includeScope-->
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ </execution>
+ </executions>
+ <configuration>
+ <archive>
+ <manifest>
+ <addClasspath>true</addClasspath>
+ <classpathPrefix>lib/</classpathPrefix>
+ <mainClass>org.openecomp.sdc.migration.ToscaNamespaceMigration</mainClass>
+ </manifest>
+ <manifestEntries>
+ <Class-Path>lib/</Class-Path>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>ant-test</id>
+ <phase>package</phase>
+ <configuration>
+ <tasks>
+ <fixcrlf srcdir="../../tools/migration/" eol="unix"
+ includes="1702_to_1707.sh"/>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>Generate assembly</id>
+ <phase>install</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <descriptors>
+ <descriptor>${basedir}/src/main/assembly/migration-lib-assembly.xml</descriptor>
+ </descriptors>
+ <finalName>openecomp-migration-lib</finalName>
+ </configuration>
+ </plugin>
+
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-migration-lib/src/main/assembly/migration-lib-assembly.xml b/openecomp-be/lib/openecomp-migration-lib/src/main/assembly/migration-lib-assembly.xml
new file mode 100644
index 0000000000..3cb9fc07b4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-migration-lib/src/main/assembly/migration-lib-assembly.xml
@@ -0,0 +1,26 @@
+<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
+ <formats>
+ <format>zip</format>
+ </formats>
+
+ <includeBaseDirectory>false</includeBaseDirectory>
+
+ <fileSets>
+ <fileSet>
+ <directory>${basedir}/target</directory>
+ <includes>
+ <include>openecomp-migration-lib*.jar</include>
+ <include>1702_to_1707.sh</include>
+ </includes>
+ <outputDirectory>/</outputDirectory>
+ <fileMode>0755</fileMode>
+ </fileSet>
+ <fileSet>
+ <directory>${basedir}/target/lib</directory>
+ <outputDirectory>/lib</outputDirectory>
+ </fileSet>
+ </fileSets>
+</assembly>
+
diff --git a/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/TestScript.java b/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/TestScript.java
new file mode 100644
index 0000000000..c6a23734e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/TestScript.java
@@ -0,0 +1,11 @@
+package org.openecomp.sdc.migration;
+
+/**
+ * Created by TALIO on 3/19/2017.
+ */
+public class TestScript {
+
+ public static void main(String[] args){
+ System.out.print("Test succeed!");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java b/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java
new file mode 100644
index 0000000000..82ba1396c7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-migration-lib/src/main/java/org/openecomp/sdc/migration/ToscaNamespaceMigration.java
@@ -0,0 +1,247 @@
+package org.openecomp.sdc.migration;
+
+import org.apache.commons.io.IOUtils;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
+import org.openecomp.core.model.dao.ServiceModelDao;
+import org.openecomp.core.model.dao.ServiceModelDaoFactory;
+import org.openecomp.core.model.types.ServiceElement;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.Import;
+import org.openecomp.sdc.tosca.datatypes.model.Old1610ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.OrchestrationTemplateCandidateManager;
+import org.openecomp.sdc.vendorsoftwareproduct.OrchestrationTemplateCandidateManagerFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductConstants;
+import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductManager;
+import org.openecomp.sdc.vendorsoftwareproduct.VspManagerFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.PackageInfo;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.core.zusammen.impl.CassandraConnectionInitializer;
+
+
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+import java.util.zip.ZipOutputStream;
+
+
+/**
+ * Created by TALIO on 3/19/2017
+ */
+public class ToscaNamespaceMigration {
+
+ private static VendorSoftwareProductManager vendorSoftwareProductManager =
+ VspManagerFactory.getInstance().createInterface();
+ private static OrchestrationTemplateCandidateManager orchestrationTemplateCandidateManager =
+ OrchestrationTemplateCandidateManagerFactory.getInstance().createInterface();
+ private static VendorSoftwareProductDao vendorSoftwareProductDao =
+ VendorSoftwareProductDaoFactory.getInstance().createInterface();
+ private static ServiceModelDao<ToscaServiceModel, ServiceElement> serviceModelDao =
+ ServiceModelDaoFactory.getInstance().createInterface();
+ private static EnrichedServiceModelDao<ToscaServiceModel, ServiceElement>
+ enrichedServiceModelDao =
+ EnrichedServiceModelDaoFactory.getInstance().createInterface();
+ private static VendorSoftwareProductInfoDao vspInfoDao =
+ VendorSoftwareProductInfoDaoFactory.getInstance().createInterface();
+ private static PackageInfoDao packageInfoDao = PackageInfoDaoFactory.getInstance()
+ .createInterface();
+ private static Logger logger = LoggerFactory.getLogger(ToscaNamespaceMigration.class);
+ private static int status = 0;
+
+
+ public static void main(String[] args) {
+ CassandraConnectionInitializer.setCassandraConnectionPropertiesToSystem();
+
+ Collection<VspDetails> vspList = vspInfoDao.list(new VspDetails());
+
+ List<PackageInfo> packagesList =
+ packageInfoDao.listByCategory(null, null);
+
+ for (VspDetails vspInfo : vspList) {
+ printMessage("Performing migration on vsp " + vspInfo.getName() + " and version " + vspInfo
+ .getVersion().toString() + "\n");
+ performMigration(vspInfo);
+ }
+
+ System.exit(status);
+ }
+
+ private static void performMigration(VspDetails vspDetails) {
+ try {
+ changeNamespaceInServiceTemplates(vspDetails);
+ } catch (Exception e) {
+ printMessage(
+ "Could not perform migration for service templates on vsp " + vspDetails.getName());
+ status = -1;
+ }
+
+ if (vspDetails.getVersion().isFinal()) {
+ changeNamespaceInPackage(vspDetails);
+ }
+ }
+
+ private static void changeNamespaceInServiceTemplates(VspDetails vspDetails) throws IOException {
+ String vspId = vspDetails.getId();
+ Version version = vspDetails.getVersion();
+ ToscaServiceModel serviceModel;
+ ToscaServiceModel enrichedServiceModel;
+
+ serviceModel =
+ serviceModelDao.getServiceModel(vspId, version);
+ enrichedServiceModel =
+ enrichedServiceModelDao.getServiceModel(vspId, version);
+
+ printMessage("Working on vsp_service_template table in DB \n");
+ changeNamespaceInServiceModel(serviceModel);
+ printMessage("Finished Working on vsp_service_template table in DB \n");
+
+ printMessage("Working on vsp_enriched_service_template table in DB \n");
+ changeNamespaceInServiceModel(enrichedServiceModel);
+ printMessage("Finished Working on vsp_enriched_service_template table in DB \n");
+
+ serviceModelDao.storeServiceModel(vspId, version, serviceModel);
+ enrichedServiceModelDao.storeServiceModel(vspId, version, enrichedServiceModel);
+ }
+
+ private static void changeNamespaceInServiceModel(ToscaServiceModel serviceModel) {
+ Map<String, ServiceTemplate> changedServiceTemplates = new HashMap<>();
+ Map<String, ServiceTemplate> serviceTemplates = serviceModel.getServiceTemplates();
+
+ for (Map.Entry<String, ServiceTemplate> serviceTemplateEntry : serviceTemplates.entrySet()) {
+ printMessage(
+ "Changing namespace for Service Template " + serviceTemplateEntry.getKey() + "\n");
+
+ ServiceTemplate serviceTemplate = serviceTemplateEntry.getValue();
+ String fileAsJson = JsonUtil.object2Json(serviceTemplate);
+ String replacedNamespace = fileAsJson.replace("org.openecomp.d2", "org.openecomp");
+ ServiceTemplate newServiceTemplate;
+ try {
+ newServiceTemplate =
+ new ToscaExtensionYamlUtil().yamlToObject(replacedNamespace, ServiceTemplate.class);
+ } catch (Exception e) {
+ System.out.println("Found vsp with old-versioned tosca service template");
+ Old1610ServiceTemplate oldServiceTemplate =
+ JsonUtil.json2Object(replacedNamespace, Old1610ServiceTemplate.class);
+ newServiceTemplate = mapOldSTToCurrentST(oldServiceTemplate);
+
+ }
+ changedServiceTemplates.put(
+ serviceTemplateEntry.getKey(), newServiceTemplate);
+ }
+
+ serviceModel.setServiceTemplates(changedServiceTemplates);
+ }
+
+ private static org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate mapOldSTToCurrentST(
+ Old1610ServiceTemplate oldServiceTemplate) {
+ org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate
+ serviceTemplate = new org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate();
+
+ serviceTemplate.setArtifact_types(oldServiceTemplate.getArtifact_types());
+ serviceTemplate.setCapability_types(oldServiceTemplate.getCapability_types());
+ serviceTemplate.setData_types(oldServiceTemplate.getData_types());
+ serviceTemplate.setDescription(oldServiceTemplate.getDescription());
+ serviceTemplate.setGroup_types(oldServiceTemplate.getGroup_types());
+ serviceTemplate.setInterface_types(oldServiceTemplate.getInterface_types());
+ serviceTemplate.setMetadata(oldServiceTemplate.getMetadata());
+ serviceTemplate.setNode_types(oldServiceTemplate.getNode_types());
+ serviceTemplate.setPolicy_types(oldServiceTemplate.getPolicy_types());
+ serviceTemplate.setRelationship_types(oldServiceTemplate.getRelationship_types());
+ serviceTemplate.setTopology_template(oldServiceTemplate.getTopology_template());
+
+ List<Map<String, Import>> imports = new ArrayList<>();
+ for (Map.Entry<String, Import> importEntry : oldServiceTemplate.getImports().entrySet()) {
+ Map<String, Import> importMap = new HashMap<>();
+ importMap.put(importEntry.getKey(), importEntry.getValue());
+ imports.add(importMap);
+ }
+ serviceTemplate.setImports(imports);
+
+ return serviceTemplate;
+
+ }
+
+ private static void changeNamespaceInPackage(VspDetails vspDetails) {
+ String vspId = vspDetails.getId();
+ printMessage("Start updating CSAR file with new namespace in DB \n");
+
+ File translatedFile;
+ try {
+ translatedFile =
+ getTranslatedFile(vspId, vspDetails.getVersion());
+ } catch (Exception e) {
+ printMessage("No translated file was found under vsp " + vspDetails.getName() + "\n");
+ return;
+ }
+ try (ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ ZipOutputStream zos = new ZipOutputStream(baos);
+ ZipFile zipFile = new ZipFile(translatedFile)) {
+ Enumeration<? extends ZipEntry> entries = zipFile.entries();
+
+ while (entries.hasMoreElements()) {
+ ZipEntry ze = entries.nextElement();
+ InputStream zipEntryIs = zipFile.getInputStream(ze);
+ byte[] contentAsByte = IOUtils.toByteArray(zipEntryIs);
+ String fileContent = new String(contentAsByte);
+
+ String replacedNamespace = fileContent.replace("org.openecomp.d2", "org.openecomp");
+
+ zos.putNextEntry(new ZipEntry(ze.getName()));
+ zos.write(replacedNamespace.getBytes());
+ }
+ printMessage("Changed Tosca namesapce in package for vsp " + vspDetails.getName() + "\n");
+
+
+ packageInfoDao.updateTranslatedContent(
+ vspId, vspDetails.getVersion(), ByteBuffer.wrap(baos.toByteArray()));
+ printMessage("Updated CSAR file with new namespace in DB \n");
+
+ } catch (Exception e) {
+ printMessage("Could not perform migration on csar");
+ }
+ }
+
+ private static void printMessage(String message) {
+ System.out.print(message);
+ logger.debug(message);
+ }
+
+ private static File getTranslatedFile(String vspId, Version version)
+ throws IOException {
+ PackageInfo packageInfo =
+ packageInfoDao.get(new PackageInfo(vspId, version));
+ ByteBuffer translatedFileBuffer = packageInfo == null ? null : packageInfo.getTranslatedFile();
+
+ File translatedFile = new File(VendorSoftwareProductConstants.VSP_PACKAGE_ZIP);
+
+ FileOutputStream fos = new FileOutputStream(translatedFile);
+ fos.write(translatedFileBuffer.array());
+ fos.close();
+
+
+ return translatedFile;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-migration-lib/src/main/resources/logback.xml b/openecomp-be/lib/openecomp-migration-lib/src/main/resources/logback.xml
new file mode 100644
index 0000000000..5596881329
--- /dev/null
+++ b/openecomp-be/lib/openecomp-migration-lib/src/main/resources/logback.xml
@@ -0,0 +1,280 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration scan="true" scanPeriod="5 seconds">
+
+ <property scope="system" name="OPENECOMP-component-name" value="ASDC" />
+ <property scope="system" name="OPENECOMP-subcomponent-name" value="ASDC-BE" />
+ <property file="${config.home}/catalog-be/configuration.yaml" />
+ <property scope="context" name="enable-all-log" value="false" />
+
+ <!--statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
+ <include resource="asdc_debug_logback.xml"/-->
+
+ <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)-->
+ <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)-->
+ <property name="default-log-pattern"
+ value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{uuid}|%X{serviceInstanceID}|%thread||${OPENECOMP-subcomponent-name}|%X{userId}|%level|%X{alarmSeverity}|%X{localAddr}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n" />
+
+ <property name="asdc-debug-log-pattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg %n"/>
+
+ <!-- All log -->
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender name="ALL_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/all.log
+ </file>
+
+ <rollingPolicy
+ class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/all.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ALL_ROLLING" />
+ </appender>
+ </then>
+ </if>
+
+ <!-- Error log -->
+ <appender name="ERROR_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/Error.log
+ </file>
+
+ <!-- Audit messages filter - deny audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>AUDIT_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- Transaction messages filter - deny Transaction messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>INFO</level>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/Error.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Debug log -->
+ <appender name="DEBUG_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug.log
+ </file>
+
+ <!-- No need to deny audit messages - they are INFO only, will be denied
+ anyway -->
+ <!-- Transaction messages filter - deny Transaction messages, there are
+ some DEBUG level messages among them -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- accept DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= DEBUG.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Debug log -->
+ <appender name="PACKAGE_DEBUG_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/migration_debug.log
+ </file>
+
+ <!-- No need to deny audit messages - they are INFO only, will be denied
+ anyway -->
+ <!-- Transaction messages filter - deny Transaction messages, there are
+ some DEBUG level messages among them -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- accept DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= DEBUG.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>NEUTRAL</OnMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/debug_by_package.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${asdc-debug-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Audit log -->
+ <appender name="AUDIT_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/audit.log
+ </file>
+
+ <!-- Audit messages filter - accept audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>AUDIT_MARKER</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/audit.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- SdncTransaction log -->
+ <appender name="TRANSACTION_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+ <file>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/transaction.log
+ </file>
+
+ <!-- Transaction messages filter - accept audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>TRANSACTION_MARKER</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${OPENECOMP-component-name}/${OPENECOMP-subcomponent-name}/transaction.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy
+ class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+ <encoder>
+ <pattern>${default-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+ <!-- Asynchronicity Configurations -->
+ <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="DEBUG_ROLLING" />
+ </appender>
+
+ <appender name="ASYNC_TRANSACTION" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="TRANSACTION_ROLLING" />
+ </appender>
+
+ <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ERROR_ROLLING" />
+ </appender>
+
+
+ <root level="INFO">
+ <appender-ref ref="ASYNC_ERROR" />
+ <appender-ref ref="ASYNC_DEBUG" />
+ <appender-ref ref="AUDIT_ROLLING" />
+ <appender-ref ref="ASYNC_TRANSACTION" />
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender-ref ref="ALL_ROLLING" />
+ </then>
+ </if>
+ </root>
+
+ <logger name="org.openecomp.sdc" level="INFO" />
+
+ <logger name="org.openecomp.sdc.migration" level="DEBUG" additivity ="false">
+ <appender-ref ref="PACKAGE_DEBUG_ROLLING" />
+ </logger>
+</configuration>
diff --git a/openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zip b/openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zip
new file mode 100644
index 0000000000..7f141387c9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-migration-lib/src/main/resources/openecomp-migration-lib.zip
Binary files differ
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml
index e9bf8143b2..340d51b77c 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml
@@ -4,29 +4,29 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-api</artifactId>
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-action-lib</artifactId>
<version>1.1.0-SNAPSHOT</version>
</parent>
- <artifactId>openecomp-sdc-action-api</artifactId>
-
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-core-lib</artifactId>
<type>pom</type>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-core</artifactId>
<version>${project.version}</version>
</dependency>
@@ -38,8 +38,8 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
- <version>2.7.4</version>
+ <version>${jackson.annotations.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..5da20949fe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/pom.xml.versionsBackup
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-core-lib</artifactId>
+ <type>pom</type>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ <version>2.7.4</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java
index 625ce7efe8..fd6c76c92c 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java
@@ -20,13 +20,14 @@
package org.openecomp.sdc.action;
+
public class ActionConstants {
//
public static final long MAX_ACTION_ARTIFACT_SIZE = 20 * 1024 * 1024; //20 MB
//REST layer constants
- public static final String X_ECOMP_INSTANCE_ID_HEADER_PARAM = "X-ECOMP-InstanceID";
- public static final String X_ECOMP_REQUEST_ID_HEADER_PARAM = "X-ECOMP-RequestID";
+ public static final String X_OPEN_ECOMP_INSTANCE_ID_HEADER_PARAM = "X-OPEN-ECOMP-InstanceID";
+ public static final String X_OPEN_ECOMP_REQUEST_ID_HEADER_PARAM = "X-OPEN-ECOMP-RequestID";
public static final String WWW_AUTHENTICATE_HEADER_PARAM = "WWW-Authenticate";
public static final String ACTION_REQUEST_PARAM_NAME = "name";
@@ -66,7 +67,7 @@ public class ActionConstants {
public static final String FILTER_TYPE_CATEGORY = "CATEGORY";
public static final String FILTER_TYPE_NAME = "NAME";
public static final String FILTER_TYPE_MODEL = "MODEL";
- public static final String FILTER_TYPE_ECOMP_COMPONENT = "ECOMP_COMPONENT";
+ public static final String FILTER_TYPE_OPEN_ECOMP_COMPONENT = "OPEN_ECOMP_COMPONENT";
public static final String FILTER_TYPE_NONE = "NONE";
public static final String ARTIFACT_METADATA_ATTR_UUID = "ARTIFACT_UUID";
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDao.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDao.java
index a120645512..746a3b654d 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDao.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDao.java
@@ -24,11 +24,12 @@ import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.action.dao.types.ActionArtifactEntity;
import org.openecomp.sdc.action.types.ActionArtifact;
+
public interface ActionArtifactDao extends BaseDao<ActionArtifactEntity> {
- void uploadArtifact(ActionArtifact data);
+ public void uploadArtifact(ActionArtifact data);
- ActionArtifact downloadArtifact(int effectiveVersion, String artifactUuId);
+ public ActionArtifact downloadArtifact(int effectiveVersion, String artifactUuId);
- void updateArtifact(ActionArtifact data);
+ public void updateArtifact(ActionArtifact data);
}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDaoFactory.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDaoFactory.java
index f0936976ba..51377a18f1 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDaoFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionArtifactDaoFactory.java
@@ -23,6 +23,7 @@ package org.openecomp.sdc.action.dao;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
+
public abstract class ActionArtifactDaoFactory extends AbstractComponentFactory<ActionArtifactDao> {
public static ActionArtifactDaoFactory getInstance() {
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionDao.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionDao.java
index 01f5014ad4..ed6dfcca52 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionDao.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/ActionDao.java
@@ -24,28 +24,28 @@ import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.action.dao.types.ActionEntity;
import org.openecomp.sdc.action.errors.ActionException;
import org.openecomp.sdc.action.types.Action;
-import org.openecomp.sdc.action.types.EcompComponent;
+import org.openecomp.sdc.action.types.OpenEcompComponent;
import org.openecomp.sdc.versioning.dao.VersionableDao;
import java.util.List;
public interface ActionDao extends VersionableDao, BaseDao<ActionEntity> {
- Action createAction(Action actionDto) throws ActionException;
+ public Action createAction(Action actionDto) throws ActionException;
- Action updateAction(Action actionDto) throws ActionException;
+ public Action updateAction(Action actionDto) throws ActionException;
- void deleteAction(String actionInvariantUuId) throws ActionException;
+ public void deleteAction(String actionInvariantUuId) throws ActionException;
- List<Action> getFilteredActions(String filterType, String filterId) throws ActionException;
+ public List<Action> getFilteredActions(String filterType, String filterId) throws ActionException;
- Action getActionsByActionUuId(String uniqueId) throws ActionException;
+ public Action getActionsByActionUuId(String uniqueId) throws ActionException;
- List<EcompComponent> getEcompComponents() throws ActionException;
+ public List<OpenEcompComponent> getOpenEcompComponents() throws ActionException;
- List<Action> getActionsByActionInvariantUuId(String actionInvariantUuId)
+ public List<Action> getActionsByActionInvariantUuId(String actionInvariantUuId)
throws ActionException;
- Action getLockedAction(String actionInvariantUuId, String user) throws ActionException;
+ public Action getLockedAction(String actionInvariantUuId, String user) throws ActionException;
}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/ActionEntity.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/ActionEntity.java
index 9aa9e8d375..2c2bfe3ae9 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/ActionEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/ActionEntity.java
@@ -28,19 +28,19 @@ import org.openecomp.core.utilities.json.JsonUtil;
import org.openecomp.sdc.action.types.Action;
import org.openecomp.sdc.versioning.dao.types.Version;
-
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
+
@Table(keyspace = "dox", name = "Action")
public class ActionEntity {
- @Column(name = "actionUUID")
+ @Column(name = "actionUuId")
private String actionUuId;
@PartitionKey(value = 0)
- @Column(name = "actionInvariantUUID")
+ @Column(name = "actionInvariantUuId")
private String actionInvariantUuId;
@PartitionKey(value = 1)
@Frozen
@@ -124,7 +124,7 @@ public class ActionEntity {
*/
public void setVendorList(List<String> vendorList) {
if (vendorList != null && !vendorList.isEmpty()) {
- List<String> lowerCaseVendorList = new ArrayList<>();
+ List<String> lowerCaseVendorList = new ArrayList<String>();
lowerCaseVendorList
.addAll(vendorList.stream().map(String::toLowerCase).collect(Collectors.toList()));
this.vendorList = lowerCaseVendorList;
@@ -144,7 +144,7 @@ public class ActionEntity {
*/
public void setCategoryList(List<String> categoryList) {
if (categoryList != null && !categoryList.isEmpty()) {
- List<String> lowerCaseCategoryList = new ArrayList<>();
+ List<String> lowerCaseCategoryList = new ArrayList<String>();
lowerCaseCategoryList
.addAll(categoryList.stream().map(String::toLowerCase).collect(Collectors.toList()));
this.categoryList = lowerCaseCategoryList;
@@ -209,16 +209,4 @@ public class ActionEntity {
return destination;
}
- /*private List<HashMap<String,String>> createMapFromList(List<String> list, String idName){
- List<HashMap<String,String>> keyValueList = new ArrayList<>();
- if(list != null && !list.isEmpty()){
- for(String attributeId : list){
- HashMap<String,String> attributeIdMap = new HashMap<>();
- attributeIdMap.put(idName,attributeId);
- keyValueList.add(attributeIdMap);
- }
- return keyValueList;
- }
- return null;
- }*/
}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/EcompComponentEntity.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/OpenEcompComponentEntity.java
index 9a71023629..326da718dd 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/EcompComponentEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/dao/types/OpenEcompComponentEntity.java
@@ -23,10 +23,10 @@ package org.openecomp.sdc.action.dao.types;
import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.PartitionKey;
import com.datastax.driver.mapping.annotations.Table;
-import org.openecomp.sdc.action.types.EcompComponent;
+import org.openecomp.sdc.action.types.OpenEcompComponent;
-@Table(keyspace = "dox", name = "ECOMPComponent")
-public class EcompComponentEntity {
+@Table(keyspace = "dox", name = "EcompComponent")
+public class OpenEcompComponentEntity {
@PartitionKey
@Column(name = "id")
@@ -35,10 +35,10 @@ public class EcompComponentEntity {
@Column(name = "name")
private String name;
- public EcompComponentEntity() {
+ public OpenEcompComponentEntity() {
}
- public EcompComponentEntity(String id, String name) {
+ public OpenEcompComponentEntity(String id, String name) {
this.id = id;
this.name = name;
}
@@ -60,12 +60,12 @@ public class EcompComponentEntity {
}
/**
- * To dto ecomp component.
+ * To dto OPENECOMP component.
*
- * @return the ecomp component
+ * @return the OPENECOMP component
*/
- public EcompComponent toDto() {
- EcompComponent destination = new EcompComponent();
+ public OpenEcompComponent toDto() {
+ OpenEcompComponent destination = new OpenEcompComponent();
destination.setId(this.getId());
destination.setName(this.getName());
return destination;
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionErrorConstants.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionErrorConstants.java
index 092d9abee5..9eff8a7050 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionErrorConstants.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionErrorConstants.java
@@ -20,6 +20,9 @@
package org.openecomp.sdc.action.errors;
+/**
+ * Action Library Error Constants for Error codes and user-friendly detailed error messages.
+ */
public class ActionErrorConstants {
//Error Codes
@@ -65,6 +68,7 @@ public class ActionErrorConstants {
public static final String ACTION_DELETE_ON_LOCKED_ENTITY_CODE = "ACT1048";
public static final String ACTION_INTERNAL_SERVER_ERR_CODE = "ACT1060";
+ //Logging Query failure Response code
public static final String ACTION_QUERY_FAILURE_CODE = "QUERY_FAILURE";
public static final String ACTION_QUERY_FAILURE_MSG = "Query Failure";
@@ -74,10 +78,10 @@ public class ActionErrorConstants {
//"The API failed due to missing body";
public static final String ACTION_REQUEST_MISSING_MANDATORY_PARAM =
"Missing mandatory parameter(s) : ";
- public static final String ACTION_REQUEST_ECOMP_INSTANCE_ID_INVALID =
- "X-ECOMP-InstanceID HTTP header missing or empty";
- public static final String ACTION_REQUEST_ECOMP_REQUEST_ID_INVALID =
- "X-ECOMP-RequestID HTTP header missing or empty";
+ public static final String ACTION_REQUEST_OPEN_ECOMP_INSTANCE_ID_INVALID =
+ "X-OPEN-ECOMP-InstanceID HTTP header missing or empty";
+ public static final String ACTION_REQUEST_OPEN_ECOMP_REQUEST_ID_INVALID =
+ "X-OPEN-ECOMP-RequestID HTTP header missing or empty";
public static final String ACTION_REQUEST_CONTENT_TYPE_INVALID =
"Content-Type HTTP header missing or empty";
public static final String ACTION_REQUEST_AUTHORIZATION_HEADER_INVALID =
@@ -95,8 +99,8 @@ public class ActionErrorConstants {
"Invalid artifact protection value";
public static final String ACTION_ARTIFACT_INVALID_NAME =
- "Artifact name cannot contain any of the following characters : #<>$+%!`&*'|{}?=/:@ "
- + "including whitespaces, double quotes and back-slash";
+ "Artifact name cannot contain any of the following characters : #<>$+%!`&*'|{}?=/:@ including"
+ + " whitespaces, double quotes and back-slash";
public static final String ACTION_ARTIFACT_READ_FILE_ERROR = "Error Occurred while reading file";
public static final String ACTION_REQUEST_ARTIFACT_OPERATION_ALLOWED =
"Artifacts cannot be created/updated using this operation";
@@ -116,7 +120,7 @@ public class ActionErrorConstants {
public static final String ACTION_ARTIFACT_ALREADY_EXISTS =
"Artifact name already exists for Action with id %s. Please use another name.";
public static final String ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG =
- "The request failed due to an internal ASDC problem. ECOMP Component should continue the "
+ "The request failed due to an internal ASDC problem. Open ECOMP Component should continue the "
+ "attempts, with corrected data if required, to create the resource.";
public static final String ACTION_ARTIFACT_DELETE_READ_ONLY_MSG =
"Cannot delete read only artifact.";
@@ -131,6 +135,6 @@ public class ActionErrorConstants {
public static final String UNDO_CHECKOUT_ON_UNLOCKED_ENTITY_MSG =
"Can not undo checkout on versionable entity %s with id %s since it is not checked out.";
public static final String UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER_MSG =
- "Can not undo checkout on versionable entity %s with id"
- + " %s since it is checked out by other user: %s.";
+ "Can not undo checkout on versionable entity %s with id %s since it is checked out by other "
+ + "user: %s.";
}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionException.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionException.java
index fff88d6f84..08db9e241a 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionException.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionException.java
@@ -20,18 +20,31 @@
package org.openecomp.sdc.action.errors;
+import org.openecomp.sdc.action.util.ActionUtil;
+
+/**
+ * Custom Exception class for handling Action Library error scenarios.
+ */
public class ActionException extends RuntimeException {
private String errorCode;
private String description;
+ private int logResponseCode;
public ActionException() {
}
+ /**
+ * Instantiates a new Action exception.
+ *
+ * @param errorCode the error code
+ * @param description the description
+ */
public ActionException(String errorCode, String description) {
this.errorCode = errorCode;
this.description = description;
+ this.logResponseCode = ActionUtil.getLogResponseCode(this.errorCode);
}
public String getErrorCode() {
@@ -49,4 +62,12 @@ public class ActionException extends RuntimeException {
public void setDescription(String description) {
this.description = description;
}
+
+ public int getLogResponseCode() {
+ return logResponseCode;
+ }
+
+ public void setLogResponseCode(int logResponseCode) {
+ this.logResponseCode = logResponseCode;
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionExceptionMapper.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionExceptionMapper.java
index 23c14aaaa2..98e1c6938a 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionExceptionMapper.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/errors/ActionExceptionMapper.java
@@ -20,92 +20,132 @@
package org.openecomp.sdc.action.errors;
-import org.openecomp.sdc.action.ActionConstants;
+import static org.openecomp.sdc.action.ActionConstants.WWW_AUTHENTICATE_HEADER_PARAM;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_ALREADY_EXISTS_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_CHECKSUM_ERROR_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_DELETE_READ_ONLY;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_ENTITY_NOT_EXIST_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_INVALID_NAME_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_INVALID_PROTECTION_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_TOO_BIG_ERROR_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_UPDATE_READ_ONLY;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_AUTHENTICATION_ERR_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_AUTHORIZATION_ERR_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_CHECKIN_ON_UNLOCKED_ENTITY;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_CHECKOUT_ON_LOCKED_ENTITY;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_CHECKOUT_ON_LOCKED_ENTITY_OTHER_USER;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_DELETE_ON_LOCKED_ENTITY_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_EDIT_ON_ENTITY_LOCKED_BY_OTHER_USER;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ENTITY_NOT_EXIST_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ENTITY_UNIQUE_VALUE_ERROR;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INVALID_INSTANCE_ID_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INVALID_PARAM_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INVALID_REQUEST_BODY_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INVALID_REQUEST_ID_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INVALID_SEARCH_CRITERIA;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_MULT_SEARCH_CRITERIA;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_NOT_LOCKED_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_REQUEST_AUTHORIZATION_HEADER_INVALID;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_REQUEST_INVALID_GENERIC_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_SUBMIT_FINALIZED_ENTITY_NOT_ALLOWED;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_SUBMIT_LOCKED_ENTITY_NOT_ALLOWED;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_UNDO_CHECKOUT_ON_UNLOCKED_ENTITY;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_UPDATE_INVALID_VERSION;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_UPDATE_NOT_ALLOWED_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_UPDATE_NOT_ALLOWED_CODE_NAME;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_UPDATE_NOT_ALLOWED_FOR_NAME;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_UPDATE_ON_UNLOCKED_ENTITY;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import javax.ws.rs.ext.ExceptionMapper;
+/**
+ * Mapper class to map Action Library exceptions to corresponding HTTP Response objects.
+ */
public class ActionExceptionMapper implements ExceptionMapper<ActionException> {
@Override
- public Response toResponse(ActionException actionException) {
+ public Response toResponse(ActionException exception) {
Response response;
- String errorCode = actionException.getErrorCode();
+ String errorCode = exception.getErrorCode();
switch (errorCode) {
- case ActionErrorConstants.ACTION_REQUEST_INVALID_GENERIC_CODE:
- case ActionErrorConstants.ACTION_INVALID_INSTANCE_ID_CODE:
- case ActionErrorConstants.ACTION_INVALID_REQUEST_ID_CODE:
- case ActionErrorConstants.ACTION_INVALID_REQUEST_BODY_CODE:
- case ActionErrorConstants.ACTION_INVALID_PARAM_CODE:
- case ActionErrorConstants.ACTION_UPDATE_NOT_ALLOWED_FOR_NAME:
- case ActionErrorConstants.ACTION_CHECKOUT_ON_LOCKED_ENTITY:
- case ActionErrorConstants.ACTION_ENTITY_UNIQUE_VALUE_ERROR:
- case ActionErrorConstants.ACTION_INVALID_SEARCH_CRITERIA:
- case ActionErrorConstants.ACTION_MULT_SEARCH_CRITERIA:
- case ActionErrorConstants.ACTION_UPDATE_ON_UNLOCKED_ENTITY:
- case ActionErrorConstants.ACTION_UPDATE_INVALID_VERSION:
- case ActionErrorConstants.ACTION_UPDATE_NOT_ALLOWED_CODE:
- case ActionErrorConstants.ACTION_CHECKIN_ON_UNLOCKED_ENTITY:
- case ActionErrorConstants.ACTION_SUBMIT_FINALIZED_ENTITY_NOT_ALLOWED:
- case ActionErrorConstants.ACTION_SUBMIT_LOCKED_ENTITY_NOT_ALLOWED:
- case ActionErrorConstants.ACTION_UNDO_CHECKOUT_ON_UNLOCKED_ENTITY:
- case ActionErrorConstants.ACTION_UPDATE_NOT_ALLOWED_CODE_NAME:
- case ActionErrorConstants.ACTION_ARTIFACT_CHECKSUM_ERROR_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_ALREADY_EXISTS_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_INVALID_NAME_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_TOO_BIG_ERROR_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_INVALID_PROTECTION_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_DELETE_READ_ONLY:
- case ActionErrorConstants.ACTION_NOT_LOCKED_CODE:
+ case ACTION_REQUEST_INVALID_GENERIC_CODE:
+ case ACTION_INVALID_INSTANCE_ID_CODE:
+ case ACTION_INVALID_REQUEST_ID_CODE:
+ case ACTION_INVALID_REQUEST_BODY_CODE:
+ case ACTION_INVALID_PARAM_CODE:
+ case ACTION_UPDATE_NOT_ALLOWED_FOR_NAME:
+ case ACTION_CHECKOUT_ON_LOCKED_ENTITY:
+ case ACTION_ENTITY_UNIQUE_VALUE_ERROR:
+ case ACTION_INVALID_SEARCH_CRITERIA:
+ case ACTION_MULT_SEARCH_CRITERIA:
+ case ACTION_UPDATE_ON_UNLOCKED_ENTITY:
+ case ACTION_UPDATE_INVALID_VERSION:
+ case ACTION_UPDATE_NOT_ALLOWED_CODE:
+ case ACTION_CHECKIN_ON_UNLOCKED_ENTITY:
+ case ACTION_SUBMIT_FINALIZED_ENTITY_NOT_ALLOWED:
+ case ACTION_SUBMIT_LOCKED_ENTITY_NOT_ALLOWED:
+ case ACTION_UNDO_CHECKOUT_ON_UNLOCKED_ENTITY:
+ case ACTION_UPDATE_NOT_ALLOWED_CODE_NAME:
+ case ACTION_ARTIFACT_CHECKSUM_ERROR_CODE:
+ case ACTION_ARTIFACT_ALREADY_EXISTS_CODE:
+ case ACTION_ARTIFACT_INVALID_NAME_CODE:
+ case ACTION_ARTIFACT_TOO_BIG_ERROR_CODE:
+ case ACTION_ARTIFACT_INVALID_PROTECTION_CODE:
+ case ACTION_ARTIFACT_DELETE_READ_ONLY:
+ case ACTION_NOT_LOCKED_CODE:
response = Response
.status(Response.Status.BAD_REQUEST)
.entity(new ActionExceptionResponse(errorCode,
- Response.Status.BAD_REQUEST.getReasonPhrase(), actionException.getDescription()))
+ Response.Status.BAD_REQUEST.getReasonPhrase(), exception.getDescription()))
.type(MediaType.APPLICATION_JSON)
.build();
break;
- case ActionErrorConstants.ACTION_AUTHENTICATION_ERR_CODE:
+ case ACTION_AUTHENTICATION_ERR_CODE:
response = Response
.status(Response.Status.UNAUTHORIZED)
- .header(ActionConstants.WWW_AUTHENTICATE_HEADER_PARAM,
- ActionErrorConstants.ACTION_REQUEST_AUTHORIZATION_HEADER_INVALID)
+ .header(WWW_AUTHENTICATE_HEADER_PARAM, ACTION_REQUEST_AUTHORIZATION_HEADER_INVALID)
.entity(new ActionExceptionResponse(errorCode,
- Response.Status.UNAUTHORIZED.getReasonPhrase(), actionException.getDescription()))
+ Response.Status.UNAUTHORIZED.getReasonPhrase(), exception.getDescription()))
.type(MediaType.APPLICATION_JSON)
.build();
break;
- case ActionErrorConstants.ACTION_AUTHORIZATION_ERR_CODE:
- case ActionErrorConstants.ACTION_EDIT_ON_ENTITY_LOCKED_BY_OTHER_USER:
- case ActionErrorConstants.ACTION_CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER:
- case ActionErrorConstants.ACTION_CHECKOUT_ON_LOCKED_ENTITY_OTHER_USER:
- case ActionErrorConstants.ACTION_UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER:
- case ActionErrorConstants.ACTION_DELETE_ON_LOCKED_ENTITY_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_UPDATE_READ_ONLY:
+ case ACTION_AUTHORIZATION_ERR_CODE:
+ case ACTION_EDIT_ON_ENTITY_LOCKED_BY_OTHER_USER:
+ case ACTION_CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER:
+ case ACTION_CHECKOUT_ON_LOCKED_ENTITY_OTHER_USER:
+ case ACTION_UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER:
+ case ACTION_DELETE_ON_LOCKED_ENTITY_CODE:
+ case ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER_CODE:
+ case ACTION_ARTIFACT_UPDATE_READ_ONLY:
response = Response
.status(Response.Status.FORBIDDEN)
.entity(
new ActionExceptionResponse(errorCode, Response.Status.FORBIDDEN.getReasonPhrase(),
- actionException.getDescription())).type(MediaType.APPLICATION_JSON)
+ exception.getDescription())).type(MediaType.APPLICATION_JSON)
.build();
break;
- case ActionErrorConstants.ACTION_ENTITY_NOT_EXIST_CODE:
- case ActionErrorConstants.ACTION_ARTIFACT_ENTITY_NOT_EXIST_CODE:
+ case ACTION_ENTITY_NOT_EXIST_CODE:
+ case ACTION_ARTIFACT_ENTITY_NOT_EXIST_CODE:
response = Response
.status(Response.Status.NOT_FOUND)
.entity(
new ActionExceptionResponse(errorCode, Response.Status.NOT_FOUND.getReasonPhrase(),
- actionException.getDescription())).type(MediaType.APPLICATION_JSON)
+ exception.getDescription())).type(MediaType.APPLICATION_JSON)
.build();
break;
- case ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE:
+ case ACTION_INTERNAL_SERVER_ERR_CODE:
default:
response = Response
.status(Response.Status.INTERNAL_SERVER_ERROR)
.entity(new ActionExceptionResponse(errorCode,
Response.Status.INTERNAL_SERVER_ERROR.getReasonPhrase(),
- actionException.getDescription()))
+ exception.getDescription()))
.type(MediaType.APPLICATION_JSON)
.build();
}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/Action.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/Action.java
index 176d443a81..b7672644d2 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/Action.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/Action.java
@@ -36,7 +36,6 @@ public class Action implements Comparable {
private ActionStatus status;
private String name;
private String displayName;
- private String endpointUri;
private List<String> vendorList;
private List<String> categoryList;
private Date timestamp;
@@ -120,14 +119,6 @@ public class Action implements Comparable {
this.displayName = displayName;
}
- public String getEndpointUri() {
- return endpointUri;
- }
-
- public void setEndpointUri(String endpointUri) {
- this.endpointUri = endpointUri;
- }
-
public List<String> getVendorList() {
return vendorList;
}
@@ -176,6 +167,7 @@ public class Action implements Comparable {
this.supportedComponents = supportedComponents;
}
+
public List<ActionArtifact> getArtifacts() {
return artifacts;
}
@@ -213,8 +205,8 @@ public class Action implements Comparable {
if (this.getStatus() != null) {
destination.setStatus(this.getStatus().name());
}
- destination.setSupportedComponents(
- getIdFromMap(this.getSupportedComponents(), ActionConstants.SUPPORTED_COMPONENTS_ID));
+ destination.setSupportedComponents(getIdFromMap(this.getSupportedComponents(),
+ ActionConstants.SUPPORTED_COMPONENTS_ID));
destination.setSupportedModels(
getIdFromMap(this.getSupportedModels(), ActionConstants.SUPPORTED_MODELS_VERSION_ID));
destination.setData(this.getData());
@@ -224,11 +216,11 @@ public class Action implements Comparable {
private List<String> getIdFromMap(List<HashMap<String, String>> map, String idName) {
List<String> list = new ArrayList<>();
if (map != null && !map.isEmpty()) {
- map.forEach(entry -> {
+ for (HashMap<String, String> entry : map) {
if (entry.containsKey(idName)) {
list.add(entry.get(idName) != null ? entry.get(idName).toLowerCase() : null);
}
- });
+ }
return list;
}
return null;
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionArtifact.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionArtifact.java
index ef41673541..1c354e0f41 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionArtifact.java
@@ -26,6 +26,7 @@ import org.openecomp.sdc.action.dao.types.ActionArtifactEntity;
import java.nio.ByteBuffer;
import java.util.Date;
+
public class ActionArtifact {
private String artifactUuId;
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionRequest.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionRequest.java
index 1a20f9ecb7..6ba70b08ee 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionRequest.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionRequest.java
@@ -26,7 +26,7 @@ public enum ActionRequest {
DELETE_ACTION,
GET_FILTERED_ACTIONS,
GET_ACTIONS_INVARIANT_ID,
- GET_ECOMP_COMPONENTS,
+ GET_OPEN_ECOMP_COMPONENTS,
ACTION_VERSIONING,
CHECKOUT_ACTION,
CHECKIN_ACTION,
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionSubOperation.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionSubOperation.java
index 0dd97e6646..3298be7179 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionSubOperation.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/ActionSubOperation.java
@@ -36,7 +36,7 @@ public enum ActionSubOperation {
GET_ACTIONENTITY_BY_VERSION,
GET_ALL_ACTIONS,
GET_ACTIONINVID_BY_NAME,
- GET_ECOMP_COMPONENTS_ENTITY,
+ GET_OPEN_ECOMP_COMPONENTS_ENTITY,
GET_VERSIONINFO_FOR_ALL_ACTIONS,
GET_NAME_BY_ACTIONINVID,
CHECKOUT_ACTION,
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/EcompComponent.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/OpenEcompComponent.java
index cbcebb13ef..bf3f0c54f9 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/EcompComponent.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/types/OpenEcompComponent.java
@@ -20,18 +20,18 @@
package org.openecomp.sdc.action.types;
-import org.openecomp.sdc.action.dao.types.EcompComponentEntity;
+import org.openecomp.sdc.action.dao.types.OpenEcompComponentEntity;
-public class EcompComponent {
+public class OpenEcompComponent {
private String id;
private String name;
- public EcompComponent() {
+ public OpenEcompComponent() {
//Default constructor
}
- public EcompComponent(String name, String id) {
+ public OpenEcompComponent(String name, String id) {
this.name = name;
this.id = id;
}
@@ -53,12 +53,12 @@ public class EcompComponent {
}
/**
- * To entity ecomp component entity.
+ * To entity OPENECOMP component entity.
*
- * @return the ecomp component entity
+ * @return the OPENECOMP component entity
*/
- public EcompComponentEntity toEntity() {
- EcompComponentEntity destination = new EcompComponentEntity();
+ public OpenEcompComponentEntity toEntity() {
+ OpenEcompComponentEntity destination = new OpenEcompComponentEntity();
destination.setId(this.getId());
destination.setName(this.getName());
return destination;
@@ -84,7 +84,7 @@ public class EcompComponent {
if (this.getClass() != object.getClass()) {
return false;
}
- EcompComponent obj = (EcompComponent) object;
+ OpenEcompComponent obj = (OpenEcompComponent) object;
if (id == null) {
if (obj.id != null) {
return false;
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java
index 787f6abc26..0315a31a70 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java
@@ -116,7 +116,6 @@ import java.time.ZoneOffset;
import java.util.Date;
import java.util.TimeZone;
-
public class ActionUtil {
private static final String UTC_DATE_FORMAT = "dd MMM yyyy kk:mm:ss z";
@@ -125,7 +124,7 @@ public class ActionUtil {
/**
* Get Current Timestamp in UTC format.
*
- * @return Current Timestamp in UTC format.
+ * @return Current Timestamp in UTC format
*/
public static Date getCurrentTimeStampUtc() {
return Date.from(java.time.ZonedDateTime.now(ZoneOffset.UTC).toInstant());
@@ -134,8 +133,8 @@ public class ActionUtil {
/**
* Convert timestamp to UTC format date string.
*
- * @param timeStamp UTC timestamp to be converted to the UTC Date format.
- * @return UTC formatted Date string from timestamp.
+ * @param timeStamp UTC timestamp to be converted to the UTC Date format
+ * @return UTC formatted Date string from timestamp
*/
public static String getUtcDateStringFromTimestamp(Date timeStamp) {
DateFormat df = new SimpleDateFormat(UTC_DATE_FORMAT);
@@ -146,8 +145,8 @@ public class ActionUtil {
/**
* Convert timestamp to UTC format date string.
*
- * @param timeStamp UTC timestamp to be converted to the UTC Date format.
- * @return UTC formatted Date string from timestamp.
+ * @param timeStamp UTC timestamp to be converted to the UTC Date format
+ * @return UTC formatted Date string from timestamp
*/
public static String getLogUtcDateStringFromTimestamp(Date timeStamp) {
DateFormat df = new SimpleDateFormat(LOG_UTC_DATE_FORMAT);
@@ -158,7 +157,7 @@ public class ActionUtil {
/**
* Method to set up specific attributes MDC for the current logging operation.
*
- * @param subOperation Request Name.
+ * @param subOperation Request Name
*/
public static void actionLogPreProcessor(ActionSubOperation subOperation, String targetEntity) {
MDC.put(BEGIN_TIMESTAMP, String.valueOf(System.currentTimeMillis()));
@@ -172,7 +171,7 @@ public class ActionUtil {
/**
* Method to enhance the MDC after the logging operation for Metrics and Audit logs.
*
- * @param statusCode Response code for the current operation.
+ * @param statusCode Response code for the current operation
*/
public static void actionLogPostProcessor(StatusCode statusCode) {
actionLogPostProcessor(statusCode, false);
@@ -188,11 +187,13 @@ public class ActionUtil {
}
/**
- * Method to enhance the MDC after the logging operation for Metrics and Audit logs.
+ * Action log post processor.
*
- * @param statusCode Response code for the current operation.
+ * @param statusCode the status code
+ * @param responseCode the response code
+ * @param responseDescription the response description
+ * @param isServiceMetricLog the is service metric log
*/
-
public static void actionLogPostProcessor(StatusCode statusCode, String responseCode,
String responseDescription,
boolean isServiceMetricLog) {
@@ -217,9 +218,9 @@ public class ActionUtil {
/**
* Action Library Error logging Helper.
*
- * @param errorCategory WARN or ERROR.
- * @param errorCode Action Library exception code.
- * @param errorDescription Description of the error.
+ * @param errorCategory WARN or ERROR
+ * @param errorCode Action Library exception code
+ * @param errorDescription Description of the error
*/
public static void actionErrorLogProcessor(CategoryLogLevel errorCategory, String errorCode,
String errorDescription) {
@@ -237,7 +238,6 @@ public class ActionUtil {
errorType = "F";
break;
default:
- break;
}
MDC.put(ERROR_CODE, getLogResponseCode(errorCode) + errorType);
}
@@ -245,11 +245,11 @@ public class ActionUtil {
}
/**
- * Method to convert Action Library exception codes to OPENECOMP Audit codes in {@link.
- * ActionLogResponseCode} e.g: ACT1060 --> 201.
+ * Method to convert Action Library exception codes to OPENECOMP Audit codes in {@link
+ * ActionLogResponseCode} e.g: ACT1060 --> 201
*
- * @param errorCode Action library exception code.
- * @return Audit log code corresponding to the Action Library exception.
+ * @param errorCode Action library exception code
+ * @return Audit log code corresponding to the Action Library exception
*/
public static int getLogResponseCode(String errorCode) {
ActionLogResponseCode responseCode = INTERNAL_SERVER_ERROR;
@@ -365,7 +365,6 @@ public class ActionUtil {
responseCode = QUERY_FAILURE;
break;
default:
- break;
}
return responseCode.getValue();
}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml
index 465e36a5e2..40092e9131 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml
@@ -1,9 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://maven.apache.org/POM/4.0.0"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-core</artifactId>
<parent>
<groupId>org.openecomp.sdc</groupId>
@@ -11,11 +13,6 @@
<version>1.1.0-SNAPSHOT</version>
</parent>
-
- <artifactId>openecomp-sdc-action-core</artifactId>
-
-
-
<dependencies>
<dependency>
<groupId>org.openecomp.sdc</groupId>
@@ -27,11 +24,6 @@
<artifactId>openecomp-sdc-versioning-api</artifactId>
<version>${project.version}</version>
</dependency>
- <dependency>
- <groupId>org.openecomp.sdc.sdc_common</groupId>
- <artifactId>openecomp-logging-api</artifactId>
- <version>${project.version}</version>
- </dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..274bdb04c7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/pom.xml.versionsBackup
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoFactoryImpl.java
index 2767c9eeca..51f3cac607 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoFactoryImpl.java
@@ -23,8 +23,9 @@ package org.openecomp.sdc.action.dao.impl;
import org.openecomp.sdc.action.dao.ActionArtifactDao;
import org.openecomp.sdc.action.dao.ActionArtifactDaoFactory;
+
public class ActionArtifactDaoFactoryImpl extends ActionArtifactDaoFactory {
- private static final ActionArtifactDao INSTANCE = new ActionArtifactDaoImpl();
+ private static ActionArtifactDao INSTANCE = new ActionArtifactDaoImpl();
@Override
public ActionArtifactDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java
index 3e884c24e3..bfa5830b8d 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java
@@ -25,7 +25,6 @@ import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ENTITY
import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE;
import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_QUERY_FAILURE_CODE;
import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_QUERY_FAILURE_MSG;
-import static org.openecomp.sdc.action.util.ActionUtil.actionLogPostProcessor;
import com.datastax.driver.core.exceptions.NoHostAvailableException;
import com.datastax.driver.mapping.Mapper;
@@ -33,8 +32,8 @@ import com.datastax.driver.mapping.Result;
import com.datastax.driver.mapping.annotations.Accessor;
import com.datastax.driver.mapping.annotations.Query;
import org.openecomp.core.dao.impl.CassandraBaseDao;
-import org.openecomp.core.logging.api.Logger;
-import org.openecomp.core.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.core.nosqldb.api.NoSqlDb;
import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
import org.openecomp.sdc.action.dao.ActionArtifactDao;
@@ -49,12 +48,13 @@ import org.openecomp.sdc.action.util.ActionUtil;
import java.util.Collection;
import java.util.List;
+
public class ActionArtifactDaoImpl extends CassandraBaseDao<ActionArtifactEntity>
implements ActionArtifactDao {
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final Mapper<ActionArtifactEntity> mapper =
+ private static NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
+ private static Mapper<ActionArtifactEntity> mapper =
noSqlDb.getMappingManager().mapper(ActionArtifactEntity.class);
- private static final ActionArtifactAccessor accessor =
+ private static ActionArtifactAccessor accessor =
noSqlDb.getMappingManager().createAccessor(ActionArtifactAccessor.class);
private final Logger log = (Logger) LoggerFactory.getLogger(this.getClass().getName());
@@ -97,7 +97,7 @@ public class ActionArtifactDaoImpl extends CassandraBaseDao<ActionArtifactEntity
try {
ActionUtil
.actionLogPreProcessor(ActionSubOperation.GET_ARTIFACT_BY_ARTIFACTUUID, TARGET_ENTITY_DB);
- Result<ActionArtifactEntity> result;
+ Result<ActionArtifactEntity> result = null;
result = accessor.getArtifactByUuId(effectiveVersion, artifactUuId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoFactoryImpl.java
index 66bd20687d..7ecda7844d 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoFactoryImpl.java
@@ -23,8 +23,9 @@ package org.openecomp.sdc.action.dao.impl;
import org.openecomp.sdc.action.dao.ActionDao;
import org.openecomp.sdc.action.dao.ActionDaoFactory;
+
public class ActionDaoFactoryImpl extends ActionDaoFactory {
- private static final ActionDao INSTANCE = new ActionDaoImpl();
+ private static ActionDao INSTANCE = new ActionDaoImpl();
@Override
public ActionDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java
index 29b5171470..b7f4b5c926 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java
@@ -24,7 +24,25 @@ import static com.datastax.driver.core.querybuilder.QueryBuilder.eq;
import static com.datastax.driver.core.querybuilder.QueryBuilder.in;
import static com.datastax.driver.core.querybuilder.QueryBuilder.set;
import static org.openecomp.core.nosqldb.impl.cassandra.CassandraSessionFactory.getSession;
-import static org.openecomp.sdc.action.util.ActionUtil.actionLogPostProcessor;
+import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_CATEGORY;
+import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_OPEN_ECOMP_COMPONENT;
+import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_MODEL;
+import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_NAME;
+import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_NONE;
+import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_VENDOR;
+import static org.openecomp.sdc.action.ActionConstants.STATUS;
+import static org.openecomp.sdc.action.ActionConstants.TARGET_ENTITY;
+import static org.openecomp.sdc.action.ActionConstants.TARGET_ENTITY_DB;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ENTITY_NOT_EXIST;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_ENTITY_NOT_EXIST_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_NOT_LOCKED_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_NOT_LOCKED_MSG;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_QUERY_FAILURE_CODE;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.ACTION_QUERY_FAILURE_MSG;
import com.datastax.driver.core.ResultSet;
import com.datastax.driver.core.Row;
@@ -38,23 +56,22 @@ import com.datastax.driver.mapping.UDTMapper;
import com.datastax.driver.mapping.annotations.Accessor;
import com.datastax.driver.mapping.annotations.Query;
import org.openecomp.core.dao.impl.CassandraBaseDao;
-import org.openecomp.core.logging.api.Logger;
-import org.openecomp.core.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.core.nosqldb.api.NoSqlDb;
import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
import org.openecomp.core.utilities.json.JsonUtil;
import org.openecomp.sdc.action.ActionConstants;
import org.openecomp.sdc.action.dao.ActionDao;
import org.openecomp.sdc.action.dao.types.ActionEntity;
-import org.openecomp.sdc.action.dao.types.EcompComponentEntity;
-import org.openecomp.sdc.action.errors.ActionErrorConstants;
+import org.openecomp.sdc.action.dao.types.OpenEcompComponentEntity;
import org.openecomp.sdc.action.errors.ActionException;
import org.openecomp.sdc.action.logging.CategoryLogLevel;
import org.openecomp.sdc.action.logging.StatusCode;
import org.openecomp.sdc.action.types.Action;
import org.openecomp.sdc.action.types.ActionStatus;
import org.openecomp.sdc.action.types.ActionSubOperation;
-import org.openecomp.sdc.action.types.EcompComponent;
+import org.openecomp.sdc.action.types.OpenEcompComponent;
import org.openecomp.sdc.action.util.ActionUtil;
import org.openecomp.sdc.versioning.VersioningManagerFactory;
import org.openecomp.sdc.versioning.dao.VersionInfoDao;
@@ -76,22 +93,22 @@ import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
+
public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements ActionDao {
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final Mapper<ActionEntity> mapper =
+ private static NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
+ private static Mapper<ActionEntity> mapper =
noSqlDb.getMappingManager().mapper(ActionEntity.class);
- private static final ActionAccessor accessor =
+ private static ActionAccessor accessor =
noSqlDb.getMappingManager().createAccessor(ActionAccessor.class);
- private static final UDTMapper<Version> versionMapper =
+ private static UDTMapper<Version> versionMapper =
noSqlDb.getMappingManager().udtMapper(Version.class);
- private static final VersionInfoDao versionInfoDao =
+ private static VersionInfoDao versionInfoDao =
VersionInfoDaoFactory.getInstance().createInterface();
- private static final VersionInfoDeletedDao versionInfoDeletedDao =
+ private static VersionInfoDeletedDao versionInfoDeletedDao =
VersionInfoDeletedDaoFactory.getInstance().createInterface();
private final Logger log = (Logger) LoggerFactory.getLogger(this.getClass().getName());
-
@Override
public void registerVersioning(String versionableEntityType) {
VersioningManagerFactory.getInstance().createInterface()
@@ -102,62 +119,58 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
}
@Override
- public Action createAction(Action actionDto) {
+ public Action createAction(Action action) {
try {
- ActionUtil.actionLogPreProcessor(
- ActionSubOperation.CREATE_ACTION_ENTITY, ActionConstants.TARGET_ENTITY_DB);
- this.create(actionDto.toEntity());
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.CREATE_ACTION_ENTITY, TARGET_ENTITY_DB);
+ this.create(action.toEntity());
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
- return actionDto;
- } catch (NoHostAvailableException noHostAvailableException) {
- logGenericException(noHostAvailableException);
- throw new ActionException(ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
+ return action;
+ } catch (NoHostAvailableException exception) {
+ logGenericException(exception);
+ throw new ActionException(ACTION_INTERNAL_SERVER_ERR_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
}
}
@Override
- public Action updateAction(Action actionDto) {
+ public Action updateAction(Action action) {
try {
- log.debug(" entering updateAction with actionUUID= " + actionDto.getActionUuId());
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION,
- ActionConstants.TARGET_ENTITY_DB);
- this.update(actionDto.toEntity());
+ log.debug(" entering updateAction with actionUUID= " + action.getActionUuId());
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION, TARGET_ENTITY_DB);
+ this.update(action.toEntity());
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
- log.debug(" exit updateAction with actionUUID= " + actionDto.getActionUuId());
- return actionDto;
- } catch (NoHostAvailableException noHostAvailableException) {
- logGenericException(noHostAvailableException);
- throw new ActionException(ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
+ log.debug(" exit updateAction with actionUUID= " + action.getActionUuId());
+ return action;
+ } catch (NoHostAvailableException exception) {
+ logGenericException(exception);
+ throw new ActionException(ACTION_INTERNAL_SERVER_ERR_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
}
}
@Override
public void deleteAction(String actionInvariantUuId) {
try {
- log.debug("entering deleteAction with actionInvariantUUID = " + actionInvariantUuId);
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION,
- ActionConstants.TARGET_ENTITY_DB);
+ log.debug("entering deleteAction with actionInvariantUuId = " + actionInvariantUuId);
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_DB);
VersionInfoDeletedEntity activeVersionEntity = versionInfoDeletedDao.get(
new VersionInfoDeletedEntity(ActionConstants.ACTION_VERSIONABLE_TYPE,
actionInvariantUuId));
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
+
Version activeVersion = activeVersionEntity.getActiveVersion();
Statement getNameFromInvUuId = QueryBuilder.select().column("name").from("dox", "Action")
.where(eq("actioninvariantuuid", actionInvariantUuId))
.and(in("version", versionMapper.toUDT(activeVersion)));
ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_NAME_BY_ACTIONINVID,
- ActionConstants.TARGET_ENTITY_DB);
+ .actionLogPreProcessor(ActionSubOperation.GET_NAME_BY_ACTIONINVID, TARGET_ENTITY_DB);
ResultSet results = getSession().execute(getNameFromInvUuId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
+
if (!results.isExhausted()) {
String name = results.one().getString("name");
List<Version> versions = getVersionsByName(name);
@@ -165,96 +178,12 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
}
} catch (NoHostAvailableException noHostAvailableException) {
logGenericException(noHostAvailableException);
- throw new ActionException(ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
+ throw new ActionException(ACTION_INTERNAL_SERVER_ERR_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
}
log.debug("exit deleteAction");
}
-
- @Override
- public List<Action> getActionsByActionInvariantUuId(String actionInvariantUuId) {
- List<Action> actions = new ArrayList<>();
- try {
- log.debug(" entering getActionsByActionInvariantUUID with actionInvariantUUID= "
- + actionInvariantUuId);
- Set<Version> viewableVersions = new HashSet<>();
- VersionPredicate filter = new VersionPredicate();
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION,
- ActionConstants.TARGET_ENTITY_DB);
- VersionInfoEntity versionInfoEntity = versionInfoDao
- .get(new VersionInfoEntity(ActionConstants.ACTION_VERSIONABLE_TYPE, actionInvariantUuId));
- if (versionInfoEntity == null) {
- //Check for action in the Delete version info table
- VersionInfoDeletedEntity versionInfoDeletedEntity = versionInfoDeletedDao.get(
- new VersionInfoDeletedEntity(ActionConstants.ACTION_VERSIONABLE_TYPE,
- actionInvariantUuId));
- if (versionInfoDeletedEntity != null) {
- viewableVersions = versionInfoDeletedEntity.getViewableVersions();
- //Remove intermediate minor versions from viewable versions
- if (versionInfoDeletedEntity.getActiveVersion() != null) {
- filter.activeVersion = versionInfoDeletedEntity.getActiveVersion();
- filter.finalVersion = versionInfoDeletedEntity.getLatestFinalVersion();
- viewableVersions.removeIf(filter::isIntermediateMinorVersion);
- }
- }
- } else {
- viewableVersions = versionInfoEntity.getViewableVersions();
- //Remove intermediate minor versions from viewable versions
- if (versionInfoEntity.getActiveVersion() != null) {
- filter.activeVersion = versionInfoEntity.getActiveVersion();
- filter.finalVersion = versionInfoEntity.getLatestFinalVersion();
- viewableVersions.removeIf(filter::isIntermediateMinorVersion);
- }
- //Add candidate version if available
- if (versionInfoEntity.getCandidate() != null) {
- viewableVersions.add(versionInfoEntity.getCandidate().getVersion());
- }
- }
- MDC.put(ActionConstants.TARGET_ENTITY, ActionConstants.TARGET_ENTITY_DB);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
- log.metrics("");
-
- log.debug(
- "Found " + viewableVersions + " viewable version for action with actionInvariantUUID "
- + actionInvariantUuId);
-
- //Fetch action data for the viewable versions
- if (!viewableVersions.isEmpty()) {
- ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONINVID,
- ActionConstants.TARGET_ENTITY_DB);
- Result<ActionEntity> result =
- accessor.getActionsByInvId(actionInvariantUuId, viewableVersions);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
- log.metrics("");
- if (result != null) {
- actions
- .addAll(result.all().stream().map(ActionEntity::toDto).collect(Collectors.toList()));
- }
- }
- } catch (NoHostAvailableException noHostAvailableException) {
- logGenericException(noHostAvailableException);
- throw new ActionException(ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
- }
- log.debug(
- " exit getActionsByActionInvariantUUID with actionInvariantUUID= " + actionInvariantUuId);
- return actions;
- }
-
- private void logGenericException(Exception exception) {
- ActionUtil
- .actionLogPostProcessor(StatusCode.ERROR, ActionErrorConstants.ACTION_QUERY_FAILURE_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG, false);
- log.metrics("");
- ActionUtil.actionErrorLogProcessor(
- CategoryLogLevel.FATAL, ActionErrorConstants.ACTION_QUERY_FAILURE_CODE,
- ActionErrorConstants.ACTION_QUERY_FAILURE_MSG);
- log.error(exception.getMessage());
- }
-
-
@Override
public List<Action> getFilteredActions(String filterType, String filterId) {
List<Action> actions = new ArrayList<>();
@@ -263,48 +192,45 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
" entering getFilteredActions By filterType = " + filterType + " With value = " + filterId);
try {
switch (filterType) {
- case ActionConstants.FILTER_TYPE_VENDOR:
+ case FILTER_TYPE_VENDOR:
ActionUtil
.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_VENDOR,
- ActionConstants.TARGET_ENTITY_DB);
+ TARGET_ENTITY_DB);
result = accessor.getActionsByVendor(filterId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
log.metrics("");
break;
- case ActionConstants.FILTER_TYPE_CATEGORY:
+ case FILTER_TYPE_CATEGORY:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_CATEGORY,
- ActionConstants.TARGET_ENTITY_DB);
+ TARGET_ENTITY_DB);
result = accessor.getActionsByCategory(filterId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
log.metrics("");
break;
- case ActionConstants.FILTER_TYPE_MODEL:
+ case FILTER_TYPE_MODEL:
ActionUtil
.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_MODEL,
- ActionConstants.TARGET_ENTITY_DB);
+ TARGET_ENTITY_DB);
result = accessor.getActionsByModel(filterId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
log.metrics("");
break;
- case ActionConstants.FILTER_TYPE_ECOMP_COMPONENT:
+ case FILTER_TYPE_OPEN_ECOMP_COMPONENT:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_COMPONENT,
- ActionConstants.TARGET_ENTITY_DB);
- result = accessor.getActionsByEcompComponent(filterId);
+ TARGET_ENTITY_DB);
+ result = accessor.getActionsByOpenEcompComponent(filterId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
log.metrics("");
break;
- case ActionConstants.FILTER_TYPE_NONE:
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ALL_ACTIONS,
- ActionConstants.TARGET_ENTITY_DB);
+ case FILTER_TYPE_NONE:
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ALL_ACTIONS, TARGET_ENTITY_DB);
result = accessor.getAllActions();
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
log.metrics("");
break;
- case ActionConstants.FILTER_TYPE_NAME:
+ case FILTER_TYPE_NAME:
ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ACTIONINVID_BY_NAME,
- ActionConstants.TARGET_ENTITY_DB);
+ .actionLogPreProcessor(ActionSubOperation.GET_ACTIONINVID_BY_NAME, TARGET_ENTITY_DB);
result = accessor.getInvIdByName(filterId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
log.metrics("");
@@ -328,69 +254,135 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
" exit getFilteredActions By filterType = " + filterType + " With value = " + filterId);
} catch (NoHostAvailableException noHostAvailableException) {
logGenericException(noHostAvailableException);
- throw new ActionException(ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
+ throw new ActionException(ACTION_INTERNAL_SERVER_ERR_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
}
return actions;
}
@Override
- public List<EcompComponent> getEcompComponents() {
- List<EcompComponent> ecompComponents = new ArrayList<>();
- Result<EcompComponentEntity> result;
+ public Action getActionsByActionUuId(String actionUuId) {
try {
- log.debug(" entering getECOMPComponents ");
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ECOMP_COMPONENTS_ENTITY,
- ActionConstants.TARGET_ENTITY_DB);
- result = accessor.getEcompComponents();
+ log.debug(" entering getActionsByActionUuId with actionUUID= " + actionUuId);
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONUUID,
+ TARGET_ENTITY_DB);
+ Result<ActionEntity> result = accessor.actionInvariantUuId(actionUuId);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
if (result != null) {
- ecompComponents.addAll(
- result.all().stream().map(EcompComponentEntity::toDto).collect(Collectors.toList()));
+ log.debug(" exit getActionsByActionUuId with actionUUID= " + actionUuId);
+ ActionEntity entity = result.one();
+ if (entity != null) {
+ return entity.toDto();
+ }
}
+ log.debug(" exit getActionsByActionUuId with actionUUID= " + actionUuId);
+ return null;
} catch (NoHostAvailableException noHostAvailableException) {
logGenericException(noHostAvailableException);
- throw new ActionException(ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
+ throw new ActionException(ACTION_INTERNAL_SERVER_ERR_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
}
- log.debug(" exit getECOMPComponents ");
- return ecompComponents;
}
@Override
- public Action getActionsByActionUuId(String uniqueId) {
+ public List<OpenEcompComponent> getOpenEcompComponents() {
+ List<OpenEcompComponent> openEcompComponents = new ArrayList<>();
+ Result<OpenEcompComponentEntity> result;
try {
- log.debug(" entering getActionsByActionUUID with actionUUID= " + uniqueId);
+ log.debug(" entering getOpenEcompComponents ");
ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONUUID,
- ActionConstants.TARGET_ENTITY_DB);
- Result<ActionEntity> result = accessor.actionInvariantUuId(uniqueId);
+ .actionLogPreProcessor(ActionSubOperation.GET_OPEN_ECOMP_COMPONENTS_ENTITY, TARGET_ENTITY_DB);
+ result = accessor.getOpenEcompComponents();
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
if (result != null) {
- log.debug(" exit getActionsByActionUUID with actionUUID= " + uniqueId);
- ActionEntity entity = result.one();
- if (entity != null) {
- return entity.toDto();
+ openEcompComponents.addAll(
+ result.all().stream().map(OpenEcompComponentEntity::toDto).collect(Collectors.toList()));
+ }
+ } catch (NoHostAvailableException noHostAvailableException) {
+ logGenericException(noHostAvailableException);
+ throw new ActionException(ACTION_INTERNAL_SERVER_ERR_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
+ }
+ log.debug(" exit getOpenEcompComponents ");
+ return openEcompComponents;
+ }
+
+ @Override
+ public List<Action> getActionsByActionInvariantUuId(String actionInvariantUuId) {
+ List<Action> actions = new ArrayList<Action>();
+ try {
+ log.debug(" entering getActionsByActionInvariantUuId with actionInvariantUuId= "
+ + actionInvariantUuId);
+ Set<Version> viewableVersions = new HashSet<>();
+ VersionPredicate filter = new VersionPredicate();
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_DB);
+ VersionInfoEntity versionInfoEntity = versionInfoDao
+ .get(new VersionInfoEntity(ActionConstants.ACTION_VERSIONABLE_TYPE, actionInvariantUuId));
+ if (versionInfoEntity == null) {
+ //Check for action in the Delete version info table
+ VersionInfoDeletedEntity versionInfoDeletedEntity = versionInfoDeletedDao.get(
+ new VersionInfoDeletedEntity(ActionConstants.ACTION_VERSIONABLE_TYPE,
+ actionInvariantUuId));
+ if (versionInfoDeletedEntity != null) {
+ viewableVersions = versionInfoDeletedEntity.getViewableVersions();
+ //Remove intermediate minor versions from viewable versions
+ if (versionInfoDeletedEntity.getActiveVersion() != null) {
+ filter.activeVersion = versionInfoDeletedEntity.getActiveVersion();
+ filter.finalVersion = versionInfoDeletedEntity.getLatestFinalVersion();
+ viewableVersions.removeIf(filter::isIntermediateMinorVersion);
+ }
+ }
+ } else {
+ viewableVersions = versionInfoEntity.getViewableVersions();
+ //Remove intermediate minor versions from viewable versions
+ if (versionInfoEntity.getActiveVersion() != null) {
+ filter.activeVersion = versionInfoEntity.getActiveVersion();
+ filter.finalVersion = versionInfoEntity.getLatestFinalVersion();
+ viewableVersions.removeIf(filter::isIntermediateMinorVersion);
+ }
+ //Add candidate version if available
+ if (versionInfoEntity.getCandidate() != null) {
+ viewableVersions.add(versionInfoEntity.getCandidate().getVersion());
+ }
+ }
+
+ MDC.put(TARGET_ENTITY, TARGET_ENTITY_DB);
+ ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ log.metrics("");
+
+ log.debug(
+ "Found " + viewableVersions + " viewable version for action with actionInvariantUuId "
+ + actionInvariantUuId);
+
+ //Fetch action data for the viewable versions
+ if (!viewableVersions.isEmpty()) {
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONINVID,
+ TARGET_ENTITY_DB);
+ Result<ActionEntity> result =
+ accessor.getActionsByInvId(actionInvariantUuId, viewableVersions);
+ ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ log.metrics("");
+ if (result != null) {
+ actions
+ .addAll(result.all().stream().map(ActionEntity::toDto).collect(Collectors.toList()));
}
}
- log.debug(" exit getActionsByActionUUID with actionUUID= " + uniqueId);
- return null;
} catch (NoHostAvailableException noHostAvailableException) {
logGenericException(noHostAvailableException);
- throw new ActionException(ActionErrorConstants.ACTION_INTERNAL_SERVER_ERR_CODE,
- ActionErrorConstants.ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
+ throw new ActionException(ACTION_INTERNAL_SERVER_ERR_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
}
+ log.debug(
+ " exit getActionsByActionInvariantUuId with actionInvariantUuId= " + actionInvariantUuId);
+ return actions;
}
@Override
public Action getLockedAction(String actionInvariantUuId, String user) throws ActionException {
- log.debug(" entering getLockedAction with actionInvariantUUID= " + actionInvariantUuId);
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION,
- ActionConstants.TARGET_ENTITY_DB);
+ log.debug(" entering getLockedAction with actionInvariantUuId= " + actionInvariantUuId);
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_DB);
Action action = null;
VersionInfoEntity versionInfoEntity = versionInfoDao
.get(new VersionInfoEntity(ActionConstants.ACTION_VERSIONABLE_TYPE, actionInvariantUuId));
@@ -403,7 +395,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
Set<Version> versions = new HashSet<>();
versions.add(versionInfoEntity.getCandidate().getVersion());
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONINVID,
- ActionConstants.TARGET_ENTITY_DB);
+ TARGET_ENTITY_DB);
Result<ActionEntity> result = accessor.getActionsByInvId(actionInvariantUuId, versions);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
@@ -412,22 +404,27 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
action = actionEntity != null ? actionEntity.toDto() : null;
}
} else {
- throw new ActionException(ActionErrorConstants.ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER_CODE,
- String
- .format(ActionErrorConstants.ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER, actionUser));
+ throw new ActionException(ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER_CODE,
+ String.format(ACTION_ARTIFACT_DEL_LOCKED_OTHER_USER, actionUser));
}
} else {
- throw new ActionException(
- ActionErrorConstants.ACTION_NOT_LOCKED_CODE,
- ActionErrorConstants.ACTION_NOT_LOCKED_MSG);
+ throw new ActionException(ACTION_NOT_LOCKED_CODE, ACTION_NOT_LOCKED_MSG);
}
} else {
- throw new ActionException(ActionErrorConstants.ACTION_ENTITY_NOT_EXIST_CODE,
- ActionErrorConstants.ACTION_ENTITY_NOT_EXIST);
+ throw new ActionException(ACTION_ENTITY_NOT_EXIST_CODE, ACTION_ENTITY_NOT_EXIST);
}
return action;
}
+ private void logGenericException(Exception exception) {
+ ActionUtil.actionLogPostProcessor(StatusCode.ERROR, ACTION_QUERY_FAILURE_CODE,
+ ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG, false);
+ log.metrics("");
+ ActionUtil.actionErrorLogProcessor(CategoryLogLevel.FATAL, ACTION_QUERY_FAILURE_CODE,
+ ACTION_QUERY_FAILURE_MSG);
+ log.error(exception.getMessage());
+ }
+
@Override
protected Mapper<ActionEntity> getMapper() {
return mapper;
@@ -445,19 +442,20 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
}
/**
- * param actionInvariantUuId. param versions.
+ *
+ * @param actionInvariantUUID.
+ * @param versions.
*/
private void updateActionStatusForDelete(String actionInvariantUuId, List<Version> versions) {
log.debug(
- "entering updateActionStatusForDelete with actionInvariantUUID = " + actionInvariantUuId
+ "entering updateActionStatusForDelete with actionInvariantUuId = " + actionInvariantUuId
+ " for versions " + versions);
List<UDTValue> versionUdt = new ArrayList<>();
+ for (Version v : versions) {
+ versionUdt.add(versionMapper.toUDT(v));
+ }
- versions.forEach(v -> versionMapper.toUDT(v));
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION_STATUS,
- ActionConstants.TARGET_ENTITY_DB);
-
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION_STATUS, TARGET_ENTITY_DB);
//Update the status column of action table
Statement updateStatusStatement =
QueryBuilder.update("dox", "Action").with(set("status", ActionStatus.Deleted.name()))
@@ -467,7 +465,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
log.metrics("");
//Update the status in the data field of action table
updateStatusInActionData(actionInvariantUuId, versions, ActionStatus.Deleted);
- log.debug("exit updateActionStatusForDelete with actionInvariantUUID = " + actionInvariantUuId
+ log.debug("exit updateActionStatusForDelete with actionInvariantUuId = " + actionInvariantUuId
+ " for versions " + versions);
}
@@ -480,13 +478,13 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
*/
private void updateStatusInActionData(String actionInvariantUuId, List<Version> versions,
ActionStatus status) {
- log.debug("entering updateStatusInActionData for actionInvariantUUID = " + actionInvariantUuId
- + " and status = " + status + " for versions " + versions);
+ log.debug("entering updateStatusInActionData for actionInvariantUuId = " + actionInvariantUuId
+ + " and status = " + status + " for versions " + versions);
for (Version v : versions) {
ActionEntity entity = this.get(new ActionEntity(actionInvariantUuId, v));
String currentData = entity.getData();
Map<String, Object> currentDataMap = JsonUtil.json2Object(currentData, LinkedHashMap.class);
- currentDataMap.put(ActionConstants.STATUS, status);
+ currentDataMap.put(STATUS, status);
String updatedActionData = JsonUtil.object2Json(currentDataMap);
entity.setData(updatedActionData);
this.updateAction(entity.toDto());
@@ -497,19 +495,18 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
/**
* Get list of all major and minor version values for a given action by action name.
*
- * @param name Name of the action
- * @return List of {@link Version} objects for the action
+ * @param name Name of the action.
+ * @return List of {@link Version} objects for the action.
*/
private List<Version> getVersionsByName(String name) {
log.debug("entering getVersionsByName for Action Name = " + name);
- ActionUtil
- .actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION,
- ActionConstants.TARGET_ENTITY_DB);
+ ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_DB);
Statement statement =
QueryBuilder.select().column("version").from("dox", "Action").where(eq("name", name));
ResultSet results = getSession().execute(statement);
ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
log.metrics("");
+
List<Version> versionList = new ArrayList<>();
for (Row row : results) {
Version version = versionMapper.fromUDT((UDTValue) row.getObject("version"));
@@ -532,7 +529,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
Result<ActionEntity> getActionsByModel(String resource);
@Query("SELECT * FROM Action where supportedComponents CONTAINS ?")
- Result<ActionEntity> getActionsByEcompComponent(String resource);
+ Result<ActionEntity> getActionsByOpenEcompComponent(String resource);
@Query("SELECT * FROM Action where vendor_list CONTAINS ?")
Result<ActionEntity> getActionsByVendor(String vendor);
@@ -543,8 +540,8 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
@Query("SELECT actionInvariantUuId FROM Action where name = ? limit 1")
Result<ActionEntity> getInvIdByName(String name);
- @Query("SELECT * FROM ECOMPComponent")
- Result<EcompComponentEntity> getEcompComponents();
+ @Query("SELECT * FROM EcompComponent")
+ Result<OpenEcompComponentEntity> getOpenEcompComponents();
@Query("SELECT * FROM Action where actionUUID = ?")
Result<ActionEntity> actionInvariantUuId(String actionUuId);
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-action-lib/pom.xml
index e4a4140477..62932ef0a7 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/pom.xml
@@ -3,6 +3,9 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-lib</artifactId>
+ <packaging>pom</packaging>
<parent>
<groupId>org.openecomp.sdc</groupId>
@@ -10,11 +13,6 @@
<version>1.1.0-SNAPSHOT</version>
</parent>
- <artifactId>openecomp-sdc-action-lib</artifactId>
- <packaging>pom</packaging>
-
-
-
<modules>
<module>openecomp-sdc-action-api</module>
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-action-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..447437fe33
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/pom.xml.versionsBackup
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-action-lib</artifactId>
+ <packaging>pom</packaging>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+ <modules>
+ <module>openecomp-sdc-action-api</module>
+ <module>openecomp-sdc-action-core</module>
+ </modules>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/pom.xml b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/pom.xml
new file mode 100644
index 0000000000..17b53a217c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/pom.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>openecomp-sdc-activity-log-api</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-activity-log-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDao.java b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDao.java
new file mode 100644
index 0000000000..867404b835
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDao.java
@@ -0,0 +1,31 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.activitylog.dao;
+
+import org.openecomp.core.dao.BaseDao;
+import org.openecomp.sdc.activitylog.dao.type.ActivityLogEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Collection;
+
+public interface ActivityLogDao extends BaseDao<ActivityLogEntity> {
+ Collection<ActivityLogEntity> getActivityLogListForItem(String itemId, String versionId);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDaoFactory.java b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDaoFactory.java
new file mode 100644
index 0000000000..103b253d89
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/ActivityLogDaoFactory.java
@@ -0,0 +1,30 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.openecomp.sdc.activitylog.dao;
+
+import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+
+
+public abstract class ActivityLogDaoFactory extends AbstractComponentFactory<ActivityLogDao> {
+ public static ActivityLogDaoFactory getInstance() {
+ return AbstractFactory.getInstance(ActivityLogDaoFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/type/ActivityLogEntity.java b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/type/ActivityLogEntity.java
new file mode 100644
index 0000000000..8f57a56d73
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/java/org/openecomp/sdc/activitylog/dao/type/ActivityLogEntity.java
@@ -0,0 +1,126 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.activitylog.dao.type;
+
+import com.datastax.driver.mapping.annotations.*;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Calendar;
+import java.util.Date;
+
+@Table(keyspace = "dox", name = "activity_log")
+public class ActivityLogEntity {
+ @PartitionKey
+ @Column(name = "item_id")
+ private String itemId;
+ @ClusteringColumn(value = 1)
+ @Column(name = "version_id")
+ private String versionId;
+ @ClusteringColumn
+ @Column(name = "activity_id")
+ private String id;
+ private String type;
+ private String user;
+ private Date timestamp;
+ private boolean success;
+ private String message;
+ private String comment;
+
+ public ActivityLogEntity() {}
+
+ public ActivityLogEntity(String itemId, String versionId, String type, String user, boolean success, String message, String comment) {
+ this.itemId = itemId;
+ this.versionId = versionId;
+ this.type = type;
+ this.user = user;
+ this.success = success;
+ this.message = message;
+ this.comment = comment;
+ Calendar now = Calendar.getInstance();
+ this.timestamp = now.getTime();
+ }
+
+ public String getItemId() { return itemId; }
+
+ public void setItemId(String itemId) {
+ this.itemId = itemId;
+ }
+
+ public String getVersionId() {
+ return versionId;
+ }
+
+ public void setVersionId(String versionId) {
+ this.versionId = versionId;
+ }
+
+ public String getId() { return id; }
+
+ public void setId(String id) { this.id = id; }
+
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ public String getUser() {
+ return user;
+ }
+
+ public void setUser(String user) {
+ this.user = user;
+ }
+
+ public Date getTimestamp() {
+ return timestamp;
+ }
+
+ public void setTimestamp(Date timestamp) {
+ this.timestamp = timestamp;
+ }
+
+ public boolean isSuccess() {
+ return success;
+ }
+
+ public void setSuccess(boolean success) {
+ this.success = success;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public String getComment() {
+ return comment;
+ }
+
+ public void setComment(String comment) {
+ this.comment = comment;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/resources/factoryConfiguration.json
new file mode 100644
index 0000000000..a3c3588330
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-api/src/main/resources/factoryConfiguration.json
@@ -0,0 +1,3 @@
+{
+ "org.openecomp.sdc.activitylog.dao.ActivityLogDaoFactory": "org.openecomp.sdc.activitylog.dao.impl.ActivityLogDaoFactoryImpl"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/pom.xml b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/pom.xml
new file mode 100644
index 0000000000..814928e57a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/pom.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>openecomp-sdc-activity-log-core</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-activity-log-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-activity-log-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoCassandraImpl.java
new file mode 100644
index 0000000000..fb277b73d2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoCassandraImpl.java
@@ -0,0 +1,87 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.openecomp.sdc.activitylog.dao.impl;
+
+import com.datastax.driver.mapping.Mapper;
+import com.datastax.driver.mapping.Result;
+import com.datastax.driver.mapping.annotations.Accessor;
+import com.datastax.driver.mapping.annotations.Query;
+import org.openecomp.core.dao.impl.CassandraBaseDao;
+import org.openecomp.core.nosqldb.api.NoSqlDb;
+import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
+import org.openecomp.sdc.activitylog.dao.ActivityLogDao;
+import org.openecomp.sdc.activitylog.dao.type.ActivityLogEntity;
+
+import java.util.Collection;
+import java.util.Date;
+
+public class ActivityLogDaoCassandraImpl extends CassandraBaseDao<ActivityLogEntity> implements ActivityLogDao{
+ private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
+ private static final Mapper<ActivityLogEntity> mapper =
+ noSqlDb.getMappingManager().mapper(ActivityLogEntity.class);
+ private static final ActivityLogAccessor accessor =
+ noSqlDb.getMappingManager().createAccessor(ActivityLogAccessor.class);
+
+ @Override
+ protected Mapper<ActivityLogEntity> getMapper() {
+ return mapper;
+ }
+
+ @Override
+ protected Object[] getKeys(ActivityLogEntity entity) {
+ return new Object[0];
+ }
+
+ @Override
+ public Collection<ActivityLogEntity> list(ActivityLogEntity entity) {
+ return accessor.list().all();
+ }
+
+ @Override
+ public void create(ActivityLogEntity activityLogEntity) {
+ accessor.create(activityLogEntity.getItemId(), activityLogEntity.getVersionId(),activityLogEntity.getId(),
+ activityLogEntity.getType(),activityLogEntity.getUser(), activityLogEntity.getTimestamp(), activityLogEntity.isSuccess(),
+ activityLogEntity.getMessage(), activityLogEntity.getComment());
+ }
+
+ @Override
+ public Collection<ActivityLogEntity> getActivityLogListForItem(String itemId, String versionId) {
+ return accessor.getForItem(itemId, versionId).all();
+ }
+
+
+ @Accessor
+ interface ActivityLogAccessor {
+ @Query("select item_id, version_id, activity_id, type, user, timestamp, success, message, comment"
+ + " from activity_log")
+ Result<ActivityLogEntity> list();
+
+ @Query("select item_id, version_id, activity_id, type, user, timestamp, success, message, comment"
+ + " from activity_log where item_id=? and version_id=?")
+ Result<ActivityLogEntity> getForItem(String itemId, String versionId);
+
+ @Query("insert into activity_log " +
+ " (item_id, version_id, activity_id, type, user, timestamp, success, message, comment)" +
+ " values (?,?,?,?,?,?,?,?,?)")
+ Result<ActivityLogEntity> create(String itemId, String versionId, String id, String type,
+ String user, Date timestamp, boolean success,
+ String message, String comment);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoFactoryImpl.java
new file mode 100644
index 0000000000..bcc0d74c97
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/openecomp-sdc-activity-log-core/src/main/java/org/openecomp/sdc/activitylog/dao/impl/ActivityLogDaoFactoryImpl.java
@@ -0,0 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.openecomp.sdc.activitylog.dao.impl;
+
+import org.openecomp.sdc.activitylog.dao.ActivityLogDao;
+import org.openecomp.sdc.activitylog.dao.ActivityLogDaoFactory;
+
+public class ActivityLogDaoFactoryImpl extends ActivityLogDaoFactory {
+ private static final ActivityLogDao INSTANCE = new ActivityLogDaoCassandraImpl();
+
+ @Override
+ public ActivityLogDao createInterface() {
+ return INSTANCE;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-activity-log-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-activity-log-lib/pom.xml
new file mode 100644
index 0000000000..48909a697f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-activity-log-lib/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>openecomp-sdc-activity-log-lib</artifactId>
+ <packaging>pom</packaging>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-activity-log-api</module>
+ <module>openecomp-sdc-activity-log-core</module>
+ </modules>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml
index ba4bb19b94..b713a10721 100644
--- a/openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml
@@ -2,37 +2,41 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-datatypes-lib</name>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <artifactId>openecomp-sdc-datatypes-lib</artifactId>
- <name>openecomp-sdc-datatypes-lib</name>
-
<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
- <version>4.1</version>
+ <version>${commons.collections.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
- <version>1.9.13</version>
+ <version>${jackson.mapper.version}</version>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
- <version>1.5.3</version>
+ <version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>${commons.lang.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ </dependency>
</dependencies>
-
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..9e29da0ee6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-datatypes-lib/pom.xml.versionsBackup
@@ -0,0 +1,39 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-datatypes-lib</name>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-collections4</artifactId>
+ <version>4.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.jackson</groupId>
+ <artifactId>jackson-mapper-asl</artifactId>
+ <version>1.9.13</version>
+ </dependency>
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ <version>1.5.3</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ <version>2.5</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidatorConfiguration.java b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/configuration/ImplementationConfiguration.java
index 12feb641ae..89917fc73f 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidatorConfiguration.java
+++ b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/configuration/ImplementationConfiguration.java
@@ -18,27 +18,31 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.validation.utils;
+package org.openecomp.sdc.datatypes.configuration;
-public class ValidatorConfiguration {
- private String name;
- private boolean enableInd = true;
- private String implementationClass;
+import org.openecomp.config.api.Config;
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
+import java.util.Map;
- public boolean isEnableInd() {
- return enableInd;
+/**
+ * @author shiria
+ * @since November 30, 2016.
+ */
+@Config
+public class ImplementationConfiguration {
+ @Config(key = "enable")
+ Boolean enable = true;
+ @Config(key = "implementationClass")
+ String implementationClass;
+ @Config(key = "properties")
+ Map<String, Object> properties;
+
+ public Boolean isEnable() {
+ return enable;
}
- public void setEnableInd(boolean enableInd) {
- this.enableInd = enableInd;
+ public void setEnable(Boolean enable) {
+ this.enable = enable;
}
public String getImplementationClass() {
@@ -48,4 +52,12 @@ public class ValidatorConfiguration {
public void setImplementationClass(String implementationClass) {
this.implementationClass = implementationClass;
}
+
+ public Map<String, Object> getProperties() {
+ return properties;
+ }
+
+ public void setProperties(Map<String, Object> properties) {
+ this.properties = properties;
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorLevel.java b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorLevel.java
index 44b0733388..5477a35d8f 100644
--- a/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorLevel.java
+++ b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorLevel.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.datatypes.error;
+
public enum ErrorLevel {
ERROR, WARNING, INFO
}
diff --git a/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorMessage.java b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorMessage.java
index 29a443c1a0..3ec5f8436b 100644
--- a/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorMessage.java
+++ b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/error/ErrorMessage.java
@@ -26,6 +26,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+
public class ErrorMessage {
private final ErrorLevel level;
private final String message;
@@ -44,6 +45,13 @@ public class ErrorMessage {
}
@Override
+ public int hashCode() {
+ int result = level.hashCode();
+ result = 31 * result + message.hashCode();
+ return result;
+ }
+
+ @Override
public boolean equals(Object object) {
if (this == object) {
return true;
@@ -58,13 +66,6 @@ public class ErrorMessage {
}
- @Override
- public int hashCode() {
- int result = level.hashCode();
- result = 31 * result + message.hashCode();
- return result;
- }
-
public static class ErrorMessageUtil {
/**
diff --git a/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/model/heat/ForbiddenHeatResourceTypes.java b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/model/heat/ForbiddenHeatResourceTypes.java
index a8df6bbbe4..f0310ba68a 100644
--- a/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/model/heat/ForbiddenHeatResourceTypes.java
+++ b/openecomp-be/lib/openecomp-sdc-datatypes-lib/src/main/java/org/openecomp/sdc/datatypes/model/heat/ForbiddenHeatResourceTypes.java
@@ -24,6 +24,7 @@ import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
+
public enum ForbiddenHeatResourceTypes {
HEAT_FLOATING_IP_TYPE("OS::Neutron::FloatingIP");
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml
index b8a0500901..55a5fa1b05 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml
@@ -1,8 +1,10 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
-
+ <name>openecomp-sdc-enrichment-api</name>
+ <artifactId>openecomp-sdc-enrichment-api</artifactId>
<parent>
<groupId>org.openecomp.sdc</groupId>
@@ -11,20 +13,16 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-enrichment-api</name>
- <artifactId>openecomp-sdc-enrichment-api</artifactId>
-
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
- <version>1.5.3</version>
+ <version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
@@ -34,7 +32,7 @@
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
+ <version>${logback.version}</version>
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
@@ -43,4 +41,4 @@
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..493e4256a3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/pom.xml.versionsBackup
@@ -0,0 +1,45 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-enrichment-api</name>
+ <artifactId>openecomp-sdc-enrichment-api</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ <version>1.5.3</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/api/EnrichmentManager.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/api/EnrichmentManager.java
index 2ddde6001b..1185527c03 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/api/EnrichmentManager.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/api/EnrichmentManager.java
@@ -27,17 +27,20 @@ import org.openecomp.sdc.versioning.dao.types.Version;
import java.util.List;
import java.util.Map;
-public interface EnrichmentManager<T> {
+public interface
+
+EnrichmentManager<T> {
- Map<String, List<ErrorMessage>> enrich();
- void addEntityInput(String type, EntityInfo info);
+ Map<String, List<ErrorMessage>> enrich();
- void initInput(String key, Version version);
+ void addEntityInfo(String entityKey, EntityInfo entityInfo);
- void addModel(T model);
+ void init(String key, Version version);
T getModel();
+ void setModel(T model);
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/factory/EnrichmentManagerFactory.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/factory/EnrichmentManagerFactory.java
index 9199aeff6c..9d72a88fa9 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/factory/EnrichmentManagerFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/factory/EnrichmentManagerFactory.java
@@ -24,6 +24,9 @@ import org.openecomp.core.enrichment.api.EnrichmentManager;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
+
+
+
public abstract class EnrichmentManagerFactory extends AbstractComponentFactory<EnrichmentManager> {
public static EnrichmentManagerFactory getInstance() {
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/heatextend/PropertyTypeExt.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ArtifactCategory.java
index f92d674070..555debfd34 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/heatextend/PropertyTypeExt.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ArtifactCategory.java
@@ -18,28 +18,23 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model.heatextend;
+package org.openecomp.core.enrichment.types;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
-/**
- * The enum Property type ext.
- */
-public enum PropertyTypeExt {
- /**
- * Json property type ext.
- */
- JSON("json");
+public enum ArtifactCategory {
- private static final Map<String, PropertyTypeExt> mMap =
+ INFORMATIONAL("Informational"),
+ DEPLOYMENT("Deployment");
+
+ private static final Map<String, ArtifactCategory> mMap =
Collections.unmodifiableMap(initializeMapping());
private String displayName;
- PropertyTypeExt(String displayName) {
-
+ ArtifactCategory(String displayName) {
this.displayName = displayName;
}
@@ -48,24 +43,21 @@ public enum PropertyTypeExt {
*
* @return the map
*/
- public static Map<String, PropertyTypeExt> initializeMapping() {
- Map<String, PropertyTypeExt> typeMap = new HashMap<String, PropertyTypeExt>();
- for (PropertyTypeExt v : PropertyTypeExt.values()) {
+ public static Map<String, ArtifactCategory> initializeMapping() {
+ Map<String, ArtifactCategory> typeMap = new HashMap<>();
+ for (ArtifactCategory v : ArtifactCategory.values()) {
typeMap.put(v.displayName, v);
}
return typeMap;
}
/**
- * Gets property type by display name.
+ * Gets artifact type by display name.
*
* @param displayName the display name
- * @return the property type by display name
+ * @return the artifact type by display name
*/
- public static PropertyTypeExt getPropertyTypeByDisplayName(String displayName) {
- if (mMap == null) {
- initializeMapping();
- }
+ public static ArtifactCategory getArtifactTypeByDisplayName(String displayName) {
if (mMap.containsKey(displayName)) {
return mMap.get(displayName);
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/InterfaceDefinition.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ArtifactType.java
index cf09510083..48805d7ca5 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/InterfaceDefinition.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ArtifactType.java
@@ -18,7 +18,13 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.core.enrichment.types;
+
+public enum ArtifactType {
+ SNMP_POLL,
+ SNMP_TRAP;
+
-public class InterfaceDefinition {
}
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerInfo.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerMetric.java
index 71c1ff5cec..ff75fba780 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerInfo.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerMetric.java
@@ -20,7 +20,7 @@
package org.openecomp.core.enrichment.types;
-public class CeilometerInfo {
+public class CeilometerMetric {
private String name;
private String type;
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentCeilometerInfo.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerMetrics.java
index a0c1be51e9..f213986bdf 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentCeilometerInfo.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/CeilometerMetrics.java
@@ -22,15 +22,15 @@ package org.openecomp.core.enrichment.types;
import java.util.List;
-public class ComponentCeilometerInfo {
+public class CeilometerMetrics {
- private List<CeilometerInfo> ceilometerInfoList;
+ private List<CeilometerMetric> ceilometerMetricList;
- public List<CeilometerInfo> getCeilometerInfoList() {
- return ceilometerInfoList;
+ public List<CeilometerMetric> getCeilometerMetricList() {
+ return ceilometerMetricList;
}
- public void setCeilometerInfoList(List<CeilometerInfo> ceilometerInfoList) {
- this.ceilometerInfoList = ceilometerInfoList;
+ public void setCeilometerMetricList(List<CeilometerMetric> ceilometerMetricList) {
+ this.ceilometerMetricList = ceilometerMetricList;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentProcessInfo.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentProcessInfo.java
new file mode 100644
index 0000000000..5bc23da3de
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/ComponentProcessInfo.java
@@ -0,0 +1,26 @@
+package org.openecomp.core.enrichment.types;
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+
+public class ComponentProcessInfo {
+ private String name;
+ private byte[] content;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public InputStream getContent() {
+ return new ByteArrayInputStream(this.content);
+ }
+
+ public void setContent(byte[] content) {
+ this.content = content;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/InformationArtifactFolderNames.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/InformationArtifactFolderNames.java
new file mode 100644
index 0000000000..68f0db3524
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-api/src/main/java/org/openecomp/core/enrichment/types/InformationArtifactFolderNames.java
@@ -0,0 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.core.enrichment.types;
+
+/**
+ * Created by Talio on 12/5/2016.
+ */
+public enum InformationArtifactFolderNames {
+ Guide;
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml
index a6970e5a3d..869a6bb6a3 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml
@@ -1,9 +1,10 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
-
-
+ <name>openecomp-sdc-enrichment-core</name>
+ <artifactId>openecomp-sdc-enrichment-core</artifactId>
<parent>
<groupId>org.openecomp.sdc</groupId>
@@ -12,23 +13,11 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-enrichment-core</name>
- <artifactId>openecomp-sdc-enrichment-core</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
-
-
- <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
-
+ <version>${logback.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
@@ -45,11 +34,11 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>RELEASE</version>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -73,12 +62,7 @@
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
- </dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <version>${mockito.all.version}</version>
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
@@ -86,5 +70,23 @@
<version>${project.version}</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
-</project> \ No newline at end of file
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..d8f63f10e9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/pom.xml.versionsBackup
@@ -0,0 +1,94 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-enrichment-core</name>
+ <artifactId>openecomp-sdc-enrichment-core</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-enrichment-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-enrichment-impl</artifactId>
+ <version>${project.version}</version>
+ <!--scope>runtime</scope-->
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-impl</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/enrichmentartifacts/EnrichmentArtifactsServiceImpl.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/enrichmentartifacts/EnrichmentArtifactsServiceImpl.java
deleted file mode 100644
index 2b7fef1e6b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/enrichmentartifacts/EnrichmentArtifactsServiceImpl.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.enrichment.enrichmentartifacts;
-
-import org.openecomp.core.enrichment.enrichmentartifacts.EnrichmentArtifactsService;
-import org.openecomp.core.model.dao.EnrichedServiceModelDao;
-import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
-import org.openecomp.core.model.types.ServiceArtifact;
-import org.openecomp.core.model.types.ServiceElement;
-import org.openecomp.core.utilities.file.FileContentHandler;
-import org.openecomp.sdc.common.utils.AsdcCommon;
-import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
-import org.openecomp.sdc.versioning.dao.types.Version;
-
-import java.util.List;
-
-public class EnrichmentArtifactsServiceImpl implements EnrichmentArtifactsService {
- EnrichedServiceModelDao<ToscaServiceModel, ServiceElement> enrichedServiceModelDao =
- EnrichedServiceModelDaoFactory.getInstance().createInterface();
-
- @Override
- public FileContentHandler addMibs(String vspId, Version version) {
- FileContentHandler externalArtifacts = new FileContentHandler();
- List<ServiceArtifact> mibsList = enrichedServiceModelDao.getExternalArtifacts(vspId, version);
- addMibsToFileContentHandler(mibsList, externalArtifacts);
-
- return externalArtifacts;
- }
-
-
- private void addMibsToFileContentHandler(List<ServiceArtifact> mibsList,
- FileContentHandler externalArtifacts) {
- for (ServiceArtifact serviceArtifact : mibsList) {
- String filename = serviceArtifact.getName();
- externalArtifacts.addFile(filename, serviceArtifact.getContent());
- }
- }
-
-
- private boolean isFileArtifact(String filename) {
- return !filename.contains(AsdcCommon.HEAT_META) && !filename.contains(AsdcCommon.MANIFEST_NAME);
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImpl.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImpl.java
index ef29108402..06b157b92c 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImpl.java
@@ -22,62 +22,62 @@ package org.openecomp.sdc.enrichment.impl;
import org.openecomp.core.enrichment.api.EnrichmentManager;
import org.openecomp.core.enrichment.types.EntityInfo;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
import org.openecomp.sdc.enrichment.EnrichmentInfo;
import org.openecomp.sdc.enrichment.factory.EnricherHandlerFactory;
import org.openecomp.sdc.enrichment.inter.Enricher;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.versioning.dao.types.Version;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class EnrichmentManagerImpl implements EnrichmentManager<ToscaServiceModel> {
- private static Logger logger = LoggerFactory.getLogger(EnrichmentManagerImpl.class);
+ private static Logger logger = (Logger) LoggerFactory.getLogger(EnrichmentManagerImpl.class);
- private EnrichmentInfo input = null;
+ private EnrichmentInfo data = null;
private ToscaServiceModel model;
@Override
public Map<String, List<ErrorMessage>> enrich() {
+ Map<String, List<ErrorMessage>> enrichErrors = new HashMap<>();
List<Enricher> enricherList =
EnricherHandlerFactory.getInstance().createInterface().getEnrichers();
for (Enricher enricher : enricherList) {
- enricher.setInput(input);
+ enricher.setData(data);
enricher.setModel(model);
- enricher.enrich();
+ enrichErrors.putAll(enricher.enrich());
}
- return null;
+ return enrichErrors;
}
@Override
- public void addEntityInput(String type, EntityInfo info) {
- this.input.addEntityInfo(type, info);
+ public void addEntityInfo(String entityKey, EntityInfo entityInfo) {
+ this.data.addEntityInfo(entityKey, entityInfo);
}
@Override
- public void initInput(String key, Version version) {
- input = new EnrichmentInfo();
- input.setKey(key);
- input.setVersion(version);
+ public void init(String key, Version version) {
+ data = new EnrichmentInfo();
+ data.setKey(key);
+ data.setVersion(version);
}
@Override
- public void addModel(ToscaServiceModel model) {
-
- this.model = model;
+ public ToscaServiceModel getModel() {
+ return this.model;
}
-
@Override
- public ToscaServiceModel getModel() {
- return this.model;
+ public void setModel(ToscaServiceModel model) {
+ this.model = model;
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImplTest.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImplTest.java
index 6bc5a0e864..dfdbaef896 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImplTest.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/java/org/openecomp/sdc/enrichment/impl/EnrichmentManagerImplTest.java
@@ -1,30 +1,55 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.enrichment.impl;
-import org.openecomp.sdc.enrichment.impl.tosca.ComponentInfo;
+import static org.junit.Assert.assertEquals;
+
+import org.openecomp.core.enrichment.api.EnrichmentManager;
+import org.openecomp.core.enrichment.factory.EnrichmentManagerFactory;
+import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
import org.openecomp.sdc.versioning.dao.types.Version;
-import org.openecomp.core.enrichment.api.EnrichmentManager;
-import org.openecomp.core.enrichment.factory.EnrichmentManagerFactory;
-
-import org.openecomp.core.enrichment.types.CeilometerInfo;
-import org.openecomp.core.enrichment.types.ComponentCeilometerInfo;
-import org.openecomp.core.utilities.file.FileUtils;
import org.testng.Assert;
import org.testng.annotations.Test;
-import java.io.*;
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
import java.net.URL;
import java.nio.file.NotDirectoryException;
-import java.util.*;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
-import static org.junit.Assert.assertEquals;
-
public class EnrichmentManagerImplTest {
@@ -88,100 +113,15 @@ public class EnrichmentManagerImplTest {
}
}
-// @Test
+ @Test
public void testEnrichmentManagerImpl() throws Exception {
Assert.assertTrue(
EnrichmentManagerFactory.getInstance().createInterface() instanceof EnrichmentManagerImpl);
}
-// @Test
- public void testEnrichModel() throws Exception {
- ToscaServiceModel toscaServiceModel =
- loadToscaServiceModel("/extractServiceComposition/onlyComponents/",
- "/extractServiceComposition/toscaGlobalServiceTemplates/", "OnlyComponentsST.yaml");
- EnrichmentManager enrichmentManager = EnrichmentManagerFactory.getInstance().createInterface();
- enrichmentManager.initInput("vsp_enrich", new Version(0, 1));
- enrichmentManager.addModel(toscaServiceModel);
-
- String[] componentNames = new String[]{"org.openecomp.resource.vfc.nodes.heat.pcrf_psm",
- "org.openecomp.resource.vfc.nodes.heat.pcm"};
- ComponentInfo componentInfo = new ComponentInfo();
-
- CeilometerInfo ceilometerInfo;
- ComponentCeilometerInfo componentCeilometerInfo = new ComponentCeilometerInfo();
- componentCeilometerInfo.setCeilometerInfoList(new ArrayList<>());
- componentInfo.setCeilometerInfo(componentCeilometerInfo);
-
- for (String componentName : componentNames) {
- ceilometerInfo =
- getCeilometerInfo("instance", "Gauge", "instance", "compute", "Existence of instance");
- componentInfo.getCeilometerInfo().getCeilometerInfoList().add(ceilometerInfo);
- ceilometerInfo = getCeilometerInfo("memory", "Gauge", "MB", "compute",
- "Volume of RAM allocated to the instance");
- componentInfo.getCeilometerInfo().getCeilometerInfoList().add(ceilometerInfo);
- ceilometerInfo = getCeilometerInfo("cpu", "Cumulative", "ns", "compute", "CPU time used");
- componentInfo.getCeilometerInfo().getCeilometerInfoList().add(ceilometerInfo);
- enrichmentManager.addEntityInput(componentName, componentInfo);
- }
-
- enrichmentManager.enrich();
-
- File csrFile = getToscaModelAsFile(toscaServiceModel);
- compareActualAndExpected(csrFile);
-
- }
-
-// @Test
- public void testAllEnrichModel() throws Exception {
- ToscaServiceModel toscaServiceModel = loadToscaServiceModel("/extractServiceComposition/all/",
- "/extractServiceComposition/toscaGlobalServiceTemplates/", "OnlyComponentsST.yaml");
- EnrichmentManager enrichmentManager = EnrichmentManagerFactory.getInstance().createInterface();
- enrichmentManager.initInput("vsp_enrich", new Version(0, 1));
- enrichmentManager.addModel(toscaServiceModel);
-
- String[] componentNames = new String[]{"org.openecomp.resource.vfc.nodes.heat.pcrf_psm",
- "org.openecomp.resource.vfc.nodes.heat.pcm"};
- ComponentInfo componentInfo = new ComponentInfo();
-
- CeilometerInfo ceilometerInfo;
- ComponentCeilometerInfo componentCeilometerInfo = new ComponentCeilometerInfo();
- componentCeilometerInfo.setCeilometerInfoList(new ArrayList<>());
- componentInfo.setCeilometerInfo(componentCeilometerInfo);
-
- for (String componentName : componentNames) {
- ceilometerInfo =
- getCeilometerInfo("instance", "Gauge", "instance", "compute", "Existence of instance");
- componentInfo.getCeilometerInfo().getCeilometerInfoList().add(ceilometerInfo);
- ceilometerInfo = getCeilometerInfo("memory", "Gauge", "MB", "compute",
- "Volume of RAM allocated to the instance");
- componentInfo.getCeilometerInfo().getCeilometerInfoList().add(ceilometerInfo);
- ceilometerInfo = getCeilometerInfo("cpu", "Cumulative", "ns", "compute", "CPU time used");
- componentInfo.getCeilometerInfo().getCeilometerInfoList().add(ceilometerInfo);
- enrichmentManager.addEntityInput(componentName, componentInfo);
- }
-
- enrichmentManager.enrich();
-
- File csrFile = getToscaModelAsFile(toscaServiceModel);
- compareActualAndExpected(csrFile);
-
- }
-
- private CeilometerInfo getCeilometerInfo(String name, String type, String unit, String category,
- String description) {
- CeilometerInfo ceilometerInfo = new CeilometerInfo();
- ceilometerInfo.setName(name);
- ceilometerInfo.setType(type);
- ceilometerInfo.setUnit(unit);
- ceilometerInfo.setCategory(category);
- ceilometerInfo.setDescription(description);
- return ceilometerInfo;
- }
-
private File getToscaModelAsFile(ToscaServiceModel toscaServiceModel) throws IOException {
- URL inputFilesUrl =
- EnrichmentManagerImplTest.class.getResource("/extractServiceComposition/onlyComponents");
+ URL inputFilesUrl = EnrichmentManagerImplTest.class.getResource("/mock/enrich/input");
String path = inputFilesUrl.getPath();
@@ -198,16 +138,16 @@ public class EnrichmentManagerImplTest {
return file;
}
- protected void compareActualAndExpected(File actualFile) throws IOException {
+ protected void compareActualAndExpected(File actualFile, String expectedOutputPath)
+ throws IOException {
- URL url = EnrichmentManagerImplTest.class
- .getResource("/extractServiceComposition/onlyComponents/expectedOutput");
+ URL url = EnrichmentManagerImplTest.class.getResource(expectedOutputPath);
Set<String> expectedResultFileNameSet = new HashSet<>();
Map<String, byte[]> expectedResultMap = new HashMap<>();
String path = url.getPath();
File pathFile = new File(path);
File[] files = pathFile.listFiles();
- org.junit.Assert.assertNotNull("manifest files is empty", files);
+ org.junit.Assert.assertNotNull("model is empty", files);
for (File expectedFile : files) {
expectedResultFileNameSet.add(expectedFile.getName());
try (FileInputStream input = new FileInputStream(expectedFile)) {
@@ -242,4 +182,4 @@ public class EnrichmentManagerImplTest {
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST.yaml
deleted file mode 100644
index 9ec1aa2a8d..0000000000
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST.yaml
+++ /dev/null
@@ -1,550 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: Main
-imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- org.openecomp.resource.vfc.nodes.heat.pcm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
-topology_template:
- inputs:
- Internal2_name:
- label: Internal2_name
- hidden: false
- immutable: false
- type: string
- description: Internal2_name
- Internal1_shared:
- label: Internal1_shared
- hidden: false
- immutable: false
- type: string
- description: Internal1_shared
- FSB1_volume_name:
- label: FSB1_volume
- hidden: false
- immutable: false
- type: string
- description: FSB1_volume_1
- jsa_cidr:
- label: jsa_cidr
- hidden: false
- immutable: false
- type: string
- description: jsa_cidr
- default: 107.243.7.128/26
- availabilityzone_name:
- label: availabilityzone_name
- hidden: false
- immutable: false
- type: string
- description: availabilityzone_name
- fsb1-name:
- label: FSB1_name
- hidden: false
- immutable: false
- type: string
- description: FSB1_name
- pcm_image_name:
- label: pcm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcm_image_name
- Internal2_external:
- label: Internal2_external
- hidden: false
- immutable: false
- type: string
- description: Internal2_external
- Internal2_forwarding_mode:
- label: Internal2_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal2_forwarding_mode
- pcrf_psm_flavor_name:
- label: pcrf_psm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_flavor_name
- pcrf_psm_image_name:
- label: pcrf_psm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_image_name
- FSB_1_image:
- label: MME_FSB1
- hidden: false
- immutable: false
- type: string
- description: MME_FSB1_15B-CP04-r5a01
- volume_size:
- label: volume size
- hidden: false
- immutable: false
- type: float
- description: my volume size 320GB
- fsb1-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal2_shared:
- label: Internal2_shared
- hidden: false
- immutable: false
- type: string
- description: Internal2_shared
- pcm_server_name:
- label: pcm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcm_server_name
- Internal1_net_name:
- label: Internal1_net_name
- hidden: false
- immutable: false
- type: string
- description: Internal1_net_name
- oam_net_name:
- label: oam_net_name
- hidden: false
- immutable: false
- type: string
- description: oam_net_name
- fsb1-flavor:
- label: FSB1_flavor
- hidden: false
- immutable: false
- type: string
- description: FSB1_flavor
- fsb1-Internal2-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- volume_type:
- label: volume type
- hidden: false
- immutable: false
- type: string
- description: volume type Gold
- fsb1-zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- fsb_zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- jsa_net_name:
- label: jsa_net_name
- hidden: false
- immutable: false
- type: string
- description: jsa_net_name
- default: jsa_log_net_0
- pcrf_psm_server_name:
- label: pcrf_psm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_server_name
- pcm_flavor_name:
- label: pcm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcm_flavor_name
- oam_net_id:
- label: oam_net_id
- hidden: false
- immutable: false
- type: string
- description: oam_net_id
- fsb2-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal1_forwarding_mode:
- label: Internal1_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal1_forwarding_mode
- pcrf_cps_net_name:
- label: pcrf_cps_net_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_cps_net_name
- cps_net_name:
- label: cps_net_name
- hidden: false
- immutable: false
- type: string
- description: cps_net_name
- pcrf_security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- Internal1_external:
- label: Internal1_external
- hidden: false
- immutable: false
- type: string
- description: Internal1_external
- node_templates:
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- metadata:
- write_files:
- - path: /etc/sysconfig/network-scripts/ifcfg-eth0
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet
- params:
- $dev: eth0
- $netmask:
- get_input: cps_net_mask
- $ip:
- get_input: cps_net_ip
- - path: /etc/sysconfig/network-scripts/ifcfg-eth1
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet-gw
- params:
- $dev: eth1
- $netmask:
- get_input: oam_net_mask
- $gateway:
- get_input: oam_net_gw
- $ip:
- get_input: oam_net_ip
- name:
- get_input: fsb1-name
- artifacts:
- nimbus-ethernet-gw:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet-gw
- nimbus-ethernet:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet
- groups:
- ep-jsa_net:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/ep-jsa_net.yaml
- description: |
- Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
- members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST_01.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST_01.yaml
deleted file mode 100644
index 9ec1aa2a8d..0000000000
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/OnlyComponentsST_01.yaml
+++ /dev/null
@@ -1,550 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: Main
-imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- org.openecomp.resource.vfc.nodes.heat.pcm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
-topology_template:
- inputs:
- Internal2_name:
- label: Internal2_name
- hidden: false
- immutable: false
- type: string
- description: Internal2_name
- Internal1_shared:
- label: Internal1_shared
- hidden: false
- immutable: false
- type: string
- description: Internal1_shared
- FSB1_volume_name:
- label: FSB1_volume
- hidden: false
- immutable: false
- type: string
- description: FSB1_volume_1
- jsa_cidr:
- label: jsa_cidr
- hidden: false
- immutable: false
- type: string
- description: jsa_cidr
- default: 107.243.7.128/26
- availabilityzone_name:
- label: availabilityzone_name
- hidden: false
- immutable: false
- type: string
- description: availabilityzone_name
- fsb1-name:
- label: FSB1_name
- hidden: false
- immutable: false
- type: string
- description: FSB1_name
- pcm_image_name:
- label: pcm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcm_image_name
- Internal2_external:
- label: Internal2_external
- hidden: false
- immutable: false
- type: string
- description: Internal2_external
- Internal2_forwarding_mode:
- label: Internal2_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal2_forwarding_mode
- pcrf_psm_flavor_name:
- label: pcrf_psm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_flavor_name
- pcrf_psm_image_name:
- label: pcrf_psm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_image_name
- FSB_1_image:
- label: MME_FSB1
- hidden: false
- immutable: false
- type: string
- description: MME_FSB1_15B-CP04-r5a01
- volume_size:
- label: volume size
- hidden: false
- immutable: false
- type: float
- description: my volume size 320GB
- fsb1-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal2_shared:
- label: Internal2_shared
- hidden: false
- immutable: false
- type: string
- description: Internal2_shared
- pcm_server_name:
- label: pcm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcm_server_name
- Internal1_net_name:
- label: Internal1_net_name
- hidden: false
- immutable: false
- type: string
- description: Internal1_net_name
- oam_net_name:
- label: oam_net_name
- hidden: false
- immutable: false
- type: string
- description: oam_net_name
- fsb1-flavor:
- label: FSB1_flavor
- hidden: false
- immutable: false
- type: string
- description: FSB1_flavor
- fsb1-Internal2-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- volume_type:
- label: volume type
- hidden: false
- immutable: false
- type: string
- description: volume type Gold
- fsb1-zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- fsb_zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- jsa_net_name:
- label: jsa_net_name
- hidden: false
- immutable: false
- type: string
- description: jsa_net_name
- default: jsa_log_net_0
- pcrf_psm_server_name:
- label: pcrf_psm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_server_name
- pcm_flavor_name:
- label: pcm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcm_flavor_name
- oam_net_id:
- label: oam_net_id
- hidden: false
- immutable: false
- type: string
- description: oam_net_id
- fsb2-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal1_forwarding_mode:
- label: Internal1_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal1_forwarding_mode
- pcrf_cps_net_name:
- label: pcrf_cps_net_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_cps_net_name
- cps_net_name:
- label: cps_net_name
- hidden: false
- immutable: false
- type: string
- description: cps_net_name
- pcrf_security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- Internal1_external:
- label: Internal1_external
- hidden: false
- immutable: false
- type: string
- description: Internal1_external
- node_templates:
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- metadata:
- write_files:
- - path: /etc/sysconfig/network-scripts/ifcfg-eth0
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet
- params:
- $dev: eth0
- $netmask:
- get_input: cps_net_mask
- $ip:
- get_input: cps_net_ip
- - path: /etc/sysconfig/network-scripts/ifcfg-eth1
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet-gw
- params:
- $dev: eth1
- $netmask:
- get_input: oam_net_mask
- $gateway:
- get_input: oam_net_gw
- $ip:
- get_input: oam_net_ip
- name:
- get_input: fsb1-name
- artifacts:
- nimbus-ethernet-gw:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet-gw
- nimbus-ethernet:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet
- groups:
- ep-jsa_net:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/ep-jsa_net.yaml
- description: |
- Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
- members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST.yaml
deleted file mode 100644
index 9ec1aa2a8d..0000000000
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST.yaml
+++ /dev/null
@@ -1,550 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: Main
-imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- org.openecomp.resource.vfc.nodes.heat.pcm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
-topology_template:
- inputs:
- Internal2_name:
- label: Internal2_name
- hidden: false
- immutable: false
- type: string
- description: Internal2_name
- Internal1_shared:
- label: Internal1_shared
- hidden: false
- immutable: false
- type: string
- description: Internal1_shared
- FSB1_volume_name:
- label: FSB1_volume
- hidden: false
- immutable: false
- type: string
- description: FSB1_volume_1
- jsa_cidr:
- label: jsa_cidr
- hidden: false
- immutable: false
- type: string
- description: jsa_cidr
- default: 107.243.7.128/26
- availabilityzone_name:
- label: availabilityzone_name
- hidden: false
- immutable: false
- type: string
- description: availabilityzone_name
- fsb1-name:
- label: FSB1_name
- hidden: false
- immutable: false
- type: string
- description: FSB1_name
- pcm_image_name:
- label: pcm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcm_image_name
- Internal2_external:
- label: Internal2_external
- hidden: false
- immutable: false
- type: string
- description: Internal2_external
- Internal2_forwarding_mode:
- label: Internal2_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal2_forwarding_mode
- pcrf_psm_flavor_name:
- label: pcrf_psm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_flavor_name
- pcrf_psm_image_name:
- label: pcrf_psm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_image_name
- FSB_1_image:
- label: MME_FSB1
- hidden: false
- immutable: false
- type: string
- description: MME_FSB1_15B-CP04-r5a01
- volume_size:
- label: volume size
- hidden: false
- immutable: false
- type: float
- description: my volume size 320GB
- fsb1-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal2_shared:
- label: Internal2_shared
- hidden: false
- immutable: false
- type: string
- description: Internal2_shared
- pcm_server_name:
- label: pcm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcm_server_name
- Internal1_net_name:
- label: Internal1_net_name
- hidden: false
- immutable: false
- type: string
- description: Internal1_net_name
- oam_net_name:
- label: oam_net_name
- hidden: false
- immutable: false
- type: string
- description: oam_net_name
- fsb1-flavor:
- label: FSB1_flavor
- hidden: false
- immutable: false
- type: string
- description: FSB1_flavor
- fsb1-Internal2-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- volume_type:
- label: volume type
- hidden: false
- immutable: false
- type: string
- description: volume type Gold
- fsb1-zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- fsb_zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- jsa_net_name:
- label: jsa_net_name
- hidden: false
- immutable: false
- type: string
- description: jsa_net_name
- default: jsa_log_net_0
- pcrf_psm_server_name:
- label: pcrf_psm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_server_name
- pcm_flavor_name:
- label: pcm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcm_flavor_name
- oam_net_id:
- label: oam_net_id
- hidden: false
- immutable: false
- type: string
- description: oam_net_id
- fsb2-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal1_forwarding_mode:
- label: Internal1_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal1_forwarding_mode
- pcrf_cps_net_name:
- label: pcrf_cps_net_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_cps_net_name
- cps_net_name:
- label: cps_net_name
- hidden: false
- immutable: false
- type: string
- description: cps_net_name
- pcrf_security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- Internal1_external:
- label: Internal1_external
- hidden: false
- immutable: false
- type: string
- description: Internal1_external
- node_templates:
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- metadata:
- write_files:
- - path: /etc/sysconfig/network-scripts/ifcfg-eth0
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet
- params:
- $dev: eth0
- $netmask:
- get_input: cps_net_mask
- $ip:
- get_input: cps_net_ip
- - path: /etc/sysconfig/network-scripts/ifcfg-eth1
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet-gw
- params:
- $dev: eth1
- $netmask:
- get_input: oam_net_mask
- $gateway:
- get_input: oam_net_gw
- $ip:
- get_input: oam_net_ip
- name:
- get_input: fsb1-name
- artifacts:
- nimbus-ethernet-gw:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet-gw
- nimbus-ethernet:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet
- groups:
- ep-jsa_net:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/ep-jsa_net.yaml
- description: |
- Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
- members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST_01.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST_01.yaml
deleted file mode 100644
index 9ec1aa2a8d..0000000000
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/expectedOutput/OnlyComponentsST_01.yaml
+++ /dev/null
@@ -1,550 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: Main
-imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- org.openecomp.resource.vfc.nodes.heat.pcm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- capabilities:
- instance:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Existence of instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: instance
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: instance
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- memory:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: Volume of RAM allocated to the instance
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: memory
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: MB
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Gauge
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
- cpu:
- type: org.openecomp.capabilities.metric.Ceilometer
- description: CPU time used
- properties:
- name:
- type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
- default: cpu
- status: SUPPORTED
- description:
- type: string
- description: Description of the metric
- required: false
- status: SUPPORTED
- unit:
- type: string
- description: Unit of the metric value
- required: true
- default: ns
- status: SUPPORTED
- type:
- type: string
- description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
- required: true
- default: Cumulative
- status: SUPPORTED
- category:
- type: string
- description: Category of the metric, for an example, compute, disk, network, storage and etc.
- required: false
- default: compute
- status: SUPPORTED
-topology_template:
- inputs:
- Internal2_name:
- label: Internal2_name
- hidden: false
- immutable: false
- type: string
- description: Internal2_name
- Internal1_shared:
- label: Internal1_shared
- hidden: false
- immutable: false
- type: string
- description: Internal1_shared
- FSB1_volume_name:
- label: FSB1_volume
- hidden: false
- immutable: false
- type: string
- description: FSB1_volume_1
- jsa_cidr:
- label: jsa_cidr
- hidden: false
- immutable: false
- type: string
- description: jsa_cidr
- default: 107.243.7.128/26
- availabilityzone_name:
- label: availabilityzone_name
- hidden: false
- immutable: false
- type: string
- description: availabilityzone_name
- fsb1-name:
- label: FSB1_name
- hidden: false
- immutable: false
- type: string
- description: FSB1_name
- pcm_image_name:
- label: pcm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcm_image_name
- Internal2_external:
- label: Internal2_external
- hidden: false
- immutable: false
- type: string
- description: Internal2_external
- Internal2_forwarding_mode:
- label: Internal2_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal2_forwarding_mode
- pcrf_psm_flavor_name:
- label: pcrf_psm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_flavor_name
- pcrf_psm_image_name:
- label: pcrf_psm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_image_name
- FSB_1_image:
- label: MME_FSB1
- hidden: false
- immutable: false
- type: string
- description: MME_FSB1_15B-CP04-r5a01
- volume_size:
- label: volume size
- hidden: false
- immutable: false
- type: float
- description: my volume size 320GB
- fsb1-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal2_shared:
- label: Internal2_shared
- hidden: false
- immutable: false
- type: string
- description: Internal2_shared
- pcm_server_name:
- label: pcm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcm_server_name
- Internal1_net_name:
- label: Internal1_net_name
- hidden: false
- immutable: false
- type: string
- description: Internal1_net_name
- oam_net_name:
- label: oam_net_name
- hidden: false
- immutable: false
- type: string
- description: oam_net_name
- fsb1-flavor:
- label: FSB1_flavor
- hidden: false
- immutable: false
- type: string
- description: FSB1_flavor
- fsb1-Internal2-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- volume_type:
- label: volume type
- hidden: false
- immutable: false
- type: string
- description: volume type Gold
- fsb1-zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- fsb_zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
- security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- jsa_net_name:
- label: jsa_net_name
- hidden: false
- immutable: false
- type: string
- description: jsa_net_name
- default: jsa_log_net_0
- pcrf_psm_server_name:
- label: pcrf_psm_server_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_psm_server_name
- pcm_flavor_name:
- label: pcm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcm_flavor_name
- oam_net_id:
- label: oam_net_id
- hidden: false
- immutable: false
- type: string
- description: oam_net_id
- fsb2-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
- Internal1_forwarding_mode:
- label: Internal1_forwarding_mode
- hidden: false
- immutable: false
- type: string
- description: Internal1_forwarding_mode
- pcrf_cps_net_name:
- label: pcrf_cps_net_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_cps_net_name
- cps_net_name:
- label: cps_net_name
- hidden: false
- immutable: false
- type: string
- description: cps_net_name
- pcrf_security_group_name:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: String
- Internal1_external:
- label: Internal1_external
- hidden: false
- immutable: false
- type: string
- description: Internal1_external
- node_templates:
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- metadata:
- write_files:
- - path: /etc/sysconfig/network-scripts/ifcfg-eth0
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet
- params:
- $dev: eth0
- $netmask:
- get_input: cps_net_mask
- $ip:
- get_input: cps_net_ip
- - path: /etc/sysconfig/network-scripts/ifcfg-eth1
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet-gw
- params:
- $dev: eth1
- $netmask:
- get_input: oam_net_mask
- $gateway:
- get_input: oam_net_gw
- $ip:
- get_input: oam_net_ip
- name:
- get_input: fsb1-name
- artifacts:
- nimbus-ethernet-gw:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet-gw
- nimbus-ethernet:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet
- groups:
- ep-jsa_net:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/ep-jsa_net.yaml
- description: |
- Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
- members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/logback.xml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/logback.xml
new file mode 100644
index 0000000000..03ce9d1243
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/logback.xml
@@ -0,0 +1,13 @@
+<!-- only one line, shut up logback ! -->
+<configuration>
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <Pattern>
+ %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
+ </Pattern>
+ </encoder>
+ </appender>
+ <root level="off">
+ <appender-ref ref="STDOUT" />
+ </root>
+</configuration> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/ComputeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/ComputeGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..2e5d468b31
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/ComputeGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,1202 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: ComputeGlobalTypes
+ template_version: 1.0.0
+description: Compute TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.Compute:
+ derived_from: tosca.nodes.Compute
+ capabilities:
+ disk.ephemeral.size:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: GB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.ephemeral.size
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Size of ephemeral disk
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: instance
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: instance
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Existence of instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ memory:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM allocated to the instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.iops:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: count/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.iops
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk iops
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu.delta:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ns
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu.delta
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: CPU time used since previous datapoint
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Delta
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.capacity:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.capacity
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk that the instance can see
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.write.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.latency:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.latency
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk latency
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The physical size in bytes of the image container on the host
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu_util:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: '%'
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu_util
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average CPU utilization
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.allocation:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.allocation
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk per device occupied by the instance on the host machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.write.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.write.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.latency:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.latency
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk latency per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ns
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: CPU time used
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.write.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.write.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.read.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.root.size:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: GB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.root.size
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Size of root disk
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.write.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ vcpus:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: vcpu
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: vcpus
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of virtual CPUs allocated to the instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.iops:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: count/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.iops
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk iops per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The physical size in bytes of the image container on the host per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.write.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.allocation:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.allocation
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk occupied by the instance on the host machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.read.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.read.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ memory.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM used by the instance from the amount of its allocated memory
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.capacity:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.capacity
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk per device that the instance can see
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ memory.resident:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory.resident
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM used by the instance on the physical machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.write.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/OnlyComponentsST.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/MainServiceTemplate.yaml
index 54f39e4219..c5c552143b 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/OnlyComponentsST.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/MainServiceTemplate.yaml
@@ -2,23 +2,23 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
@@ -245,7 +245,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
@@ -259,7 +259,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
@@ -273,7 +273,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/PortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/PortGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..bbaa13873e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/expectedOutput/PortGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,284 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: PortGlobalTypes
+ template_version: 1.0.0
+description: Port TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.cp.nodes.network.Port:
+ derived_from: tosca.nodes.network.Port
+ capabilities:
+ network.incoming.packets.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: packet/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.incoming.packets.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of incoming packets
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED
+ network.outgoing.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.outgoing.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of outgoing bytes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED
+ network.outgoing.packets.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: packet/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.outgoing.packets.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of outgoing packets
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED
+ network.outpoing.packets:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: packet
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.outpoing.packets
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of outgoing packets
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED
+ network.incoming.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.incoming.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of incoming bytes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED
+ network.incoming.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.incoming.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of incoming bytes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED
+ network.outgoing.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.outgoing.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of outgoing bytes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED
+ network.incoming.packets:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: packet
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.incoming.packets
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of incoming packets
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/OnlyComponentsST_01.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/input/MainServiceTemplate.yaml
index 54f39e4219..c5c552143b 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/OnlyComponentsST_01.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/enrich/input/MainServiceTemplate.yaml
@@ -2,23 +2,23 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
@@ -245,7 +245,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
@@ -259,7 +259,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
@@ -273,7 +273,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/AbstractSubstituteGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml
index f94194186f..224e9b746e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/AbstractSubstituteGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml
@@ -4,10 +4,10 @@ metadata:
template_version: 1.0.0
description: Abstract Substitute Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
- org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
+ org.openecomp.datatypes.heat.substitution.SubstitutionFilter:
derived_from: tosca.datatypes.Root
description: Substitution Filter
properties:
@@ -16,14 +16,14 @@ data_types:
description: Substitute Service Template
required: true
status: SUPPORTED
- index_value:
- type: integer
- description: Index value of the substitution service template runtime instance
+ index_variable:
+ type: string
+ description: Index variable
required: false
- default: 0
+ default: '%index%'
status: SUPPORTED
constraints:
- - greater_or_equal: 0
+ - min_length: 3
count:
type: string
description: Count
@@ -42,7 +42,7 @@ data_types:
required: false
default: true
status: SUPPORTED
- org.openecomp.datatypes.heat.substitution.SubstitutionFilter:
+ org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
derived_from: tosca.datatypes.Root
description: Substitution Filter
properties:
@@ -51,14 +51,14 @@ data_types:
description: Substitute Service Template
required: true
status: SUPPORTED
- index_variable:
- type: string
- description: Index variable
+ index_value:
+ type: integer
+ description: Index value of the substitution service template runtime instance
required: false
- default: '%index%'
+ default: 0
status: SUPPORTED
constraints:
- - min_length: 3
+ - greater_or_equal: 0
count:
type: string
description: Count
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/CinderVolumeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml
index 03add7648e..c72ecd31df 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/CinderVolumeGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Cinder Volume TOSCA Global Types
relationship_types:
- org.openecomp.relationships.heat.cinder.VolumeAttachesTo:
+ org.openecomp.relationships.VolumeAttachesTo:
derived_from: tosca.relationships.AttachesTo
description: This type represents an attachment relationship for associating volume
properties:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/CommonGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/CommonGlobalTypesServiceTemplate.yaml
index 4feb78f371..eee8a96129 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/CommonGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/CommonGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: TOSCA Global Types
imports:
- NativeTypesServiceTemplate:
+- NativeTypesServiceTemplate:
file: NativeTypesServiceTemplateServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.network.AddressPair:
@@ -21,41 +21,23 @@ data_types:
description: IP address
required: false
status: SUPPORTED
- org.openecomp.datatypes.heat.network.AllocationPool:
- derived_from: tosca.datatypes.Root
- description: The start and end addresses for the allocation pool
- properties:
- start:
- type: string
- description: Start address for the allocation pool
- required: false
- status: SUPPORTED
- end:
- type: string
- description: End address for the allocation pool
- required: false
- status: SUPPORTED
- org.openecomp.datatypes.heat.network.contrail.AddressPair:
+ org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
derived_from: tosca.datatypes.Root
- description: Address Pair
+ description: static route
properties:
- address_mode:
+ prefix:
type: string
- description: Address mode active-active or active-standy
+ description: Route prefix
required: false
status: SUPPORTED
- constraints:
- - valid_values:
- - active-active
- - active-standby
- prefix:
+ next_hop:
type: string
- description: IP address prefix
+ description: Next hop
required: false
status: SUPPORTED
- mac_address:
+ next_hop_type:
type: string
- description: Mac address
+ description: Next hop type
required: false
status: SUPPORTED
org.openecomp.datatypes.heat.network.subnet.HostRoute:
@@ -72,25 +54,6 @@ data_types:
description: The next hop for the destination
required: false
status: SUPPORTED
- org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
- derived_from: tosca.datatypes.Root
- description: static route
- properties:
- prefix:
- type: string
- description: Route prefix
- required: false
- status: SUPPORTED
- next_hop:
- type: string
- description: Next hop
- required: false
- status: SUPPORTED
- next_hop_type:
- type: string
- description: Next hop type
- required: false
- status: SUPPORTED
org.openecomp.datatypes.heat.network.neutron.Subnet:
derived_from: tosca.datatypes.Root
description: A subnet represents an IP address block that can be used for assigning IP addresses to virtual instances
@@ -195,34 +158,44 @@ data_types:
description: The gateway IP address
required: false
status: SUPPORTED
-capability_types:
- org.openecomp.capabilities.metric.SnmpTrap:
- derived_from: org.openecomp.capabilities.Metric
- description: A node type that includes the Metric capability indicates that it can be monitored using snmp trap.
+ org.openecomp.datatypes.heat.network.AllocationPool:
+ derived_from: tosca.datatypes.Root
+ description: The start and end addresses for the allocation pool
properties:
- oid:
+ start:
type: string
- description: Object Id of the metric
- required: true
+ description: Start address for the allocation pool
+ required: false
status: SUPPORTED
- org.openecomp.capabilities.metric.SnmpPolling:
- derived_from: org.openecomp.capabilities.Metric
- description: A node type that includes the Metric capability indicates that it can be monitored using snmp polling.
- properties:
- oid:
+ end:
type: string
- description: Object Id of the metric
- required: true
+ description: End address for the allocation pool
+ required: false
status: SUPPORTED
- org.openecomp.capabilities.metric.Ceilometer:
- derived_from: org.openecomp.capabilities.Metric
- description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ org.openecomp.datatypes.heat.network.contrail.AddressPair:
+ derived_from: tosca.datatypes.Root
+ description: Address Pair
properties:
- name:
+ address_mode:
type: string
- description: Ceilometer metric type name to monitor. (The name ceilometer is using)
- required: true
+ description: Address mode active-active or active-standy
+ required: false
status: SUPPORTED
+ constraints:
+ - valid_values:
+ - active-active
+ - active-standby
+ prefix:
+ type: string
+ description: IP address prefix
+ required: false
+ status: SUPPORTED
+ mac_address:
+ type: string
+ description: Mac address
+ required: false
+ status: SUPPORTED
+capability_types:
org.openecomp.capabilities.Metric:
derived_from: tosca.capabilities.nfv.Metric
description: A node type that includes the Metric capability indicates that it can be monitored.
@@ -252,6 +225,33 @@ capability_types:
type: string
description: Runtime monitored value
status: SUPPORTED
+ org.openecomp.capabilities.metric.Ceilometer:
+ derived_from: org.openecomp.capabilities.Metric
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ status: SUPPORTED
+ org.openecomp.capabilities.metric.SnmpPolling:
+ derived_from: org.openecomp.capabilities.Metric
+ description: A node type that includes the Metric capability indicates that it can be monitored using snmp polling.
+ properties:
+ oid:
+ type: string
+ description: Object Id of the metric
+ required: true
+ status: SUPPORTED
+ org.openecomp.capabilities.metric.SnmpTrap:
+ derived_from: org.openecomp.capabilities.Metric
+ description: A node type that includes the Metric capability indicates that it can be monitored using snmp trap.
+ properties:
+ oid:
+ type: string
+ description: Object Id of the metric
+ required: true
+ status: SUPPORTED
relationship_types:
org.openecomp.relationships.AttachesTo:
derived_from: tosca.relationships.Root
@@ -272,6 +272,20 @@ group_types:
required: false
status: SUPPORTED
policy_types:
+ org.openecomp.policies.placement.valet.Diversity:
+ derived_from: tosca.policy.placement
+ description: Valet Diversity
+ properties:
+ level:
+ type: string
+ description: diversity
+ required: false
+ default: host
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - host
+ - rack
org.openecomp.policies.placement.valet.Exclusivity:
derived_from: tosca.policy.placement
description: Valet Exclusivity
@@ -286,13 +300,13 @@ policy_types:
- valid_values:
- host
- rack
- org.openecomp.policies.placement.valet.Diversity:
+ org.openecomp.policies.placement.valet.Affinity:
derived_from: tosca.policy.placement
- description: Valet Diversity
+ description: Valet Affinity
properties:
level:
type: string
- description: diversity
+ description: affinity
required: false
default: host
status: SUPPORTED
@@ -319,20 +333,6 @@ policy_types:
- host
- region
- compute
- org.openecomp.policies.placement.valet.Affinity:
- derived_from: tosca.policy.placement
- description: Valet Affinity
- properties:
- level:
- type: string
- description: affinity
- required: false
- default: host
- status: SUPPORTED
- constraints:
- - valid_values:
- - host
- - rack
org.openecomp.policies.placement.Antilocate:
derived_from: tosca.policy.placement
description: My placement policy for separation based upon container type value
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..19f5cbf25a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,11 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: ComputeGlobalTypes
+ template_version: 1.0.0
+description: Compute TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.Compute:
+ derived_from: tosca.nodes.Compute \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
index ae5430cf8d..e667df0742 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Contrail Abstract Substitute Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.network.contrail.InterfaceData:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailComputeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailComputeGlobalTypesServiceTemplate.yaml
index d6ad4f953c..dff50856cd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailComputeGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailComputeGlobalTypesServiceTemplate.yaml
@@ -4,11 +4,13 @@ metadata:
template_version: 1.0.0
description: Contrail Compute TOSCA Global Types
imports:
- common_definitions:
+- ComputeGlobalTypes:
+ file: ComputeGlobalTypesServiceTemplate.yaml
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.contrail.Compute:
- derived_from: tosca.nodes.Compute
+ derived_from: org.openecomp.resource.vfc.nodes.Compute
properties:
flavor:
type: string
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
index 1cbf435c53..8038479153 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Contrail Network Rule Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
@@ -21,26 +21,6 @@ data_types:
description: End port
required: false
status: SUPPORTED
- org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
- derived_from: tosca.datatypes.Root
- description: source and destination addresses
- properties:
- virtual_network:
- type: string
- description: Virtual network
- required: false
- status: SUPPORTED
- org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
- derived_from: tosca.datatypes.Root
- description: list of policy rules
- properties:
- policy_rule:
- type: list
- description: Contrail network rule
- required: false
- status: SUPPORTED
- entry_schema:
- type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
org.openecomp.datatypes.heat.contrail.network.rule.Rule:
derived_from: tosca.datatypes.Root
description: policy rule
@@ -88,6 +68,26 @@ data_types:
description: Direction
required: false
status: SUPPORTED
+ org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
+ derived_from: tosca.datatypes.Root
+ description: list of policy rules
+ properties:
+ policy_rule:
+ type: list
+ description: Contrail network rule
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
+ org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
+ derived_from: tosca.datatypes.Root
+ description: source and destination addresses
+ properties:
+ virtual_network:
+ type: string
+ description: Virtual network
+ required: false
+ status: SUPPORTED
node_types:
org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules:
derived_from: tosca.nodes.Root
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailPortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailPortGlobalTypesServiceTemplate.yaml
index 429ed9f6a1..06857ed1dd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailPortGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailPortGlobalTypesServiceTemplate.yaml
@@ -4,11 +4,13 @@ metadata:
template_version: 1.0.0
description: Contrail Port TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
+- PortGlobalTypes:
+ file: PortGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.cp.nodes.heat.network.contrail.Port:
- derived_from: tosca.nodes.network.Port
+ derived_from: org.openecomp.resource.cp.nodes.network.Port
properties:
static_routes:
type: list
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
index 0526291005..11e29bde76 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
@@ -4,48 +4,9 @@ metadata:
template_version: 1.0.0
description: Contrail V2 Network Rule Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
- org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
- derived_from: tosca.datatypes.Root
- description: destination port pairs
- properties:
- network_policy_entries_policy_rule_dst_ports_start_port:
- type: string
- description: Start port
- required: false
- status: SUPPORTED
- network_policy_entries_policy_rule_dst_ports_end_port:
- type: string
- description: End port
- required: false
- status: SUPPORTED
- org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
- derived_from: tosca.datatypes.Root
- description: list of policy rules
- properties:
- network_policy_entries_policy_rule:
- type: list
- description: Contrail network rule
- required: false
- status: SUPPORTED
- entry_schema:
- type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
- org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
- derived_from: tosca.datatypes.Root
- description: source port pairs
- properties:
- network_policy_entries_policy_rule_src_ports_start_port:
- type: string
- description: Start port
- required: false
- status: SUPPORTED
- network_policy_entries_policy_rule_src_ports_end_port:
- type: string
- description: End port
- required: false
- status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
derived_from: tosca.datatypes.Root
description: source addresses
@@ -64,22 +25,6 @@ data_types:
description: Destination addresses Virtual network
required: false
status: SUPPORTED
- org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
- derived_from: tosca.datatypes.Root
- description: Action List
- properties:
- network_policy_entries_policy_rule_action_list_simple_action:
- type: string
- description: Simple Action
- required: false
- status: SUPPORTED
- network_policy_entries_policy_rule_action_list_apply_service:
- type: list
- description: Apply Service
- required: false
- status: SUPPORTED
- entry_schema:
- type: string
org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
derived_from: tosca.datatypes.Root
description: policy rule
@@ -127,6 +72,61 @@ data_types:
description: Action list
required: false
status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
+ derived_from: tosca.datatypes.Root
+ description: Action List
+ properties:
+ network_policy_entries_policy_rule_action_list_simple_action:
+ type: string
+ description: Simple Action
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_action_list_apply_service:
+ type: list
+ description: Apply Service
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
+ derived_from: tosca.datatypes.Root
+ description: list of policy rules
+ properties:
+ network_policy_entries_policy_rule:
+ type: list
+ description: Contrail network rule
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
+ org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
+ derived_from: tosca.datatypes.Root
+ description: destination port pairs
+ properties:
+ network_policy_entries_policy_rule_dst_ports_start_port:
+ type: string
+ description: Start port
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_dst_ports_end_port:
+ type: string
+ description: End port
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
+ derived_from: tosca.datatypes.Root
+ description: source port pairs
+ properties:
+ network_policy_entries_policy_rule_src_ports_start_port:
+ type: string
+ description: Start port
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_src_ports_end_port:
+ type: string
+ description: End port
+ required: false
+ status: SUPPORTED
node_types:
org.openecomp.resource.vfc.rules.nodes.heat.network.contrailV2.NetworkRules:
derived_from: tosca.nodes.Root
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
index 5c4a58fb11..61c3af6e82 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
@@ -4,8 +4,10 @@ metadata:
template_version: 1.0.0
description: Contrail Virtual Machine Interface TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
+- PortGlobalTypes:
+ file: PortGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
derived_from: tosca.datatypes.Root
@@ -18,7 +20,7 @@ data_types:
status: SUPPORTED
node_types:
org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface:
- derived_from: tosca.nodes.network.Port
+ derived_from: org.openecomp.resource.cp.nodes.network.Port
properties:
virtual_machine_intefrace_mac_addresses:
type: list
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
index b950edf79f..dcf36dbafa 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
@@ -4,9 +4,34 @@ metadata:
template_version: 1.0.0
description: Contrail V2 Virtual Network Global Types
imports:
- common_definitions:
+- NetworkGlobalTypes:
+ file: NetworkGlobalTypesServiceTemplate.yaml
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
+ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
+ derived_from: tosca.datatypes.Root
+ description: network policy refs data
+ properties:
+ network_policy_refs_data_sequence:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
+ description: Network Policy ref data sequence
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
+ derived_from: tosca.datatypes.Root
+ description: network policy refs data sequence
+ properties:
+ network_policy_refs_data_sequence_major:
+ type: integer
+ description: Network Policy ref data sequence Major
+ required: false
+ status: SUPPORTED
+ network_policy_refs_data_sequence_minor:
+ type: integer
+ description: Network Policy ref data sequence Minor
+ required: false
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet:
derived_from: tosca.datatypes.Root
description: Network Ipam Ref Data Subnet
@@ -21,15 +46,6 @@ data_types:
description: Network ipam refs data ipam subnets ip prefix
required: false
status: SUPPORTED
- org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
- derived_from: tosca.datatypes.Root
- description: network policy refs data
- properties:
- network_policy_refs_data_sequence:
- type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
- description: Network Policy ref data sequence
- required: false
- status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
derived_from: tosca.datatypes.Root
description: Network Ipam Ref Data
@@ -55,23 +71,9 @@ data_types:
description: Network ipam refs data ipam subnets addr from start
required: false
status: SUPPORTED
- org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
- derived_from: tosca.datatypes.Root
- description: network policy refs data sequence
- properties:
- network_policy_refs_data_sequence_major:
- type: integer
- description: Network Policy ref data sequence Major
- required: false
- status: SUPPORTED
- network_policy_refs_data_sequence_minor:
- type: integer
- description: Network Policy ref data sequence Minor
- required: false
- status: SUPPORTED
node_types:
org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork:
- derived_from: tosca.nodes.network.Network
+ derived_from: org.openecomp.resource.vl.nodes.network.Network
properties:
network_ipam_refs_data:
type: list
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
index 05ab81741d..5583c68278 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
@@ -4,11 +4,13 @@ metadata:
template_version: 1.0.0
description: Contrail Virtual Network Global Types
imports:
- common_definitions:
+- NetworkGlobalTypes:
+ file: NetworkGlobalTypesServiceTemplate.yaml
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork:
- derived_from: tosca.nodes.network.Network
+ derived_from: org.openecomp.resource.vl.nodes.network.Network
properties:
shared:
type: string
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
index 08c47bc646..1ce3fc54ff 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,23 +2,23 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NativeTypesServiceTemplateServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NativeTypesServiceTemplateServiceTemplate.yaml
index 27c64039f1..ffadfc5af5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NativeTypesServiceTemplateServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NativeTypesServiceTemplateServiceTemplate.yaml
@@ -3,6 +3,9 @@ metadata:
template_name: NativeTypesServiceTemplate
template_version: 1.0.0
description: TOSCA Native Node Types
+capability_types:
+ tosca.capabilities.nfv.Metric:
+ derived_from: tosca.capabilities.Root
node_types:
tosca.nodes.Compute:
derived_from: tosca.nodes.Root
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NetworkGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NetworkGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..a3ae39ac1c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NetworkGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,11 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: NetworkGlobalTypes
+ template_version: 1.0.0
+description: Network TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vl.nodes.network.Network:
+ derived_from: tosca.nodes.network.Network \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml
index e80e2727c7..3dbb24b0f2 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml
@@ -4,11 +4,13 @@ metadata:
template_version: 1.0.0
description: Neutron Network TOSCA Global Types
imports:
- common_definitions:
+- NetworkGlobalTypes:
+ file: NetworkGlobalTypesServiceTemplate.yaml
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vl.nodes.heat.network.neutron.Net:
- derived_from: tosca.nodes.network.Network
+ derived_from: org.openecomp.resource.vl.nodes.network.Network
properties:
dhcp_agent_ids:
type: list
@@ -94,4 +96,4 @@ node_types:
type: tosca.capabilities.Attachment
occurrences:
- 1
- - UNBOUNDED
+ - 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/services/heattotosca/global_types/expectedoutputfiles/NeutronPortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml
index a337d6ed18..4613b70f74 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronPortGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml
@@ -4,8 +4,10 @@ metadata:
template_version: 1.0.0
description: Neutron Port TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
+- PortGlobalTypes:
+ file: PortGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.neutron.port.FixedIps:
derived_from: tosca.datatypes.Root
@@ -23,7 +25,7 @@ data_types:
status: SUPPORTED
node_types:
org.openecomp.resource.cp.nodes.heat.network.neutron.Port:
- derived_from: tosca.nodes.network.Port
+ derived_from: org.openecomp.resource.cp.nodes.network.Port
properties:
port_security_enabled:
type: boolean
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
index 1cbef86d8d..3e4a465689 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Neutron Security Rules TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NovaServerGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml
index 0ec79f5229..2a7069a932 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NovaServerGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,9 @@ metadata:
template_version: 1.0.0
description: Nova Server TOSCA Global Types
imports:
- common_definitions:
+- ComputeGlobalTypes:
+ file: ComputeGlobalTypesServiceTemplate.yaml
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
@@ -69,7 +71,7 @@ data_types:
status: SUPPORTED
node_types:
org.openecomp.resource.vfc.nodes.heat.nova.Server:
- derived_from: tosca.nodes.Compute
+ derived_from: org.openecomp.resource.vfc.nodes.Compute
properties:
admin_pass:
type: string
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/PortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/PortGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..09a6e33c9e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/mock/toscaGlobalServiceTemplates/PortGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,11 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: PortGlobalTypes
+ template_version: 1.0.0
+description: Port TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.cp.nodes.network.Port:
+ derived_from: tosca.nodes.network.Port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml
index adfa076b4c..1bc49fd4a3 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml
@@ -1,9 +1,10 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
-
-
+ <name>openecomp-sdc-enrichment-impl</name>
+ <artifactId>openecomp-sdc-enrichment-impl</artifactId>
<parent>
<groupId>org.openecomp.sdc</groupId>
@@ -12,23 +13,12 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-enrichment-impl</name>
- <artifactId>openecomp-sdc-enrichment-impl</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
- <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
-
+ <version>${logback.version}</version>
</dependency>
-
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
@@ -44,11 +34,11 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>RELEASE</version>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -63,7 +53,7 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-common-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -71,32 +61,64 @@
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
+ <version>${mockito.all.version}</version>
</dependency>
<dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
</dependency>
-
<dependency>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-heat-lib</artifactId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-config-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-tosca-lib</artifactId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
+ <scope>runtime</scope>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-translator-core</artifactId>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <scope>test</scope>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-impl</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-tosca-datatype</artifactId>
<version>${project.version}</version>
</dependency>
-
-
</dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <skipTests>true</skipTests>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml.versionsBackup
new file mode 100644
index 0000000000..65e84d88dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/pom.xml.versionsBackup
@@ -0,0 +1,127 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-enrichment-impl</name>
+ <artifactId>openecomp-sdc-enrichment-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+
+ </dependency>
+
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-enrichment-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-config-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <scope>runtime</scope>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <scope>test</scope>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-impl</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/EnrichmentInfo.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/EnrichmentInfo.java
index 17c4091a28..8f3798f764 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/EnrichmentInfo.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/EnrichmentInfo.java
@@ -28,36 +28,36 @@ import java.util.List;
import java.util.Map;
public class EnrichmentInfo {
- Map<String, List<Object>> additionalInfo = new HashMap<>();
- Map<String, EntityInfo> entityInfo = new HashMap<>(); //componentName,EntityInfo
- String key;
- Version version;
-
- public Map<String, List<Object>> getAdditionalInfo() {
- return additionalInfo;
- }
-
- public Map<String, EntityInfo> getEntityInfo() {
- return entityInfo;
- }
-
- public void addEntityInfo(String type, EntityInfo entityInfo) {
- this.entityInfo.put(type, entityInfo);
- }
-
- public String getKey() {
- return key;
- }
-
- public void setKey(String key) {
- this.key = key;
- }
-
- public Version getVersion() {
- return version;
- }
-
- public void setVersion(Version version) {
- this.version = version;
- }
+ Map<String, List<Object>> additionalInfo = new HashMap<>();
+ Map<String, EntityInfo> entitiesInfo = new HashMap<>();
+ String key;
+ Version version;
+
+ public Map<String, List<Object>> getAdditionalInfo() {
+ return additionalInfo;
+ }
+
+ public Map<String, EntityInfo> getEntityInfo() {
+ return entitiesInfo;
+ }
+
+ public void addEntityInfo(String entityKey, EntityInfo entityInfo) {
+ this.entitiesInfo.put(entityKey, entityInfo);
+ }
+
+ public String getKey() {
+ return key;
+ }
+
+ public void setKey(String key) {
+ this.key = key;
+ }
+
+ public Version getVersion() {
+ return version;
+ }
+
+ public void setVersion(Version version) {
+ this.version = version;
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/factory/EnricherHandlerFactory.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/factory/EnricherHandlerFactory.java
index 47821f6670..1167a6df9a 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/factory/EnricherHandlerFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/factory/EnricherHandlerFactory.java
@@ -20,13 +20,15 @@
package org.openecomp.sdc.enrichment.factory;
+
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
import org.openecomp.sdc.enrichment.inter.EnricherHandler;
+
public abstract class EnricherHandlerFactory extends AbstractComponentFactory<EnricherHandler> {
- public static EnricherHandlerFactory getInstance() {
- return AbstractFactory.getInstance(EnricherHandlerFactory.class);
- }
+ public static EnricherHandlerFactory getInstance() {
+ return AbstractFactory.getInstance(EnricherHandlerFactory.class);
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerFactoryImpl.java
index 00f5c91661..9898ef678a 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerFactoryImpl.java
@@ -26,8 +26,8 @@ import org.openecomp.sdc.enrichment.inter.EnricherHandler;
public class EnricherHandlerFactoryImpl extends EnricherHandlerFactory {
- @Override
- public EnricherHandler createInterface() {
- return new EnricherHandlerImpl();
- }
+ @Override
+ public EnricherHandler createInterface() {
+ return new EnricherHandlerImpl();
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerImpl.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerImpl.java
index e2e5b47d2a..a5eeece2b3 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/EnricherHandlerImpl.java
@@ -20,70 +20,26 @@
package org.openecomp.sdc.enrichment.impl;
-import org.openecomp.core.enrichment.types.EntityInfo;
-import org.openecomp.sdc.datatypes.error.ErrorMessage;
-import org.openecomp.sdc.datatypes.model.AsdcModel;
-import org.openecomp.sdc.enrichment.EnrichmentInfo;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.enrichment.impl.external.artifact.ExternalArtifactEnricher;
import org.openecomp.sdc.enrichment.impl.tosca.ToscaEnricher;
import org.openecomp.sdc.enrichment.inter.Enricher;
import org.openecomp.sdc.enrichment.inter.EnricherHandler;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
-/**
- * The type Enricher handler.
- */
public class EnricherHandlerImpl implements EnricherHandler {
- private static Logger logger = LoggerFactory.getLogger(EnricherHandlerImpl.class);
- private EnrichmentInfo input;
- private AsdcModel model;
-
- @Override
- public List<Enricher> getEnrichers() {
- List<Enricher> enricherList = new ArrayList<>();
- enricherList.add(new ToscaEnricher());
- enricherList.add(new ExternalArtifactEnricher());
- return enricherList;
- }
+ private static Logger logger = (Logger) LoggerFactory.getLogger(EnricherHandlerImpl.class);
- @Override
- public Map<String, List<ErrorMessage>> enrich() {
- Map<String, List<ErrorMessage>> errors = new HashMap<>();
- Map<String, List<ErrorMessage>> enricherResponse;
- for (Enricher enricher : getEnrichers()) {
- enricher.setInput(this.input);
- enricher.setModel(this.model);
- enricherResponse = enricher.enrich();
- errors.putAll(enricherResponse);
+ @Override
+ public List<Enricher> getEnrichers() {
+ List<Enricher> enricherList = new ArrayList<>();
+ enricherList.add(new ToscaEnricher());
+ enricherList.add(new ExternalArtifactEnricher());
+ return enricherList;
}
- return errors;
- }
-
- /**
- * Adds additional input.
- *
- * @param key key
- * @param input input
- */
- public void addAdditionalInput(String key, Object input) {
- if (!this.input.getAdditionalInfo().containsKey(key)) {
- this.input.getAdditionalInfo().put(key, new ArrayList<>());
- }
- this.input.getAdditionalInfo().get(key).add(input);
- }
-
- public void addEntityInfo(String entityId, EntityInfo entityInfo) {
- this.input.getEntityInfo().put(entityId, entityInfo);
- }
- public void setModel(AsdcModel model) {
- this.model = model;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ExternalArtifactEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ExternalArtifactEnricher.java
index a276cfba7d..3c27a0fac8 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ExternalArtifactEnricher.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ExternalArtifactEnricher.java
@@ -20,87 +20,65 @@
package org.openecomp.sdc.enrichment.impl.external.artifact;
-import org.openecomp.core.enrichment.types.ComponentArtifactType;
-import org.openecomp.core.enrichment.types.MibInfo;
-import org.openecomp.core.model.dao.EnrichedServiceModelDao;
-import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
-import org.openecomp.core.model.types.ServiceArtifact;
-import org.openecomp.core.utilities.file.FileContentHandler;
import org.openecomp.core.utilities.file.FileUtils;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.common.utils.CommonUtil;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
-import org.openecomp.sdc.enrichment.impl.tosca.ComponentInfo;
import org.openecomp.sdc.enrichment.inter.Enricher;
-import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.enrichment.inter.ExternalArtifactEnricherInterface;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
-import java.io.File;
-import java.io.IOException;
+import java.io.InputStream;
+import java.lang.reflect.Constructor;
+import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.Set;
public class ExternalArtifactEnricher extends Enricher {
+ private MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private static String EXTERNAL_ARTIFACT_ENRICH_CONF_FILE = "ExternalArtifactConfiguration.json";
+ private static final String EXTERNAL_ARTIFACT_ENRICH_ERROR = "ERROR_CREATING_EXTERNAL_ARTIFACTS";
+ private static final String EXTERNAL_ARTIFACT_ENRICH_ERROR_MSG =
+ "An Error has occured during enrichment of external artifacts ";
+ private static Collection<String> implementingClasses =
+ getExternalArtifactEnrichedImplClassesList();
- private static EnrichedServiceModelDao enrichedServiceModelDao =
- EnrichedServiceModelDaoFactory.getInstance().createInterface();
+ private static Collection<String> getExternalArtifactEnrichedImplClassesList() {
+ InputStream externalArtifactEnrichConfigurationJson =
+ FileUtils.getFileInputStream(EXTERNAL_ARTIFACT_ENRICH_CONF_FILE);
+ @SuppressWarnings("unchecked")
+ Map<String, String> confFileAsMap =
+ JsonUtil.json2Object(externalArtifactEnrichConfigurationJson, Map.class);
+ return confFileAsMap.values();
+ }
@Override
public Map<String, List<ErrorMessage>> enrich() {
- Map<String, List<ErrorMessage>> errors = new HashMap<>();
- input.getEntityInfo().entrySet().stream().forEach(
- entry -> enrichComponentMib(entry.getKey(), (ComponentInfo) entry.getValue(), errors));
-
- return errors;
- }
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
- private void enrichComponentMib(String componentName, ComponentInfo componentInfo,
- Map<String, List<ErrorMessage>> errors) {
-
- String vspId = input.getKey();
- Version version = input.getVersion();
- ServiceArtifact mibServiceArtifact = new ServiceArtifact();
- mibServiceArtifact.setVspId(vspId);
- mibServiceArtifact.setVersion(version);
- enrichMibFiles(mibServiceArtifact, componentInfo, errors);
- }
+ try {
+ for (String implementingClassName : implementingClasses) {
+ ExternalArtifactEnricherInterface externalArtifactEnricherInstance = getExternalArtifactEnricherInstance(implementingClassName);
+ externalArtifactEnricherInstance.enrich(this.data);
+ }
+ } catch (Exception e) {
+ e.printStackTrace(); //// FIXME: 29-Nov-16
+ }
- private void enrichMibFiles(ServiceArtifact mibServiceArtifact, ComponentInfo componentInfo,
- Map<String, List<ErrorMessage>> errors) {
- if (componentInfo.getMibInfo() == null) {
- return;
- }
- enrichMibByType(componentInfo.getMibInfo().getSnmpTrap(), ComponentArtifactType.SNMP_TRAP,
- mibServiceArtifact, errors);
- enrichMibByType(componentInfo.getMibInfo().getSnmpPoll(), ComponentArtifactType.SNMP_POLL,
- mibServiceArtifact, errors);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return errors;
}
- private void enrichMibByType(MibInfo mibInfo, ComponentArtifactType type,
- ServiceArtifact mibServiceArtifact,
- Map<String, List<ErrorMessage>> errors) {
- if (mibInfo == null) {
- return;
- }
- FileContentHandler mibs;
- try {
- mibs = FileUtils.getFileContentMapFromZip(FileUtils.toByteArray(mibInfo.getContent()));
- } catch (IOException ioException) {
- ErrorMessage.ErrorMessageUtil
- .addMessage(mibServiceArtifact.getName() + "." + type.name(), errors)
- .add(new ErrorMessage(ErrorLevel.ERROR, Messages.INVALID_ZIP_FILE.getErrorMessage()));
- return;
- }
- Set<String> fileList = mibs.getFileList();
- for (String fileName : fileList) {
- mibServiceArtifact.setContentData(FileUtils.toByteArray(mibs.getFileContent(fileName)));
- mibServiceArtifact.setName(mibInfo.getName() + File.separator + fileName);
- enrichedServiceModelDao.storeExternalArtifact(mibServiceArtifact);
- }
+ private ExternalArtifactEnricherInterface getExternalArtifactEnricherInstance(
+ String implementingClassName) throws Exception {
+ Class<?> clazz = Class.forName(implementingClassName);
+ Constructor<?> constructor = clazz.getConstructor();
+ return (ExternalArtifactEnricherInterface) constructor.newInstance();
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricher.java
new file mode 100644
index 0000000000..3920cc28af
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricher.java
@@ -0,0 +1,236 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.enrichment.impl.external.artifact;
+
+import org.openecomp.core.enrichment.types.ArtifactCategory;
+import org.openecomp.core.enrichment.types.ArtifactType;
+import org.openecomp.core.enrichment.types.ComponentMibInfo;
+import org.openecomp.core.enrichment.types.MibInfo;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
+import org.openecomp.core.model.types.ServiceArtifact;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.enrichment.EnrichmentInfo;
+import org.openecomp.sdc.enrichment.inter.ExternalArtifactEnricherInterface;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.MibEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+
+public class MonitoringMibEnricher implements ExternalArtifactEnricherInterface {
+
+ private EnrichedServiceModelDao enrichedServiceModelDao;
+ private ComponentDao componentDao;
+ private MibDao mibDao;
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ /**
+ * Enrich map.
+ *
+ * @param enrichmentInfo the enrichmentInfo
+ * @return the map
+ */
+ public Map<String, List<ErrorMessage>> enrich(EnrichmentInfo enrichmentInfo) {
+
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ String vspId = enrichmentInfo.getKey();
+ Version version = enrichmentInfo.getVersion();
+
+ Collection<ComponentEntity> components =
+ getComponentDao().list(new ComponentEntity(vspId, version, null));
+ components
+ .forEach(componentEntry -> errors.putAll(enrichComponent(componentEntry, vspId, version)));
+
+ return errors;
+ }
+
+ Map<String, List<ErrorMessage>> enrichComponent(ComponentEntity componentEntry, String vspId,
+ Version version) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ ComponentMibInfo componentMibInfo =
+ extractComponentMibInfo(componentEntry, vspId, version, errors);
+ enrichComponentMib(componentMibInfo, vspId, version, errors);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return errors;
+ }
+
+ ComponentMibInfo extractComponentMibInfo(ComponentEntity componentEntity, String vspId,
+ Version version,
+ Map<String, List<ErrorMessage>> errors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String componentId = componentEntity.getId();
+ MibEntity entity = new MibEntity();
+
+ entity.setVspId(vspId);
+ entity.setVersion(version);
+ entity.setComponentId(componentId);
+ String componentName = componentEntity.getComponentCompositionData().getName();
+ ComponentMibInfo componentMibInfo = new ComponentMibInfo();
+ updComponentMibInfoByType(componentName, ArtifactType.SNMP_POLL, entity, componentMibInfo,
+ errors);
+ updComponentMibInfoByType(componentName, ArtifactType.SNMP_TRAP, entity, componentMibInfo,
+ errors);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return componentMibInfo;
+ }
+
+ void updComponentMibInfoByType(String componentName, ArtifactType type,
+ MibEntity mibEntity,
+ ComponentMibInfo componentMibInfo,
+ Map<String, List<ErrorMessage>> errors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String path;
+ mibEntity.setType(type);
+ Optional<MibEntity> artifact =
+ getMibDao().getByType(mibEntity);
+
+ if (!artifact.isPresent()) {
+ return;
+ }
+ path = componentName + File.separator + ArtifactCategory.DEPLOYMENT.getDisplayName()
+ + File.separator + type.name();
+ MibInfo mibInfo = new MibInfo();
+ mibInfo.setName(path);
+ mibInfo.setContent(artifact.get().getArtifact().array());
+ switch (type) {
+ case SNMP_POLL:
+ componentMibInfo.setSnmpPoll(mibInfo);
+ break;
+ case SNMP_TRAP:
+ componentMibInfo.setSnmpTrap(mibInfo);
+ break;
+ default:
+ break;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ void enrichComponentMib(ComponentMibInfo componentMibInfo, String vspId, Version version,
+ Map<String, List<ErrorMessage>> errors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ServiceArtifact mibServiceArtifact = new ServiceArtifact();
+ mibServiceArtifact.setVspId(vspId);
+ mibServiceArtifact.setVersion(version);
+ enrichMibFiles(mibServiceArtifact, componentMibInfo, errors);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ void enrichMibFiles(ServiceArtifact mibServiceArtifact, ComponentMibInfo componentMibInfo,
+ Map<String, List<ErrorMessage>> errors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (componentMibInfo == null) {
+ return;
+ }
+ enrichMibByType(componentMibInfo.getSnmpTrap(), ArtifactType.SNMP_TRAP, mibServiceArtifact,
+ errors);
+ enrichMibByType(componentMibInfo.getSnmpPoll(), ArtifactType.SNMP_POLL, mibServiceArtifact,
+ errors);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ void enrichMibByType(MibInfo mibInfo, ArtifactType type, ServiceArtifact mibServiceArtifact,
+ Map<String, List<ErrorMessage>> errors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (mibInfo == null) {
+ return;
+ }
+ FileContentHandler mibs;
+ try {
+ mibs = FileUtils.getFileContentMapFromZip(FileUtils.toByteArray(mibInfo.getContent()));
+ } catch (IOException ioException) {
+ ErrorMessage.ErrorMessageUtil
+ .addMessage(mibServiceArtifact.getName() + "." + type.name(), errors)
+ .add(new ErrorMessage(ErrorLevel.ERROR, Messages.INVALID_ZIP_FILE.getErrorMessage()));
+ return;
+ }
+ Set<String> fileList = mibs.getFileList();
+ for (String fileName : fileList) {
+ mibServiceArtifact.setContentData(FileUtils.toByteArray(mibs.getFileContent(fileName)));
+ mibServiceArtifact.setName(mibInfo.getName() + File.separator + fileName);
+ getEnrichedServiceModelDao().storeExternalArtifact(mibServiceArtifact);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private EnrichedServiceModelDao getEnrichedServiceModelDao() {
+ if (enrichedServiceModelDao == null) {
+ enrichedServiceModelDao = EnrichedServiceModelDaoFactory.getInstance().createInterface();
+ }
+ return enrichedServiceModelDao;
+ }
+
+ private ComponentDao getComponentDao() {
+ if (componentDao == null) {
+ componentDao = ComponentDaoFactory.getInstance().createInterface();
+ }
+ return componentDao;
+ }
+
+ private MibDao getMibDao() {
+ if (mibDao == null) {
+ mibDao = MibDaoFactory.getInstance().createInterface();
+ }
+ return mibDao;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricher.java
new file mode 100644
index 0000000000..b4a2815d69
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricher.java
@@ -0,0 +1,144 @@
+package org.openecomp.sdc.enrichment.impl.external.artifact;
+
+import org.openecomp.core.enrichment.types.ArtifactCategory;
+import org.openecomp.core.enrichment.types.ComponentProcessInfo;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
+import org.openecomp.core.model.types.ServiceArtifact;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.enrichment.EnrichmentInfo;
+import org.openecomp.sdc.enrichment.inter.ExternalArtifactEnricherInterface;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessType;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class ProcessArtifactEnricher implements ExternalArtifactEnricherInterface {
+
+ private VendorSoftwareProductDao vendorSoftwareProductDao;
+ //private ProcessArtifactDao processArtifactDao;
+ private ProcessDao processDao;
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private EnrichedServiceModelDao enrichedServiceModelDao;
+
+ @Override
+ public Map<String, List<ErrorMessage>> enrich(EnrichmentInfo enrichmentInfo) throws IOException {
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ String vspId = enrichmentInfo.getKey();
+ Version version = enrichmentInfo.getVersion();
+
+ Collection<ComponentEntity> components =
+ getVendorSoftwareProductDao().listComponents(vspId, version);
+ components.stream()
+ .forEach(componentEntry -> errors.putAll(enrichComponent(componentEntry,
+ vspId, version)));
+
+ return errors;
+ }
+
+ Map<String, List<ErrorMessage>> enrichComponent(ComponentEntity componentEntry, String vspId,
+ Version version) {
+ mdcDataDebugMessage.debugEntryMessage("LifeCycleOperationArtifactEnricher vspId ",
+ vspId);
+
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ enrichComponentProcessArtifact(componentEntry, vspId, version, errors);
+
+ mdcDataDebugMessage.debugExitMessage("LifeCycleOperationArtifactEnricher vspId ",
+ vspId);
+ return errors;
+ }
+
+ void enrichComponentProcessArtifact(ComponentEntity componentEntity,
+ String vspId, Version version,
+ Map<String, List<ErrorMessage>> errors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String componentId = componentEntity.getId();
+ ProcessEntity processEntity = new ProcessEntity(vspId, version, componentId, null);
+ final Collection<ProcessEntity> processes = getProcessDao().list(processEntity);
+
+ /*processes.stream()
+ .filter(entity -> entity.getType().equals(ProcessType.Lifecycle_Operations))
+ .forEach(entity -> {
+ ProcessArtifactEntity artifactEntity = new ProcessArtifactEntity(vspId, version,
+ componentId, entity.getId());*/
+
+ processes.stream()
+ .filter(entity -> entity.getType().equals(ProcessType.Lifecycle_Operations))
+ .forEach(entity -> {
+ ProcessEntity artifactEntity = new ProcessEntity(vspId, version,
+ componentId, entity.getId());
+
+ ProcessEntity artifactProcessEntity = getProcessDao().get(artifactEntity);
+ //ProcessArtifactEntity artifact = getProcessArtifactDao().get(artifactEntity);
+ if (artifactProcessEntity != null) {
+ String componentName = componentEntity.getComponentCompositionData().getName();
+ String path = componentName + File.separator
+ + ArtifactCategory.DEPLOYMENT.getDisplayName() + File.separator
+ + "Lifecycle Operations" + File.separator + artifactProcessEntity.getArtifactName();
+
+ ComponentProcessInfo componentProcessInfo = new ComponentProcessInfo();
+ componentProcessInfo.setName(path);
+ componentProcessInfo.setContent(artifactProcessEntity.getArtifact().array());
+
+ ServiceArtifact processServiceArtifact = new ServiceArtifact();
+ processServiceArtifact.setVspId(vspId);
+ processServiceArtifact.setVersion(version);
+ enrichServiceArtifact(componentProcessInfo, processServiceArtifact, errors);
+ }
+ });
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ void enrichServiceArtifact(ComponentProcessInfo componentProcessInfo,
+ ServiceArtifact processServiceArtifact,
+ Map<String, List<ErrorMessage>> errors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ processServiceArtifact.setName(componentProcessInfo.getName());
+ processServiceArtifact.setContentData(FileUtils.toByteArray(componentProcessInfo.getContent()));
+ getEnrichedServiceModelDao().storeExternalArtifact(processServiceArtifact);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private VendorSoftwareProductDao getVendorSoftwareProductDao() {
+ if (vendorSoftwareProductDao == null) {
+ vendorSoftwareProductDao = VendorSoftwareProductDaoFactory.getInstance().createInterface();
+ }
+ return vendorSoftwareProductDao;
+ }
+
+ private ProcessDao getProcessDao() {
+ if (processDao == null) {
+ processDao = ProcessDaoFactory.getInstance().createInterface();
+ }
+ return processDao;
+ }
+
+ private EnrichedServiceModelDao getEnrichedServiceModelDao() {
+
+ if (enrichedServiceModelDao == null) {
+ enrichedServiceModelDao = EnrichedServiceModelDaoFactory.getInstance().createInterface();
+ }
+ return enrichedServiceModelDao;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/VspInformationArtifactEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/VspInformationArtifactEnricher.java
new file mode 100644
index 0000000000..b7da22bdfb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/external/artifact/VspInformationArtifactEnricher.java
@@ -0,0 +1,134 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.enrichment.impl.external.artifact;
+
+
+import org.openecomp.core.enrichment.types.ArtifactCategory;
+import org.openecomp.core.enrichment.types.InformationArtifactFolderNames;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
+import org.openecomp.core.model.types.ServiceArtifact;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.enrichment.EnrichmentInfo;
+import org.openecomp.sdc.enrichment.inter.ExternalArtifactEnricherInterface;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductConstants;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.InformationArtifactGeneratorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactGenerator;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.File;
+import java.io.IOException;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/**
+ * Created by Talio on 11/24/2016
+ */
+public class VspInformationArtifactEnricher implements ExternalArtifactEnricherInterface {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private static InformationArtifactGenerator informationArtifactGenerator =
+ InformationArtifactGeneratorFactory.getInstance().createInterface();
+ private EnrichedServiceModelDao enrichedServiceModelDao =
+ EnrichedServiceModelDaoFactory.getInstance().createInterface();
+ private VendorSoftwareProductInfoDao vspInfoDao = VendorSoftwareProductInfoDaoFactory
+ .getInstance().createInterface();
+ private OrchestrationTemplateDao orchestrationTemplateDataDao =
+ OrchestrationTemplateDaoFactory.getInstance().createInterface();
+
+ public VspInformationArtifactEnricher() {
+ }
+
+ public Map<String, List<ErrorMessage>> enrich(EnrichmentInfo enrichmentInfo)
+ throws IOException {
+
+ String vspId = enrichmentInfo.getKey();
+ Version version = enrichmentInfo.getVersion();
+ Map<String, List<ErrorMessage>> errors = enrichInformationArtifact(vspId, version);
+
+ return errors;
+ }
+
+ private Map<String, List<ErrorMessage>> enrichInformationArtifact(String vspId, Version version)
+ throws IOException {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ ByteBuffer infoArtifactByteBuffer = ByteBuffer.wrap(informationArtifactGenerator.generate(
+ vspId, version).getBytes());
+
+ if (Objects.isNull(infoArtifactByteBuffer)) {
+ List<ErrorMessage> errorList = new ArrayList<>();
+ errorList.add(new ErrorMessage(ErrorLevel.ERROR, String.format(
+ "Cannot enrich information artifact for vendor software product with id %s and version %s",
+ vspId, version.toString())));
+ //TODO: add error to map (what is the key?)
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return errors;
+ }
+
+ enrichInformationArtifact(vspId, version, infoArtifactByteBuffer);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return errors;
+ }
+
+ private void enrichInformationArtifact(String vspId, Version version,
+ ByteBuffer infoArtifactByteBuffer) {
+ ServiceArtifact infoArtifactServiceArtifact = new ServiceArtifact();
+
+ VspDetails vspDetails = getVspDetails(vspId, version);
+
+ String vspName = vspDetails.getName();
+
+
+ infoArtifactServiceArtifact.setVspId(vspId);
+ infoArtifactServiceArtifact.setVersion(version);
+ infoArtifactServiceArtifact
+ .setName(ArtifactCategory.INFORMATIONAL.getDisplayName() + File.separator
+ + InformationArtifactFolderNames.Guide + File.separator + String.format(
+ VendorSoftwareProductConstants
+ .INFORMATION_ARTIFACT_NAME,
+ vspName));
+ infoArtifactServiceArtifact.setContentData(infoArtifactByteBuffer.array());
+
+ enrichedServiceModelDao.storeExternalArtifact(infoArtifactServiceArtifact);
+
+ }
+ public VspDetails getVspDetails(String vspId,Version version){
+ VspDetails vspDetails = vspInfoDao.get(new VspDetails(vspId,version));
+ vspDetails.setValidationData(orchestrationTemplateDataDao.getValidationData(vspId,version));
+ return vspDetails;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricher.java
new file mode 100644
index 0000000000..d75c83f24c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricher.java
@@ -0,0 +1,243 @@
+package org.openecomp.sdc.enrichment.impl.tosca;
+
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.HIGH_AVAIL_MODE;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MANDATORY;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MAX_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MIN_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.VFC_NAMING_CODE;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.VM_TYPE_TAG;
+import static org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType.NATIVE_NODE;
+import static org.openecomp.sdc.tosca.datatypes.ToscaNodeType.VFC_ABSTRACT_SUBSTITUTE;
+import static org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType.NATIVE_DEPENDS_ON;
+import static org.openecomp.sdc.tosca.services.ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME;
+import static org.openecomp.sdc.translator.services.heattotosca.Constants.ABSTRACT_NODE_TEMPLATE_ID_PREFIX;
+
+import org.apache.commons.lang3.StringUtils;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+public class AbstractSubstituteToscaEnricher {
+ private ToscaAnalyzerService toscaAnalyzerService ;
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private ComponentQuestionnaireData componentQuestionnaireData;
+
+
+ public Map<String,List<ErrorMessage>> enrich(ToscaServiceModel toscaModel, String vspId, Version
+ version) {
+
+ mdcDataDebugMessage.debugEntryMessage(vspId, version.toString());
+
+ componentQuestionnaireData = getComponentQuestionnaireData();
+ toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+
+ Map<String, Map<String, Object>> componentProperties =
+ componentQuestionnaireData.getPropertiesfromCompQuestionnaire(vspId, version);
+
+ final Map<String, List<String>> sourceToTargetDependencies =
+ componentQuestionnaireData.populateDependencies(vspId, version,
+ componentQuestionnaireData.getSourceToTargetComponent());
+
+ Map<String, List<ErrorMessage>> errors = new HashMap<>();
+
+ final ServiceTemplate serviceTemplate = toscaModel.getServiceTemplates()
+ .get(toscaModel.getEntryDefinitionServiceTemplate());
+
+ if (serviceTemplate == null) return errors;
+
+ final Map<String, NodeTemplate> node_templates =
+ serviceTemplate.getTopology_template().getNode_templates();
+
+ final Map<String, List<String>> componentDisplayNameToNodeTempalteIds =
+ populateAllNodeTemplateIdForComponent(node_templates, serviceTemplate, toscaModel);
+
+ node_templates.keySet()
+ .stream()
+ .forEach(nodeTemplateId -> {
+ final Optional<NodeTemplate> nodeTemplateById =
+ toscaAnalyzerService.getNodeTemplateById(serviceTemplate, nodeTemplateId);
+ final NodeTemplate nodeTemplate =
+ nodeTemplateById.isPresent() ? nodeTemplateById.get() : null;
+
+ if (toscaAnalyzerService.isTypeOf(nodeTemplate, VFC_ABSTRACT_SUBSTITUTE, serviceTemplate,
+ toscaModel)) {
+
+ String componentDisplayName = getComponentDisplayName(nodeTemplateId);
+
+ setProperty(nodeTemplate, VM_TYPE_TAG, componentDisplayName);
+
+ if (componentProperties != null && componentProperties.containsKey
+ (componentDisplayName)) {
+ final String mandatory =
+ getValueFromQuestionnaireDetails(componentProperties, componentDisplayName,
+ MANDATORY);
+
+ boolean isServiceTemplateFilterNotExists = false;
+ if (!StringUtils.isEmpty(mandatory)) {
+ Map innerProps = (Map<String, Object>) nodeTemplate.getProperties()
+ .get(SERVICE_TEMPLATE_FILTER_PROPERTY_NAME);
+
+ if (innerProps == null) {
+ innerProps = new HashMap<String, Object>();
+ isServiceTemplateFilterNotExists = true;
+ }
+
+ innerProps.put(MANDATORY, getValue(mandatory));
+
+ if(isServiceTemplateFilterNotExists)
+ nodeTemplate.getProperties().put(SERVICE_TEMPLATE_FILTER_PROPERTY_NAME,
+ innerProps);
+ }
+
+ setProperty(nodeTemplate, HIGH_AVAIL_MODE, getValueFromQuestionnaireDetails
+ (componentProperties, componentDisplayName, HIGH_AVAIL_MODE));
+
+ setProperty(nodeTemplate, VFC_NAMING_CODE, getValueFromQuestionnaireDetails
+ (componentProperties, componentDisplayName, VFC_NAMING_CODE));
+
+
+ if(componentProperties.get(componentDisplayName).get(MIN_INSTANCES) != null) {
+ nodeTemplate.getProperties().put(MIN_INSTANCES,
+ componentProperties.get(componentDisplayName).get(MIN_INSTANCES));
+ }
+
+ if(componentProperties.get(componentDisplayName).get(MAX_INSTANCES) != null) {
+ nodeTemplate.getProperties().put(MAX_INSTANCES,
+ componentProperties.get(componentDisplayName).get(MAX_INSTANCES));
+ }
+ }
+
+ enrichRequirements(sourceToTargetDependencies, componentDisplayName, nodeTemplate,
+ componentDisplayNameToNodeTempalteIds);
+ }
+ });
+
+ mdcDataDebugMessage.debugExitMessage(vspId, version.toString());
+ return errors;
+ }
+
+ private Map<String,List<String>> populateAllNodeTemplateIdForComponent(Map<String,
+ NodeTemplate> node_templates, ServiceTemplate serviceTemplate, ToscaServiceModel
+ toscaModel) {
+
+
+ Map<String,List<String>> componentDisplayNameToNodeTempalteIds = new HashMap<String,
+ List<String>>();
+
+ //set dependency target
+ node_templates.keySet()
+ .stream()
+ .forEach(nodeTemplateId -> {
+
+ final Optional<NodeTemplate> nodeTemplateById =
+ toscaAnalyzerService.getNodeTemplateById(serviceTemplate, nodeTemplateId);
+ final NodeTemplate nodeTemplate =
+ nodeTemplateById.isPresent() ? nodeTemplateById.get() : null;
+
+ if (toscaAnalyzerService.isTypeOf(nodeTemplate, VFC_ABSTRACT_SUBSTITUTE, serviceTemplate,
+ toscaModel)) {
+
+ String componentDisplayName = getComponentDisplayName(nodeTemplateId);
+
+ if (componentDisplayNameToNodeTempalteIds.containsKey(componentDisplayName)) {
+ componentDisplayNameToNodeTempalteIds.get(componentDisplayName).add(nodeTemplateId);
+ } else {
+ List<String> nodeTemplateIds = new ArrayList<String>();
+ nodeTemplateIds.add(nodeTemplateId);
+ componentDisplayNameToNodeTempalteIds.put(componentDisplayName, nodeTemplateIds);
+ }
+
+ }
+ });
+
+ return componentDisplayNameToNodeTempalteIds;
+ }
+
+ private void enrichRequirements(Map<String, List<String>> sourceToTargetDependencies,
+ String componentDisplayName, NodeTemplate nodeTemplate,
+ Map<String, List<String>> componentDisplayNameToNodeTempalteIds) {
+ List<Map<String, RequirementAssignment>> requirements =
+ nodeTemplate.getRequirements();
+
+ if(requirements == null) {
+ requirements = new ArrayList<Map<String, RequirementAssignment>>();
+ }
+
+ final List<String> targets = sourceToTargetDependencies.get(componentDisplayName);
+ if(targets != null) {
+ for (String target : targets) {
+ List<String> targetNodeTemplateIds = componentDisplayNameToNodeTempalteIds.get(target);
+ if(targetNodeTemplateIds != null) {
+ for (String targetNodeTemplateId : targetNodeTemplateIds) {
+ Map<String, RequirementAssignment> requirement = new HashMap<String,
+ RequirementAssignment>();
+ RequirementAssignment requirementAssignment = new RequirementAssignment();
+ requirementAssignment.setCapability(NATIVE_NODE);
+ requirementAssignment.setRelationship(NATIVE_DEPENDS_ON);
+ requirementAssignment.setNode(targetNodeTemplateId);
+ requirement.put("dependency", requirementAssignment);
+ requirements.add(requirement);
+ }
+ }
+ }
+ }
+
+ if (!requirements.isEmpty())
+ nodeTemplate.setRequirements(requirements);
+ }
+
+ private String getComponentDisplayName(String nodeTemplateId ) {
+ String componentDisplayName = null;
+ if (nodeTemplateId.contains(ABSTRACT_NODE_TEMPLATE_ID_PREFIX)) {
+ String removedPrefix = nodeTemplateId.split(ABSTRACT_NODE_TEMPLATE_ID_PREFIX)[1];
+ final String[] removedSuffix = removedPrefix.split("_\\d");
+ componentDisplayName = removedSuffix[0];
+ }
+ return componentDisplayName;
+ }
+
+ private String getValueFromQuestionnaireDetails(
+ Map<String, Map<String, Object>> componentTypetoParams, String componentDisplayName, String
+ propertyName) {
+ return (String) componentTypetoParams.get(componentDisplayName).get(propertyName);
+ }
+
+ private void setProperty(NodeTemplate nodeTemplate, String key, String value) {
+ if (!StringUtils.isEmpty(value)) {
+ //YamlUtil throws IllegalStateException("duplicate key: " + key) if key is already present.
+ // So first removing and then populating same key with new updated value
+ nodeTemplate.getProperties().remove(key);
+ nodeTemplate.getProperties().put(key, value);
+ }
+ }
+
+ private Boolean getValue(String value) {
+ String returnValue = null;
+ switch (value) {
+ case "YES" :
+ return true;
+ case "NO" :
+ return false;
+ default: return null;
+ }
+ }
+
+ private ComponentQuestionnaireData getComponentQuestionnaireData() {
+ if (componentQuestionnaireData == null) {
+ componentQuestionnaireData = new ComponentQuestionnaireData();
+ }
+ return componentQuestionnaireData;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/CeilometerEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/CeilometerEnricher.java
deleted file mode 100644
index eb79787b59..0000000000
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/CeilometerEnricher.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.enrichment.impl.tosca;
-
-import org.apache.commons.collections4.MapUtils;
-import org.openecomp.core.enrichment.types.CeilometerInfo;
-import org.openecomp.sdc.datatypes.error.ErrorMessage;
-import org.openecomp.sdc.enrichment.EnrichmentInfo;
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaElementTypes;
-import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
-import org.openecomp.sdc.tosca.services.ToscaUtil;
-import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.CommonGlobalTypes;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class CeilometerEnricher {
- /**
- * Enrich map.
- *
- * @param toscaModel the tosca model
- * @param modelNodeType the model node type
- * @param input the input
- * @return the map
- */
- public static Map<String, List<ErrorMessage>> enrich(ToscaServiceModel toscaModel,
- Map<String, List<NodeType>> modelNodeType,
- EnrichmentInfo input) {
- Map<String, List<ErrorMessage>> errors = new HashMap<>();
- input.getEntityInfo().entrySet().stream().forEach(
- entry -> enrichNodeType(toscaModel, (ComponentInfo) entry.getValue(),
- modelNodeType.get(entry.getKey())));
-
- return errors;
- }
-
- private static void enrichNodeType(ToscaServiceModel toscaModel, ComponentInfo componentInfo,
- List<NodeType> nodeTypes) {
-
- for (CeilometerInfo ceilometerInfo : componentInfo.getCeilometerInfo()
- .getCeilometerInfoList()) {
- String capabilityId = ceilometerInfo.getName();
-
- Map<String, Object> properties = getCeilometerProperties(ceilometerInfo);
-
- //CapabilityType capabilityType = CommonGlobalTypes.createServiceTemplate()
- // .getCapability_types().
- // get(ToscaCapabilityType.METRIC_CEILOMETER.getDisplayName());
- //CapabilityType metricCapabilityType = CommonGlobalTypes.createServiceTemplate().
- // getCapability_types().get(ToscaCapabilityType.METRIC.getDisplayName());
- ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
- CapabilityType capabilityType = (CapabilityType) toscaAnalyzerService
- .getFlatEntity(ToscaElementTypes.CAPABILITY_TYPE,
- ToscaCapabilityType.METRIC_CEILOMETER.getDisplayName(),
- CommonGlobalTypes.createServiceTemplate(), toscaModel);
-
-
- nodeTypes.stream().forEach(nodeType ->
- addCapability(nodeType, capabilityId, ToscaUtil
- .convertTypeToDefinition(ToscaCapabilityType.METRIC_CEILOMETER.getDisplayName(),
- capabilityType, properties, ceilometerInfo.getDescription())));
- }
- }
-
- private static Map<String, Object> getCeilometerProperties(CeilometerInfo ceilometerInfo) {
- Map<String, Object> properties = new HashMap<>();
- properties.put("name", ceilometerInfo.getName());
- properties.put("type", ceilometerInfo.getType());
- properties.put("unit", ceilometerInfo.getUnit());
- if (ceilometerInfo.getCategory() != null) {
- properties.put("category", ceilometerInfo.getCategory());
- }
- return properties;
- }
-
- private static void addCapability(NodeType nodeType, String capabilityId,
- CapabilityDefinition capabilityDefinition) {
- if (MapUtils.isEmpty(nodeType.getCapabilities())) {
- nodeType.setCapabilities(new HashMap<>());
- }
- //clean unnecessary info
- capabilityDefinition.setAttributes(null);
- capabilityDefinition.setOccurrences(null);
-
- nodeType.getCapabilities().put(capabilityId, capabilityDefinition);
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireData.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireData.java
new file mode 100644
index 0000000000..7457c36701
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireData.java
@@ -0,0 +1,123 @@
+package org.openecomp.sdc.enrichment.impl.tosca;
+
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.HIGH_AVAIL_MODE;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MANDATORY;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MAX_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MIN_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.VFC_NAMING_CODE;
+
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.ComponentData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.ComponentQuestionnaire;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class ComponentQuestionnaireData {
+
+ ComponentDao componentDao = ComponentDaoFactory.getInstance().createInterface();
+ ComponentDependencyModelDao componentDependencyModelDao = ComponentDependencyModelDaoFactory.getInstance()
+ .createInterface();
+
+ private Map<String,String> sourceToTargetComponent;
+
+ public Map<String,String> getSourceToTargetComponent() {
+ return sourceToTargetComponent;
+ }
+
+ public void setSourceToTargetComponent(Map<String,String> sourceToTargetComponent) {
+ this.sourceToTargetComponent = sourceToTargetComponent;
+ }
+
+ public Map<String, Map<String, Object>> getPropertiesfromCompQuestionnaire(String key,
+ Version version) {
+ Map<String, Map<String,Object>> componentProperties =
+ new HashMap<String, Map<String,Object>>();
+
+ ComponentEntity entity = new ComponentEntity(key, version, null);
+ final Collection<ComponentEntity> componentEntities =
+ componentDao.listCompositionAndQuestionnaire(key, version);
+
+ Map<String,String> sourceToTarget = new HashMap<String, String>();
+
+ for (ComponentEntity component : componentEntities) {
+ Map<String, Object> questionnaireParams = new HashMap<String, Object>();
+
+ final ComponentQuestionnaire componentQuestionnaire =
+ JsonUtil.json2Object(component.getQuestionnaireData(), ComponentQuestionnaire.class);
+
+ final ComponentData componentData =
+ JsonUtil.json2Object(component.getCompositionData(), ComponentData.class);
+
+ sourceToTarget.put(component.getId(), componentData.getDisplayName());
+
+ String vfc_code = componentData != null ? componentData.getVfcCode() : null;
+ questionnaireParams.put(VFC_NAMING_CODE, vfc_code);
+
+ if (componentQuestionnaire.getHighAvailabilityAndLoadBalancing() != null ) {
+ String mandatory = componentQuestionnaire.getHighAvailabilityAndLoadBalancing()
+ .getIsComponentMandatory();
+ questionnaireParams.put(MANDATORY, mandatory);
+
+ String mode = componentQuestionnaire.getHighAvailabilityAndLoadBalancing()
+ .getHighAvailabilityMode();
+
+ questionnaireParams.put(HIGH_AVAIL_MODE, mode);
+ }
+
+ final Integer maxVms =
+ componentQuestionnaire.getCompute() != null ? (componentQuestionnaire.getCompute()
+ .getNumOfVMs() != null ? componentQuestionnaire.getCompute().getNumOfVMs()
+ .getMaximum(): null) : null;
+
+ final Integer minVms =
+ componentQuestionnaire.getCompute() != null ? (componentQuestionnaire.getCompute()
+ .getNumOfVMs() != null ? componentQuestionnaire.getCompute().getNumOfVMs()
+ .getMinimum(): null) : null;
+
+ questionnaireParams.put(MIN_INSTANCES,minVms != null && minVms == 0 ? null : minVms);
+ questionnaireParams.put(MAX_INSTANCES,maxVms != null && maxVms == 0 ? null : maxVms);
+
+ if (! questionnaireParams.isEmpty())
+ componentProperties.put(JsonUtil.json2Object(component.getCompositionData(),
+ ComponentData.class).getDisplayName(), questionnaireParams);
+ }
+
+ setSourceToTargetComponent(sourceToTarget);
+
+ return componentProperties;
+ }
+
+ public Map<String,List<String>> populateDependencies(String vspId, Version version, Map<String,
+ String> componentNameData) {
+ Collection<ComponentDependencyModelEntity> componentDependencies =
+ componentDependencyModelDao.list(new ComponentDependencyModelEntity(vspId, version, null));
+
+ Map<String,List<String>> sourceToTargetComponent = new HashMap<String, List<String>>();
+ List<String> targetComponents = null;
+ for (ComponentDependencyModelEntity dependency : componentDependencies) {
+ String sourceComponentName = componentNameData.get(dependency.getSourceComponentId());
+ String targetComponentName = componentNameData.get(dependency.getTargetComponentId());
+ if (!sourceToTargetComponent.containsKey(sourceComponentName)) {
+ targetComponents = new ArrayList<String>();
+ } else {
+ targetComponents = sourceToTargetComponent.get(sourceComponentName);
+ }
+ targetComponents.add(targetComponentName);
+ sourceToTargetComponent.put(sourceComponentName, targetComponents);
+ }
+
+ return sourceToTargetComponent;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ToscaEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ToscaEnricher.java
index 2c0f03480f..854d84ad84 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ToscaEnricher.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ToscaEnricher.java
@@ -20,11 +20,11 @@
package org.openecomp.sdc.enrichment.impl.tosca;
+import org.openecomp.sdc.common.utils.CommonUtil;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
import org.openecomp.sdc.enrichment.inter.Enricher;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.services.ToscaUtil;
import java.util.HashMap;
import java.util.List;
@@ -32,42 +32,28 @@ import java.util.Map;
public class ToscaEnricher extends Enricher {
- Map<String, List<NodeType>> componentTypNodeTypeMap;
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
@Override
public Map<String, List<ErrorMessage>> enrich() {
Map<String, List<ErrorMessage>> errors = new HashMap<>();
- Map<String, List<ErrorMessage>> enrichResponse;
- enrichResponse = enrichCilometer();
- errors.putAll(enrichResponse);
- enrichResponse = enrichSnmp();
- errors.putAll(enrichResponse);
-
+ errors.putAll(enrichAbstractSubstitute());
return errors;
}
- private Map<String, List<ErrorMessage>> enrichCilometer() {
- Map<String, List<ErrorMessage>> enrichResponse;
-
- ToscaServiceModel toscaModel = (ToscaServiceModel) model;
-
- componentTypNodeTypeMap =
- ToscaUtil.normalizeComponentNameNodeType(toscaModel, input.getEntityInfo().keySet());
-
- enrichResponse = CeilometerEnricher.enrich(toscaModel, componentTypNodeTypeMap, this.input);
+ private Map<String, List<ErrorMessage>> enrichAbstractSubstitute() {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
- return enrichResponse;
- }
+ Map<String, List<ErrorMessage>> enrichErrors;
+ ToscaServiceModel toscaModel = (ToscaServiceModel) model;
+ AbstractSubstituteToscaEnricher abstractSubstituteToscaEnricher =
+ new AbstractSubstituteToscaEnricher();
+ enrichErrors = abstractSubstituteToscaEnricher.enrich(toscaModel, data.getKey(),
+ data.getVersion());
- private Map<String, List<ErrorMessage>> enrichSnmp() {
- Map<String, List<ErrorMessage>> enrichResponse;
-
- enrichResponse = SnmpEnricher.enrich(componentTypNodeTypeMap, this.input);
-
- return enrichResponse;
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return enrichErrors;
}
-
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/util/EnrichmentConstants.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/util/EnrichmentConstants.java
new file mode 100644
index 0000000000..e803d14b35
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/util/EnrichmentConstants.java
@@ -0,0 +1,12 @@
+package org.openecomp.sdc.enrichment.impl.util;
+
+public class EnrichmentConstants {
+
+ public static final String VFC_NAMING_CODE = "nfc_naming_code";
+ public static final String MANDATORY = "mandatory";
+ public static final String HIGH_AVAIL_MODE = "high_availablity";
+ public static final String MIN_INSTANCES = "min_instances";
+ public static final String MAX_INSTANCES = "max_instances";
+ public static final String VM_TYPE_TAG = "vm_type_tag";
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/Enricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/Enricher.java
index 1d6867d1f3..ed606f8746 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/Enricher.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/Enricher.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.enrichment.inter;
+
import org.openecomp.sdc.datatypes.error.ErrorMessage;
import org.openecomp.sdc.datatypes.model.AsdcModel;
import org.openecomp.sdc.enrichment.EnrichmentInfo;
@@ -30,16 +31,16 @@ import java.util.Map;
public abstract class Enricher {
- protected EnrichmentInfo input;
- protected AsdcModel model;
+ protected EnrichmentInfo data;
+ protected AsdcModel model;
- public void setInput(EnrichmentInfo input) {
- this.input = input;
- }
+ public void setData(EnrichmentInfo data) {
+ this.data = data;
+ }
- public void setModel(AsdcModel model) {
- this.model = model;
- }
+ public void setModel(AsdcModel model) {
+ this.model = model;
+ }
- public abstract Map<String, List<ErrorMessage>> enrich();
+ public abstract Map<String, List<ErrorMessage>> enrich();
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/EnricherHandler.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/EnricherHandler.java
index 717bbc8313..f0ffa0b1ad 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/EnricherHandler.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/EnricherHandler.java
@@ -20,22 +20,10 @@
package org.openecomp.sdc.enrichment.inter;
-import org.openecomp.sdc.datatypes.error.ErrorMessage;
-import org.openecomp.sdc.datatypes.model.AsdcModel;
-
import java.util.List;
-import java.util.Map;
public interface EnricherHandler {
-
- List<Enricher> getEnrichers();
-
- Map<String, List<ErrorMessage>> enrich();
-
- void addAdditionalInput(String key, Object input);
-
- void setModel(AsdcModel model);
-
+ List<Enricher> getEnrichers();
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/SnmpEnricher.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/ExternalArtifactEnricherInterface.java
index 42cbcdd50b..49b424ef05 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/SnmpEnricher.java
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/inter/ExternalArtifactEnricherInterface.java
@@ -18,21 +18,19 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.enrichment.impl.tosca;
+package org.openecomp.sdc.enrichment.inter;
-import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
import org.openecomp.sdc.enrichment.EnrichmentInfo;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import java.util.HashMap;
+import java.io.IOException;
import java.util.List;
import java.util.Map;
-public class SnmpEnricher {
- public static Map<String, List<ErrorMessage>> enrich(Map<String, List<NodeType>> modelNodeType,
- EnrichmentInfo input) {
- return new HashMap<>();
-
- }
+/**
+ * Created by Talio on 11/24/2016.
+ */
+public interface ExternalArtifactEnricherInterface {
+ public Map<String, List<ErrorMessage>> enrich(EnrichmentInfo enrichmentInfo) throws IOException;
}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/resources/ExternalArtifactConfiguration.json b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/resources/ExternalArtifactConfiguration.json
new file mode 100644
index 0000000000..318d60b969
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/resources/ExternalArtifactConfiguration.json
@@ -0,0 +1,5 @@
+{
+ "InformationArtifactEnricher": "org.openecomp.sdc.enrichment.impl.external.artifact.VspInformationArtifactEnricher",
+ "MonitoringMibEnricher": "org.openecomp.sdc.enrichment.impl.external.artifact.MonitoringMibEnricher",
+ "ProcessArtifactEnricher": "org.openecomp.sdc.enrichment.impl.external.artifact.ProcessArtifactEnricher"
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricherTest.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricherTest.java
new file mode 100644
index 0000000000..7a16b6945d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/MonitoringMibEnricherTest.java
@@ -0,0 +1,167 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.enrichment.impl.external.artifact;
+
+import org.mockito.ArgumentCaptor;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.core.enrichment.types.ArtifactCategory;
+import org.openecomp.core.enrichment.types.ArtifactType;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.types.ServiceArtifact;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.enrichment.EnrichmentInfo;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.MibEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import java.io.File;
+import java.io.InputStream;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Optional;
+
+import static org.mockito.Matchers.anyObject;
+import static org.mockito.Mockito.atLeastOnce;
+import static org.mockito.Mockito.times;
+
+
+/**
+ * @author shiria
+ * @since November 06, 2016.
+ */
+
+public class MonitoringMibEnricherTest {
+ @Mock
+ private MibDao mibDaoMock;
+ @Mock
+ private EnrichedServiceModelDao enrichedServiceModelDaoMock;
+ @Mock
+ private VendorSoftwareProductDao vendorSoftwareProductDaoMock;
+ @Mock
+ private ComponentDao componentDaoMock;
+
+ @InjectMocks
+ private MonitoringMibEnricher monitoringMibEnricher;
+
+
+ @BeforeMethod(alwaysRun = true)
+ public void injectDoubles() {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void testEnrichComponent() throws Exception {
+ String vspId = "123";
+ String componentId = "1111111111";
+ Version version = new Version();
+ version.setMajor(1);
+ version.setMinor(0);
+
+ ComponentEntity componentEntity = getComponentEntity(vspId, version, componentId);
+ setMockToEnrichComponent(vspId, componentId, version);
+ monitoringMibEnricher.enrichComponent(componentEntity, vspId, version);
+
+ String componentName = componentEntity.getComponentCompositionData().getName();
+
+ ArgumentCaptor<ServiceArtifact> expectedServiceArtifact =
+ ArgumentCaptor.forClass(ServiceArtifact.class);
+ Mockito.verify(enrichedServiceModelDaoMock, atLeastOnce())
+ .storeExternalArtifact(expectedServiceArtifact.capture());
+ Assert
+ .assertEquals(expectedServiceArtifact.getValue().getName().startsWith(componentName), true);
+ Assert.assertEquals(expectedServiceArtifact.getValue().getName(),
+ componentName + File.separator + ArtifactCategory.DEPLOYMENT.getDisplayName() +
+ File.separator + ArtifactType.SNMP_POLL + File.separator + "mib1.yml");
+
+ }
+
+ @Test
+ public void testEnrich() throws Exception {
+ EnrichmentInfo enrichmentInfo = new EnrichmentInfo();
+ Version version = new Version();
+ version.setMajor(1);
+ version.setMinor(0);
+ String vspId = "123";
+ enrichmentInfo.setKey(vspId);
+ enrichmentInfo.setVersion(version);
+ String componentId1 = "1111111111";
+ String componentId2 = "2222222222";
+
+
+ Collection<ComponentEntity> returnedComponents = new ArrayList<>();
+ returnedComponents.add(getComponentEntity(vspId, version, componentId1));
+ returnedComponents.add(getComponentEntity(vspId, version, componentId2));
+
+ Mockito.when(componentDaoMock.list(anyObject()))
+ .thenReturn(returnedComponents);
+ setMockToEnrichComponent(vspId, componentId1, version);
+
+ monitoringMibEnricher.enrich(enrichmentInfo);
+ Mockito.verify(enrichedServiceModelDaoMock, times(8)).storeExternalArtifact(anyObject());
+
+ }
+
+ private void setMockToEnrichComponent(String vspId, String componentId, Version version) {
+ MibEntity returnedArtifact = new MibEntity();
+ returnedArtifact.setVspId(vspId);
+ returnedArtifact.setVersion(version);
+ returnedArtifact.setComponentId(componentId);
+ returnedArtifact.setType(ArtifactType.SNMP_POLL);
+ returnedArtifact.setArtifactName("mib.zip");
+ returnedArtifact.setArtifact(getMibByteBuffer("/mock/enrichMib/MIB.zip"));
+
+ Mockito.when(mibDaoMock.getByType(anyObject()))
+ .thenReturn(Optional.of(returnedArtifact));
+ Mockito.doNothing().when(enrichedServiceModelDaoMock).storeExternalArtifact(anyObject());
+ }
+
+ private ComponentEntity getComponentEntity(String vspId, Version version, String componentId) {
+ ComponentEntity componentEntity = new ComponentEntity();
+ componentEntity.setId(componentId);
+ componentEntity.setVspId(vspId);
+ componentEntity.setVersion(version);
+
+ String componentName = vspId + "enrichMib_server";
+ String compositionData = "{\n" +
+ " \"name\": \"org.openecomp.resource.vfc.nodes.heat." + componentName + "\",\n" +
+ " \"displayName\": \"" + componentName + "\"\n" +
+ "}";
+ componentEntity.setCompositionData(compositionData);
+ return componentEntity;
+ }
+
+ private ByteBuffer getMibByteBuffer(String fileName) {
+ InputStream mibFile = FileUtils.getFileInputStream(this.getClass().getResource(fileName));
+ byte[] mibBytes = FileUtils.toByteArray(mibFile);
+ return ByteBuffer.wrap(mibBytes);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricherTest.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricherTest.java
new file mode 100644
index 0000000000..cfb241483a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/external/artifact/ProcessArtifactEnricherTest.java
@@ -0,0 +1,128 @@
+package org.openecomp.sdc.enrichment.impl.external.artifact;
+
+import org.mockito.ArgumentCaptor;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.core.enrichment.types.ArtifactCategory;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.types.ServiceArtifact;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.enrichment.EnrichmentInfo;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessType;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import java.io.File;
+import java.io.InputStream;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Collection;
+
+import static org.mockito.Matchers.anyObject;
+import static org.mockito.Mockito.atLeastOnce;
+import static org.mockito.Mockito.when;
+
+public class ProcessArtifactEnricherTest {
+ @Mock
+ ProcessDao processDaoMock;
+ @Mock
+ EnrichedServiceModelDao enrichedServiceModelDaoMock;
+ @Mock
+ VendorSoftwareProductDao vendorSoftwareProductDaoMock;
+
+ @InjectMocks
+ ProcessArtifactEnricher processArtifactEnricher;
+
+
+ @BeforeMethod(alwaysRun = true)
+ public void injectDoubles() {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void testEnrichComponent() throws Exception {
+ String vspId = "123";
+ String componentId = "1111111111";
+ Version version = new Version();
+ version.setMajor(1);
+ version.setMinor(0);
+
+ ComponentEntity componentEntity = getComponentEntity(vspId, version, componentId);
+ setMockToEnrichComponent(vspId, componentId, version);
+
+ ProcessEntity entity = new ProcessEntity(vspId, version, componentId, null);
+ ProcessEntity processEntity = new ProcessEntity();
+ processEntity.setType(ProcessType.Lifecycle_Operations);
+ processEntity.setVspId(vspId);
+ processEntity.setVersion(version);
+ processEntity.setComponentId(componentId);
+
+ Collection<ComponentEntity> componentList = new ArrayList<ComponentEntity>();
+ componentList.add(componentEntity);
+ when(vendorSoftwareProductDaoMock.listComponents(vspId, version)).thenReturn(componentList);
+
+ Collection<ProcessEntity> list = new ArrayList<ProcessEntity>();
+ list.add(processEntity);
+ when(processDaoMock.list(entity)).thenReturn(list);
+
+ EnrichmentInfo info = new EnrichmentInfo();
+ info.setVersion(version);
+ info.setKey(vspId);
+ processArtifactEnricher.enrich(info);
+
+ String componentName = componentEntity.getComponentCompositionData().getName();
+
+ ArgumentCaptor<ServiceArtifact> expectedServiceArtifact =
+ ArgumentCaptor.forClass(ServiceArtifact.class);
+ Mockito.verify(enrichedServiceModelDaoMock, atLeastOnce())
+ .storeExternalArtifact(expectedServiceArtifact.capture());
+ Assert
+ .assertEquals(expectedServiceArtifact.getValue().getName().startsWith(componentName), true);
+ Assert.assertEquals(expectedServiceArtifact.getValue().getName(),
+ componentName + File.separator + ArtifactCategory.DEPLOYMENT.getDisplayName() +
+ File.separator + "Lifecycle Operations" + File.separator + "artifact_1kb.txt");
+
+ }
+
+ private void setMockToEnrichComponent(String vspId, String componentId, Version version) {
+ ProcessEntity returnedArtifact = new ProcessEntity();
+ returnedArtifact.setVspId(vspId);
+ returnedArtifact.setVersion(version);
+ returnedArtifact.setComponentId(componentId);
+ returnedArtifact.setArtifactName("artifact_1kb.txt");
+ returnedArtifact.setArtifact(getMibByteBuffer("/mock/enrichProcess/artifact_1kb.txt"));
+
+ Mockito.when(processDaoMock.get(anyObject()))
+ .thenReturn(returnedArtifact);
+ Mockito.doNothing().when(enrichedServiceModelDaoMock).storeExternalArtifact(anyObject());
+ }
+
+ private ComponentEntity getComponentEntity(String vspId, Version version, String componentId) {
+ ComponentEntity componentEntity = new ComponentEntity();
+ componentEntity.setId(componentId);
+ componentEntity.setVspId(vspId);
+ componentEntity.setVersion(version);
+
+ String componentName = vspId + "enrichMib_server";
+ String compositionData = "{\n" +
+ " \"name\": \"org.openecomp.resource.vfc.nodes.heat." + componentName + "\",\n" +
+ " \"displayName\": \"" + componentName + "\"\n" +
+ "}";
+ componentEntity.setCompositionData(compositionData);
+ return componentEntity;
+ }
+
+ private ByteBuffer getMibByteBuffer(String fileName) {
+ InputStream mibFile = FileUtils.getFileInputStream(this.getClass().getResource(fileName));
+ byte[] mibBytes = FileUtils.toByteArray(mibFile);
+ return ByteBuffer.wrap(mibBytes);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricherTest.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricherTest.java
new file mode 100644
index 0000000000..ae1b613f75
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/AbstractSubstituteToscaEnricherTest.java
@@ -0,0 +1,162 @@
+package org.openecomp.sdc.enrichment.impl.tosca;
+
+
+import static org.mockito.Mockito.when;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.HIGH_AVAIL_MODE;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MANDATORY;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MAX_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MIN_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.VFC_NAMING_CODE;
+
+import org.apache.commons.collections.map.HashedMap;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+
+public class AbstractSubstituteToscaEnricherTest extends BaseToscaEnrichmentTest {
+ @Mock
+ ComponentQuestionnaireData utilMock;
+
+ @InjectMocks
+ AbstractSubstituteToscaEnricher toscaEnricher;
+
+ String vspId = null;
+ Version version = new Version();
+
+ @BeforeMethod(alwaysRun = true)
+ public void injectDoubles() {
+ MockitoAnnotations.initMocks(this);
+ vspId = "123";
+ version.setMajor(1);
+ version.setMinor(0);
+ }
+
+ @Test
+ public void testEnrich() throws Exception {
+ outputFilesPath = "/mock/enrichHA/out/";
+
+ ToscaServiceModel toscaServiceModel =
+ loadToscaServiceModel("/mock/enrichHA/in/", "/mock/toscaGlobalServiceTemplates/",
+ "MainServiceTemplate.yaml");
+
+ Map<String, Map<String, Object>> componentTypetoParams = new HashMap();
+ Map<String, Object> innerProps = new HashedMap();
+ innerProps.put(MANDATORY, "YES");
+ innerProps.put(HIGH_AVAIL_MODE, "geo-activestandby");
+ innerProps.put(VFC_NAMING_CODE, "Code1");
+ innerProps.put(MIN_INSTANCES, 1);
+ innerProps.put(MAX_INSTANCES, 2);
+
+ componentTypetoParams.put("pd_server", innerProps);
+
+ when(utilMock.getPropertiesfromCompQuestionnaire(vspId,version)).thenReturn
+ (componentTypetoParams);
+
+ Map<String,String> map = new HashMap<String,String>();
+ Map<String, List<String>> sourceToTargetDependencies = new HashMap<String, List<String>>();
+ List<String> targets = new ArrayList<String>();
+ targets.add("fe"); targets.add("be");
+ sourceToTargetDependencies.put("pd_server", targets);
+
+ when(utilMock.getSourceToTargetComponent()).thenReturn(map);
+
+ when(utilMock.populateDependencies(vspId,version,map)).thenReturn(sourceToTargetDependencies);
+
+ Map<String, List<ErrorMessage>> errors =
+ toscaEnricher.enrich(toscaServiceModel, vspId, version );
+
+ compareActualAndExpectedModel(toscaServiceModel);
+
+ Assert.assertEquals(errors.size(), 0);
+ }
+
+ @Test
+ public void testEnrichWithoutServiceTemplateFilter() throws Exception {
+ outputFilesPath = "/mock/enrichHANoServiceTemplateFilter/out";
+
+ ToscaServiceModel toscaServiceModel =
+ loadToscaServiceModel("/mock/enrichHANoServiceTemplateFilter/in",
+ "/mock/toscaGlobalServiceTemplates/",
+ "MainServiceTemplate.yaml");
+
+ Map<String, Map<String, Object>> componentTypetoParams = new HashMap();
+ Map<String, Object> innerProps = new HashedMap();
+ innerProps.put(MANDATORY, "NO");
+ innerProps.put(HIGH_AVAIL_MODE, "");
+ innerProps.put(VFC_NAMING_CODE, "pd_server_code1");
+ innerProps.put(MIN_INSTANCES, null);
+ innerProps.put(MAX_INSTANCES, null);
+
+ componentTypetoParams.put("pd_server", innerProps);
+
+ when(utilMock.getPropertiesfromCompQuestionnaire(vspId,version)).thenReturn
+ (componentTypetoParams);
+
+ Map<String,String> map = new HashMap<String,String>();
+ Map<String, List<String>> sourceToTargetDependencies = new HashMap<String, List<String>>();
+
+ when(utilMock.getSourceToTargetComponent()).thenReturn(map);
+ when(utilMock.populateDependencies(vspId,version,map)).thenReturn(sourceToTargetDependencies);
+
+ Map<String, List<ErrorMessage>> errors =
+ toscaEnricher.enrich(toscaServiceModel, vspId, version );
+
+ compareActualAndExpectedModel(toscaServiceModel);
+
+ Assert.assertEquals(errors.size(), 0);
+ }
+
+ @Test
+ public void testEnrichNotMandatory() throws Exception {
+ outputFilesPath = "/mock/enrichHANotMandatory/out";
+
+ ToscaServiceModel toscaServiceModel =
+ loadToscaServiceModel("/mock/enrichHANotMandatory/in",
+ "/mock/toscaGlobalServiceTemplates/",
+ "MainServiceTemplate.yaml");
+
+ Map<String, Map<String, Object>> componentTypetoParams = new HashMap();
+ Map<String, Object> innerProps = new HashedMap();
+
+ innerProps.put(MANDATORY, "");
+ innerProps.put(MIN_INSTANCES, 1);
+ innerProps.put(MAX_INSTANCES, 5);
+
+ componentTypetoParams.put("pd_server_vm", innerProps);
+
+ when(utilMock.getPropertiesfromCompQuestionnaire(vspId,version)).thenReturn
+ (componentTypetoParams);
+
+ Map<String,String> map = new HashMap<String,String>();
+ Map<String, List<String>> sourceToTargetDependencies = new HashMap<String, List<String>>();
+ List<String> targets = new ArrayList<String>();
+ targets.add("fe");
+ sourceToTargetDependencies.put("pd_server_vm", targets);
+
+ when(utilMock.getSourceToTargetComponent()).thenReturn(map);
+
+ when(utilMock.populateDependencies(vspId,version,map)).thenReturn(sourceToTargetDependencies);
+
+ when(utilMock.getSourceToTargetComponent()).thenReturn(map);
+ when(utilMock.populateDependencies(vspId,version,map)).thenReturn(sourceToTargetDependencies);
+
+ Map<String, List<ErrorMessage>> errors =
+ toscaEnricher.enrich(toscaServiceModel, vspId, version );
+
+ compareActualAndExpectedModel(toscaServiceModel);
+
+ Assert.assertEquals(errors.size(), 0);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/BaseToscaEnrichmentTest.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/BaseToscaEnrichmentTest.java
new file mode 100644
index 0000000000..366bd82eab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/BaseToscaEnrichmentTest.java
@@ -0,0 +1,206 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.enrichment.impl.tosca;
+
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
+import org.openecomp.sdc.tosca.services.ToscaUtil;
+import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+
+import java.io.*;
+import java.net.URL;
+import java.nio.file.NotDirectoryException;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipInputStream;
+
+import static org.junit.Assert.assertEquals;
+
+public class BaseToscaEnrichmentTest {
+
+ protected String outputFilesPath;
+
+ public static ToscaServiceModel loadToscaServiceModel(String serviceTemplatesPath,
+ String globalServiceTemplatesPath,
+ String entryDefinitionServiceTemplate)
+ throws IOException {
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ Map<String, ServiceTemplate> serviceTemplates = new HashMap<>();
+ if (entryDefinitionServiceTemplate == null) {
+ entryDefinitionServiceTemplate = "MainServiceTemplate.yaml";
+ }
+
+ loadServiceTemplates(serviceTemplatesPath, toscaExtensionYamlUtil, serviceTemplates);
+ if (globalServiceTemplatesPath != null) {
+ loadServiceTemplates(globalServiceTemplatesPath, toscaExtensionYamlUtil, serviceTemplates);
+ }
+
+ return new ToscaServiceModel(null, serviceTemplates, entryDefinitionServiceTemplate);
+ }
+
+ private static void loadServiceTemplates(String serviceTemplatesPath,
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil,
+ Map<String, ServiceTemplate> serviceTemplates)
+ throws IOException {
+ URL urlFile = BaseToscaEnrichmentTest.class.getResource(serviceTemplatesPath);
+ if (urlFile != null) {
+ File pathFile = new File(urlFile.getFile());
+ Collection<File> files = org.apache.commons.io.FileUtils.listFiles(pathFile, null, true);
+ if (files != null) {
+ addServiceTemplateFiles(serviceTemplates, files, toscaExtensionYamlUtil);
+ } else {
+ throw new NotDirectoryException(serviceTemplatesPath);
+ }
+ } else {
+ throw new NotDirectoryException(serviceTemplatesPath);
+ }
+ }
+
+ private static void addServiceTemplateFiles(Map<String, ServiceTemplate> serviceTemplates,
+ Collection<File> files,
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil)
+ throws IOException {
+ for (File file : files) {
+ try (InputStream yamlFile = new FileInputStream(file)) {
+ ServiceTemplate serviceTemplateFromYaml =
+ toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
+ serviceTemplates.put(ToscaUtil.getServiceTemplateFileName(serviceTemplateFromYaml), serviceTemplateFromYaml);
+ try {
+ yamlFile.close();
+ } catch (IOException ignore) {
+ }
+ } catch (FileNotFoundException exception) {
+ throw exception;
+ } catch (IOException exception) {
+ throw exception;
+ }
+ }
+ }
+
+
+ /*public static ToscaServiceModel loadToscaServiceModel(String serviceTemplatesPath,
+ String globalServiceTemplatesPath,
+ String entryDefinitionServiceTemplate)
+ throws IOException {
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ Map<String, ServiceTemplate> serviceTemplates = new HashMap<>();
+ if (entryDefinitionServiceTemplate == null) {
+ entryDefinitionServiceTemplate = "MainServiceTemplate.yaml";
+ }
+
+ loadServiceTemplates(serviceTemplatesPath, toscaExtensionYamlUtil, serviceTemplates);
+ if (globalServiceTemplatesPath != null) {
+ loadServiceTemplates(globalServiceTemplatesPath, toscaExtensionYamlUtil, serviceTemplates);
+ }
+
+ return new ToscaServiceModel(null, serviceTemplates, entryDefinitionServiceTemplate);
+ }
+
+ private static void loadServiceTemplates(String serviceTemplatesPath,
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil,
+ Map<String, ServiceTemplate> serviceTemplates)
+ throws IOException {
+ URL urlFile = BaseToscaEnrichmentTest.class.getResource(serviceTemplatesPath);
+ if (urlFile != null) {
+ File pathFile = new File(urlFile.getFile());
+ File[] files = pathFile.listFiles();
+ if (files != null) {
+ addServiceTemplateFiles(serviceTemplates, files, toscaExtensionYamlUtil);
+ } else {
+ throw new NotDirectoryException(serviceTemplatesPath);
+ }
+ } else {
+ throw new NotDirectoryException(serviceTemplatesPath);
+ }
+ }
+
+ private static void addServiceTemplateFiles(Map<String, ServiceTemplate> serviceTemplates,
+ File[] files,
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil)
+ throws IOException {
+ for (File file : files) {
+ try (InputStream yamlFile = new FileInputStream(file)) {
+ ServiceTemplate serviceTemplateFromYaml =
+ toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
+ serviceTemplates.put(file.getName(), serviceTemplateFromYaml);
+ try {
+ yamlFile.close();
+ } catch (IOException ignore) {
+ }
+ } catch (FileNotFoundException e) {
+ throw e;
+ } catch (IOException e) {
+ throw e;
+ }
+ }
+ }*/
+
+ void compareActualAndExpectedModel(ToscaServiceModel toscaServiceModel) throws IOException {
+
+ ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
+ byte[] toscaActualFile = toscaFileOutputService.createOutputFile(toscaServiceModel, null);
+
+ URL url = BaseToscaEnrichmentTest.class.getResource(outputFilesPath);
+ Set<String> expectedResultFileNameSet = new HashSet<>();
+ Map<String, byte[]> expectedResultMap = new HashMap<>();
+ String path = url.getPath();
+ File pathFile = new File(path);
+ File[] files = pathFile.listFiles();
+ org.junit.Assert.assertNotNull("model is empty", files);
+ for (File expectedFile : files) {
+ expectedResultFileNameSet.add(expectedFile.getName());
+ try (FileInputStream input = new FileInputStream(expectedFile)) {
+ expectedResultMap.put(expectedFile.getName(), FileUtils.toByteArray(input));
+ }
+ }
+
+ try (InputStream fis = new ByteArrayInputStream(toscaActualFile);
+ ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis))) {
+ ZipEntry entry;
+ String name;
+ String expected;
+ String actual;
+
+ while ((entry = zis.getNextEntry()) != null) {
+ name = entry.getName()
+ .substring(entry.getName().lastIndexOf(File.separator) + 1, entry.getName().length());
+ if (expectedResultFileNameSet.contains(name)) {
+ expected = new String(expectedResultMap.get(name)).trim().replace("\r", "");
+ actual = new String(FileUtils.toByteArray(zis)).trim().replace("\r", "");
+ assertEquals("difference in file: " + name, expected, actual);
+
+ expectedResultFileNameSet.remove(name);
+ }
+ }
+ if (expectedResultFileNameSet.isEmpty()) {
+ expectedResultFileNameSet.forEach(System.out::println);
+ }
+ }
+ assertEquals(0, expectedResultFileNameSet.size());
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireDataTest.java b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireDataTest.java
new file mode 100644
index 0000000000..d281604227
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentQuestionnaireDataTest.java
@@ -0,0 +1,115 @@
+package org.openecomp.sdc.enrichment.impl.tosca;
+
+import static org.mockito.Mockito.doReturn;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.HIGH_AVAIL_MODE;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MANDATORY;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MAX_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.MIN_INSTANCES;
+import static org.openecomp.sdc.enrichment.impl.util.EnrichmentConstants.VFC_NAMING_CODE;
+
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.versioning.VersioningManager;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class ComponentQuestionnaireDataTest {
+ private static String VSP_ID = "vspId";
+ public static final Version VERSION01 = new Version(0, 1);
+ private static final Version VERSION10 = new Version(1, 0);
+
+ @Mock
+ private ComponentDao componentDaoMock;
+
+ @Mock
+ private ComponentDependencyModelDao componentDependencyDaoMock;
+
+ @InjectMocks
+ private static ComponentQuestionnaireData componentQuestionnaireData;
+
+ @BeforeMethod
+ public void setUp() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void testGetData() {
+ ComponentEntity componentEntity = new ComponentEntity(VSP_ID, VERSION01,"ID1" );
+ componentEntity.setCompositionData("{\"name\": \"org.openecomp.resource.vfc.nodes.heat.be\"," +
+ "\"displayName\": \"be\", \"vfcCode\": \"be_1\"}");
+ componentEntity.setQuestionnaireData
+ ("{\"highAvailabilityAndLoadBalancing\":{\"isComponentMandatory\" : \"NO\"," +
+ "\"highAvailabilityMode\":\"geo-activeactive\"},\"compute\":{\"numOfVMs\" " +
+ ":{\"maximum\" : 5, \"minimum\" : 0}}}");
+
+ List<ComponentEntity> entitites = new ArrayList<ComponentEntity>();
+ entitites.add(componentEntity);
+
+ doReturn(entitites).when(componentDaoMock).listCompositionAndQuestionnaire(VSP_ID, VERSION01);
+
+ final Map<String, Map<String, Object>> propertiesfromCompQuestionnaire =
+ componentQuestionnaireData.getPropertiesfromCompQuestionnaire(VSP_ID, VERSION01);
+
+ final Map<String, Object> be = propertiesfromCompQuestionnaire.get("be");
+ Assert.assertEquals(be.get(VFC_NAMING_CODE) , "be_1");
+ Assert.assertEquals(be.get(MANDATORY) ,"NO");
+ Assert.assertEquals(be.get(HIGH_AVAIL_MODE) ,"geo-activeactive");
+ Assert.assertEquals(be.get(MIN_INSTANCES) ,null);
+ Assert.assertEquals(be.get(MAX_INSTANCES) ,5);
+
+ final Map<String, String> sourceToTargetComponent =
+ componentQuestionnaireData.getSourceToTargetComponent();
+
+ Assert.assertEquals("be", sourceToTargetComponent.get("ID1"));
+ }
+
+
+ @Test
+ public void testPopulateDepnendency() {
+ ComponentDependencyModelEntity sourceComponent = new ComponentDependencyModelEntity(VSP_ID, VERSION01,"ID1" );
+ sourceComponent.setSourceComponentId("Comp1");
+ sourceComponent.setTargetComponentId("Comp2");
+ sourceComponent.setRelation("dependsOn");
+
+ ComponentDependencyModelEntity targetComponent = new ComponentDependencyModelEntity(VSP_ID,
+ VERSION01,"ID2" );
+ targetComponent.setSourceComponentId("Comp1");
+ targetComponent.setTargetComponentId("Comp3");
+ targetComponent.setRelation("dependsOn");
+
+ List<ComponentDependencyModelEntity> entitites = new ArrayList<ComponentDependencyModelEntity>();
+ entitites.add(sourceComponent);
+ entitites.add(targetComponent);
+
+ doReturn(entitites).when(componentDependencyDaoMock).list(new ComponentDependencyModelEntity
+ (VSP_ID, VERSION01, null));
+
+ final Map<String, String> sourceToTargetComponent = new HashMap<String, String>();
+ sourceToTargetComponent.put("Comp1", "fe");
+ sourceToTargetComponent.put("Comp2", "be");
+ sourceToTargetComponent.put("Comp3", "smp");
+ final Map<String, List<String>> dependencies =
+ componentQuestionnaireData.populateDependencies(VSP_ID, VERSION01, sourceToTargetComponent);
+
+ List<String> expectedTargets = new ArrayList<String>();
+ expectedTargets.add("be"); expectedTargets.add("smp");
+
+ Assert.assertEquals(dependencies.get("fe"), expectedTargets);
+
+
+
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..3cb1c1740c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,1134 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: ComputeGlobalTypes
+ template_version: 1.0.0
+description: Compute TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.Compute:
+ derived_from: tosca.nodes.Compute
+ capabilities:
+ disk.ephemeral.size:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: GB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.ephemeral.size
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Size of ephemeral disk
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: instance
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: instance
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Existence of instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ memory:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM allocated to the instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.iops:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: count/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.iops
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk iops
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu.delta:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ns
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu.delta
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: CPU time used since previous datapoint
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Delta
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.capacity:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.capacity
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk that the instance can see
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.write.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.read.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.latency:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.latency
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk latency
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The physical size in bytes of the image container on the host
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu_util:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: '%'
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu_util
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average CPU utilization
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.allocation:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.allocation
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk per device occupied by the instance on the host machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.write.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.write.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.latency:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.latency
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk latency per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ns
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: CPU time used
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.read.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.root.size:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: GB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.root.size
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Size of root disk
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.write.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ vcpus:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: vcpus
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of virtual CPUs allocated to the instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.iops:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: count/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.iops
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk iops per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The physical size in bytes of the image container on the host per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.write.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ instance:type:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: instance
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: instance:type
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Existence of instance <type> (OpenStack types)
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.allocation:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.allocation
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk occupied by the instance on the host machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.read.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.read.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ memory.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM used by the instance from the amount of its allocated memory
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.capacity:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.capacity
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk per device that the instance can see
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ memory.resident:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory.resident
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM used by the instance on the physical machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.write.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/PortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/PortGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..a3a466ba26
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichCeilometerOutput/PortGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,46 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: PortGlobalTypes
+ template_version: 1.0.0
+description: Port TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.cp.nodes.network.Port:
+ derived_from: tosca.nodes.network.Port
+ capabilities:
+ network.incoming.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.incoming.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of incoming bytes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichComputeCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichComputeCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..3cb1c1740c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichComputeCeilometerOutput/ComputeGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,1134 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: ComputeGlobalTypes
+ template_version: 1.0.0
+description: Compute TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.Compute:
+ derived_from: tosca.nodes.Compute
+ capabilities:
+ disk.ephemeral.size:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: GB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.ephemeral.size
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Size of ephemeral disk
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: instance
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: instance
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Existence of instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ memory:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM allocated to the instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.iops:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: count/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.iops
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk iops
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu.delta:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ns
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu.delta
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: CPU time used since previous datapoint
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Delta
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.capacity:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.capacity
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk that the instance can see
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.write.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.read.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.latency:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.latency
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk latency
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The physical size in bytes of the image container on the host
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu_util:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: '%'
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu_util
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average CPU utilization
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.allocation:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.allocation
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk per device occupied by the instance on the host machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.write.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.write.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of writes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.latency:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.latency
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk latency per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ cpu:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ns
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: cpu
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: CPU time used
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.read.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.root.size:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: GB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.root.size
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Size of root disk
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.write.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ vcpus:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: ms
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: vcpus
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of virtual CPUs allocated to the instance
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.iops:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: count/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.iops
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average disk iops per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The physical size in bytes of the image container on the host per device
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.read.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.read.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of read requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.device.write.requests.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.write.requests.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ instance:type:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: instance
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: instance:type
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Existence of instance <type> (OpenStack types)
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.allocation:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.allocation
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk occupied by the instance on the host machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ disk.read.bytes.rate:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B/s
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.bytes.rate
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Average rate of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.read.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.read.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of reads
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ memory.usage:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory.usage
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM used by the instance from the amount of its allocated memory
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.device.capacity:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.device.capacity
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: The amount of disk per device that the instance can see
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: disk
+ status: SUPPORTED
+ memory.resident:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: MB
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: memory.resident
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Volume of RAM used by the instance on the physical machine
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Gauge
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED
+ disk.write.requests:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: request
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: disk.write.requests
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of write requests
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: compute
+ status: SUPPORTED \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..feddcc3536
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/MainServiceTemplate.yaml
@@ -0,0 +1,479 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_floating_ip_count:
+ - false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_0_ip_count:
+ - false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_1_floating_ip_count:
+ - false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_ip_count:
+ - false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_mac_count:
+ - false
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_0_mac_count:
+ - false
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ vm_type_tag: pd_server
+ nfc_naming_code: pd_server
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..4e6fc86a67
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/in/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,378 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_floating_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_pd01_port_0_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_floating_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_mac_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_count:
+ get_input:
+ - port_pd01_port_1_mac_count
+ - index_value
+ ip_count:
+ get_input:
+ - port_pd01_port_1_ip_count
+ - index_value
+ floating_ip_count:
+ get_input:
+ - port_pd01_port_1_floating_ip_count
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_1_network_role_tag
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pd_01
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_count:
+ get_input:
+ - port_pd01_port_0_mac_count
+ - index_value
+ ip_count:
+ get_input:
+ - port_pd01_port_0_ip_count
+ - index_value
+ floating_ip_count:
+ get_input:
+ - port_pd01_port_0_floating_ip_count
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_0_network_role_tag
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pd_01
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - link
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..0570cebdc2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHA/out/MainServiceTemplate.yaml
@@ -0,0 +1,483 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_floating_ip_count:
+ - false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_0_ip_count:
+ - false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_1_floating_ip_count:
+ - false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_ip_count:
+ - false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_mac_count:
+ - false
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_0_mac_count:
+ - false
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ mandatory: true
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ vm_type_tag: pd_server
+ high_availablity: geo-activestandby
+ nfc_naming_code: Code1
+ min_instances: 1
+ max_instances: 2
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..65c2efbbc5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/in/MainServiceTemplate.yaml
@@ -0,0 +1,476 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server_1:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_floating_ip_count:
+ - false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_0_ip_count:
+ - false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_1_floating_ip_count:
+ - false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_ip_count:
+ - false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_mac_count:
+ - false
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_0_mac_count:
+ - false
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ vm_type_tag: pd_server
+ nfc_naming_code: pd_server
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3d8cacd11e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANoServiceTemplateFilter/out/MainServiceTemplate.yaml
@@ -0,0 +1,478 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server_1:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_floating_ip_count:
+ - false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_0_ip_count:
+ - false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_1_floating_ip_count:
+ - false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_ip_count:
+ - false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_mac_count:
+ - false
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_0_mac_count:
+ - false
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ vm_type_tag: pd_server
+ service_template_filter:
+ mandatory: false
+ nfc_naming_code: pd_server_code1
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..612a4068eb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/MainServiceTemplate.yaml
@@ -0,0 +1,479 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server_vm:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_floating_ip_count:
+ - false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_0_ip_count:
+ - false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_1_floating_ip_count:
+ - false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_ip_count:
+ - false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_mac_count:
+ - false
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_0_mac_count:
+ - false
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ vm_type_tag: pd_server_vm
+ nfc_naming_code: pd_server_vm
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..4e6fc86a67
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/in/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,378 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_floating_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_pd01_port_0_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_floating_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_ip_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_mac_count:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_count:
+ get_input:
+ - port_pd01_port_1_mac_count
+ - index_value
+ ip_count:
+ get_input:
+ - port_pd01_port_1_ip_count
+ - index_value
+ floating_ip_count:
+ get_input:
+ - port_pd01_port_1_floating_ip_count
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_1_network_role_tag
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pd_01
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_count:
+ get_input:
+ - port_pd01_port_0_mac_count
+ - index_value
+ ip_count:
+ get_input:
+ - port_pd01_port_0_ip_count
+ - index_value
+ floating_ip_count:
+ get_input:
+ - port_pd01_port_0_floating_ip_count
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_0_network_role_tag
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pd_01
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - link
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..99ae78a60c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichHANotMandatory/out/MainServiceTemplate.yaml
@@ -0,0 +1,481 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server_vm:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_floating_ip_count:
+ - false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_0_ip_count:
+ - false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_1_floating_ip_count:
+ - false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_ip_count:
+ - false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_mac_count:
+ - false
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_0_mac_count:
+ - false
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ nfc_naming_code: pd_server_vm
+ vm_type_tag: pd_server_vm
+ min_instances: 1
+ max_instances: 5
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichMib/MIB.zip b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichMib/MIB.zip
new file mode 100644
index 0000000000..121afd2994
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichMib/MIB.zip
Binary files differ
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichPortCeilometerOutput/PortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichPortCeilometerOutput/PortGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..a3a466ba26
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichPortCeilometerOutput/PortGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,46 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: PortGlobalTypes
+ template_version: 1.0.0
+description: Port TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.cp.nodes.network.Port:
+ derived_from: tosca.nodes.network.Port
+ capabilities:
+ network.incoming.bytes:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ default: B
+ status: SUPPORTED
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ default: network.incoming.bytes
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ default: Number of incoming bytes
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ default: Cumulative
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ default: network
+ status: SUPPORTED \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichProcess/artifact_1kb.txt b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichProcess/artifact_1kb.txt
new file mode 100644
index 0000000000..bc1dfa15a9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/enrichProcess/artifact_1kb.txt
@@ -0,0 +1,2 @@
+Upload_Artifacts
+The test verifies uploading an artifact when action status is locked.
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingComputeGlobalTypeServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingComputeGlobalTypeServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9de22a8736
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingComputeGlobalTypeServiceTemplates/ComputeGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,11 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: ComputeGlobalTypes
+ template_version: 1.0.0
+description: Compute TOSCA Global Types.
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.aaaa:
+ derived_from: tosca.nodes.Compute \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingPortGlobalTypeServiceTemplates/PortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingPortGlobalTypeServiceTemplates/PortGlobalTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..b8be7513f8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/missingPortGlobalTypeServiceTemplates/PortGlobalTypesServiceTemplate.yaml
@@ -0,0 +1,11 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: PortGlobalTypes
+ template_version: 1.0.0
+description: Port TOSCA Global Types
+imports:
+- common_definitions:
+ file: CommonGlobalTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.cp.nodes.network.bbb:
+ derived_from: tosca.nodes.network.Port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..8431a3d1b8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,518 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_0_floating_ip_count:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_pd01_port_0_ip_count:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_floating_ip_count:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_ip_count:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_mac_count:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_mac_count:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/_index.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/_index.yml
new file mode 100644
index 0000000000..bd2d88fac0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/_index.yml
@@ -0,0 +1,13 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp-heat/_index.yml
+ version: '1.0'
+imports:
+- openecomp_index:
+ file: ../openecomp/_index.yml
+- nodes:
+ file: nodes.yml
+- groups:
+ file: groups.yml
+ data:
+ file: data.yml
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/data.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/data.yml
new file mode 100644
index 0000000000..c9a098f02a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/data.yml
@@ -0,0 +1,762 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp-heat/data.yml
+ version: '1.0'
+imports:
+- heat_index:
+ file: _index.yml
+data_types:
+ org.openecomp.datatypes.heat.network.AddressPair:
+ derived_from: tosca.datatypes.Root
+ description: MAC/IP address pairs
+ properties:
+ mac_address:
+ type: string
+ description: MAC address
+ required: false
+ status: SUPPORTED
+ ip_address:
+ type: string
+ description: IP address
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
+ derived_from: tosca.datatypes.Root
+ description: Nova server network expand properties for port
+ properties:
+ port_security_enabled:
+ type: boolean
+ description: Flag to enable/disable port security on the port
+ required: false
+ status: SUPPORTED
+ mac_address:
+ type: string
+ description: MAC address to give to this port
+ required: false
+ status: SUPPORTED
+ admin_state_up:
+ type: boolean
+ description: The administrative state of this port
+ required: false
+ default: true
+ status: SUPPORTED
+ qos_policy:
+ type: string
+ description: The name or ID of QoS policy to attach to this port
+ required: false
+ status: SUPPORTED
+ allowed_address_pairs:
+ type: list
+ description: Additional MAC/IP address pairs allowed to pass through the port
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.AddressPair
+ binding:vnic_type:
+ type: string
+ description: The vnic type to be bound on the neutron port
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - macvtap
+ - direct
+ - normal
+ value_specs:
+ type: map
+ description: Extra parameters to include in the request
+ required: false
+ default: {
+ }
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
+ derived_from: tosca.datatypes.Root
+ description: source port pairs
+ properties:
+ network_policy_entries_policy_rule_src_ports_start_port:
+ type: string
+ description: Start port
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_src_ports_end_port:
+ type: string
+ description: End port
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair:
+ derived_from: tosca.datatypes.Root
+ description: Virtual Machine Sub Interface Address Pair.
+ properties:
+ address_mode:
+ type: string
+ description: Address Mode.
+ required: false
+ status: SUPPORTED
+ ip:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp
+ description: IP.
+ required: false
+ status: SUPPORTED
+ mac:
+ type: string
+ description: Mac.
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
+ derived_from: tosca.datatypes.Root
+ description: destination addresses
+ properties:
+ network_policy_entries_policy_rule_dst_addresses_virtual_network:
+ type: string
+ description: Destination addresses Virtual network
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
+ derived_from: tosca.datatypes.Root
+ description: policy rule
+ properties:
+ network_policy_entries_policy_rule_dst_addresses:
+ type: list
+ description: Destination addresses
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork
+ network_policy_entries_policy_rule_dst_ports:
+ type: list
+ description: Destination ports
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs
+ network_policy_entries_policy_rule_protocol:
+ type: string
+ description: Protocol
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_src_addresses:
+ type: list
+ description: Source addresses
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork
+ network_policy_entries_policy_rule_direction:
+ type: string
+ description: Direction
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_src_ports:
+ type: list
+ description: Source ports
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs
+ network_policy_entries_policy_rule_action_list:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList
+ description: Action list
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
+ derived_from: tosca.datatypes.Root
+ description: Rules Pairs
+ properties:
+ remote_group_id:
+ type: string
+ description: The remote group ID to be associated with this security group rule
+ required: false
+ status: SUPPORTED
+ protocol:
+ type: string
+ description: The protocol that is matched by the security group rule
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - tcp
+ - udp
+ - icmp
+ ethertype:
+ type: string
+ description: Ethertype of the traffic
+ required: false
+ default: IPv4
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - IPv4
+ - IPv6
+ port_range_max:
+ type: integer
+ description: 'The maximum port number in the range that is matched by the
+ security group rule. '
+ required: false
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 65535
+ remote_ip_prefix:
+ type: string
+ description: The remote IP prefix (CIDR) to be associated with this security group rule
+ required: false
+ status: SUPPORTED
+ remote_mode:
+ type: string
+ description: Whether to specify a remote group or a remote IP prefix
+ required: false
+ default: remote_ip_prefix
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - remote_ip_prefix
+ - remote_group_id
+ direction:
+ type: string
+ description: The direction in which the security group rule is applied
+ required: false
+ default: ingress
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - egress
+ - ingress
+ port_range_min:
+ type: integer
+ description: The minimum port number in the range that is matched by the security group rule.
+ required: false
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 65535
+ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet:
+ derived_from: tosca.datatypes.Root
+ description: Network Ipam Ref Data Subnet
+ properties:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ type: string
+ description: Network ipam refs data ipam subnets ip prefix len
+ required: false
+ status: SUPPORTED
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ type: string
+ description: Network ipam refs data ipam subnets ip prefix
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties:
+ derived_from: tosca.datatypes.Root
+ description: Virtual Machine Sub Interface VLAN Properties.
+ properties:
+ sub_interface_vlan_tag:
+ type: string
+ description: Sub Interface VLAN Tag.
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp:
+ derived_from: tosca.datatypes.Root
+ description: Virtual Machine Sub Interface Address Pair IP.
+ properties:
+ ip_prefix:
+ type: string
+ description: IP Prefix.
+ required: false
+ status: SUPPORTED
+ ip_prefix_len:
+ type: integer
+ description: IP Prefix Len.
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
+ derived_from: tosca.datatypes.Root
+ description: source addresses
+ properties:
+ network_policy_entries_policy_rule_src_addresses_virtual_network:
+ type: string
+ description: Source addresses Virtual network
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
+ derived_from: tosca.datatypes.Root
+ description: Action List
+ properties:
+ network_policy_entries_policy_rule_action_list_simple_action:
+ type: string
+ description: Simple Action
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_action_list_apply_service:
+ type: list
+ description: Apply Service
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
+ derived_from: tosca.datatypes.Root
+ description: Network Ipam Ref Data
+ properties:
+ network_ipam_refs_data_ipam_subnets:
+ type: list
+ description: Network ipam refs data ipam subnets
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList
+ org.openecomp.datatypes.heat.FileInfo:
+ derived_from: tosca.datatypes.Root
+ description: Heat File Info
+ properties:
+ file:
+ type: string
+ description: The required URI string (relative or absolute) which can be used to locate the file
+ required: true
+ status: SUPPORTED
+ file_type:
+ type: string
+ description: The type of the file
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - base
+ - env
+ - volume
+ - network
+ org.openecomp.datatypes.heat.network.contrail.InterfaceData:
+ derived_from: tosca.datatypes.Root
+ description: Interface Data
+ properties:
+ static_routes:
+ type: list
+ description: An ordered list of static routes to be added to this interface
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.port.StaticRoute
+ virtual_network:
+ type: string
+ description: Virtual Network for this interface
+ required: true
+ status: SUPPORTED
+ allowed_address_pairs:
+ type: list
+ description: List of allowed address pair for this interface
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.AddressPair
+ ip_address:
+ type: string
+ description: IP for this interface
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
+ derived_from: tosca.datatypes.Root
+ description: network policy refs data
+ properties:
+ network_policy_refs_data_sequence:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
+ description: Network Policy ref data sequence
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
+ derived_from: tosca.datatypes.Root
+ description: destination port pairs
+ properties:
+ network_policy_entries_policy_rule_dst_ports_start_port:
+ type: string
+ description: Start port
+ required: false
+ status: SUPPORTED
+ network_policy_entries_policy_rule_dst_ports_end_port:
+ type: string
+ description: End port
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.network.AllocationPool:
+ derived_from: tosca.datatypes.Root
+ description: The start and end addresses for the allocation pool
+ properties:
+ start:
+ type: string
+ description: Start address for the allocation pool
+ required: false
+ status: SUPPORTED
+ end:
+ type: string
+ description: End address for the allocation pool
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
+ derived_from: tosca.datatypes.Root
+ description: source and destination port pairs
+ properties:
+ start_port:
+ type: string
+ description: Start port
+ required: false
+ status: SUPPORTED
+ end_port:
+ type: string
+ description: End port
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
+ derived_from: tosca.datatypes.Root
+ description: source and destination addresses
+ properties:
+ virtual_network:
+ type: string
+ description: Virtual network
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
+ derived_from: tosca.datatypes.Root
+ description: list of policy rules
+ properties:
+ policy_rule:
+ type: list
+ description: Contrail network rule
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
+ org.openecomp.datatypes.heat.network.contrail.AddressPair:
+ derived_from: tosca.datatypes.Root
+ description: Address Pair
+ properties:
+ address_mode:
+ type: string
+ description: Address mode active-active or active-standy
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - active-active
+ - active-standby
+ prefix:
+ type: string
+ description: IP address prefix
+ required: false
+ status: SUPPORTED
+ mac_address:
+ type: string
+ description: Mac address
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
+ derived_from: tosca.datatypes.Root
+ description: Virtual Machine Sub Interface Mac Address.
+ properties:
+ mac_address:
+ type: list
+ description: Mac Addresses List.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList:
+ derived_from: tosca.datatypes.Root
+ description: Network Ipam Ref Data Subnet List
+ properties:
+ network_ipam_refs_data_ipam_subnets_subnet:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
+ description: Network ipam refs data ipam subnets
+ required: false
+ status: SUPPORTED
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ type: string
+ description: Network ipam refs data ipam subnets addr from start
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
+ derived_from: tosca.datatypes.Root
+ description: list of policy rules
+ properties:
+ network_policy_entries_policy_rule:
+ type: list
+ description: Contrail network rule
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
+ org.openecomp.datatypes.heat.novaServer.network.AddressInfo:
+ derived_from: tosca.datatypes.network.NetworkInfo
+ description: Network addresses with corresponding port id
+ properties:
+ port_id:
+ type: string
+ description: Port id
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs:
+ derived_from: tosca.datatypes.Root
+ description: Virtual Machine Sub Interface Address Pairs.
+ properties:
+ allowed_address_pair:
+ type: list
+ description: Addresses pair List.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
+ org.openecomp.datatypes.heat.neutron.port.FixedIps:
+ derived_from: tosca.datatypes.Root
+ description: subnet/ip_address
+ properties:
+ subnet:
+ type: string
+ description: Subnet in which to allocate the IP address for this port
+ required: false
+ status: SUPPORTED
+ ip_address:
+ type: string
+ description: IP address desired in the subnet for this port
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
+ derived_from: tosca.datatypes.Root
+ description: Virtual Machine Interface Properties.
+ properties:
+ service_interface_type:
+ type: string
+ description: Service Interface Type.
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.network.subnet.HostRoute:
+ derived_from: tosca.datatypes.Root
+ description: Host route info for the subnet
+ properties:
+ destination:
+ type: string
+ description: The destination for static route
+ required: false
+ status: SUPPORTED
+ nexthop:
+ type: string
+ description: The next hop for the destination
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
+ derived_from: tosca.datatypes.Root
+ description: static route
+ properties:
+ prefix:
+ type: string
+ description: Route prefix
+ required: false
+ status: SUPPORTED
+ next_hop:
+ type: string
+ description: Next hop
+ required: false
+ status: SUPPORTED
+ next_hop_type:
+ type: string
+ description: Next hop type
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
+ derived_from: tosca.datatypes.Root
+ description: Substitution Filter
+ properties:
+ substitute_service_template:
+ type: string
+ description: Substitute Service Template
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of the substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ count:
+ type: string
+ description: Count
+ required: false
+ default: 1
+ status: SUPPORTED
+ scaling_enabled:
+ type: boolean
+ description: Indicates whether service scaling is enabled
+ required: false
+ default: true
+ status: SUPPORTED
+ mandatory:
+ type: boolean
+ description: Mandatory
+ required: false
+ default: true
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.network.neutron.Subnet:
+ derived_from: tosca.datatypes.Root
+ description: A subnet represents an IP address block that can be used for assigning IP addresses to virtual instances
+ properties:
+ tenant_id:
+ type: string
+ description: The ID of the tenant who owns the network
+ required: false
+ status: SUPPORTED
+ enable_dhcp:
+ type: boolean
+ description: Set to true if DHCP is enabled and false if DHCP is disabled
+ required: false
+ default: true
+ status: SUPPORTED
+ ipv6_address_mode:
+ type: string
+ description: IPv6 address mode
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - dhcpv6-stateful
+ - dhcpv6-stateless
+ - slaac
+ ipv6_ra_mode:
+ type: string
+ description: IPv6 RA (Router Advertisement) mode
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - dhcpv6-stateful
+ - dhcpv6-stateless
+ - slaac
+ value_specs:
+ type: map
+ description: Extra parameters to include in the request
+ required: false
+ default: {
+ }
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ allocation_pools:
+ type: list
+ description: The start and end addresses for the allocation pools
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.AllocationPool
+ subnetpool:
+ type: string
+ description: The name or ID of the subnet pool
+ required: false
+ status: SUPPORTED
+ dns_nameservers:
+ type: list
+ description: A specified set of DNS name servers to be used
+ required: false
+ default: [
+ ]
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ host_routes:
+ type: list
+ description: The gateway IP address
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.subnet.HostRoute
+ ip_version:
+ type: integer
+ description: The gateway IP address
+ required: false
+ default: 4
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - 4
+ - 6
+ name:
+ type: string
+ description: The name of the subnet
+ required: false
+ status: SUPPORTED
+ prefixlen:
+ type: integer
+ description: Prefix length for subnet allocation from subnet pool
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ cidr:
+ type: string
+ description: The CIDR
+ required: false
+ status: SUPPORTED
+ gateway_ip:
+ type: string
+ description: The gateway IP address
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrail.network.rule.Rule:
+ derived_from: tosca.datatypes.Root
+ description: policy rule
+ properties:
+ src_ports:
+ type: list
+ description: Source ports
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
+ protocol:
+ type: string
+ description: Protocol
+ required: false
+ status: SUPPORTED
+ dst_addresses:
+ type: list
+ description: Destination addresses
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
+ apply_service:
+ type: string
+ description: Service to apply
+ required: false
+ status: SUPPORTED
+ dst_ports:
+ type: list
+ description: Destination ports
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
+ src_addresses:
+ type: list
+ description: Source addresses
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
+ direction:
+ type: string
+ description: Direction
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
+ derived_from: tosca.datatypes.Root
+ description: network policy refs data sequence
+ properties:
+ network_policy_refs_data_sequence_major:
+ type: integer
+ description: Network Policy ref data sequence Major
+ required: false
+ status: SUPPORTED
+ network_policy_refs_data_sequence_minor:
+ type: integer
+ description: Network Policy ref data sequence Minor
+ required: false
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/groups.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/groups.yml
new file mode 100644
index 0000000000..86a8f8dc71
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/groups.yml
@@ -0,0 +1,22 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp-heat/groups.yml
+ version: '1.0'
+imports:
+- heat_index:
+ file: _index.yml
+group_types:
+ org.openecomp.groups.heat.HeatStack:
+ derived_from: org.openecomp.groups.VfModule
+ description: Grouped all heat resources which are in the same heat stack
+ properties:
+ heat_file:
+ type: string
+ description: Heat file which associate to this group/heat stack
+ required: true
+ status: SUPPORTED
+ description:
+ type: string
+ description: group description
+ required: true
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/nodes.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/nodes.yml
new file mode 100644
index 0000000000..dc5f1f6273
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp-heat/nodes.yml
@@ -0,0 +1,1191 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp-heat/nodes.yml
+ version: '1.0'
+imports:
+- heat_index:
+ file: _index.yml
+node_types:
+ org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availability_zone:
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ attributes:
+ tenant_id:
+ type: string
+ description: Tenant id of the Service Instance
+ status: SUPPORTED
+ fq_name:
+ type: string
+ description: The FQ name of the service instance
+ status: SUPPORTED
+ service_template_name:
+ type: string
+ description: Service Template of the Service Instance
+ status: SUPPORTED
+ show:
+ type: string
+ description: All attributes
+ status: SUPPORTED
+ active_vms:
+ type: string
+ description: Number of service VMs active for this Service Instance
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: The name of the service instance
+ status: SUPPORTED
+ virtual_machines:
+ type: string
+ description: Service VMs for the Service Instance
+ status: SUPPORTED
+ status:
+ type: string
+ description: Status of the service instance
+ status: SUPPORTED
+ org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface:
+ derived_from: org.openecomp.resource.cp.nodes.network.CP
+ properties:
+ name:
+ type: string
+ description: Virtual Machine Interface name
+ required: false
+ status: SUPPORTED
+ security_group_refs:
+ type: list
+ description: List of security groups.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ virtual_network_refs:
+ type: list
+ description: List of virtual networks.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ virtual_machine_interface_properties:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties
+ description: virtual machine interface properties.
+ required: false
+ status: SUPPORTED
+ port_tuple_refs:
+ type: list
+ description: List of port tuples.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ virtual_machine_interface_mac_addresses:
+ type: list
+ description: List of mac addresses.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ virtual_machine_interface_allowed_address_pairs:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs
+ description: Virtual Machine Interface allowed address pairs.
+ required: false
+ status: SUPPORTED
+ attributes:
+ fq_name:
+ type: string
+ description: The FQ name of the Virtual Network.
+ status: SUPPORTED
+ show:
+ type: string
+ description: All attributes.
+ status: SUPPORTED
+ capabilities:
+ binding:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules:
+ derived_from: tosca.nodes.Root
+ properties:
+ entries:
+ type: org.openecomp.datatypes.heat.contrail.network.rule.RuleList
+ description: A symbolic name for this contrail network rule
+ required: false
+ status: SUPPORTED
+ name:
+ type: string
+ description: A symbolic name for this contrail network rule
+ required: false
+ status: SUPPORTED
+ attributes:
+ tenant_id:
+ type: string
+ description: tenant_id
+ status: SUPPORTED
+ fq_name:
+ type: string
+ description: fq_name
+ status: SUPPORTED
+ show:
+ type: string
+ description: All attributes.
+ status: SUPPORTED
+ rules:
+ type: list
+ description: List of rules
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - network:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules:
+ derived_from: tosca.nodes.Root
+ properties:
+ description:
+ type: string
+ description: Description of the security group
+ required: false
+ status: SUPPORTED
+ name:
+ type: string
+ description: A symbolic name for this security group, which is not required to be unique.
+ required: false
+ status: SUPPORTED
+ rules:
+ type: list
+ description: List of security group rules
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule
+ attributes:
+ show:
+ type: string
+ description: Detailed information about resource
+ status: SUPPORTED
+ requirements:
+ - port:
+ capability: tosca.capabilities.Attachment
+ node: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork:
+ derived_from: org.openecomp.resource.vl.nodes.network.VL
+ properties:
+ shared:
+ type: string
+ description: Is virtual network shared
+ required: false
+ status: SUPPORTED
+ forwarding_mode:
+ type: string
+ description: forwarding mode of the virtual network
+ required: false
+ status: SUPPORTED
+ external:
+ type: string
+ description: Is virtual network external
+ required: false
+ status: SUPPORTED
+ allow_transit:
+ type: string
+ description: Whether this network should be transitive.
+ required: false
+ status: SUPPORTED
+ flood_unknown_unicast:
+ type: string
+ description: flood L2 packets on network
+ required: false
+ status: SUPPORTED
+ route_targets:
+ type: list
+ description: route targets associated with the virtual network
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ subnets:
+ type: map
+ description: Network related subnets
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.neutron.Subnet
+ attributes:
+ fq_name:
+ type: string
+ description: fq_name
+ status: SUPPORTED
+ show:
+ type: string
+ description: All attributes.
+ status: SUPPORTED
+ subnets_name:
+ type: list
+ description: Subnets name of this network
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ subnets_show:
+ type: map
+ description: Detailed information about each subnet
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ subnets:
+ type: map
+ description: Network related subnets
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.neutron.Subnet
+ capabilities:
+ attachment:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.vfc.nodes.heat.nova.Server:
+ derived_from: org.openecomp.resource.vfc.nodes.Compute
+ properties:
+ admin_pass:
+ type: string
+ description: The administrator password for the server
+ required: false
+ status: SUPPORTED
+ availability_zone:
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ image:
+ type: string
+ description: The ID or name of the image to boot with
+ required: false
+ status: SUPPORTED
+ image_update_policy:
+ type: string
+ description: Policy on how to apply an image-id update
+ required: false
+ default: REBUILD
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - REBUILD_PRESERVE_EPHEMERAL
+ - REPLACE
+ - REBUILD
+ metadata:
+ type: json
+ description: Arbitrary JSON metadata to store for this server
+ required: false
+ status: SUPPORTED
+ contrail_service_instance_ind:
+ type: boolean
+ description: Nova server related to service instance indicator
+ required: false
+ default: false
+ status: SUPPORTED
+ user_data_update_policy:
+ type: string
+ description: Policy on how to apply a user_data update
+ required: false
+ default: REPLACE
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - REPLACE
+ - IGNORE
+ flavor_update_policy:
+ type: string
+ description: Policy on how to apply a flavor update
+ required: false
+ default: RESIZE
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - RESIZE
+ - REPLACE
+ user_data:
+ type: string
+ description: User data script to be executed by cloud-init
+ required: false
+ default: ''
+ status: SUPPORTED
+ flavor:
+ type: string
+ description: The ID or name of the flavor to boot onto
+ required: true
+ status: SUPPORTED
+ key_name:
+ type: string
+ description: Name of keypair to inject into the server
+ required: false
+ status: SUPPORTED
+ reservation_id:
+ type: string
+ description: A UUID for the set of servers being requested
+ required: false
+ status: SUPPORTED
+ security_groups:
+ type: list
+ description: List of security group names or IDs
+ required: false
+ default: [
+ ]
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ config_drive:
+ type: boolean
+ description: enable config drive on the server
+ required: false
+ status: SUPPORTED
+ personality:
+ type: map
+ description: A map of files to create/overwrite on the server upon boot
+ required: false
+ default: {
+ }
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ software_config_transport:
+ type: string
+ description: How the server should receive the metadata required for software configuration
+ required: false
+ default: POLL_SERVER_CFN
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - POLL_SERVER_CFN
+ - POLL_SERVER_HEAT
+ - POLL_TEMP_URL
+ - ZAQAR_MESSAGE
+ user_data_format:
+ type: string
+ description: How the user_data should be formatted for the server
+ required: false
+ default: HEAT_CFNTOOLS
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - SOFTWARE_CONFIG
+ - RAW
+ - HEAT_CFNTOOLS
+ diskConfig:
+ type: string
+ description: Control how the disk is partitioned when the server is created
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - AUTO
+ - MANUAL
+ name:
+ type: string
+ description: Server name
+ required: false
+ status: SUPPORTED
+ scheduler_hints:
+ type: map
+ description: Arbitrary key-value pairs specified by the client to help boot a server
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ accessIPv4:
+ type: string
+ description: The manually assigned alternative public IPv4 address of the server
+ status: SUPPORTED
+ addresses:
+ type: map
+ description: A dict of all network addresses with corresponding port_id
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.novaServer.network.AddressInfo
+ accessIPv6:
+ type: string
+ description: The manually assigned alternative public IPv6 address of the server
+ status: SUPPORTED
+ instance_name:
+ type: string
+ description: AWS compatible instance name
+ status: SUPPORTED
+ name:
+ type: string
+ description: Name of the server
+ status: SUPPORTED
+ show:
+ type: string
+ description: Detailed information about resource
+ status: SUPPORTED
+ console_urls:
+ type: string
+ description: URLs of servers consoles
+ status: SUPPORTED
+ org.openecomp.resource.vfc.rules.nodes.heat.network.contrailV2.NetworkRules:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: A symbolic name for this contrail v2 network rule
+ required: false
+ status: SUPPORTED
+ network_policy_entries:
+ type: org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList
+ description: A symbolic name for this contrail v2 network rule
+ required: false
+ status: SUPPORTED
+ attributes:
+ fq_name:
+ type: string
+ description: fq_name
+ status: SUPPORTED
+ requirements:
+ - network:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ org.openecomp.resource.cp.nodes.heat.network.neutron.Port:
+ derived_from: org.openecomp.resource.cp.nodes.network.CP
+ properties:
+ port_security_enabled:
+ type: boolean
+ description: Flag to enable/disable port security on the network
+ required: false
+ status: SUPPORTED
+ device_id:
+ type: string
+ description: Device ID of this port
+ required: false
+ status: SUPPORTED
+ qos_policy:
+ type: string
+ description: The name or ID of QoS policy to attach to this network
+ required: false
+ status: SUPPORTED
+ allowed_address_pairs:
+ type: list
+ description: Additional MAC/IP address pairs allowed to pass through the port
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.AddressPair
+ binding:vnic_type:
+ type: string
+ description: The vnic type to be bound on the neutron port
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - macvtap
+ - direct
+ - normal
+ value_specs:
+ type: map
+ description: Extra parameters to include in the request
+ required: false
+ default: {
+ }
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ device_owner:
+ type: string
+ description: Name of the network owning the port
+ required: false
+ status: SUPPORTED
+ network:
+ type: string
+ description: Network this port belongs to
+ required: false
+ status: SUPPORTED
+ replacement_policy:
+ type: string
+ description: Policy on how to respond to a stack-update for this resource
+ required: false
+ default: AUTO
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - REPLACE_ALWAYS
+ - AUTO
+ security_groups:
+ type: list
+ description: List of security group names or IDs
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ fixed_ips:
+ type: list
+ description: Desired IPs for this port
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.neutron.port.FixedIps
+ mac_address:
+ type: string
+ description: MAC address to give to this port
+ required: false
+ status: SUPPORTED
+ admin_state_up:
+ type: boolean
+ description: A boolean value specifying the administrative status of the network
+ required: false
+ default: true
+ status: SUPPORTED
+ name:
+ type: string
+ description: A symbolic name for this port
+ required: false
+ status: SUPPORTED
+ attributes:
+ tenant_id:
+ type: string
+ description: Tenant owning the port
+ status: SUPPORTED
+ network_id:
+ type: string
+ description: Unique identifier for the network owning the port
+ status: SUPPORTED
+ qos_policy_id:
+ type: string
+ description: The QoS policy ID attached to this network
+ status: SUPPORTED
+ show:
+ type: string
+ description: Detailed information about resource
+ status: SUPPORTED
+ subnets:
+ type: list
+ description: Subnets of this network
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ status:
+ type: string
+ description: The status of the network
+ status: SUPPORTED
+ capabilities:
+ attachment:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ org.openecomp.resource.vl.nodes.heat.network.neutron.Net:
+ derived_from: org.openecomp.resource.vl.nodes.network.VL
+ properties:
+ dhcp_agent_ids:
+ type: list
+ description: The IDs of the DHCP agent to schedule the network
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ tenant_id:
+ type: string
+ description: The ID of the tenant which will own the network
+ required: false
+ status: SUPPORTED
+ port_security_enabled:
+ type: boolean
+ description: Flag to enable/disable port security on the network
+ required: false
+ status: SUPPORTED
+ shared:
+ type: boolean
+ description: Whether this network should be shared across all tenants
+ required: false
+ default: false
+ status: SUPPORTED
+ admin_state_up:
+ type: boolean
+ description: A boolean value specifying the administrative status of the network
+ required: false
+ default: true
+ status: SUPPORTED
+ qos_policy:
+ type: string
+ description: The name or ID of QoS policy to attach to this network
+ required: false
+ status: SUPPORTED
+ subnets:
+ type: map
+ description: Network related subnets
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.neutron.Subnet
+ value_specs:
+ type: map
+ description: Extra parameters to include in the request
+ required: false
+ default: {
+ }
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ qos_policy_id:
+ type: string
+ description: The QoS policy ID attached to this network
+ status: SUPPORTED
+ show:
+ type: string
+ description: Detailed information about resource
+ status: SUPPORTED
+ subnets_name:
+ type: list
+ description: Subnets name of this network
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ subnets:
+ type: map
+ description: Network related subnets
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.neutron.Subnet
+ mtu:
+ type: scalar-unit.size
+ description: The maximum transmission unit size(in bytes) for the network
+ status: SUPPORTED
+ status:
+ type: string
+ description: The status of the network
+ status: SUPPORTED
+ capabilities:
+ attachment:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.cp.nodes.heat.network.contrail.Port:
+ derived_from: org.openecomp.resource.cp.nodes.network.CP
+ properties:
+ static_routes:
+ type: list
+ description: An ordered list of static routes to be added to this interface
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.port.StaticRoute
+ virtual_network:
+ type: string
+ description: Virtual Network for this interface
+ required: true
+ status: SUPPORTED
+ static_route:
+ type: boolean
+ description: Static route enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ allowed_address_pairs:
+ type: list
+ description: List of allowed address pair for this interface
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.AddressPair
+ shared_ip:
+ type: boolean
+ description: Shared ip enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ ip_address:
+ type: string
+ description: IP for this interface
+ required: false
+ status: SUPPORTED
+ interface_type:
+ type: string
+ description: Interface type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ attributes:
+ fq_name:
+ type: string
+ description: fq_name
+ status: SUPPORTED
+ org.openecomp.resource.vfc.nodes.heat.contrail.Compute:
+ derived_from: org.openecomp.resource.vfc.nodes.Compute
+ properties:
+ flavor:
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ availability_zone:
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ service_type:
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ availability_zone_enable:
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ service_mode:
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ attributes:
+ tenant_id:
+ type: string
+ description: Tenant id of the VM
+ status: SUPPORTED
+ fq_name:
+ type: string
+ description: fq_name
+ status: SUPPORTED
+ show:
+ type: string
+ description: All attributes
+ status: SUPPORTED
+ active_vms:
+ type: string
+ description: Number of active VMs
+ status: SUPPORTED
+ virtual_machines:
+ type: string
+ description: VMs of this compute
+ status: SUPPORTED
+ status:
+ type: string
+ description: status of the compute
+ status: SUPPORTED
+ org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface:
+ derived_from: org.openecomp.resource.cp.nodes.network.SubInterface
+ properties:
+ virtual_machine_interface_refs:
+ type: list
+ description: List of virtual machine interface.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ name:
+ type: string
+ description: Virtual Machine Sub Interface VLAN name
+ required: false
+ status: SUPPORTED
+ virtual_network_refs:
+ type: list
+ description: List of virtual networks.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ virtual_machine_interface_properties:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties
+ description: virtual machine interface properties.
+ required: false
+ status: SUPPORTED
+ virtual_machine_interface_allowed_address_pairs:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs
+ description: Virtual Machine Sub Interface allowed address pairs.
+ required: false
+ status: SUPPORTED
+ virtual_machine_interface_mac_addresses:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress
+ description: List of mac addresses.
+ required: false
+ status: SUPPORTED
+ security_group_refs:
+ type: list
+ description: List of security groups.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_tuple_refs:
+ type: list
+ description: List of port tuples.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ fq_name:
+ type: string
+ description: The FQ name of the Virtual Network.
+ status: SUPPORTED
+ show:
+ type: string
+ description: All attributes.
+ status: SUPPORTED
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.CP
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork:
+ derived_from: org.openecomp.resource.vl.nodes.network.VL
+ properties:
+ network_ipam_refs_data:
+ type: list
+ description: IPAM references Data
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData
+ network_policy_refs_data:
+ type: list
+ description: Policy references data
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData
+ network_ipam_refs:
+ type: list
+ description: IPAM references
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ network_policy_refs:
+ type: list
+ description: Policy references
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ subnets:
+ type: map
+ description: Network related subnets
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.neutron.Subnet
+ attributes:
+ fq_name:
+ type: string
+ description: fq_name
+ status: SUPPORTED
+ subnets_name:
+ type: list
+ description: Subnets name of this network
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ subnets_show:
+ type: map
+ description: Detailed information about each subnet
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ subnets:
+ type: map
+ description: Network related subnets
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.neutron.Subnet
+ capabilities:
+ attachment:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.vfc.nodes.heat.cinder.Volume:
+ derived_from: org.openecomp.resource.vfc.nodes.volume
+ properties:
+ availability_zone:
+ type: string
+ description: The availability zone in which the volume will be created
+ required: false
+ status: SUPPORTED
+ image:
+ type: string
+ description: If specified, the name or ID of the image to create the volume from
+ required: false
+ status: SUPPORTED
+ metadata:
+ type: map
+ description: Key/value pairs to associate with the volume
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ volume_type:
+ type: string
+ description: If specified, the type of volume to use, mapping to a specific backend
+ required: false
+ status: SUPPORTED
+ description:
+ type: string
+ description: A description of the volume
+ required: false
+ status: SUPPORTED
+ device_type:
+ type: string
+ description: Device type
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - cdrom
+ - disk
+ disk_bus:
+ type: string
+ description: 'Bus of the device: hypervisor driver chooses a suitable default
+ if omitted'
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - ide
+ - lame_bus
+ - scsi
+ - usb
+ - virtio
+ backup_id:
+ type: string
+ description: If specified, the backup to create the volume from
+ required: false
+ status: SUPPORTED
+ source_volid:
+ type: string
+ description: If specified, the volume to use as source
+ required: false
+ status: SUPPORTED
+ boot_index:
+ type: integer
+ description: Integer used for ordering the boot disks
+ required: false
+ status: SUPPORTED
+ size:
+ type: scalar-unit.size
+ description: The requested storage size (default unit is MB)
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 1 GB
+ read_only:
+ type: boolean
+ description: Enables or disables read-only access mode of volume
+ required: false
+ status: SUPPORTED
+ name:
+ type: string
+ description: A name used to distinguish the volume
+ required: false
+ status: SUPPORTED
+ scheduler_hints:
+ type: map
+ description: Arbitrary key-value pairs specified by the client to help the Cinder scheduler creating a volume
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ swap_size:
+ type: scalar-unit.size
+ description: The size of the swap, in MB
+ required: false
+ status: SUPPORTED
+ delete_on_termination:
+ type: boolean
+ description: Indicate whether the volume should be deleted when the server is terminated
+ required: false
+ status: SUPPORTED
+ multiattach:
+ type: boolean
+ description: Whether allow the volume to be attached more than once
+ required: false
+ status: SUPPORTED
+ attributes:
+ display_description:
+ type: string
+ description: Description of the volume
+ status: SUPPORTED
+ attachments:
+ type: string
+ description: The list of attachments of the volume
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ encrypted:
+ type: boolean
+ description: Boolean indicating if the volume is encrypted or not
+ status: SUPPORTED
+ show:
+ type: string
+ description: Detailed information about resource
+ status: SUPPORTED
+ created_at:
+ type: timestamp
+ description: The timestamp indicating volume creation
+ status: SUPPORTED
+ display_name:
+ type: string
+ description: Name of the volume
+ status: SUPPORTED
+ metadata_values:
+ type: map
+ description: Key/value pairs associated with the volume in raw dict form
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ bootable:
+ type: boolean
+ description: Boolean indicating if the volume can be booted or not
+ status: SUPPORTED
+ status:
+ type: string
+ description: The current status of the volume
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/_index.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/_index.yml
new file mode 100644
index 0000000000..897fff2714
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/_index.yml
@@ -0,0 +1,17 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp/_index.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: ../tosca/_index.yml
+- capabilities:
+ file: capabilities.yml
+- nodes:
+ file: nodes.yml
+- relationships:
+ file: relationships.yml
+- groups:
+ file: groups.yml
+- data:
+ file: data.yml
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/capabilities.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/capabilities.yml
new file mode 100644
index 0000000000..a36b5569f5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/capabilities.yml
@@ -0,0 +1,77 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp/capabilities.yml
+ version: '1.0'
+imports:
+- openecomp_index:
+ file: _index.yml
+capability_types:
+ org.openecomp.capabilities.attachment.DeploymentFlavor:
+ derived_from: tosca.capabilities.Attachment
+ description: The Node capability indicates the base capabilities of a TOSCA Node Type.
+ properties:
+ DeploymentFlavor:
+ type: map
+ description: Deployment flavors instance
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.DeploymentFlavor
+ org.openecomp.capabilities.metric.SnmpTrap:
+ derived_from: org.openecomp.capabilities.Metric
+ description: A node type that includes the Metric capability indicates that it can be monitored using snmp trap.
+ properties:
+ oid:
+ type: string
+ description: Object Id of the metric
+ required: true
+ status: SUPPORTED
+ org.openecomp.capabilities.AllottedResource:
+ derived_from: tosca.capabilities.Root
+ org.openecomp.capabilities.metric.SnmpPolling:
+ derived_from: org.openecomp.capabilities.Metric
+ description: A node type that includes the Metric capability indicates that it can be monitored using snmp polling.
+ properties:
+ oid:
+ type: string
+ description: Object Id of the metric
+ required: true
+ status: SUPPORTED
+ org.openecomp.capabilities.metric.Ceilometer:
+ derived_from: org.openecomp.capabilities.Metric
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ properties:
+ name:
+ type: string
+ description: Ceilometer metric type name to monitor. (The name ceilometer is using)
+ required: true
+ status: SUPPORTED
+ org.openecomp.capabilities.Metric:
+ derived_from: tosca.capabilities.Endpoint
+ description: A node type that includes the Metric capability indicates that it can be monitored.
+ properties:
+ unit:
+ type: string
+ description: Unit of the metric value
+ required: true
+ status: SUPPORTED
+ description:
+ type: string
+ description: Description of the metric
+ required: false
+ status: SUPPORTED
+ type:
+ type: string
+ description: Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.
+ required: true
+ status: SUPPORTED
+ category:
+ type: string
+ description: Category of the metric, for an example, compute, disk, network, storage and etc.
+ required: false
+ status: SUPPORTED
+ attributes:
+ value:
+ type: string
+ description: Runtime monitored value
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/data.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/data.yml
new file mode 100644
index 0000000000..bc869cc6da
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/data.yml
@@ -0,0 +1,475 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp/data.yml
+ version: '1.0'
+imports:
+- openecomp_index:
+ file: _index.yml
+data_types:
+ org.openecomp.datatypes.network.ProviderNetwork:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ is_provider_network:
+ type: boolean
+ description: \"true\" indicates that this a Neutron provider type of network
+ required: true
+ status: SUPPORTED
+ physical_network_name:
+ type: string
+ description: |
+ Identifies the NUMA processor cluster to which this physical network interface belongs. NUMA instance correlates to the first digit of the Physical Network Name suffix (e.g. \"01\" = NUMA 0, \"11\" = NUMA 1)
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - Physnet41
+ - Physnet42
+ - Physnet43
+ - Physnet44
+ - Physnet21
+ - Physnet22
+ numa:
+ type: string
+ description: |
+ PNIC instance within the NUMA processor cluster PNIC Instance correlates to the second digit of the Physical Network Name suffix (e.g. "01" = PNIC 1, "02" = "PNIC 2)
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - NUMA 0
+ - NUMA 1
+ pnic_instance:
+ type: integer
+ description: PNIC instance within the NUMA processor cluster
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.DeploymentFlavor:
+ derived_from: tosca.datatypes.Root
+ description: Deployment Flavor
+ properties:
+ name:
+ type: string
+ description: Deployment Flavor Name
+ required: true
+ status: SUPPORTED
+ license_feature_group:
+ type: org.openecomp.datatypes.FeatureGroup
+ description: license feature group associated with Deployment Flavor
+ required: true
+ status: SUPPORTED
+ compute_size:
+ type: org.openecomp.datatypes.ComputeFlavor
+ description: Size of VM
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.FeatureGroup:
+ derived_from: tosca.datatypes.Root
+ description: License Feature Group
+ properties:
+ license_feature_group_ref:
+ type: string
+ description: Deployment Flavor Name
+ required: true
+ status: SUPPORTED
+ part_number:
+ type: string
+ description: refrence part number related to feature group
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.EcompHoming:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ ecomp_selected_instance_node_target:
+ type: boolean
+ description: |
+ "true" indicates that the target deployment node for this instance will be
+ auto-selected by OPENECOMP "false" indicates operator-supplied instance target deployment
+ node required (e.g. VID will present a prompt to operator and collect the operator-selected target node for the deployment of this Network instance).
+ required: true
+ default: false
+ status: SUPPORTED
+ homing_policy:
+ type: string
+ description: Referenc to a service level homing policy that OPENECOMP will use for instance deployment target node
+ required: false
+ status: SUPPORTED
+ instance_node_target:
+ type: string
+ description: Instance target deployment node
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.AssignmentRequirements:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ is_required:
+ type: boolean
+ description: |
+ "true" indicates that assignment is required
+ required: true
+ default: false
+ status: SUPPORTED
+ count:
+ type: integer
+ description: number of assignments required
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.network.IpRequirements:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ ip_version:
+ type: integer
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - 4
+ - 6
+ ip_count:
+ type: org.openecomp.datatypes.AssignmentRequirements
+ description: identifies the number of ip address to assign to the CP from the plan
+ required: true
+ status: SUPPORTED
+ floating_ip_count:
+ type: org.openecomp.datatypes.AssignmentRequirements
+ required: false
+ status: SUPPORTED
+ subnet_role:
+ type: string
+ required: false
+ status: SUPPORTED
+ assingment_method:
+ type: string
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - fixed
+ - dhcp
+ org.openecomp.datatypes.network.PhysicalNetwork:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ provider_network:
+ type: boolean
+ description: true indicates that this a Neutron provider type of network
+ required: true
+ status: SUPPORTED
+ physical_network_name:
+ type: string
+ description: |
+ Identifies the NUMA processor cluster to which this physical network interface belongs. NUMA instance correlates to the first digit of the Physical Network Name suffix (e.g. "01" = NUMA 0, "11" = NUMA 1)
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - Physnet-SRIOV-1
+ - Physnet-SRIOV-2
+ - Physnet-SRIOV-11
+ - Physnet-SRIOV-12
+ numa:
+ type: string
+ description: |
+ PNIC instance within the NUMA processor cluster PNIC Instance correlates to the second digit of the Physical Network Name suffix (e.g. "01" = PNIC 1, "02" = "PNIC 2)
+ required: false
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - NUMA 0
+ - NUMA 1
+ pnic_instance:
+ type: integer
+ description: PNIC instance within the NUMA processor cluster
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.network.VlanRequirements:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ vlan_range_plan:
+ type: string
+ description: reference to a vlan range plan
+ required: true
+ status: SUPPORTED
+ vlan_type:
+ type: string
+ description: identifies the vlan type (e.g., c-tag)
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - c-tag
+ - s-tag
+ vlan_count:
+ type: integer
+ description: identifies the number of vlan tags to assign to the CP from the plan
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.ComputeFlavor:
+ derived_from: tosca.datatypes.Root
+ description: Compute Flavor (Size)
+ properties:
+ name:
+ type: string
+ description: Compute Flavor Name
+ required: true
+ status: SUPPORTED
+ num_cpus:
+ type: integer
+ description: Number of cpu
+ required: true
+ status: SUPPORTED
+ disk_size:
+ type: scalar-unit.size
+ description: Disk size
+ required: true
+ status: SUPPORTED
+ mem_size:
+ type: scalar-unit.size
+ description: Memory size
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.network.MacAssignments:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ mac_range_plan:
+ type: string
+ description: reference to a MAC address range plan
+ required: true
+ status: SUPPORTED
+ mac_count:
+ type: integer
+ description: identifies the number of MAC addresses to assign to the CP from the plan
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.network.MacRequirements:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ mac_range_plan:
+ type: string
+ description: reference to a MAC address range plan
+ required: true
+ status: SUPPORTED
+ mac_count:
+ type: org.openecomp.datatypes.AssignmentRequirements
+ description: identifies the number of MAC addresses to assign to the CP from the plan
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.network.SubnetAssignments:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ ip_network_address_plan:
+ type: string
+ description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network
+ required: false
+ status: SUPPORTED
+ dhcp_enabled:
+ type: boolean
+ description: \"true\" indicates the network has 1 or more policies
+ required: false
+ status: SUPPORTED
+ ip_version:
+ type: integer
+ description: The IP version of the subnet
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - 4
+ - 6
+ cidr_mask:
+ type: integer
+ description: The default subnet CIDR mask
+ required: true
+ status: SUPPORTED
+ min_subnets_count:
+ type: integer
+ description: Quantity of subnets that must be initially assigned
+ required: true
+ default: 1
+ status: SUPPORTED
+ org.openecomp.datatypes.Artifact:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ artifact_name:
+ type: string
+ description: Artifcat name
+ required: true
+ status: SUPPORTED
+ artifact_type:
+ type: string
+ description: Artifcat type
+ required: true
+ status: SUPPORTED
+ artifact_uuid:
+ type: string
+ description: Artifcat UUID
+ required: true
+ status: SUPPORTED
+ artifact_checksum:
+ type: string
+ description: Artifact checksum
+ required: true
+ status: SUPPORTED
+ artifact_url:
+ type: string
+ description: Artifcay URL. Can also include only the file name
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.network.IPv4SubnetAssignments:
+ derived_from: org.openecomp.datatypes.network.SubnetAssignments
+ properties:
+ use_ipv4:
+ type: boolean
+ description: Indicates IPv4 subnet assignments
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.Root:
+ derived_from: tosca.datatypes.Root
+ description: |
+ The AT&T root Data Type all other Data Types derive from
+ properties:
+ supplemental_data:
+ type: map
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ description: |
+ A placeholder for missing properties that would be included in future openecomp model
+ versions. fromat <key>:<value>
+ type: string
+ org.openecomp.datatypes.substitution.SubstitutionFiltering:
+ derived_from: tosca.datatypes.Root
+ description: Substitution Filter
+ properties:
+ substitute_service_template:
+ type: string
+ description: Substitute Service Template
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of the substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ count:
+ type: string
+ description: Count
+ required: false
+ default: 1
+ status: SUPPORTED
+ scaling_enabled:
+ type: boolean
+ description: Indicates whether service scaling is enabled
+ required: false
+ default: true
+ status: SUPPORTED
+ mandatory:
+ type: boolean
+ description: Mandatory
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.network.NetworkFlows:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ is_network_policy:
+ type: boolean
+ description: true indicates the network has 1 or more policies
+ required: false
+ default: false
+ status: SUPPORTED
+ network_policy:
+ type: string
+ description: Identifies the specific OPENECOMP Contrail network policy that must be applied to this network (source - from Policy Manager)
+ required: false
+ status: SUPPORTED
+ vpn_binding:
+ type: string
+ description: Identifies the specific VPN Binding entry in A&AI that must be applied when creating this network (source - A&AI)
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.network.NetworkAssignments:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ ecomp_generated_network_assignment:
+ type: boolean
+ description: |
+ "true" indicates that the network assignments will be auto-generated by OPENECOMP "false" indicates operator-supplied Network assignments file upload is required (e.g. VID will present prompt to operator to upload operator-supplied Network assignments file).
+ required: true
+ default: false
+ status: SUPPORTED
+ network_assignments_file:
+ type: string
+ description: Filename of the template that specifies all of the configurable name/value pairs of Network assignments in this Network model
+ required: false
+ status: SUPPORTED
+ multi_tenant:
+ type: boolean
+ description: true means this network is shared by multiple Openstack tenants
+ required: true
+ default: true
+ status: SUPPORTED
+ min_subnets_count:
+ type: integer
+ description: Quantity of subnets that must be initially assigned
+ required: true
+ status: SUPPORTED
+ ip_network_address_plan:
+ type: string
+ description: Reference to EIPAM, VLAN or other address plan ID used to assign subnets to this network
+ required: true
+ status: SUPPORTED
+ vlan_network_address_plan:
+ type: string
+ description: Reference to VLAN or other address plan ID used to assign subnets to this network
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.network.IPv6SubnetAssignments:
+ derived_from: org.openecomp.datatypes.network.SubnetAssignments
+ properties:
+ use_ipv6:
+ type: boolean
+ description: Indicates IPv6 subnet assignments
+ required: true
+ status: SUPPORTED
+ org.openecomp.datatypes.EcompNaming:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ ecomp_generated_naming:
+ type: boolean
+ description: |
+ "true" indicates that the name for the instance will be auto-generated by OPENECOMP. "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
+ required: true
+ default: true
+ status: SUPPORTED
+ naming_policy:
+ type: string
+ description: Referenc to naming policy that OPENECOMP will use when the name is auto-generated
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.Naming:
+ derived_from: org.openecomp.datatypes.Root
+ properties:
+ ecomp_generated_naming:
+ type: boolean
+ description: |
+ "true" indicates that the name for the instance will be auto-generated by OPENECOMP. "false" indicates operator-supplied name required (e.g. VID will present prompt to operator and collect the operator-supplied instance name).
+ required: true
+ default: true
+ status: SUPPORTED
+ org.openecomp.datatypes.EcompGeneratedNaming:
+ derived_from: org.openecomp.datatypes.Naming
+ properties:
+ naming_policy:
+ type: string
+ description: Referenc to naming policy that OPENECOMP will use when the name is auto-generated
+ required: false
+ status: SUPPORTED
+ org.openecomp.datatypes.UserDefinedNaming:
+ derived_from: org.openecomp.datatypes.Naming
+ properties:
+ instance_name:
+ type: string
+ description: Reference to naming policy that OPENECOMP will use when the name is auto-generated
+ required: false
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/groups.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/groups.yml
new file mode 100644
index 0000000000..09a9fb0807
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/groups.yml
@@ -0,0 +1,61 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp/groups.yml
+ version: '1.0'
+imports:
+- openecomp_index:
+ file: _index.yml
+group_types:
+ org.openecomp.groups.VfModule:
+ derived_from: tosca.groups.Root
+ description: Grouped all heat resources which are in the same VF Module
+ properties:
+ isBase:
+ type: boolean
+ description: Whether this module should be deployed before other modules
+ required: true
+ default: false
+ status: SUPPORTED
+ vf_module_label:
+ type: string
+ description: |
+ Alternate textual key used to reference this VF-Module model. Must be unique within the VNF model
+ required: true
+ status: SUPPORTED
+ vf_module_description:
+ type: string
+ description: |
+ Description of the VF-modules contents and purpose (e.g. "Front-End" or "Database Cluster")
+ required: true
+ status: SUPPORTED
+ min_vf_module_instances:
+ type: integer
+ description: The minimum instances of this VF-Module
+ required: true
+ status: SUPPORTED
+ max_vf_module_instances:
+ type: integer
+ description: The maximum instances of this VF-Module
+ required: false
+ status: SUPPORTED
+ initial_count:
+ type: integer
+ description: |
+ The initial count of instances of the VF-Module. The value must be in the range between min_vfmodule_instances and max_vfmodule_instances. If no value provided the initial count is the min_vfmodule_instances.
+ required: false
+ status: SUPPORTED
+ vf_module_type:
+ type: string
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - Base
+ - Expansion
+ volume_group:
+ type: boolean
+ description: |
+ "true" indicates that this VF Module model requires attachment to a Volume Group. VID operator must select the Volume Group instance to attach to a VF-Module at deployment time.
+ required: true
+ default: false
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml
new file mode 100644
index 0000000000..83516a22ba
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/nodes.yml
@@ -0,0 +1,519 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp/nodes.yml
+ version: '1.0'
+imports:
+- openecomp_index:
+ file: _index.yml
+node_types:
+ org.openecomp.resource.vl.nodes.network.VL:
+ derived_from: tosca.nodes.network.Network
+ properties:
+ vendor:
+ type: string
+ required: false
+ status: SUPPORTED
+ vl_name:
+ type: string
+ required: false
+ status: SUPPORTED
+ capabilities:
+ end_point:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.AbstractSubstitute:
+ derived_from: tosca.nodes.Root
+ properties:
+ service_template_filter:
+ type: org.openecomp.datatypes.substitution.SubstitutionFiltering
+ description: Substitution Filter
+ required: true
+ status: SUPPORTED
+ org.openecomp.resource.vl.extVL:
+ derived_from: org.openecomp.resource.vl.nodes.network.VL
+ description: VF Tenant oam protected network
+ properties:
+ network_type:
+ type: string
+ description: OPENECOMP supported network types.
+ required: true
+ status: SUPPORTED
+ network_role:
+ type: string
+ description: |
+ Unique label that defines the role that this network performs. example: vce oam network, vnat sr-iov1 network
+ required: true
+ status: SUPPORTED
+ network_scope:
+ type: string
+ description: |
+ Uniquely identifies the network scope. Valid values for the network scope includes: VF - VF-level network. Intra-VF network which connects the VFCs (VMs) inside the VF. SERVICE - Service-level network. Intra-Service network which connects the VFs within the service GLOBAL - Global network which can be shared by multiple services
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - VF
+ - SERVICE
+ - GLOBAL
+ network_technology:
+ type: string
+ description: OPENECOMP supported network technology
+ required: true
+ status: SUPPORTED
+ network_ecomp_naming:
+ type: org.openecomp.datatypes.EcompNaming
+ required: true
+ status: SUPPORTED
+ network_homing:
+ type: org.openecomp.datatypes.EcompHoming
+ required: true
+ status: SUPPORTED
+ network_assignments:
+ type: org.openecomp.datatypes.network.NetworkAssignments
+ required: true
+ status: SUPPORTED
+ provider_network:
+ type: org.openecomp.datatypes.network.ProviderNetwork
+ required: true
+ status: SUPPORTED
+ network_flows:
+ type: org.openecomp.datatypes.network.NetworkFlows
+ required: false
+ status: SUPPORTED
+ org.openecomp.resource.vfc.nodes.Compute:
+ derived_from: tosca.nodes.Compute
+ capabilities:
+ disk.ephemeral.size:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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.usage:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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.DFAbstractSubstitute:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ license_feature_group_ref:
+ type: string
+ description: refrence to license feature group
+ required: true
+ status: SUPPORTED
+ requirements:
+ - deployment_flavor:
+ capability: org.openecomp.capabilities.attachment.DeploymentFlavor
+ node: org.openecomp.resource.nodes.DeploymentFlavor
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.VFC:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ high_availablity:
+ type: string
+ description: high_availablity
+ required: false
+ status: SUPPORTED
+ vm_image_name:
+ type: string
+ description: Master image_name volume id
+ required: true
+ status: SUPPORTED
+ vm_flavor_name:
+ type: string
+ description: Master image_name volume id
+ required: true
+ status: SUPPORTED
+ nfc_naming_code:
+ type: string
+ description: nfc code for instance naming
+ required: false
+ status: SUPPORTED
+ vm_type_tag:
+ type: string
+ description: vm type based on naming Convention
+ required: false
+ status: SUPPORTED
+ vfc_naming:
+ type: org.openecomp.datatypes.Naming
+ description: vfc naming
+ required: false
+ default: false
+ status: SUPPORTED
+ min_instances:
+ type: integer
+ description: Minimum number of VFC Instances
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ max_instances:
+ type: integer
+ description: Maximum number of VFC Instances
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 1
+ org.openecomp.resource.vl.ELine:
+ derived_from: org.openecomp.resource.vl.nodes.network.VL
+ capabilities:
+ linkable:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 0
+ - 2
+ org.openecomp.resource.cp.nodes.network.SubInterface:
+ derived_from: tosca.nodes.network.Port
+ org.openecomp.resource.vl.internalVL:
+ derived_from: org.openecomp.resource.vl.nodes.network.VL
+ description: The AT&T internal (VF-level) Virtual Link
+ org.openecomp.resource.cp.nodes.network.CP:
+ derived_from: tosca.nodes.network.Port
+ properties:
+ network_role_tag:
+ type: string
+ description: Must correlate to the set of defined “network-role�? tag identifiers from the associated HEAT template
+ required: true
+ status: SUPPORTED
+ mac_requirements:
+ type: org.openecomp.datatypes.network.MacRequirements
+ description: identifies MAC address assignments to the CP
+ required: false
+ status: SUPPORTED
+ vlan_requirements:
+ type: list
+ description: identifies vlan address assignments to the CP
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.network.VlanRequirements
+ ip_requirements:
+ type: list
+ description: identifies IP requirements to the CP
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.network.IpRequirements
+ capabilities:
+ network.incoming.packets.rate:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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:
+ type: org.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.nodes.DeploymentFlavor:
+ derived_from: tosca.nodes.Root
+ capabilities:
+ deployment_flavor:
+ type: org.openecomp.capabilities.attachment.DeploymentFlavor
+ description: Allowed deployment flavors of an abstract node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.cp.extCP:
+ derived_from: tosca.nodes.Root
+ description: The AT&T Connection Point base type all other CP derive from
+ properties:
+ network_role:
+ type: string
+ description: identical to VL network_role
+ required: true
+ status: SUPPORTED
+ order:
+ type: integer
+ description: The order of the CP on the compute instance (e.g. eth2).
+ required: true
+ status: SUPPORTED
+ network_role_tag:
+ type: string
+ description: Must correlate to the set of defined “network-role�? tag identifiers from the associated HEAT template
+ required: true
+ status: SUPPORTED
+ mac_requirements:
+ type: org.openecomp.datatypes.network.MacRequirements
+ description: identifies MAC address assignments to the CP
+ required: false
+ status: SUPPORTED
+ vlan_requirements:
+ type: list
+ description: identifies vlan address assignments to the CP
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.network.VlanRequirements
+ ip_requirements:
+ type: list
+ description: identifies IP requirements to the CP
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.network.IpRequirements
+ requirements:
+ - virtualLink:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ - virtualBinding:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
+ - external_virtualLink:
+ capability: tosca.capabilities.network.Linkable
+ node: org.openecomp.resource.vl.nodes.network.VL
+ relationship: tosca.relationships.network.LinksTo
+ capabilities:
+ internal_connectionPoint:
+ type: tosca.capabilities.Node
+ valid_source_types:
+ - tosca.nodes.network.Port
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.vfc.nodes.volume:
+ derived_from: tosca.nodes.BlockStorage
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/relationships.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/relationships.yml
new file mode 100644
index 0000000000..310e9847c7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/openecomp/relationships.yml
@@ -0,0 +1,36 @@
+tosca_definitions_version: tosca_simple_openecomp_1_0
+metadata:
+ filename: openecomp/relationships.yml
+ version: '1.0'
+imports:
+- openecomp_index:
+ file: _index.yml
+relationship_types:
+ org.openecomp.relationships.VolumeAttachesTo:
+ derived_from: org.openecomp.relationships.AttachesTo
+ description: This type represents an attachment relationship for associating volume
+ properties:
+ volume_id:
+ type: string
+ description: The ID of the volume to be attached
+ required: true
+ status: SUPPORTED
+ instance_uuid:
+ type: string
+ description: The ID of the server to which the volume attaches
+ required: true
+ status: SUPPORTED
+ attributes:
+ show:
+ type: string
+ description: Detailed information about resource
+ status: SUPPORTED
+ org.openecomp.relationships.AttachesTo:
+ derived_from: tosca.relationships.AttachesTo
+ description: This type represents an attachment relationship
+ properties:
+ location:
+ type: string
+ description: The relative location (e.g., path on the file system), which provides the root location to address an attached node.
+ required: false
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/_index.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/_index.yml
new file mode 100644
index 0000000000..0c5d7928e1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/_index.yml
@@ -0,0 +1,21 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/_index.yml
+ version: '1.0'
+imports:
+- capabilities:
+ file: capabilities.yml
+- nodes:
+ file: nodes.yml
+- relationships:
+ file: relationships.yml
+- groups:
+ file: groups.yml
+- data:
+ file: data.yml
+- interfaces:
+ file: interfaces.yml
+- artifacts:
+ file: artifacts.yml
+- policies:
+ file: policies.yml
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/artifacts.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/artifacts.yml
new file mode 100644
index 0000000000..0367376ae6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/artifacts.yml
@@ -0,0 +1,31 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/artifacts.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+artifact_types:
+ tosca.artifacts.Root:
+ description: This is the default (root) TOSCA Artifact Type definition that all other TOSCA base Artifact Types derive from.
+ tosca.artifacts.Deployment.Image:
+ derived_from: tosca.artifacts.Deployment
+ description: This artifact type represents a parent type for any "image" which is an opaque packaging of a TOSCA Node's deployment (whether real or virtual) whose contents are typically already installed and pre-configured (i.e., "stateful") and prepared to be run on a known target container.
+ tosca.artifacts.Implementation.Bash:
+ derived_from: tosca.artifacts.Implementation
+ description: This artifact type represents a Bash script type that contains Bash commands that can be executed on the Unix Bash shell.
+ tosca.artifacts.Deployment.Image.VM:
+ derived_from: tosca.artifacts.Deployment
+ description: This artifact represents the parent type for all Virtual Machine (VM) image and container formatted deployment artifacts. These images contain a stateful capture of a machine (e.g., server) including operating system and installed software along with any configurations and can be run on another machine using a hypervisor which virtualizes typical server (i.e., hardware) resources.
+ tosca.artifacts.Implementation.Python:
+ derived_from: tosca.artifacts.Implementation
+ description: This artifact type represents a Python file that contains Python language constructs that can be executed within a Python interpreter.
+ tosca.artifacts.Deployment:
+ derived_from: tosca.artifacts.Root
+ description: This artifact type represents the parent type for all deployment artifacts in TOSCA. This class of artifacts typically represents a binary packaging of an application or service that is used to install/create or deploy it as part of a node's lifecycle.
+ tosca.artifacts.File:
+ derived_from: tosca.artifacts.Root
+ description: This artifact type is used when an artifact definition needs to have its associated file simply treated as a file and no special handling/handlers are invoked (i.e., it is not treated as either an implementation or deployment artifact type).
+ tosca.artifacts.Implementation:
+ derived_from: tosca.artifacts.Root
+ description: This artifact type represents the parent type for all implementation artifacts in TOSCA. These artifacts are used to implement operations of TOSCA interfaces either directly (e.g., scripts) or indirectly (e.g., config. files).
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/capabilities.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/capabilities.yml
new file mode 100644
index 0000000000..34f78c4ec8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/capabilities.yml
@@ -0,0 +1,232 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/capabilities.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+capability_types:
+ tosca.capabilities.Root:
+ description: This is the default (root) TOSCA Capability Type definition that all other TOSCA Capability Types derive from.
+ tosca.capabilities.Node:
+ derived_from: tosca.capabilities.Root
+ description: The Node capability indicates the base capabilities of a TOSCA Node Type.
+ tosca.capabilities.Container:
+ derived_from: tosca.capabilities.Root
+ description: The Container capability, when included on a Node Type or Template definition, indicates that the node can act as a container for (or a host for) one or more other declared Node Types.
+ properties:
+ num_cpus:
+ type: integer
+ description: Number of (actual or virtual) CPUs associated with the Compute node.
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 1
+ cpu_frequency:
+ type: scalar-unit.frequency
+ description: Specifies the operating frequency of CPU's core. This property expresses the expected frequency of one (1) CPU as provided by the property "num_cpus".
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0.1 GHz
+ disk_size:
+ type: scalar-unit.size
+ description: Size of the local disk available to applications running on the Compute node (default unit is MB).
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0 MB
+ mem_size:
+ type: scalar-unit.size
+ description: Size of memory available to applications running on the Compute node (default unit is MB).
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0 MB
+ tosca.capabilities.Endpoint:
+ derived_from: tosca.capabilities.Root
+ description: This is the default TOSCA type that should be used or extended to define a network endpoint capability. This includes the information to express a basic endpoint with a single port or a complex endpoint with multiple ports. By default the Endpoint is assumed to represent an address on a private network unless otherwise specified.
+ properties:
+ protocol:
+ type: string
+ description: 'The name of the protocol (i.e., the protocol prefix) that the
+ endpoint accepts (any OSI Layer 4-7 protocols). Examples: http, https, ftp,
+ tcp, udp, etc.'
+ required: true
+ default: tcp
+ status: SUPPORTED
+ port:
+ type: tosca.datatypes.network.PortDef
+ description: The optional port of the endpoint.
+ required: false
+ status: SUPPORTED
+ secure:
+ type: boolean
+ description: Requests for the endpoint to be secure and use credentials supplied on the ConnectsTo relationship.
+ required: false
+ default: false
+ status: SUPPORTED
+ url_path:
+ type: string
+ description: The optional URL path of the endpoint's address if applicable for the protocol.
+ required: false
+ status: SUPPORTED
+ port_name:
+ type: string
+ description: The optional name (or ID) of the network port this endpoint should be bound to.
+ required: false
+ status: SUPPORTED
+ network_name:
+ type: string
+ description: 'The optional name (or ID) of the network this endpoint should
+ be bound to. network_name: PRIVATE | PUBLIC | <network_name> | <network_id>.'
+ required: false
+ default: PRIVATE
+ status: SUPPORTED
+ initiator:
+ type: string
+ description: The optional indicator of the direction of the connection.
+ required: false
+ default: source
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - source
+ - target
+ - peer
+ ports:
+ type: map
+ description: The optional map of ports the Endpoint supports (if more than one).
+ required: false
+ status: SUPPORTED
+ constraints:
+ - min_length: 1
+ entry_schema:
+ type: tosca.datatypes.network.PortSpec
+ attributes:
+ ip_address:
+ type: string
+ description: 'Note: This is the IP address as propagated up by the associated
+ node''s host (Compute) container.'
+ status: SUPPORTED
+ tosca.capabilities.Endpoint.Public:
+ derived_from: tosca.capabilities.Endpoint
+ description: |-
+ This capability represents a public endpoint which is accessible to the general internet (and its public IP address ranges).
+ This public endpoint capability also can be used to create a floating (IP) address that the underlying network assigns from a pool allocated from the application's underlying public network. This floating address is managed by the underlying network such that can be routed an application's private address and remains reliable to internet clients.
+ properties:
+ network_name:
+ type: string
+ required: true
+ default: PUBLIC
+ status: SUPPORTED
+ constraints:
+ - equal: PUBLIC
+ tosca.capabilities.Endpoint.Admin:
+ derived_from: tosca.capabilities.Endpoint
+ description: This is the default TOSCA type that should be used or extended to define a specialized administrator endpoint capability.
+ properties:
+ secure:
+ type: boolean
+ description: Requests for the endpoint to be secure and use credentials supplied on the ConnectsTo relationship.
+ required: true
+ default: true
+ status: SUPPORTED
+ constraints:
+ - equal: true
+ tosca.capabilities.Endpoint.Database:
+ derived_from: tosca.capabilities.Endpoint
+ description: This is the default TOSCA type that should be used or extended to define a specialized database endpoint capability.
+ tosca.capabilities.Attachment:
+ derived_from: tosca.capabilities.Root
+ description: This is the default TOSCA type that should be used or extended to define an attachment capability of a (logical) infrastructure device node (e.g., BlockStorage node).
+ tosca.capabilities.OperatingSystem:
+ derived_from: tosca.capabilities.Root
+ description: This is the default TOSCA type that should be used to express an Operating System capability for a node.
+ properties:
+ architecture:
+ type: string
+ description: 'The Operating System (OS) architecture. Examples of valid values
+ include: x86_32, x86_64, etc.'
+ required: false
+ status: SUPPORTED
+ type:
+ type: string
+ description: 'The Operating System (OS) type. Examples of valid values include:
+ linux, aix, mac, windows, etc.'
+ required: false
+ status: SUPPORTED
+ distribution:
+ type: string
+ description: 'The Operating System (OS) distribution. Examples of valid values
+ for a "type" of "Linux" would include: debian, fedora, rhel and ubuntu.'
+ required: false
+ status: SUPPORTED
+ version:
+ type: version
+ description: The Operating System version.
+ required: false
+ status: SUPPORTED
+ tosca.capabilities.Scalable:
+ derived_from: tosca.capabilities.Root
+ description: This is the default TOSCA type that should be used to express a scalability capability for a node.
+ properties:
+ min_instances:
+ type: integer
+ description: This property is used to indicate the minimum number of instances that should be created for the associated TOSCA Node Template by a TOSCA orchestrator.
+ required: true
+ default: 1
+ status: SUPPORTED
+ max_instances:
+ type: integer
+ description: This property is used to indicate the maximum number of instances that should be created for the associated TOSCA Node Template by a TOSCA orchestrator.
+ required: true
+ default: 1
+ status: SUPPORTED
+ default_instances:
+ type: integer
+ description: 'An optional property that indicates the requested default number
+ of instances that should be the starting number of instances a TOSCA orchestrator
+ should attempt to allocate. Note: The value for this property MUST be in
+ the range between the values set for "min_instances" and "max_instances"
+ properties.'
+ required: false
+ status: SUPPORTED
+ tosca.capabilities.network.Bindable:
+ derived_from: tosca.capabilities.Node
+ description: A node type that includes the Bindable capability indicates that it can be bound to a logical network association via a network port.
+ tosca.capabilities.network.Linkable:
+ derived_from: tosca.capabilities.Node
+ description: A node type that includes the Linkable capability indicates that it can be pointed by tosca.relationships.network.LinksTo relationship type.
+ tosca.capabilities.Container.Docker:
+ derived_from: tosca.capabilities.Container
+ properties:
+ version:
+ type: list
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: version
+ publish_all:
+ type: boolean
+ required: false
+ default: false
+ status: SUPPORTED
+ publish_ports:
+ type: list
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: PortSpec
+ expose_ports:
+ type: list
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: PortSpec
+ volumes:
+ type: list
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/data.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/data.yml
new file mode 100644
index 0000000000..88042193f5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/data.yml
@@ -0,0 +1,179 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/data.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+data_types:
+ tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+ string:
+ derived_from: tosca.datatypes.Root
+ integer:
+ derived_from: tosca.datatypes.Root
+ boolean:
+ derived_from: tosca.datatypes.Root
+ float:
+ derived_from: tosca.datatypes.Root
+ range:
+ derived_from: tosca.datatypes.Root
+ list:
+ derived_from: tosca.datatypes.Root
+ map:
+ derived_from: tosca.datatypes.Root
+ timestamp:
+ derived_from: tosca.datatypes.Root
+ version:
+ derived_from: tosca.datatypes.Root
+ scalar-unit.size:
+ derived_from: tosca.datatypes.Root
+ scalar-unit.frequency:
+ derived_from: tosca.datatypes.Root
+ scalar-unit.time:
+ derived_from: tosca.datatypes.Root
+ tosca.datatypes.network.NetworkInfo:
+ derived_from: tosca.datatypes.Root
+ description: The Network type is a complex TOSCA data type used to describe logical network information.
+ properties:
+ network_name:
+ type: string
+ description: The name of the logical network. e.g., "public", "private", "admin". etc.
+ required: false
+ status: SUPPORTED
+ network_id:
+ type: string
+ description: The unique ID of for the network generated by the network provider.
+ required: false
+ status: SUPPORTED
+ addresses:
+ type: list
+ description: The list of IP addresses assigned from the underlying network.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ tosca.datatypes.TimeInterval:
+ derived_from: tosca.datatypes.Root
+ properties:
+ start_time:
+ type: timestamp
+ required: true
+ status: SUPPORTED
+ end_time:
+ type: timestamp
+ required: true
+ status: SUPPORTED
+ tosca.datatypes.network.PortSpec:
+ derived_from: tosca.datatypes.Root
+ description: The PortSpec type is a complex TOSCA data Type used when describing port specifications for a network connection.
+ properties:
+ protocol:
+ type: string
+ description: The required protocol used on the port.
+ required: true
+ default: tcp
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - udp
+ - tcp
+ - igmp
+ source:
+ type: tosca.datatypes.network.PortDef
+ description: The optional source port.
+ required: false
+ status: SUPPORTED
+ source_range:
+ type: range
+ description: The optional range for source port.
+ required: false
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 1
+ - 65535
+ target:
+ type: tosca.datatypes.network.PortDef
+ description: The optional target port.
+ required: false
+ status: SUPPORTED
+ target_range:
+ type: range
+ description: The optional range for target port.
+ required: false
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 1
+ - 65535
+ tosca.datatypes.network.PortDef:
+ derived_from: integer
+ description: The PortDef type is a TOSCA data Type used to define a network port.
+ constraints:
+ - in_range:
+ - 1
+ - 65535
+ tosca.datatypes.network.PortInfo:
+ derived_from: tosca.datatypes.Root
+ description: The PortInfo type is a complex TOSCA data type used to describe network port information.
+ properties:
+ port_name:
+ type: string
+ description: The logical network port name.
+ required: false
+ status: SUPPORTED
+ port_id:
+ type: string
+ description: The unique ID for the network port generated by the network provider.
+ required: false
+ status: SUPPORTED
+ network_id:
+ type: string
+ description: The unique ID for the network.
+ required: false
+ status: SUPPORTED
+ mac_address:
+ type: string
+ description: The unique media access control address (MAC address) assigned to the port.
+ required: false
+ status: SUPPORTED
+ addresses:
+ type: list
+ description: The list of IP address(es) assigned to the port.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ description: The Credential type is a complex TOSCA data Type used when describing authorization credentials used to access network accessible resources.
+ properties:
+ protocol:
+ type: string
+ description: The optional protocol name.
+ required: false
+ status: SUPPORTED
+ token_type:
+ type: string
+ description: The required token type.
+ required: true
+ default: password
+ status: SUPPORTED
+ token:
+ type: string
+ description: The required token used as a credential for authorization or access to a networked resource.
+ required: true
+ status: SUPPORTED
+ keys:
+ type: map
+ description: The optional list of protocol-specific keys or assertions.
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ user:
+ type: string
+ description: The optional user (name or ID) used for non-token based credentials.
+ required: false
+ status: SUPPORTED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/groups.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/groups.yml
new file mode 100644
index 0000000000..07a6343c6e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/groups.yml
@@ -0,0 +1,13 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/groups.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+group_types:
+ tosca.groups.Root:
+ description: This is the default (root) TOSCA Group Type definition that all other TOSCA base Group Types derive from.
+ interfaces:
+ standard:
+ type: tosca.interfaces.node.lifecycle.Standard
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/interfaces.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/interfaces.yml
new file mode 100644
index 0000000000..11d7dbbbd3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/interfaces.yml
@@ -0,0 +1,42 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/interfaces.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+interface_types:
+ tosca.interfaces.Root:
+ description: This is the default (root) TOSCA Interface Type definition that all other TOSCA Interface Types derive from.
+ tosca.interfaces.node.lifecycle.Standard:
+ derived_from: tosca.interfaces.Root
+ description: This lifecycle interface defines the essential, normative operations that TOSCA nodes may support.
+ stop:
+ description: Standard lifecycle stop operation.
+ start:
+ description: Standard lifecycle start operation.
+ create:
+ description: Standard lifecycle create operation.
+ configure:
+ description: Standard lifecycle configure operation.
+ delete:
+ description: Standard lifecycle delete operation.
+ tosca.interfaces.relationship.Configure:
+ derived_from: tosca.interfaces.Root
+ description: The lifecycle interfaces define the essential, normative operations that each TOSCA Relationship Types may support.
+ pre_configure_source:
+ description: Operation to pre-configure the source endpoint.
+ pre_configure_target:
+ description: Operation to pre-configure the target endpoint.
+ post_configure_source:
+ description: Operation to post-configure the source endpoint.
+ post_configure_target:
+ description: Operation to post-configure the target endpoint.
+ add_target:
+ description: Operation to notify the source node of a target node being added via a relationship.
+ add_source:
+ description: Operation to notify the target node of a source node which is now available via a relationship.
+ target_changed:
+ description: Operation to notify source some property or attribute of the target changed
+ remove_target:
+ description: Operation to remove a target node.
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/nodes.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/nodes.yml
new file mode 100644
index 0000000000..bb61619217
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/nodes.yml
@@ -0,0 +1,434 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/nodes.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+node_types:
+ tosca.nodes.Root:
+ description: The TOSCA Root Node Type is the default type that all other TOSCA base Node Types derive from. This allows for all TOSCA nodes to have a consistent set of features for modeling and management (e.g., consistent definitions for requirements, capabilities and lifecycle interfaces).
+ attributes:
+ tosca_id:
+ type: string
+ description: A unique identifier of the realized instance of a Node Template that derives from any TOSCA normative type.
+ status: SUPPORTED
+ tosca_name:
+ type: string
+ description: This attribute reflects the name of the Node Template as defined in the TOSCA service template. This name is not unique to the realized instance model of corresponding deployed application as each template in the model can result in one or more instances (e.g., scaled) when orchestrated to a provider environment.
+ status: SUPPORTED
+ state:
+ type: string
+ description: The state of the node instance.
+ default: initial
+ status: SUPPORTED
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ feature:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ interfaces:
+ standard:
+ type: tosca.interfaces.node.lifecycle.Standard
+ tosca.nodes.ObjectStorage:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA ObjectStorage node represents storage that provides the ability to store data as objects (or BLOBs of data) without consideration for the underlying filesystem or devices.
+ properties:
+ name:
+ type: string
+ description: The logical name of the object store (or container).
+ required: true
+ status: SUPPORTED
+ size:
+ type: scalar-unit.size
+ description: The requested initial storage size (default unit is in Gigabytes).
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0 GB
+ maxsize:
+ type: scalar-unit.size
+ description: The requested maximum storage size (default unit is in Gigabytes).
+ required: false
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0 GB
+ capabilities:
+ storage_endpoint:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.DBMS:
+ derived_from: tosca.nodes.SoftwareComponent
+ description: The TOSCA DBMS node represents a typical relational, SQL Database Management System software component or service.
+ properties:
+ root_password:
+ type: string
+ description: The optional root password for the DBMS server.
+ required: false
+ status: SUPPORTED
+ port:
+ type: integer
+ description: The DBMS server's port.
+ required: false
+ status: SUPPORTED
+ capabilities:
+ host:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.Database
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.WebApplication:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA WebApplication node represents a software application that can be managed and run by a TOSCA WebServer node. Specific types of web applications such as Java, etc. could be derived from this type.
+ properties:
+ context_root:
+ type: string
+ description: The web application's context root which designates the application's URL path within the web server it is hosted on.
+ required: false
+ status: SUPPORTED
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ node: tosca.nodes.WebServer
+ relationship: tosca.relationships.HostedOn
+ capabilities:
+ app_endpoint:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.Compute:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA Compute node represents one or more real or virtual processors of software applications or services along with other essential local resources. Collectively, the resources the compute node represents can logically be viewed as a (real or virtual) "server".
+ attributes:
+ private_address:
+ type: string
+ description: The primary private IP address assigned by the cloud provider that applications may use to access the Compute node.
+ status: SUPPORTED
+ public_address:
+ type: string
+ description: The primary public IP address assigned by the cloud provider that applications may use to access the Compute node.
+ status: SUPPORTED
+ networks:
+ type: map
+ description: The list of logical networks assigned to the compute host instance and information about them.
+ status: SUPPORTED
+ entry_schema:
+ type: tosca.datatypes.network.NetworkInfo
+ ports:
+ type: map
+ description: The list of logical ports assigned to the compute host instance and information about them.
+ status: SUPPORTED
+ entry_schema:
+ type: tosca.datatypes.network.PortInfo
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ host:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.network.Network:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA Network node represents a simple, logical network service.
+ properties:
+ ip_version:
+ type: integer
+ description: The IP version of the requested network.
+ required: false
+ default: 4
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - 4
+ - 6
+ cidr:
+ type: string
+ description: The cidr block of the requested network.
+ required: false
+ status: SUPPORTED
+ start_ip:
+ type: string
+ description: The IP address to be used as the 1st one in a pool of addresses derived from the cidr block full IP range.
+ required: false
+ status: SUPPORTED
+ end_ip:
+ type: string
+ description: The IP address to be used as the last one in a pool of addresses derived from the cidr block full IP range.
+ required: false
+ status: SUPPORTED
+ gateway_ip:
+ type: string
+ description: The gateway IP address.
+ required: false
+ status: SUPPORTED
+ network_name:
+ type: string
+ description: An Identifier that represents an existing Network instance in the underlying cloud infrastructure - OR - be used as the name of the new created network.
+ required: false
+ status: SUPPORTED
+ network_id:
+ type: string
+ description: An Identifier that represents an existing Network instance in the underlying cloud infrastructure. This property is mutually exclusive with all other properties except network_name.
+ required: false
+ status: SUPPORTED
+ segmentation_id:
+ type: string
+ description: A segmentation identifier in the underlying cloud infrastructure (e.g., VLAN id, GRE tunnel id). If the segmentation_id is specified, the network_type or physical_network properties should be provided as well.
+ required: false
+ status: SUPPORTED
+ network_type:
+ type: string
+ description: Optionally, specifies the nature of the physical network in the underlying cloud infrastructure. Examples are flat, vlan, gre or vxlan. For flat and vlan types, physical_network should be provided too.
+ required: false
+ status: SUPPORTED
+ physical_network:
+ type: string
+ description: Optionally, identifies the physical network on top of which the network is implemented, e.g. physnet1. This property is required if network_type is flat or vlan.
+ required: false
+ status: SUPPORTED
+ dhcp_enabled:
+ type: boolean
+ description: Indicates the TOSCA container to create a virtual network instance with or without a DHCP service.
+ required: false
+ default: true
+ status: SUPPORTED
+ capabilities:
+ link:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.WebServer:
+ derived_from: tosca.nodes.SoftwareComponent
+ description: This TOSCA WebServer Node Type represents an abstract software component or service that is capable of hosting and providing management operations for one or more WebApplication nodes.
+ capabilities:
+ data_endpoint:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ admin_endpoint:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.WebApplication
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.Container.Application:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA Container Application node represents an application that requires Container-level virtualization technology.
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ relationship: tosca.relationships.HostedOn
+ tosca.nodes.Container.Runtime:
+ derived_from: tosca.nodes.SoftwareComponent
+ description: The TOSCA Container Runtime node represents operating system-level virtualization technology used to run multiple application services on a single Compute host.
+ capabilities:
+ host:
+ type: tosca.capabilities.Container
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.SoftwareComponent:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA SoftwareComponent node represents a generic software component that can be managed and run by a TOSCA Compute Node Type.
+ properties:
+ component_version:
+ type: version
+ description: The optional software component's version.
+ required: false
+ status: SUPPORTED
+ admin_credential:
+ type: tosca.datatypes.Credential
+ description: The optional credential that can be used to authenticate to the software component.
+ required: false
+ status: SUPPORTED
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ node: tosca.nodes.Compute
+ relationship: tosca.relationships.HostedOn
+ tosca.nodes.BlockStorage:
+ derived_from: tosca.nodes.Root
+ description: ''
+ properties:
+ size:
+ type: scalar-unit.size
+ description: The requested storage size (default unit is MB).
+ required: true
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 1 MB
+ volume_id:
+ type: string
+ description: ID of an existing volume (that is in the accessible scope of the requesting application).
+ required: false
+ status: SUPPORTED
+ snapshot_id:
+ type: string
+ description: Some identifier that represents an existing snapshot that should be used when creating the block storage (volume).
+ required: false
+ status: SUPPORTED
+ capabilities:
+ attachment:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ tosca.nodes.network.Port:
+ derived_from: tosca.nodes.Root
+ description: |-
+ The TOSCA Port node represents a logical entity that associates between Compute and Network normative types.
+ The Port node type effectively represents a single virtual NIC on the Compute node instance.
+ properties:
+ ip_address:
+ type: string
+ description: Allow the user to set a fixed IP address. Note that this address is a request to the provider which they will attempt to fulfill but may not be able to dependent on the network the port is associated with.
+ required: false
+ status: SUPPORTED
+ order:
+ type: integer
+ description: 'The order of the NIC on the compute instance (e.g. eth2). Note:
+ when binding more than one port to a single compute (aka multi vNICs) and
+ ordering is desired, it is *mandatory* that all ports will be set with an
+ order value and. The order values must represent a positive, arithmetic
+ progression that starts with 0 (e.g. 0, 1, 2, ..., n).'
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ is_default:
+ type: boolean
+ description: Set is_default=true to apply a default gateway route on the running compute instance to the associated network gateway. Only one port that is associated to single compute node can set as default=true.
+ required: false
+ default: false
+ status: SUPPORTED
+ ip_range_start:
+ type: string
+ description: Defines the starting IP of a range to be allocated for the compute instances that are associated by this Port. Without setting this property the IP allocation is done from the entire CIDR block of the network.
+ required: false
+ status: SUPPORTED
+ ip_range_end:
+ type: string
+ description: Defines the ending IP of a range to be allocated for the compute instances that are associated by this Port. Without setting this property the IP allocation is done from the entire CIDR block of the network.
+ required: false
+ status: SUPPORTED
+ attributes:
+ ip_address:
+ type: string
+ description: The IP address would be assigned to the associated compute instance.
+ status: SUPPORTED
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
+ tosca.nodes.LoadBalancer:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA Load Balancer node represents logical function that be used in conjunction with a Floating Address to distribute an application's traffic (load) across a number of instances of the application (e.g., for a clustered or scaled application).
+ requirements:
+ - application:
+ capability: tosca.capabilities.Endpoint
+ relationship: tosca.relationships.RoutesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ client:
+ type: tosca.capabilities.Endpoint.Public
+ description: The Floating (IP) client's on the public network can connect to.
+ occurrences:
+ - 0
+ - UNBOUNDED
+ tosca.nodes.Database:
+ derived_from: tosca.nodes.Root
+ description: The TOSCA Database node represents a logical database that can be managed and hosted by a TOSCA DBMS node.
+ properties:
+ name:
+ type: string
+ description: The logical database Name.
+ required: true
+ status: SUPPORTED
+ port:
+ type: integer
+ description: The port the database service will use to listen for incoming data and requests.
+ required: false
+ status: SUPPORTED
+ user:
+ type: string
+ description: The special user account used for database administration.
+ required: false
+ status: SUPPORTED
+ password:
+ type: string
+ description: The password associated with the user account provided in the 'user' property.
+ required: false
+ status: SUPPORTED
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ node: tosca.nodes.DBMS
+ relationship: tosca.relationships.HostedOn
+ capabilities:
+ database_endpoint:
+ type: tosca.capabilities.Endpoint.Database
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/policies.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/policies.yml
new file mode 100644
index 0000000000..2e207560e3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/policies.yml
@@ -0,0 +1,22 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/policies.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+policy_types:
+ tosca.policies.Root:
+ description: This is the default (root) TOSCA Policy Type definition that all other TOSCA base Policy Types derive from.
+ tosca.policies.Update:
+ derived_from: tosca.policies.Root
+ description: This is the default (root) TOSCA Policy Type definition that is used to govern update of TOSCA nodes or groups of nodes.
+ tosca.policies.Placement:
+ derived_from: tosca.policies.Root
+ description: This is the default (root) TOSCA Policy Type definition that is used to govern placement of TOSCA nodes or groups of nodes.
+ tosca.policies.Performance:
+ derived_from: tosca.policies.Root
+ description: This is the default (root) TOSCA Policy Type definition that is used to declare performance requirements for TOSCA nodes or groups of nodes.
+ tosca.policies.Scaling:
+ derived_from: tosca.policies.Root
+ description: This is the default (root) TOSCA Policy Type definition that is used to govern scaling of TOSCA nodes or groups of nodes.
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/relationships.yml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/relationships.yml
new file mode 100644
index 0000000000..07a9bf5bd9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates/tosca/relationships.yml
@@ -0,0 +1,90 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+metadata:
+ filename: tosca/relationships.yml
+ version: '1.0'
+imports:
+- tosca_index:
+ file: _index.yml
+relationship_types:
+ tosca.relationships.Root:
+ description: This is the default (root) TOSCA Relationship Type definition that all other TOSCA Relationship Types derive from.
+ attributes:
+ tosca_id:
+ type: string
+ description: A unique identifier of the realized instance of a Relationship Template that derives from any TOSCA normative type.
+ status: SUPPORTED
+ tosca_name:
+ type: string
+ description: This attribute reflects the name of the Relationship Template as defined in the TOSCA service template. This name is not unique to the realized instance model of corresponding deployed application as each template in the model can result in one or more instances (e.g., scaled) when orchestrated to a provider environment.
+ status: SUPPORTED
+ state:
+ type: string
+ description: The state of the relationship instance.
+ default: initial
+ status: SUPPORTED
+ interfaces:
+ Configure:
+ type: tosca.interfaces.relationship.Configure
+ tosca.relationships.RoutesTo:
+ derived_from: tosca.relationships.ConnectsTo
+ description: This type represents an intentional network routing between two Endpoints in different networks.
+ valid_target_types:
+ - tosca.capabilities.Endpoint
+ tosca.relationships.network.LinksTo:
+ derived_from: tosca.relationships.DependsOn
+ description: This relationship type represents an association relationship between Port and Network node types.
+ valid_target_types:
+ - tosca.capabilities.network.Linkable
+ tosca.relationships.AttachesTo:
+ derived_from: tosca.relationships.Root
+ description: This type represents an attachment relationship between two nodes. For example, an AttachesTo relationship type would be used for attaching a storage node to a Compute node.
+ properties:
+ location:
+ type: string
+ description: 'The relative location (e.g., path on the file system), which
+ provides the root location to address an attached node. e.g., a mount point
+ / path such as ''/usr/data''. Note: The user must provide it and it cannot
+ be "root".'
+ required: true
+ status: SUPPORTED
+ constraints:
+ - min_length: 1
+ device:
+ type: string
+ description: The logical device name which for the attached device (which is represented by the target node in the model). e.g., '/dev/hda1'.
+ required: false
+ status: SUPPORTED
+ attributes:
+ device:
+ type: string
+ description: 'The logical name of the device as exposed to the instance. Note:
+ A runtime property that gets set when the model gets instantiated by the
+ orchestrator.'
+ status: SUPPORTED
+ valid_target_types:
+ - tosca.capabilities.Attachment
+ tosca.relationships.network.BindsTo:
+ derived_from: tosca.relationships.DependsOn
+ description: This type represents a network association relationship between Port and Compute node types.
+ valid_target_types:
+ - tosca.capabilities.network.Bindable
+ tosca.relationships.HostedOn:
+ derived_from: tosca.relationships.Root
+ description: This type represents a hosting relationship between two nodes.
+ valid_target_types:
+ - tosca.capabilities.Container
+ tosca.relationships.DependsOn:
+ derived_from: tosca.relationships.Root
+ description: This type represents a general dependency relationship between two nodes.
+ valid_target_types:
+ - tosca.capabilities.Node
+ tosca.relationships.ConnectsTo:
+ derived_from: tosca.relationships.Root
+ description: This type represents a network connection relationship between two nodes.
+ properties:
+ credential:
+ type: tosca.datatypes.Credential
+ required: false
+ status: SUPPORTED
+ valid_target_types:
+ - tosca.capabilities.Endpoint
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/AbstractSubstituteGlobalTypesServiceTemplate.yaml
index 8813b0abf6..449f0939ee 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/AbstractSubstituteGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Abstract Substitute Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.substitution.SubstitutionFilter:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/CinderVolumeGlobalTypesServiceTemplate.yaml
index 3ef94f22e7..9b0655bf36 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/CinderVolumeGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Cinder Volume TOSCA Global Types
relationship_types:
- org.openecomp.relationships.heat.cinder.VolumeAttachesTo:
+ org.openecomp.relationships.VolumeAttachesTo:
derived_from: tosca.relationships.AttachesTo
description: This type represents an attachment relationship for associating volume
properties:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/CommonGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/CommonGlobalTypesServiceTemplate.yaml
index 3388d5a89b..f8b9c0d048 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/CommonGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/CommonGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: TOSCA Global Types
imports:
- NativeTypesServiceTemplate:
+- NativeTypesServiceTemplate:
file: NativeTypesServiceTemplateServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.network.AddressPair:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
index 98317310fa..044d759bc0 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Contrail Network Rule Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
index 0927e3dd0e..cbbb979029 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Contrail Virtual Network Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/GlobalSubstitutionTypesServiceTemplate.yaml
index 0a5e36edaf..1ce3fc54ff 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,24 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -36,61 +28,21 @@ node_types:
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: string
- cmaui_cinder_volume_size:
- type: float
- description: the size of the CMAUI Cinder volume
- timezone:
- type: string
- description: timezone
- security_group_name:
- type: string
- description: the name of security group
- cmaui_volume:
+ type: String
+ p1:
type: string
- description: Volume for CMAUI server
- oam_network_netmask:
- type: string
- description: oam network gateway
+ description: UID of OAM network
cmaui_image:
type: string
description: Image for CMAUI server
- vnf_id:
- type: string
- description: Unique ID for this VNF instance
- default: This_is_ths_MMSC-CMAUI_id
cmaui_flavor:
type: string
description: Flavor for CMAUI server
- oam_network_gateway:
- type: string
- description: oam network gateway
- out_cmaui_volume:
- type: string
- description: the name of the target volume backend
+ security_group_name:
+ description: not impotrtant
availability_zone_0:
type: string
description: availabilityzone name
- cmaui_oam_ips:
- type: list
- description: CMAUI oam_net IP addresses
- entry_schema:
- type: string
- external_dns:
- type: string
- description: dns server
- oam_net_name:
- type: string
- description: UID of OAM network
- external_ntp:
- type: string
- description: ntp server
- CMAUI_volume_type:
- type: string
- description: the name of the target volume backend
- attributes:
- out_cmaui_volume:
- type: string
requirements:
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
@@ -134,11 +86,6 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_volume:
- type: tosca.capabilities.Attachment
- occurrences:
- - 1
- - UNBOUNDED
attachment_cmaui_port_0:
type: tosca.capabilities.Attachment
occurrences:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NativeTypesServiceTemplateServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NativeTypesServiceTemplateServiceTemplate.yaml
index e7dfd49ed9..e7dfd49ed9 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NativeTypesServiceTemplateServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NativeTypesServiceTemplateServiceTemplate.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronNetGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronNetGlobalTypesServiceTemplate.yaml
index e80e2727c7..494b44c126 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/NeutronNetGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronNetGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Neutron Network TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vl.nodes.heat.network.neutron.Net:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronPortGlobalTypesServiceTemplate.yaml
index a337d6ed18..a561d79b8f 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronPortGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Neutron Port TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.neutron.port.FixedIps:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
index 49c9a102c8..83fc31520a 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Neutron Security Rules TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NovaServerGlobalTypesServiceTemplate.yaml
index 2253a1e4af..d77e378a79 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/toscaGlobalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/test/resources/mock/toscaGlobalServiceTemplates_1610/NovaServerGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Nova Server TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml
index 2736d8fa9e..2c54801c80 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml
@@ -1,20 +1,19 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-enrichment-lib</name>
+ <artifactId>openecomp-sdc-enrichment-lib</artifactId>
-
+ <packaging>pom</packaging>
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <artifactId>openecomp-sdc-enrichment-lib</artifactId>
- <name>openecomp-sdc-enrichment-lib</name>
- <packaging>pom</packaging>
-
-
<modules>
<module>openecomp-sdc-enrichment-api</module>
<module>openecomp-sdc-enrichment-core</module>
@@ -32,10 +31,15 @@
<artifactId>openecomp-sdc-enrichment-core</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<!--dependency>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-validation-impl</artifactId>
<version>${project.version}</version>
</dependency-->
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..b6e0173b77
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-enrichment-lib/pom.xml.versionsBackup
@@ -0,0 +1,44 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-enrichment-lib</name>
+ <artifactId>openecomp-sdc-enrichment-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-enrichment-api</module>
+ <module>openecomp-sdc-enrichment-core</module>
+ <module>openecomp-sdc-enrichment-impl</module>
+ </modules>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-enrichment-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-enrichment-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <!--dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-impl</artifactId>
+ <version>${project.version}</version>
+ </dependency-->
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml
index a1659d0201..562a0f4a1a 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-model-api</name>
+ <artifactId>openecomp-sdc-model-api</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,12 +14,9 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-model-api</name>
- <artifactId>openecomp-sdc-model-api</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
@@ -31,19 +33,19 @@
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
- <version>1.5.3</version>
+ <version>${swagger.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-heat-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-tosca-lib</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..eba0f207e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/pom.xml.versionsBackup
@@ -0,0 +1,51 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-model-api</name>
+ <artifactId>openecomp-sdc-model-api</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ <version>1.5.3</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceModelDao.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceModelDao.java
index d547316ebf..aa8cbee7d4 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceModelDao.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceModelDao.java
@@ -26,17 +26,11 @@ import org.openecomp.sdc.versioning.dao.types.Version;
import java.util.List;
-public interface EnrichedServiceModelDao<M, E> extends VersionableDao {
-
- M getServiceModel(String vspId, Version version);
-
- void storeServiceModel(String vspId, Version version, M serviceModel);
+public interface EnrichedServiceModelDao<M, E> extends VersionableDao,ServiceModelDao<M, E>{
void storeExternalArtifact(ServiceArtifact serviceArtifact);
- List<ServiceArtifact> getExternalArtifacts(String vspId, Version version);
-
- E getServiceModelInfo(String vspId, Version version, String name);
+ //List<ServiceArtifact> getExternalArtifacts(String vspId, Version version);
- List<String> getServiceModelContentNames();
+ //List<String> getServiceModelContentNames();
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceTemplateDao.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceTemplateDao.java
index 5ea2de7fd9..631d10a9ee 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceTemplateDao.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/EnrichedServiceTemplateDao.java
@@ -20,7 +20,6 @@
package org.openecomp.core.model.dao;
-
public interface EnrichedServiceTemplateDao extends ServiceTemplateDaoInter {
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceArtifactDaoInter.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceArtifactDaoInter.java
index 20d0c56c1b..30677b70a3 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceArtifactDaoInter.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceArtifactDaoInter.java
@@ -41,4 +41,6 @@ public interface ServiceArtifactDaoInter extends VersionableDao {
Object[] getKeys(String vspId, Version version);
ServiceArtifact getArtifactInfo(String vspId, Version version, String name);
+
+ void deleteAll(String vspId, Version version);
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceModelDao.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceModelDao.java
index 30bb79c100..1c13fbe760 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceModelDao.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceModelDao.java
@@ -34,7 +34,5 @@ public interface ServiceModelDao<M, E> extends VersionableDao {
E getServiceModelInfo(String vspId, Version version, String name);
- void storeExternalArtifact(ServiceArtifact serviceArtifact);
-
- List<String> getServiceModelContentNames();
+ void deleteAll(String vspId, Version version);
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceTemplateDaoInter.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceTemplateDaoInter.java
index c4c4cb19b7..d132a5158b 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceTemplateDaoInter.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/dao/ServiceTemplateDaoInter.java
@@ -43,4 +43,6 @@ public interface ServiceTemplateDaoInter extends VersionableDao {
String getBase(String vspId, Version version);
+ void deleteAll(String vspId, Version version);
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceArtifactEntity.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceArtifactEntity.java
index 87e25613fc..0e30c749fc 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceArtifactEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceArtifactEntity.java
@@ -27,6 +27,13 @@ import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
import com.datastax.driver.mapping.annotations.Table;
+
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.versioning.dao.types.Version;
import java.io.IOException;
@@ -70,7 +77,11 @@ public class EnrichedServiceArtifactEntity implements ServiceElementEntity {
try {
this.contentData = ByteBuffer.wrap(ByteStreams.toByteArray(entity.getContent()));
- } catch (IOException ioException) {
+ } catch (IOException ioException) { //todo fix typo in Traget
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_SERVICE_ENRICH_ARTIFACT, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.CREATE_ENRICH_SERVICE_ARTIFACT);
throw new RuntimeException(ioException);
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceTemplateEntity.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceTemplateEntity.java
index 526a901e47..0ebd27fe40 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceTemplateEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/EnrichedServiceTemplateEntity.java
@@ -27,6 +27,13 @@ import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
import com.datastax.driver.mapping.annotations.Table;
+
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.versioning.dao.types.Version;
import java.io.IOException;
@@ -56,13 +63,13 @@ public class EnrichedServiceTemplateEntity implements ServiceElementEntity {
@Column(name = "content_data")
public ByteBuffer contentData;
-
@Column(name = "base_name")
private String baseName;
public EnrichedServiceTemplateEntity() {
}
+
/**
* Instantiates a new Enriched service template entity.
*
@@ -76,12 +83,15 @@ public class EnrichedServiceTemplateEntity implements ServiceElementEntity {
try {
this.contentData = ByteBuffer.wrap(ByteStreams.toByteArray(entity.getContent()));
} catch (IOException ioException) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_ENRICH_SERVICE_TEMPLATE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.CREATE_ENRICH_SERVICE_TEMPLATE);
throw new RuntimeException(ioException);
}
}
-
public String getBaseName() {
return baseName;
}
@@ -90,7 +100,6 @@ public class EnrichedServiceTemplateEntity implements ServiceElementEntity {
this.baseName = baseName;
}
-
@Override
public String getEntityType() {
return ENTITY_TYPE;
@@ -135,7 +144,6 @@ public class EnrichedServiceTemplateEntity implements ServiceElementEntity {
this.contentData = contentData;
}
-
/**
* Gets service template.
*
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifact.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifact.java
index fad3e604d6..7d1df0e91b 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifact.java
@@ -20,8 +20,8 @@
package org.openecomp.core.model.types;
-public class ServiceArtifact extends ServiceElement {
+public class ServiceArtifact extends ServiceElement {
public ServiceArtifact() {
super();
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifactEntity.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifactEntity.java
index c5dfeced8a..8abbbd3c82 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifactEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceArtifactEntity.java
@@ -27,6 +27,12 @@ import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
import com.datastax.driver.mapping.annotations.Table;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.versioning.dao.types.Version;
import java.io.IOException;
@@ -71,6 +77,10 @@ public class ServiceArtifactEntity implements ServiceElementEntity {
try {
this.contentData = ByteBuffer.wrap(ByteStreams.toByteArray(entity.getContent()));
} catch (IOException ioException) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_SERVICE_ARTIFACT, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.CREATE_SERVICE_ARTIFACT);
throw new RuntimeException(ioException);
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceElement.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceElement.java
index 114cf03a39..541a66f77d 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceElement.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceElement.java
@@ -25,6 +25,7 @@ import org.openecomp.sdc.versioning.dao.types.Version;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
+
public class ServiceElement {
private String vspId;
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplate.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplate.java
index aa0285d6a9..9560ba306c 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplate.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplate.java
@@ -20,18 +20,17 @@
package org.openecomp.core.model.types;
+
public class ServiceTemplate extends ServiceElement {
private String baseName;
public ServiceTemplate() {
}
-
public String getBaseName() {
return baseName;
}
-
public void setBaseName(String baseName) {
this.baseName = baseName;
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplateEntity.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplateEntity.java
index f29334678f..4897c2f076 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplateEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/java/org/openecomp/core/model/types/ServiceTemplateEntity.java
@@ -27,6 +27,13 @@ import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
import com.datastax.driver.mapping.annotations.Table;
+
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.versioning.dao.types.Version;
import java.io.IOException;
@@ -56,7 +63,6 @@ public class ServiceTemplateEntity implements ServiceElementEntity {
@Column(name = "content_data")
public ByteBuffer contentData;
-
@Column(name = "base_name")
private String baseName;
@@ -76,12 +82,15 @@ public class ServiceTemplateEntity implements ServiceElementEntity {
try {
this.contentData = ByteBuffer.wrap(ByteStreams.toByteArray(entity.getContent()));
} catch (IOException ioException) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_SERVICE_TEMPLATE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.CREATE_SERVICE_TEMPLATE);
throw new RuntimeException(ioException);
}
}
-
public String getBaseName() {
return baseName;
}
@@ -90,7 +99,6 @@ public class ServiceTemplateEntity implements ServiceElementEntity {
this.baseName = baseName;
}
-
@Override
public String getEntityType() {
return ENTITY_TYPE;
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/resources/factoryConfiguration.json
index c228b29c57..4a56c8c716 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/resources/factoryConfiguration.json
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-api/src/main/resources/factoryConfiguration.json
@@ -1,8 +1,8 @@
{
- "org.openecomp.core.model.dao.ServiceModelDaoFactory":"org.openecomp.sdc.model.impl.ServiceModelDaoFactoryImpl",
- "org.openecomp.core.model.dao.ServiceTemplateDaoFactory":"org.openecomp.sdc.model.impl.ServiceTemplateDaoCassandraFactoryImpl",
- "org.openecomp.core.model.dao.ServiceArtifactDaoFactory":"org.openecomp.sdc.model.impl.ServiceArtifactDaoCassandraFactoryImpl",
- "org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory":"org.openecomp.sdc.model.impl.EnrichedServiceModelDaoFactoryImpl",
- "org.openecomp.core.model.dao.EnrichedServiceTemplateDaoFactory":"org.openecomp.sdc.model.impl.EnrichedServiceTemplateDaoCassandraFactoryImpl",
- "org.openecomp.core.model.dao.EnrichedServiceArtifactDaoFactory":"org.openecomp.sdc.model.impl.EnrichedServiceArtifactDaoCassandraFactoryImpl"
+ "org.openecomp.core.model.dao.ServiceModelDaoFactory": "org.openecomp.sdc.model.impl.ServiceModelDaoFactoryImpl",
+ "org.openecomp.core.model.dao.ServiceTemplateDaoFactory": "org.openecomp.sdc.model.impl.ServiceTemplateDaoCassandraFactoryImpl",
+ "org.openecomp.core.model.dao.ServiceArtifactDaoFactory": "org.openecomp.sdc.model.impl.ServiceArtifactDaoCassandraFactoryImpl",
+ "org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory": "org.openecomp.sdc.model.impl.EnrichedServiceModelDaoFactoryImpl",
+ "org.openecomp.core.model.dao.EnrichedServiceTemplateDaoFactory": "org.openecomp.sdc.model.impl.EnrichedServiceTemplateDaoCassandraFactoryImpl",
+ "org.openecomp.core.model.dao.EnrichedServiceArtifactDaoFactory": "org.openecomp.sdc.model.impl.EnrichedServiceArtifactDaoCassandraFactoryImpl"
} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml
index 0c1fc94a97..e1fb942102 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-model-core</name>
+ <artifactId>openecomp-sdc-model-core</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,26 +14,14 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-model-core</name>
- <artifactId>openecomp-sdc-model-core</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
- <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
-
+ <version>${logback.version}</version>
</dependency>
-
-
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -42,7 +35,6 @@
<artifactId>openecomp-sdc-versioning-core</artifactId>
<version>${project.version}</version>
</dependency>
-
<dependency>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-datatypes-lib</artifactId>
@@ -52,14 +44,7 @@
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
- </dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <version>${mockito.all.version}</version>
</dependency>
-
-
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..d62437122a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/pom.xml.versionsBackup
@@ -0,0 +1,56 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-model-core</name>
+ <artifactId>openecomp-sdc-model-core</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+
+
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/src/main/java/org/openecomp/sdc/model/impl/AbstractServiceModelDao.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/src/main/java/org/openecomp/sdc/model/impl/AbstractServiceModelDao.java
index eb993f6fb1..6863e04991 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/src/main/java/org/openecomp/sdc/model/impl/AbstractServiceModelDao.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-core/src/main/java/org/openecomp/sdc/model/impl/AbstractServiceModelDao.java
@@ -28,12 +28,17 @@ import org.openecomp.core.model.types.ServiceTemplate;
import org.openecomp.core.utilities.file.FileContentHandler;
import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.Import;
+import org.openecomp.sdc.tosca.datatypes.model.Old1610ServiceTemplate;
import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
import org.openecomp.sdc.versioning.dao.VersionableDao;
import org.openecomp.sdc.versioning.dao.types.Version;
+import sun.misc.IOUtils;
import java.io.InputStream;
+import java.util.ArrayList;
import java.util.Collection;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -49,7 +54,6 @@ public class AbstractServiceModelDao implements VersionableDao {
artifactDao.registerVersioning(versionableEntityType);
}
-
/**
* Gets service model.
*
@@ -59,22 +63,20 @@ public class AbstractServiceModelDao implements VersionableDao {
*/
public ToscaServiceModel getServiceModel(String vspId, Version version) {
if (vspId == null || version == null) {
- //throw new CoreException()
throw new RuntimeException("missing service model key");
}
-
FileContentHandler artifactFiles = getArtifacts(vspId, version);
+
Map<String, org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate> serviceTemplates =
- getTemplates(vspId, version);
+ getTemplates(vspId,
+ version);
String entryDefinitionServiceTemplate = getServiceBase(vspId, version);
return new ToscaServiceModel(artifactFiles, serviceTemplates, entryDefinitionServiceTemplate);
}
-
public void storeExternalArtifact(ServiceArtifact serviceArtifact) {
artifactDao.create(serviceArtifact);
- //TODO: update last modification time
}
@@ -103,8 +105,7 @@ public class AbstractServiceModelDao implements VersionableDao {
ServiceTemplate entityTmp;
String yaml;
for (Map.Entry<String, org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate>
- entryTemplate : toscaServiceModel
- .getServiceTemplates().entrySet()) {
+ entryTemplate : toscaServiceModel.getServiceTemplates().entrySet()) {
entityTmp = new ServiceTemplate();
yaml = new ToscaExtensionYamlUtil().objectToYaml(entryTemplate.getValue());
@@ -116,8 +117,6 @@ public class AbstractServiceModelDao implements VersionableDao {
templateDao.create(entityTmp);
}
-
- //TODO: update last modification time
}
@@ -142,25 +141,18 @@ public class AbstractServiceModelDao implements VersionableDao {
return null;
}
-
- /**
- * Gets service model content names.
- *
- * @return the service model content names
- */
public List<String> getServiceModelContentNames() {
-
return null;
}
-
private String getServiceBase(String vspId, Version version) {
return templateDao.getBase(vspId, version);
}
private Map<String, org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate> getTemplates(
- String vspId, Version version) {
+ String vspId,
+ Version version) {
Collection<ServiceTemplate> templates = templateDao.list(vspId, version);
if (templates == null) {
@@ -172,8 +164,47 @@ public class AbstractServiceModelDao implements VersionableDao {
private org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate getServiceTemplate(
InputStream content) {
- return new ToscaExtensionYamlUtil()
- .yamlToObject(content, org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate.class);
+ String serviceTemplateContent = new String(FileUtils.toByteArray(content));
+
+ try{
+ return new ToscaExtensionYamlUtil().yamlToObject(serviceTemplateContent,
+ org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate.class);
+ }catch (Exception e){
+ System.out.println("Found vsp with old-versioned tosca service template");
+ Old1610ServiceTemplate old1610ServiceTemplate =
+ new ToscaExtensionYamlUtil().yamlToObject(serviceTemplateContent,
+ Old1610ServiceTemplate.class);
+
+ return mapOldSTToCurrentST(old1610ServiceTemplate);
+ }
+ }
+
+ private static org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate mapOldSTToCurrentST(Old1610ServiceTemplate oldServiceTemplate){
+ org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate
+ serviceTemplate = new org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate();
+
+ serviceTemplate.setArtifact_types(oldServiceTemplate.getArtifact_types());
+ serviceTemplate.setCapability_types(oldServiceTemplate.getCapability_types());
+ serviceTemplate.setData_types(oldServiceTemplate.getData_types());
+ serviceTemplate.setDescription(oldServiceTemplate.getDescription());
+ serviceTemplate.setGroup_types(oldServiceTemplate.getGroup_types());
+ serviceTemplate.setInterface_types(oldServiceTemplate.getInterface_types());
+ serviceTemplate.setMetadata(oldServiceTemplate.getMetadata());
+ serviceTemplate.setNode_types(oldServiceTemplate.getNode_types());
+ serviceTemplate.setPolicy_types(oldServiceTemplate.getPolicy_types());
+ serviceTemplate.setRelationship_types(oldServiceTemplate.getRelationship_types());
+ serviceTemplate.setTopology_template(oldServiceTemplate.getTopology_template());
+
+ List<Map<String, Import>> imports = new ArrayList<>();
+ for(Map.Entry<String, Import> importEntry : oldServiceTemplate.getImports().entrySet()){
+ Map<String, Import> importMap = new HashMap<>();
+ importMap.put(importEntry.getKey(), importEntry.getValue());
+ imports.add(importMap);
+ }
+ serviceTemplate.setImports(imports);
+
+ return serviceTemplate;
+
}
private FileContentHandler getArtifacts(String vspId, Version version) {
@@ -183,8 +214,9 @@ public class AbstractServiceModelDao implements VersionableDao {
}
FileContentHandler fileContentHandler = new FileContentHandler();
- templates.stream().forEach(serviceArtifact -> fileContentHandler
- .addFile(serviceArtifact.getName(), serviceArtifact.getContent()));
+ templates.stream().forEach(
+ serviceArtifact -> fileContentHandler
+ .addFile(serviceArtifact.getName(), serviceArtifact.getContent()));
return fileContentHandler;
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml
index 708756d2cd..d08ac46973 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-model-impl</name>
+ <artifactId>openecomp-sdc-model-impl</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,26 +14,14 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-model-impl</name>
- <artifactId>openecomp-sdc-model-impl</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
- <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
-
+ <version>${logback.version}</version>
</dependency>
-
-
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -37,8 +30,11 @@
<artifactId>openecomp-sdc-model-core</artifactId>
<version>${project.version}</version>
</dependency>
-
-
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-datatypes-lib</artifactId>
@@ -48,14 +44,7 @@
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
- </dependency>
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <version>${mockito.all.version}</version>
</dependency>
-
-
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml.versionsBackup
new file mode 100644
index 0000000000..b8db689bd5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/pom.xml.versionsBackup
@@ -0,0 +1,49 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-model-impl</name>
+ <artifactId>openecomp-sdc-model-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+
+
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraFactoryImpl.java
index 13e351c257..479668ec0c 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraFactoryImpl.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.model.impl;
-
import org.openecomp.core.model.dao.EnrichedServiceArtifactDao;
import org.openecomp.core.model.dao.EnrichedServiceArtifactDaoFactory;
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraImpl.java
index d9ebe849e3..2a0b964066 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceArtifactDaoCassandraImpl.java
@@ -44,17 +44,18 @@ public class EnrichedServiceArtifactDaoCassandraImpl implements EnrichedServiceA
private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
private static final Mapper<EnrichedServiceArtifactEntity> mapper =
- noSqlDb.getMappingManager().mapper(EnrichedServiceArtifactEntity.class);
+ noSqlDb.getMappingManager().mapper(
+ EnrichedServiceArtifactEntity.class);
private static final VspServiceArtifactAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(VspServiceArtifactAccessor.class);
+ noSqlDb.getMappingManager().createAccessor(
+ VspServiceArtifactAccessor.class);
private static final UDTMapper<Version> versionMapper =
noSqlDb.getMappingManager().udtMapper(Version.class);
@Override
public void registerVersioning(String versionableEntityType) {
- VersioningManagerFactory.getInstance().createInterface()
- .register(versionableEntityType, new VersionableEntityMetadata(
- mapper.getTableMetadata().getName(),
+ VersioningManagerFactory.getInstance().createInterface().register(versionableEntityType,
+ new VersionableEntityMetadata(mapper.getTableMetadata().getName(),
mapper.getTableMetadata().getPartitionKey().get(0).getName(),
mapper.getTableMetadata().getPartitionKey().get(1).getName()));
}
@@ -103,8 +104,8 @@ public class EnrichedServiceArtifactDaoCassandraImpl implements EnrichedServiceA
@Override
public ServiceArtifact getArtifactInfo(String vspId, Version version, String name) {
- EnrichedServiceArtifactEntity enrichedServiceArtifactEntity =
- accessor.getArtifactInfo(vspId, versionMapper.toUDT(version), name).one();
+ EnrichedServiceArtifactEntity enrichedServiceArtifactEntity = accessor.getArtifactInfo(vspId,
+ versionMapper.toUDT(version), name).one();
if (enrichedServiceArtifactEntity == null) {
return null;
}
@@ -112,6 +113,10 @@ public class EnrichedServiceArtifactDaoCassandraImpl implements EnrichedServiceA
return enrichedServiceArtifactEntity.getServiceArtifact();
}
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ accessor.deleteAll(vspId, versionMapper.toUDT(version));
+ }
@Accessor
interface VspServiceArtifactAccessor {
@@ -120,18 +125,21 @@ public class EnrichedServiceArtifactDaoCassandraImpl implements EnrichedServiceA
Result<EnrichedServiceArtifactEntity> listAll();
@Query(
- "SELECT vsp_id, version, name ,content_data FROM vsp_enriched_service_artifact "
- + "where vsp_id=? and version=? ")
+ "SELECT vsp_id, version, name ,content_data FROM "
+ + "vsp_enriched_service_artifact where vsp_id=? and version=? ")
Result<EnrichedServiceArtifactEntity> list(String vspId, UDTValue version);
-
@Query(
- "SELECT vsp_id,version,name,content_data FROM vsp_enriched_service_artifact "
- + "where vsp_id=? and version=? and name=?")
+ "SELECT vsp_id,version,name,content_data FROM "
+ + "vsp_enriched_service_artifact where vsp_id=? and version=? and name=?")
Result<EnrichedServiceArtifactEntity> getArtifactInfo(String vspId, UDTValue version,
String name);
@Query("DELETE from vsp_enriched_service_artifact where vsp_id=? and version=?")
ResultSet delete(String vspId, UDTValue version);
+
+ @Query("DELETE FROM vsp_enriched_service_artifact where vsp_id=? and version=?")
+ ResultSet deleteAll(String vspId, UDTValue version);
}
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoFactoryImpl.java
index 326e5e78fc..98cb8724df 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoFactoryImpl.java
@@ -20,12 +20,14 @@
package org.openecomp.sdc.model.impl;
-
import org.openecomp.core.model.dao.EnrichedServiceModelDao;
import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
+import org.openecomp.sdc.model.impl.zusammen.EnrichedServiceModelDaoZusammenImpl;
public class EnrichedServiceModelDaoFactoryImpl extends EnrichedServiceModelDaoFactory {
- private static final EnrichedServiceModelDao INSTANCE = new EnrichedServiceModelDaoImpl();
+ private static final EnrichedServiceModelDao INSTANCE = new EnrichedServiceModelDaoZusammenImpl( ZusammenAdaptorFactory
+ .getInstance().createInterface());
@Override
public EnrichedServiceModelDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoImpl.java
index 9e784c7fef..14eda9ee4d 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceModelDaoImpl.java
@@ -37,8 +37,15 @@ public class EnrichedServiceModelDaoImpl extends AbstractServiceModelDao
artifactDao = EnrichedServiceArtifactDaoFactory.getInstance().createInterface();
}
- @Override
+ /*@Override
public List<ServiceArtifact> getExternalArtifacts(String vspId, Version version) {
return (List<ServiceArtifact>) artifactDao.list(vspId, version);
}
+*/
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ templateDao.deleteAll(vspId, version);
+ artifactDao.deleteAll(vspId, version);
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraFactoryImpl.java
index 8103b2cea6..14aa986bd8 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraFactoryImpl.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.model.impl;
-
import org.openecomp.core.model.dao.EnrichedServiceTemplateDao;
import org.openecomp.core.model.dao.EnrichedServiceTemplateDaoFactory;
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraImpl.java
index f0d4b56204..ab13e6a9f0 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/EnrichedServiceTemplateDaoCassandraImpl.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.model.impl;
+import com.datastax.driver.core.ResultSet;
import com.datastax.driver.core.UDTValue;
import com.datastax.driver.mapping.Mapper;
import com.datastax.driver.mapping.Result;
@@ -43,30 +44,23 @@ public class EnrichedServiceTemplateDaoCassandraImpl implements EnrichedServiceT
private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
private static final Mapper<EnrichedServiceTemplateEntity> mapper =
- noSqlDb.getMappingManager().mapper(EnrichedServiceTemplateEntity.class);
+ noSqlDb.getMappingManager().mapper(
+ EnrichedServiceTemplateEntity.class);
private static final VspServiceTemplateAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(VspServiceTemplateAccessor.class);
+ noSqlDb.getMappingManager().createAccessor(
+ VspServiceTemplateAccessor.class);
private static final UDTMapper<Version> versionMapper =
noSqlDb.getMappingManager().udtMapper(Version.class);
@Override
public void registerVersioning(String versionableEntityType) {
- VersioningManagerFactory.getInstance().createInterface()
- .register(versionableEntityType, new VersionableEntityMetadata(
- mapper.getTableMetadata().getName(),
+ VersioningManagerFactory.getInstance().createInterface().register(versionableEntityType,
+ new VersionableEntityMetadata(mapper.getTableMetadata().getName(),
mapper.getTableMetadata().getPartitionKey().get(0).getName(),
mapper.getTableMetadata().getPartitionKey().get(1).getName()));
}
@Override
- public Collection<ServiceTemplate> list(String vspId, Version version) {
-
- List<EnrichedServiceTemplateEntity> entityList = accessor.list(vspId, version).all();
- return entityList.stream().map(entity -> entity.getServiceTemplate())
- .collect(Collectors.toList());
- }
-
- @Override
public void create(ServiceTemplate entity) {
EnrichedServiceTemplateEntity vspEnrichedServiceTemplateEntity =
new EnrichedServiceTemplateEntity(entity);
@@ -90,7 +84,6 @@ public class EnrichedServiceTemplateDaoCassandraImpl implements EnrichedServiceT
mapper.delete(vspId, version);
}
-
@Override
public Object[] getKeys(String vspId, Version version) {
return new Object[]{vspId, versionMapper.toUDT(version)};
@@ -98,8 +91,8 @@ public class EnrichedServiceTemplateDaoCassandraImpl implements EnrichedServiceT
@Override
public ServiceTemplate getTemplateInfo(String vspId, Version version, String name) {
- EnrichedServiceTemplateEntity enrichedServiceTemplateEntity =
- accessor.getTemplateInfo(vspId, versionMapper.toUDT(version), name).one();
+ EnrichedServiceTemplateEntity enrichedServiceTemplateEntity = accessor.getTemplateInfo(vspId,
+ versionMapper.toUDT(version), name).one();
if (enrichedServiceTemplateEntity == null) {
return null;
}
@@ -107,6 +100,14 @@ public class EnrichedServiceTemplateDaoCassandraImpl implements EnrichedServiceT
}
@Override
+ public Collection<ServiceTemplate> list(String vspId, Version version) {
+
+ List<EnrichedServiceTemplateEntity> entityList = accessor.list(vspId, version).all();
+ return entityList.stream().map(entity -> entity.getServiceTemplate())
+ .collect(Collectors.toList());
+ }
+
+ @Override
public String getBase(String vspId, Version version) {
Result<EnrichedServiceTemplateEntity> element =
accessor.getBase(vspId, versionMapper.toUDT(version));
@@ -119,6 +120,10 @@ public class EnrichedServiceTemplateDaoCassandraImpl implements EnrichedServiceT
return null;
}
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ accessor.deleteAll(vspId, versionMapper.toUDT(version));
+ }
@Accessor
interface VspServiceTemplateAccessor {
@@ -128,20 +133,23 @@ public class EnrichedServiceTemplateDaoCassandraImpl implements EnrichedServiceT
Result<EnrichedServiceTemplateEntity> listAll();
@Query(
- "SELECT vsp_id, version, name, base_name ,content_data FROM vsp_enriched_service_template "
- + "where vsp_id=? and version=?")
+ "SELECT vsp_id, version, name, base_name ,content_data FROM "
+ + "vsp_enriched_service_template where vsp_id=? and version=?")
Result<EnrichedServiceTemplateEntity> list(String vspId, Version version);
-
@Query(
- "SELECT vsp_id, version, name, base_name ,content_data FROM vsp_enriched_service_template "
- + "where vsp_id=? and version=? and name=?")
+ "SELECT vsp_id, version, name, base_name ,content_data FROM "
+ + "vsp_enriched_service_template where vsp_id=? and version=? and name=?")
Result<EnrichedServiceTemplateEntity> getTemplateInfo(String vspId, UDTValue version,
String name);
@Query(
- "SELECT vsp_id, version, name, base_name FROM vsp_enriched_service_template "
- + "where vsp_id=? and version=?")
+ "SELECT vsp_id, version, name, base_name FROM "
+ + "vsp_enriched_service_template where vsp_id=? and version=?")
Result<EnrichedServiceTemplateEntity> getBase(String vspId, UDTValue version);
+
+ @Query("DELETE FROM vsp_enriched_service_template where vsp_id = ? and version = ?")
+ ResultSet deleteAll(String vspId, UDTValue version);
}
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraFactoryImpl.java
index f24fb1b475..ee40dad385 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraFactoryImpl.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.model.impl;
-
import org.openecomp.core.model.dao.ServiceArtifactDao;
import org.openecomp.core.model.dao.ServiceArtifactDaoFactory;
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraImpl.java
index c7851c0fd9..15aae0f710 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceArtifactDaoCassandraImpl.java
@@ -43,18 +43,18 @@ import java.util.stream.Collectors;
public class ServiceArtifactDaoCassandraImpl implements ServiceArtifactDao {
private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final Mapper<ServiceArtifactEntity> mapper =
- noSqlDb.getMappingManager().mapper(ServiceArtifactEntity.class);
+ private static final Mapper<ServiceArtifactEntity> mapper = noSqlDb.getMappingManager().mapper(
+ ServiceArtifactEntity.class);
private static final VspServiceArtifactAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(VspServiceArtifactAccessor.class);
+ noSqlDb.getMappingManager().createAccessor(
+ VspServiceArtifactAccessor.class);
private static final UDTMapper<Version> versionMapper =
noSqlDb.getMappingManager().udtMapper(Version.class);
@Override
public void registerVersioning(String versionableEntityType) {
- VersioningManagerFactory.getInstance().createInterface()
- .register(versionableEntityType, new VersionableEntityMetadata(
- mapper.getTableMetadata().getName(),
+ VersioningManagerFactory.getInstance().createInterface().register(versionableEntityType,
+ new VersionableEntityMetadata(mapper.getTableMetadata().getName(),
mapper.getTableMetadata().getPartitionKey().get(0).getName(),
mapper.getTableMetadata().getPartitionKey().get(1).getName()));
}
@@ -94,10 +94,10 @@ public class ServiceArtifactDaoCassandraImpl implements ServiceArtifactDao {
accessor.delete(vspId, versionMapper.toUDT(version));
}
- // @Override
- // public void deleteArtifacts(String vspId, Version version){
- // accessor.delete(vspId, versionMapper.toUDT(version));
- // }
+ // @Override
+ // public void deleteArtifacts(String vspId, Version version){
+ // accessor.delete(vspId, versionMapper.toUDT(version));
+ // }
@Override
public Object[] getKeys(String vspId, Version version) {
@@ -107,7 +107,8 @@ public class ServiceArtifactDaoCassandraImpl implements ServiceArtifactDao {
@Override
public ServiceArtifact getArtifactInfo(String vspId, Version version, String name) {
ServiceArtifactEntity serviceArtifactEntity =
- accessor.getArtifactInfo(vspId, versionMapper.toUDT(version), name).one();
+ accessor.getArtifactInfo(vspId, versionMapper.toUDT(version),
+ name).one();
if (serviceArtifactEntity == null) {
return null;
}
@@ -115,6 +116,10 @@ public class ServiceArtifactDaoCassandraImpl implements ServiceArtifactDao {
return serviceArtifactEntity.getServiceArtifact();
}
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ accessor.deleteAll(vspId, versionMapper.toUDT(version));
+ }
@Accessor
interface VspServiceArtifactAccessor {
@@ -124,16 +129,19 @@ public class ServiceArtifactDaoCassandraImpl implements ServiceArtifactDao {
@Query(
"SELECT vsp_id, version, name ,content_data "
- + "FROM vsp_service_artifact where vsp_id=? and version=? ")
+ + "FROM vsp_service_artifact where vsp_id=? and version=? ")
Result<ServiceArtifactEntity> list(String vspId, UDTValue version);
@Query(
- "SELECT vsp_id,version,name,content_data FROM "
- + "vsp_service_artifact where vsp_id=? and version=? and name=?")
+ "SELECT vsp_id,version,name,content_data FROM"
+ + " vsp_service_artifact where vsp_id=? and version=? and name=?")
Result<ServiceArtifactEntity> getArtifactInfo(String vspId, UDTValue version, String name);
@Query("DELETE from vsp_service_artifact where vsp_id=? and version=?")
ResultSet delete(String vspId, UDTValue version);
+
+ @Query("DELETE FROM vsp_service_artifact where vsp_id=? and version=?")
+ ResultSet deleteAll(String vspId, UDTValue version);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoFactoryImpl.java
index 1347636bf1..85508670aa 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoFactoryImpl.java
@@ -20,12 +20,14 @@
package org.openecomp.sdc.model.impl;
-
import org.openecomp.core.model.dao.ServiceModelDao;
import org.openecomp.core.model.dao.ServiceModelDaoFactory;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
+import org.openecomp.sdc.model.impl.zusammen.ServiceModelDaoZusammenImpl;
public class ServiceModelDaoFactoryImpl extends ServiceModelDaoFactory {
- private static final ServiceModelDao INSTANCE = new ServiceModelDaoImpl();
+ private static final ServiceModelDao INSTANCE = new ServiceModelDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public ServiceModelDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoImpl.java
index c397aec61d..4ad8d7c98a 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceModelDaoImpl.java
@@ -25,14 +25,18 @@ import org.openecomp.core.model.dao.ServiceModelDao;
import org.openecomp.core.model.dao.ServiceTemplateDaoFactory;
import org.openecomp.core.model.types.ServiceElement;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.versioning.dao.types.Version;
public class ServiceModelDaoImpl extends AbstractServiceModelDao
implements ServiceModelDao<ToscaServiceModel, ServiceElement> {
-
public ServiceModelDaoImpl() {
templateDao = ServiceTemplateDaoFactory.getInstance().createInterface();
artifactDao = ServiceArtifactDaoFactory.getInstance().createInterface();
}
+ @Override
+ public void deleteAll(String vspId, Version version) {
+
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraFactoryImpl.java
index 23c43b76d3..bc249701f2 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraFactoryImpl.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.model.impl;
-
import org.openecomp.core.model.dao.ServiceTemplateDao;
import org.openecomp.core.model.dao.ServiceTemplateDaoFactory;
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraImpl.java
index ffc9a24677..71334ce8d3 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/ServiceTemplateDaoCassandraImpl.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.model.impl;
+import com.datastax.driver.core.ResultSet;
import com.datastax.driver.core.UDTValue;
import com.datastax.driver.mapping.Mapper;
import com.datastax.driver.mapping.Result;
@@ -41,33 +42,24 @@ import java.util.stream.Collectors;
public class ServiceTemplateDaoCassandraImpl implements ServiceTemplateDao {
-
private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final Mapper<ServiceTemplateEntity> mapper =
- noSqlDb.getMappingManager().mapper(ServiceTemplateEntity.class);
+ private static final Mapper<ServiceTemplateEntity> mapper = noSqlDb.getMappingManager().mapper(
+ ServiceTemplateEntity.class);
private static final VspServiceTemplateAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(VspServiceTemplateAccessor.class);
+ noSqlDb.getMappingManager().createAccessor(
+ VspServiceTemplateAccessor.class);
private static final UDTMapper<Version> versionMapper =
noSqlDb.getMappingManager().udtMapper(Version.class);
@Override
public void registerVersioning(String versionableEntityType) {
- VersioningManagerFactory.getInstance().createInterface()
- .register(versionableEntityType, new VersionableEntityMetadata(
- mapper.getTableMetadata().getName(),
+ VersioningManagerFactory.getInstance().createInterface().register(versionableEntityType,
+ new VersionableEntityMetadata(mapper.getTableMetadata().getName(),
mapper.getTableMetadata().getPartitionKey().get(0).getName(),
mapper.getTableMetadata().getPartitionKey().get(1).getName()));
}
@Override
- public Collection<ServiceTemplate> list(String vspId, Version version) {
-
- List<ServiceTemplateEntity> entityList = accessor.list(vspId, version).all();
- return entityList.stream().map(entity -> entity.getServiceTemplate())
- .collect(Collectors.toList());
- }
-
- @Override
public void create(ServiceTemplate entity) {
ServiceTemplateEntity vspServiceTemplateEntity = new ServiceTemplateEntity(entity);
mapper.save(vspServiceTemplateEntity);
@@ -89,7 +81,6 @@ public class ServiceTemplateDaoCassandraImpl implements ServiceTemplateDao {
mapper.delete(vspId, version);
}
-
@Override
public Object[] getKeys(String vspId, Version version) {
return new Object[]{vspId, versionMapper.toUDT(version)};
@@ -98,7 +89,8 @@ public class ServiceTemplateDaoCassandraImpl implements ServiceTemplateDao {
@Override
public ServiceTemplate getTemplateInfo(String vspId, Version version, String name) {
ServiceTemplateEntity serviceTemplateEntity =
- accessor.getTemplateInfo(vspId, versionMapper.toUDT(version), name).one();
+ accessor.getTemplateInfo(vspId, versionMapper.toUDT(version),
+ name).one();
if (serviceTemplateEntity == null) {
return null;
}
@@ -106,6 +98,14 @@ public class ServiceTemplateDaoCassandraImpl implements ServiceTemplateDao {
}
@Override
+ public Collection<ServiceTemplate> list(String vspId, Version version) {
+
+ List<ServiceTemplateEntity> entityList = accessor.list(vspId, version).all();
+ return entityList.stream().map(entity -> entity.getServiceTemplate())
+ .collect(Collectors.toList());
+ }
+
+ @Override
public String getBase(String vspId, Version version) {
Result<ServiceTemplateEntity> element = accessor.getBase(vspId, versionMapper.toUDT(version));
if (element != null) {
@@ -117,6 +117,10 @@ public class ServiceTemplateDaoCassandraImpl implements ServiceTemplateDao {
return null;
}
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ accessor.deleteAll(vspId, versionMapper.toUDT(version));
+ }
@Accessor
interface VspServiceTemplateAccessor {
@@ -126,20 +130,21 @@ public class ServiceTemplateDaoCassandraImpl implements ServiceTemplateDao {
@Query(
"SELECT vsp_id, version, name, base_name ,content_data"
- + " FROM vsp_service_template where vsp_id=? and version=?")
+ + " FROM vsp_service_template where vsp_id=? and version=?")
Result<ServiceTemplateEntity> list(String vspId, Version version);
-
@Query(
- "SELECT vsp_id, version, name, base_name ,content_data "
- + "FROM vsp_service_template where vsp_id=? and version=? and name=?")
+ "SELECT vsp_id, version, name, base_name ,content_data"
+ + " FROM vsp_service_template where vsp_id=? and version=? and name=?")
Result<ServiceTemplateEntity> getTemplateInfo(String vspId, UDTValue version, String name);
@Query(
- "SELECT vsp_id, version, name, base_name "
- + "FROM vsp_service_template where vsp_id=? and version=?")
+ "SELECT vsp_id, version, name, base_name"
+ + " FROM vsp_service_template where vsp_id=? and version=?")
Result<ServiceTemplateEntity> getBase(String vspId, UDTValue version);
- }
+ @Query("DELETE FROM vsp_service_template where vsp_id = ? and version = ?")
+ ResultSet deleteAll(String vspId, UDTValue version);
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ElementType.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ElementType.java
new file mode 100644
index 0000000000..e51d7e0c45
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ElementType.java
@@ -0,0 +1,7 @@
+package org.openecomp.sdc.model.impl.zusammen;
+
+public enum ElementType {
+ Servicetemplate,Artifact;
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/EnrichedServiceModelDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/EnrichedServiceModelDaoZusammenImpl.java
new file mode 100644
index 0000000000..b038c70372
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/EnrichedServiceModelDaoZusammenImpl.java
@@ -0,0 +1,51 @@
+package org.openecomp.sdc.model.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.types.ServiceArtifact;
+import org.openecomp.core.model.types.ServiceElement;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+public class EnrichedServiceModelDaoZusammenImpl extends ServiceModelDaoZusammenImpl implements
+ EnrichedServiceModelDao<ToscaServiceModel, ServiceElement> {
+
+ private static final Logger logger =
+ LoggerFactory.getLogger(EnrichedServiceModelDaoZusammenImpl.class);
+
+ public EnrichedServiceModelDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ super(zusammenAdaptor);
+ this.name = StructureElement.EnrichedServiceModel.name();
+ }
+
+ @Override
+ public void storeExternalArtifact(ServiceArtifact serviceArtifact) {
+ ZusammenElement artifactElement = buildArtifactElement(serviceArtifact.getName(),
+ FileUtils.toByteArray(serviceArtifact.getContent()), Action.CREATE);
+
+ ZusammenElement artifactsElement =
+ buildStructuralElement(StructureElement.Artifacts.name(), null);
+ artifactsElement.addSubElement(artifactElement);
+
+ ZusammenElement enrichedServiceModelElement = buildStructuralElement(name, null);
+ enrichedServiceModelElement.addSubElement(artifactsElement);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(serviceArtifact.getVspId());
+ ElementContext elementContext = new ElementContext(itemId, getFirstVersionId(context, itemId));
+ zusammenAdaptor
+ .saveElement(context, elementContext, enrichedServiceModelElement, "add service artifact.");
+
+ logger.info("Finished adding artifact to service model for vsp id -> " +
+ elementContext.getItemId().getValue());
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ServiceModelDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ServiceModelDaoZusammenImpl.java
new file mode 100644
index 0000000000..530ad44574
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/ServiceModelDaoZusammenImpl.java
@@ -0,0 +1,208 @@
+package org.openecomp.sdc.model.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import org.openecomp.core.model.dao.ServiceModelDao;
+import org.openecomp.core.model.types.ServiceElement;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
+
+import java.io.ByteArrayInputStream;
+import java.util.Collection;
+import java.util.Map;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+public class ServiceModelDaoZusammenImpl
+ implements ServiceModelDao<ToscaServiceModel, ServiceElement> {
+ private static final Logger logger = LoggerFactory.getLogger(ServiceModelDaoZusammenImpl.class);
+
+ protected ZusammenAdaptor zusammenAdaptor;
+ protected String name;
+
+ public ServiceModelDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ this.name = StructureElement.ServiceModel.name();
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+
+ }
+
+ @Override
+ public ToscaServiceModel getServiceModel(String vspId, Version version) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId, getFirstVersionId(context, itemId),
+ version.getStatus() == VersionStatus.Locked ? null : version.toString());
+
+ Optional<ElementInfo> serviceModelElement = zusammenAdaptor
+ .getElementInfoByName(context, elementContext, null, name);
+
+ if (serviceModelElement.isPresent()) {
+ String entryDefinitionServiceTemplate =
+ serviceModelElement.get().getInfo().getProperty("base");
+ Id serviceModelElementId = serviceModelElement.get().getId();
+ Map<String, ServiceTemplate> serviceTemplates =
+ getTemplates(context, elementContext, serviceModelElementId);
+ if (serviceTemplates == null) {
+ return null;
+ }
+ FileContentHandler artifacts = getArtifacts(context, elementContext, serviceModelElementId);
+
+
+ return new ToscaServiceModel(
+ artifacts, serviceTemplates, entryDefinitionServiceTemplate);
+ } else {
+ return null;
+ }
+ }
+
+ protected Map<String, ServiceTemplate> getTemplates(SessionContext context,
+ ElementContext elementContext,
+ Id serviceModelElementId) {
+ Optional<ElementInfo> templatesElementInfo = zusammenAdaptor.getElementInfoByName(
+ context, elementContext, serviceModelElementId, StructureElement.Templates.name());
+
+ if (templatesElementInfo.isPresent()) {
+
+ //Map<String, ServiceTemplate> serviceTemplateMap = new HashMap<>();
+ Collection<Element> elements = zusammenAdaptor.listElementData(context, elementContext,
+ templatesElementInfo.get().getId());
+
+ return elements.stream().collect(Collectors.toMap(
+ element -> element.getInfo().getName(),
+ this::elementToServiceTemplate));
+
+ /*elements.stream().forEach(element ->serviceTemplateMap.put(element.getInfo().getName(),
+ elementToServiceTemplate(element)));
+ return serviceTemplateMap;*/
+ }
+ return null;
+ }
+
+ protected FileContentHandler getArtifacts(SessionContext context, ElementContext elementContext,
+ Id serviceModelElementId) {
+ Optional<ElementInfo> artifactsElement = zusammenAdaptor.getElementInfoByName(
+ context, elementContext, serviceModelElementId, StructureElement.Artifacts.name());
+
+ if (artifactsElement.isPresent()) {
+
+ Collection<Element> elements = zusammenAdaptor.listElementData(context, elementContext,
+ artifactsElement.get().getId());
+ FileContentHandler fileContentHandler = new FileContentHandler();
+ elements.forEach(element -> fileContentHandler.addFile(element.getInfo().getName(),
+ element.getData()));
+ return fileContentHandler;
+ }
+
+ return null;
+ }
+
+ @Override
+ public void storeServiceModel(String vspId, Version version, ToscaServiceModel serviceModel) {
+ logger.info("Storing service model for vsp id -> " + vspId);
+
+ ZusammenElement templatesElement =
+ buildStructuralElement(StructureElement.Templates.name(), null);
+ serviceModel.getServiceTemplates().entrySet().forEach(entry -> templatesElement.addSubElement(
+ buildServiceTemplateElement(entry.getKey(), entry.getValue(),
+ serviceModel.getEntryDefinitionServiceTemplate(), Action.CREATE)));
+
+ ZusammenElement artifactsElement =
+ buildStructuralElement(StructureElement.Artifacts.name(), Action.UPDATE);
+ serviceModel.getArtifactFiles().getFiles().entrySet().forEach(entry -> artifactsElement
+ .addSubElement(buildArtifactElement(entry.getKey(), entry.getValue(), Action.CREATE)));
+
+ ZusammenElement serviceModelElement = buildStructuralElement(name, Action.UPDATE);
+ serviceModelElement.getInfo()
+ .addProperty("base", serviceModel.getEntryDefinitionServiceTemplate());
+
+ serviceModelElement.addSubElement(templatesElement);
+ serviceModelElement.addSubElement(artifactsElement);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId, getFirstVersionId(context, itemId));
+ zusammenAdaptor
+ .saveElement(context, elementContext, serviceModelElement, "Store service model");
+
+ logger.info("Finished storing service model for vsp id -> " + vspId);
+ }
+
+ @Override
+ public ServiceElement getServiceModelInfo(String vspId, Version version, String name) {
+ return null;
+ }
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ logger.info("started deleting service model for vsp id -> " + vspId);
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId, getFirstVersionId(context, itemId));
+
+ ZusammenElement zusammenElement = ZusammenUtil.buildStructuralElement(name, Action.DELETE);
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement, "delete:" + name + ".");
+ logger.info("Finished deleting service model for vsp id -> " + vspId);
+ }
+
+ protected ZusammenElement buildArtifactElement(String name, byte[] artifact, Action action) {
+ ZusammenElement artifactElement = new ZusammenElement();
+ artifactElement.setAction(action);
+ Info info = new Info();
+ info.setName(name);
+ info.addProperty("type", ElementType.Artifact.name());
+ artifactElement.setInfo(info);
+ artifactElement.setData(new ByteArrayInputStream(artifact));
+
+ return artifactElement;
+ }
+
+ private ServiceTemplate elementToServiceTemplate(Element element) {
+ return new ToscaExtensionYamlUtil().yamlToObject(element.getData(), ServiceTemplate.class);
+ }
+
+ private Element buildServiceTemplateElement(String name, ServiceTemplate serviceTemplate,
+ String entryDefinitionServiceTemplate,
+ Action action) {
+ ZusammenElement zusammenElement = new ZusammenElement();
+ zusammenElement.setAction(action);
+ Info info = new Info();
+ info.setName(name);
+ info.setDescription(serviceTemplate.getDescription());
+ info.addProperty("type", ElementType.Servicetemplate.name());
+ info.addProperty("base", entryDefinitionServiceTemplate);
+ String yaml = new ToscaExtensionYamlUtil().objectToYaml(serviceTemplate);
+ zusammenElement.setData(new ByteArrayInputStream(yaml.getBytes()));
+ zusammenElement.setInfo(info);
+ return zusammenElement;
+ }
+
+ protected Id getFirstVersionId(SessionContext context, Id vspId) {
+ Optional<ItemVersion> itemVersionOptional = zusammenAdaptor.getFirstVersion(context, vspId);
+ ItemVersion itemVersion = itemVersionOptional.orElseThrow(() ->
+ new RuntimeException(String.format("Vsp %s does not contain any version.", vspId))); //todo
+ return itemVersion.getId();
+ }
+
+ protected ZusammenElement buildStructuralElement(String structureElement, Action action) {
+ return ZusammenUtil.buildStructuralElement(structureElement, action);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/StructureElement.java b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/StructureElement.java
new file mode 100644
index 0000000000..212c754b5d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/openecomp-sdc-model-impl/src/main/java/org/openecomp/sdc/model/impl/zusammen/StructureElement.java
@@ -0,0 +1,10 @@
+package org.openecomp.sdc.model.impl.zusammen;
+
+public enum StructureElement {
+ ServiceModel,
+ EnrichedServiceModel,
+ Artifacts,
+ Templates,
+ EntryDefinition,
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-model-lib/pom.xml
index e62bd1d7c2..138ebf3d77 100644
--- a/openecomp-be/lib/openecomp-sdc-model-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/pom.xml
@@ -1,17 +1,19 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-model-lib</name>
+ <artifactId>openecomp-sdc-model-lib</artifactId>
<packaging>pom</packaging>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <name>openecomp-sdc-model-lib</name>
- <artifactId>openecomp-sdc-model-lib</artifactId>
-
<modules>
<module>openecomp-sdc-model-api</module>
<module>openecomp-sdc-model-core</module>
@@ -40,4 +42,4 @@
<version>${project.version}</version>
</dependency-->
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-model-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-model-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..d49cbd7069
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-model-lib/pom.xml.versionsBackup
@@ -0,0 +1,44 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-model-lib</name>
+ <artifactId>openecomp-sdc-model-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-model-api</module>
+ <module>openecomp-sdc-model-core</module>
+ <module>openecomp-sdc-model-impl</module>
+ </modules>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-impl</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <!--dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency-->
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml
new file mode 100644
index 0000000000..54cf8e21f1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml
@@ -0,0 +1,65 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>att-sdc-translator-impl</name>
+ <artifactId>att-sdc-translator-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+
+ <!-- need to be changed to sdk -->
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml.versionsBackup
new file mode 100644
index 0000000000..e44d37ff8f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/pom.xml.versionsBackup
@@ -0,0 +1,70 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>att-sdc-translator-impl</name>
+ <artifactId>att-sdc-translator-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>1.1.2</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+
+ <!-- need to be changed to sdk -->
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <!--dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency-->
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/tosca/datatypes/AttToscaPolicyType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/tosca/datatypes/AttToscaPolicyType.java
new file mode 100644
index 0000000000..8881ec5e40
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/tosca/datatypes/AttToscaPolicyType.java
@@ -0,0 +1,21 @@
+package com.att.sdc.tosca.datatypes;
+
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
+
+/**
+ * Created by TALIO on 5/17/2017.
+ */
+public class AttToscaPolicyType {
+ private static Configuration config = ConfigurationManager.lookup();
+
+ public static String POLICY_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_POLICY_TYPE);
+
+
+ public static String PLACEMENT_VALET_AFFINITY = POLICY_TYPE_PREFIX + "placement.valet.Affinity";
+ public static String PLACEMENT_VALET_EXCLUSIVITY =
+ POLICY_TYPE_PREFIX + "placement.valet.Exclusivity";
+ public static String PLACEMENT_VALET_DIVERSITY = POLICY_TYPE_PREFIX + "placement.valet.Diversity";
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImpl.java
new file mode 100644
index 0000000000..e303276538
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImpl.java
@@ -0,0 +1,301 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package com.att.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import com.att.sdc.tosca.datatypes.AttToscaPolicyType;
+import com.google.common.base.Strings;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.ToscaGroupType;
+import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
+import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.PolicyDefinition;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
+import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationBase;
+import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+import static org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil.getResource;
+
+public class ResourceTranslationValetGroupAssignmentImpl extends ResourceTranslationBase {
+ private static final String AFFINITY = "affinity";
+ private static final String EXCLUSIVITY = "exclusivity";
+ private static final String DIVERSITY = "diversity";
+ private static List<String> supportedPolicies = Arrays.asList(AFFINITY, EXCLUSIVITY, DIVERSITY);
+
+ private boolean validateGroupType(TranslateTo translateTo) {
+ Map<String, Object> properties = translateTo.getResource().getProperties();
+ if (properties == null) {
+ return false;
+ }
+
+ Object groupType = properties.get("group_type");
+ if (Objects.isNull(groupType)) {
+ return false;
+ }
+ return isGroupTypeValid(groupType);
+ }
+
+ @Override
+ protected void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String resourceId = translateTo.getResourceId();
+ Optional<String> toscaPolicyType = getToscaPolicies(translateTo.getResource(), resourceId);
+ if (toscaPolicyType.isPresent()) {
+ List<String> members = getAttValetGroupAssignmentMembers(translateTo);
+ addGroupToTopology(translateTo, resourceId, members);
+ addPoliciesToTopology(translateTo, toscaPolicyType.get());
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ protected String generateTranslatedId(TranslateTo translateTo) {
+ return isEssentialRequirementsValid(translateTo) ? getValetGroupAssignmentTranslatedGroupId(
+ translateTo) : null;
+ }
+
+ @Override
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ if (isEssentialRequirementsValid(translateTo)) {
+ return Optional.of(ToscaTopologyTemplateElements.GROUP);
+ } else {
+ return Optional.empty();
+ }
+ }
+
+ @Override
+ protected boolean isEssentialRequirementsValid(TranslateTo translateTo) {
+ return validateGroupType(translateTo);
+ }
+
+ private void addPoliciesToTopology(TranslateTo translateTo, String policyType) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ ResourceTranslationBase.logger.info("******** Creating policy '%s' ********", policyType);
+ PolicyDefinition policyDefinition = new PolicyDefinition();
+ policyDefinition.setType(policyType);
+ policyDefinition
+ .setTargets(
+ Collections.singletonList(getValetGroupAssignmentTranslatedGroupId(translateTo)));
+ policyDefinition.setProperties(TranslatorHeatToToscaPropertyConverter
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),
+ translateTo.getResourceId(),translateTo.getResource().getProperties(),
+ policyDefinition.getProperties(), translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
+ policyDefinition, translateTo.getContext()));
+
+ DataModelUtil.addPolicyDefinition(translateTo.getServiceTemplate(),
+ getTranslatedPolicyId(translateTo), policyDefinition);
+ ResourceTranslationBase.logger.info("******** Policy '%s' created ********", policyType);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private String getTranslatedPolicyId(TranslateTo translateTo) {
+ return translateTo.getResourceId() + "_policy";
+ }
+
+ private void addGroupToTopology(TranslateTo translateTo, String resourceId,
+ List<String> members) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ ResourceTranslationBase.logger
+ .info("******** Start creating group for resource '%s' ********", resourceId);
+ GroupDefinition group = new GroupDefinition();
+ group.setMembers(members);
+ group.setType(ToscaGroupType.NATIVE_ROOT);
+ String groupId = getValetGroupAssignmentTranslatedGroupId(translateTo);
+ DataModelUtil
+ .addGroupDefinitionToTopologyTemplate(translateTo.getServiceTemplate(), groupId, group);
+ ResourceTranslationBase.logger
+ .info("******** Creating group '%s' for resource '%s' ********", groupId, resourceId);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private List<String> getAttValetGroupAssignmentMembers(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, Object> properties = translateTo.getResource().getProperties();
+ List<String> members = new ArrayList<>();
+ String refResourceId;
+ Optional<String> refAttachedResourceId;
+
+ if (MapUtils.isNotEmpty(properties)) {
+ Object resources = properties.get("resources");
+
+ //if null warning no resource
+ if (resources instanceof List) {
+ for (Object member : ((List) resources)) {
+ if (member instanceof Map) {
+ refResourceId = (String) ((Map) member).get("get_resource");
+
+ refAttachedResourceId =
+ ResourceTranslationBase.getResourceTranslatedId(translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), refResourceId,
+ translateTo.getContext());
+ if (refAttachedResourceId.isPresent() ) {
+ members.add(refAttachedResourceId.get());
+ updateComputeConsolidationDataGroup(translateTo, refResourceId);
+ }
+ }
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return members;
+ }
+
+ private void updateComputeConsolidationDataGroup(TranslateTo translateTo,
+ String refResourceId) {
+ Resource refResource =
+ getResource(translateTo.getHeatOrchestrationTemplate(), refResourceId,
+ translateTo.getHeatFileName());
+ if (isNovaServerResource(translateTo.getHeatOrchestrationTemplate(), refResourceId)) {
+ String heatFileName = translateTo.getHeatFileName();
+ Optional<String> translatedNovaServerId =
+ ResourceTranslationFactory.getInstance(refResource)
+ .translateResource(heatFileName, translateTo.getServiceTemplate(),
+ translateTo.getHeatOrchestrationTemplate(), refResource, refResourceId,
+ translateTo.getContext());
+ //Add nova server information to compute data
+ if (translatedNovaServerId.isPresent()) {
+ NodeTemplate translatedNovaServerNodeTemplate = DataModelUtil
+ .getNodeTemplate(translateTo.getServiceTemplate(),
+ translatedNovaServerId.get());
+ if (translatedNovaServerNodeTemplate != null) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = ConsolidationDataUtil
+ .getComputeTemplateConsolidationData(translateTo.getContext(), translateTo
+ .getServiceTemplate(), translatedNovaServerNodeTemplate.getType(),
+ translatedNovaServerId.get());
+ ConsolidationDataUtil.updateGroupIdInConsolidationData(computeTemplateConsolidationData,
+ translateTo.getTranslatedId());
+ }
+ }
+ }
+ }
+
+ private boolean isNovaServerResource(HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Object resourceToTranslate) {
+ return heatOrchestrationTemplate.getResources().get(resourceToTranslate).getType()
+ .equals(HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource());
+ }
+
+
+ private Optional<String> getToscaPolicies(Resource resource, String resourceId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, Object> properties = resource.getProperties();
+ if (Objects.isNull(properties) || Objects.isNull(properties.get("group_type"))) {
+ ResourceTranslationBase.logger
+ .warn("Resource '" + resourceId + "'(" + resource.getType() + ") missing group_type");
+ return Optional.empty();
+ }
+
+ Object groupType = properties.get("group_type");
+ if (!isGroupTypeValid(groupType)) {
+ ResourceTranslationBase.logger.warn("Resource '" + resourceId + "'(" + resource.getType()
+ + ") contains unsupported policy '" + groupType
+ + "'. This resource is been ignored during the translation");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return getToscaPolicyByGroupType((String) groupType);
+
+ }
+
+ private boolean isGroupTypeValid(Object groupType) {
+ if (!(groupType instanceof String)) {
+ return false;
+ }
+ return supportedPolicies.contains(groupType);
+ }
+
+ private Optional<String> getToscaPolicyByGroupType(String groupType) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String toscaPolicyType;
+ switch (groupType) {
+ case AFFINITY:
+ toscaPolicyType = AttToscaPolicyType.PLACEMENT_VALET_AFFINITY;
+ break;
+ case EXCLUSIVITY:
+ toscaPolicyType = AttToscaPolicyType.PLACEMENT_VALET_EXCLUSIVITY;
+ break;
+ default:
+ toscaPolicyType = AttToscaPolicyType.PLACEMENT_VALET_DIVERSITY;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(toscaPolicyType);
+ }
+
+
+ private String getValetGroupAssignmentTranslatedGroupId(TranslateTo translateTo) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String resourceId = super.generateTranslatedId(translateTo);
+ String groupName = null;
+ Map<String, Object> properties = translateTo.getResource().getProperties();
+
+ if (properties == null) {
+ return resourceId + "_group";
+ }
+
+ Object groupNameProperty = properties.get("group_name");
+ if (groupNameProperty instanceof String) {
+ groupName = (String) groupNameProperty;
+ }
+
+ if (!Strings.isNullOrEmpty(groupName)) {
+ groupName = groupName.replace(" ", "_");
+ resourceId += "_" + groupName;
+
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return resourceId + "_group";
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaMapping.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaMapping.json
new file mode 100644
index 0000000000..2b20db7e9f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaMapping.json
@@ -0,0 +1,15 @@
+{
+ "resourceMapping": {
+ "ATT::Valet::GroupAssignment": {
+ "properties": {
+ "level": "level"
+ },
+ "attributes": {
+ }
+ }
+ },
+ "_config": {
+ "namespace": "heatToToscaMapping",
+ "mergeStrategy": "merge"
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaTranslator.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaTranslator.json
new file mode 100644
index 0000000000..33fb21e5e9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-merge-heatToToscaTranslator.json
@@ -0,0 +1,13 @@
+{
+ "resourceTranslationImpl": {
+ "ATT::Valet::GroupAssignment": {
+ "enable": true,
+ "implementationClass": "com.att.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationValetGroupAssignmentImpl"
+ }
+ },
+ "_config": {
+ "namespace": "heatToToscaTranslator",
+ "mergeStrategy": "merge"
+ }
+
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-override-heatToToscaTranslator.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-override-heatToToscaTranslator.json
new file mode 100644
index 0000000000..2c364fe8af
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/main/resources/config-override-heatToToscaTranslator.json
@@ -0,0 +1,36 @@
+{
+ "resourceTranslationImpl": {
+ "OS::Contrail::NetworkPolicy": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailNetworkPolicyImpl"
+ },
+ "OS::Contrail::AttachPolicy": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailAttachPolicyImpl"
+ },
+ "OS::ContrailV2::NetworkPolicy": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailV2NetworkPolicyImpl"
+ },
+ "OS::Nova::ServerGroup": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNovaServerGroupsImpl"
+ },
+ "OS::Neutron::SecurityGroup": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNeutronSecurityGroupImpl"
+ }
+ },
+ "namingConventionExtractImpl": {
+ "NovaServerNodeTypeName": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor.NameExtractorNovaServerImpl"
+ },
+ "ContrailComputeNodeTypeName": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor.NameExtractorContrailComputeImpl"
+ }
+ },
+ "_config": {
+ "namespace": "heatToToscaTranslator",
+ "mergeStrategy": "override"
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java
new file mode 100644
index 0000000000..56f0fc2bd6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java
@@ -0,0 +1,324 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package com.att.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.junit.Assert.assertEquals;
+
+import org.apache.commons.collections4.MapUtils;
+import org.junit.Assert;
+import org.junit.Before;
+import org.openecomp.core.translator.datatypes.TranslatorOutput;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.core.validation.api.ValidationManager;
+import org.openecomp.core.validation.factory.ValidationManagerFactory;
+import org.openecomp.core.validation.util.MessageContainerUtil;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestFile;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
+import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileComputeConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.TypeComputeConsolidationData;
+import org.openecomp.sdc.translator.services.heattotosca.TranslationService;
+
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipInputStream;
+
+
+public class BaseResourceTranslationTest {
+
+ protected String inputFilesPath;
+ protected String outputFilesPath;
+ protected TranslationContext translationContext;
+
+ private String zipFilename = "VSP.zip";
+ private TranslationService translationService;
+ private boolean isValid;
+ private File translatedZipFile;
+
+ private Map<String, byte[]> expectedResultMap = new HashMap<>();
+ private Set<String> expectedResultFileNameSet = new HashSet<>();
+
+ private final String MANIFEST_NAME = SdcCommon.MANIFEST_NAME;
+ private String validationFilename = "validationOutput.json";
+
+ @Before
+ public void setUp() throws IOException {
+ initTranslatorAndTranslate();
+ }
+
+ protected void initTranslatorAndTranslate() throws IOException {
+ translationService = new TranslationService();
+ translationContext = new TranslationContext();
+ translatedZipFile = translateZipFile();
+ }
+
+ protected void testTranslation() throws IOException {
+
+ URL url = BaseResourceTranslationTest.class.getResource(outputFilesPath);
+
+ String path = url.getPath();
+ File pathFile = new File(path);
+ File[] files = pathFile.listFiles();
+ Assert.assertNotNull("manifest files is empty", files);
+ for (File expectedFile : files) {
+ expectedResultFileNameSet.add(expectedFile.getName());
+ try (FileInputStream input = new FileInputStream(expectedFile)) {
+ expectedResultMap.put(expectedFile.getName(), FileUtils.toByteArray(input));
+ }
+ }
+
+ try (FileInputStream fis = new FileInputStream(translatedZipFile);
+ ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis))) {
+ ZipEntry entry;
+ String name;
+ String expected;
+ String actual;
+
+ while ((entry = zis.getNextEntry()) != null) {
+
+ name = entry.getName()
+ .substring(entry.getName().lastIndexOf(File.separator) + 1, entry.getName().length());
+ if (expectedResultFileNameSet.contains(name)) {
+ expected = new String(expectedResultMap.get(name)).trim().replace("\r", "");
+ actual = new String(FileUtils.toByteArray(zis)).trim().replace("\r", "");
+ assertEquals("difference in file: " + name, expected, actual);
+
+ expectedResultFileNameSet.remove(name);
+ }
+ }
+ if (expectedResultFileNameSet.isEmpty()) {
+ expectedResultFileNameSet.forEach(System.out::println);
+ }
+ }
+ assertEquals(0, expectedResultFileNameSet.size());
+ }
+
+ private File translateZipFile() throws IOException {
+ URL inputFilesUrl = this.getClass().getResource(inputFilesPath);
+ String path = inputFilesUrl.getPath();
+ addFilesToTranslator(translationContext, path);
+ TranslatorOutput translatorOutput = translationService.translateHeatFiles(translationContext);
+ Assert.assertNotNull(translatorOutput);
+ if (MapUtils.isNotEmpty(translatorOutput.getErrorMessages()) && MapUtils.isNotEmpty(
+ MessageContainerUtil
+ .getMessageByLevel(ErrorLevel.ERROR, translatorOutput.getErrorMessages()))) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.VALIDATE_HEAT_BEFORE_TRANSLATE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't translate HEAT file");
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder()).withMessage(
+ "Error in validation " + getErrorAsString(translatorOutput.getErrorMessages()))
+ .withId("Validation Error").withCategory(ErrorCategory.APPLICATION).build());
+ }
+ File file = new File(path + "/" + zipFilename);
+ file.createNewFile();
+
+ try (FileOutputStream fos = new FileOutputStream(file)) {
+ ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
+ fos.write(
+ toscaFileOutputService.createOutputFile(translatorOutput.getToscaServiceModel(), null));
+ }
+
+ return file;
+ }
+
+ private String getErrorAsString(Map<String, List<ErrorMessage>> errorMessages) {
+ StringBuilder sb = new StringBuilder();
+ errorMessages.entrySet().forEach(
+ entry -> sb.append("File:").append(entry.getKey()).append(System.lineSeparator())
+ .append(getErrorList(entry.getValue())));
+
+ return sb.toString();
+ }
+
+ private String getErrorList(List<ErrorMessage> errors) {
+ StringBuilder sb = new StringBuilder();
+ errors.forEach(
+ error -> sb.append(error.getMessage()).append("[").append(error.getLevel()).append("]")
+ .append(System.lineSeparator()));
+ return sb.toString();
+ }
+
+ public void addFilesToTranslator(TranslationContext translationContext, String path)
+ throws IOException {
+ File manifestFile = new File(path);
+ File[] files = manifestFile.listFiles();
+ byte[] fileContent;
+
+ Assert.assertNotNull("manifest files is empty", files);
+
+ for (File file : files) {
+
+ try (FileInputStream fis = new FileInputStream(file)) {
+
+ fileContent = FileUtils.toByteArray(fis);
+
+ if (file.getName().equals(MANIFEST_NAME)) {
+ addManifest(translationContext, MANIFEST_NAME, fileContent);
+ } else {
+ if (!file.getName().equals(zipFilename) && (!file.getName().equals(validationFilename))) {
+ addFile(translationContext, file.getName(), fileContent);
+ }
+ }
+ }
+ }
+ }
+
+ public static void addManifest(TranslationContext translationContext,
+ String name, byte[] content) {
+ ManifestContent manifestData = JsonUtil.json2Object(new String(content), ManifestContent.class);
+ ManifestFile manifest = new ManifestFile();
+ manifest.setName(name);
+ manifest.setContent(manifestData);
+ translationContext.setManifest(manifest);
+ translationContext.addFile(name, content);
+ addFilesFromManifestToTranslationContextManifestFilesMap(translationContext, manifestData
+ .getData());
+ }
+
+ public static void addFile(TranslationContext translationContext,
+ String name, byte[] content) {
+ translationContext.addFile(name, content);
+ }
+
+
+ public void validateComputeTemplateConsolidationData() {
+ ConsolidationData consolidationData = translationContext.getConsolidationData();
+ Map<String, ServiceTemplate> expectedServiceTemplateModels = getServiceTemplates
+ (outputFilesPath);
+ Assert.assertNotNull(consolidationData);
+ Assert.assertNotNull(consolidationData.getComputeConsolidationData());
+ Set<String> serviceTemplateFileNames = consolidationData.getComputeConsolidationData()
+ .getAllServiceTemplateFileNames();
+ Assert.assertNotNull(serviceTemplateFileNames);
+ for(String serviceTemplateName : serviceTemplateFileNames){
+ Assert.assertTrue(expectedServiceTemplateModels.containsKey(serviceTemplateName));
+ ServiceTemplate expectedServiceTemplate = expectedServiceTemplateModels.get
+ (serviceTemplateName);
+ FileComputeConsolidationData fileComputeConsolidationData = consolidationData
+ .getComputeConsolidationData().getFileComputeConsolidationData(serviceTemplateName);
+ Assert.assertNotNull(fileComputeConsolidationData);
+ Set<String> computeTypes = fileComputeConsolidationData.getAllComputeTypes();
+ Assert.assertNotNull(computeTypes);
+ for(String computeType : computeTypes) {
+ TypeComputeConsolidationData typeComputeConsolidationData = fileComputeConsolidationData
+ .getTypeComputeConsolidationData(computeType);
+ Assert.assertNotNull(typeComputeConsolidationData);
+
+ Set<String> computeNodeTemplateIds = typeComputeConsolidationData
+ .getAllComputeNodeTemplateIds();
+ Assert.assertNotNull(computeNodeTemplateIds);
+ Assert.assertNotEquals(computeNodeTemplateIds.size(), 0);
+
+ for(String computeNodeTemplateId : computeNodeTemplateIds) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ typeComputeConsolidationData.getComputeTemplateConsolidationData
+ (computeNodeTemplateId);
+ validateGroupsInConsolidationData(computeNodeTemplateId,
+ computeTemplateConsolidationData, expectedServiceTemplate);
+ }
+ }
+ }
+ }
+
+ public Map<String, ServiceTemplate> getServiceTemplates(String baseDirPath){
+ Map<String, ServiceTemplate> serviceTemplateMap = new HashMap<>();
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ baseDirPath = "."+baseDirPath+"/";
+ try {
+ String[] fileList = {};
+ URL filesDirUrl = BaseResourceTranslationTest.class.getClassLoader().getResource(baseDirPath);
+ if (filesDirUrl != null && filesDirUrl.getProtocol().equals("file")) {
+ fileList = new File(filesDirUrl.toURI()).list();
+ } else {
+ Assert.fail("Invalid expected output files directory");
+ }
+ for (int i = 0; i < fileList.length; i++) {
+ InputStream serviceTemplateInputStream = FileUtils.getFileInputStream
+ (BaseResourceTranslationTest.class
+ .getClassLoader().getResource(baseDirPath + fileList[i]));
+ ServiceTemplate serviceTemplate = toscaExtensionYamlUtil.yamlToObject
+ (serviceTemplateInputStream, ServiceTemplate.class);
+ serviceTemplateMap.put(fileList[i], serviceTemplate);
+ }
+ } catch (Exception e) {
+ Assert.fail(e.getMessage());
+ }
+ return serviceTemplateMap;
+ }
+ private void validateGroupsInConsolidationData(String computeNodeTemplateId,
+ ComputeTemplateConsolidationData
+ computeTemplateConsolidationData,
+ ServiceTemplate expectedServiceTemplate) {
+ Assert.assertNotNull(computeTemplateConsolidationData);
+ List<String> groupIds = computeTemplateConsolidationData.getGroupIds();
+ if(groupIds != null) {
+ for(String groupId : groupIds) {
+ isComputeGroupMember(expectedServiceTemplate, computeNodeTemplateId, groupId);
+ }
+ }
+ }
+
+ private void isComputeGroupMember(ServiceTemplate expectedServiceTemplate, String
+ computeNodeTemplateId, String groupId) {
+ GroupDefinition group = expectedServiceTemplate.getTopology_template().getGroups().get(groupId);
+ List<String> groupMembers = group.getMembers();
+ Assert.assertNotNull(groupMembers);
+ Assert.assertTrue(groupMembers.contains(computeNodeTemplateId));
+ }
+
+
+ private static void addFilesFromManifestToTranslationContextManifestFilesMap(TranslationContext
+ translationContext, List<FileData> fileDataListFromManifest) {
+ for (FileData fileFromManfiest : fileDataListFromManifest) {
+ translationContext.addManifestFile(fileFromManfiest.getFile(), fileFromManfiest.getType());
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImplTest.java
new file mode 100644
index 0000000000..758e262b98
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/java/com/att/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationValetGroupAssignmentImplTest.java
@@ -0,0 +1,159 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package com.att.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.IOException;
+
+public class ResourceTranslationValetGroupAssignmentImplTest
+ extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateSimpleOnlyNova() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testTranslateGroupNameParameter() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testTranslateComplexNovaAndGroup() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testTranslateComplexOnlyGroup() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testTranslateComplexTwoGroups() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testInvalidGroupIsNotTranslatedAndNotAddedAsMemberOfGroup() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testSimpleNovaAndNotSupportedResource() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testSimpleOnlyNotSupportedResources() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testSimpleOnlySingleNova() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testConfigNoConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/notconnected/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+ @Test
+ public void testDynamicGroup() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData();
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/logback.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/logback.xml
new file mode 100644
index 0000000000..03ce9d1243
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/logback.xml
@@ -0,0 +1,13 @@
+<!-- only one line, shut up logback ! -->
+<configuration>
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <Pattern>
+ %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
+ </Pattern>
+ </encoder>
+ </appender>
+ <root level="off">
+ <appender-ref ref="STDOUT" />
+ </root>
+</configuration> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..8bc4c3d028
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,304 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer3:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myPort6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myPort5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer3:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer3
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ SVCgroup2_mixGroup_group:
+ type: tosca.groups.Root
+ members:
+ - SVCgroup1_simpleGroup_group
+ - myNovaServer3
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myPort6
+ - myPort5
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myNovaServer3
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup3_groupsMembers_group:
+ type: tosca.groups.Root
+ members:
+ - SVCgroup1_simpleGroup_group
+ - SVCgroup2_mixGroup_group
+ SVCgroup1_simpleGroup_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ policies:
+ SVCgroup2_policy:
+ type: org.openecomp.policies.placement.valet.Diversity
+ properties:
+ level: host
+ targets:
+ - SVCgroup2_mixGroup_group
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup_group
+ SVCgroup3_policy:
+ type: org.openecomp.policies.placement.valet.Exclusivity
+ properties:
+ level: rack
+ targets:
+ - SVCgroup3_groupsMembers_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/main.yml
new file mode 100644
index 0000000000..57e9f04c36
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexNovaAndGroup/inputfiles/main.yml
@@ -0,0 +1,144 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myNovaServer3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort5 }
+ - port: { get_resource: myPort6 }
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ myPort5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
+ SVCgroup2:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: diversity
+ group_name: mixGroup
+ level: host
+ resources:
+ - { get_resource: SVCgroup1}
+ - { get_resource: myNovaServer3}
+ SVCgroup3:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: exclusivity
+ group_name: groupsMembers
+ level: rack
+ resources:
+ - { get_resource: SVCgroup1}
+ - { get_resource: SVCgroup2}
+ - { get_resource: SVCgroup4}
+ SVCgroup4:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: koko
+ group_name: invalid
+ level: host
+ resources:
+ - { get_resource: SVCgroup1}
+ - { get_resource: SVCgroup2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..71b6038eb3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,292 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer3:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myPort6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myPort5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer3:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer3
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myPort6
+ - myPort5
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myNovaServer3
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_simpleGroup_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ SVCgroup2_complexGroup_group:
+ type: tosca.groups.Root
+ members:
+ - SVCgroup1_simpleGroup_group
+ policies:
+ SVCgroup2_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup2_complexGroup_group
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..7f1ddfbc90
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/main.yml
new file mode 100644
index 0000000000..2317813e66
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexOnlyGroup/inputfiles/main.yml
@@ -0,0 +1,124 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myNovaServer3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort5 }
+ - port: { get_resource: myPort6 }
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ myPort5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
+ SVCgroup2:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: complexGroup
+ level: host
+ resources:
+ - { get_resource: SVCgroup1} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..072f382fbb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,303 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer3:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myPort6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myPort5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer3:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer3
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myPort6
+ - myPort5
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myNovaServer3
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_simpleGroup1_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ SVCgroup3_complexTwoGroups_group:
+ type: tosca.groups.Root
+ members:
+ - SVCgroup1_simpleGroup1_group
+ - SVCgroup2_group
+ SVCgroup2_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer3
+ policies:
+ SVCgroup2_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup2_group
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup1_group
+ SVCgroup3_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup3_complexTwoGroups_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/main.yml
new file mode 100644
index 0000000000..14f2659d40
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/complexTwoGroups/inputfiles/main.yml
@@ -0,0 +1,132 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myNovaServer3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort5 }
+ - port: { get_resource: myPort6 }
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ myPort5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: simpleGroup1
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
+ SVCgroup2:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ level: host
+ resources:
+ - { get_resource: myNovaServer3}
+ SVCgroup3:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: complexTwoGroups
+ level: host
+ resources:
+ - { get_resource: SVCgroup1}
+ - { get_resource: SVCgroup2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..9ceb3f0ab7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,202 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ group_name:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myPort1
+ - myPort4
+ - myPort3 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/main.yml
new file mode 100644
index 0000000000..0117d4b87c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/dynamicGroup/inputfiles/main.yml
@@ -0,0 +1,111 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+ group_name:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: { get_param: group_name}
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
+ SVCgroup2:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: 2
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
+ SVCgroup3:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: { get_attr: [myPort4, show ]}
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ced6638077
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,610 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vipr_atm:
+ 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 the VF Module instance
+ default: '5678'
+ constraints:
+ - max_length: 255
+ - min_length: 1
+ vipr_atm_ha_two_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Neutron UUID of the second high availability network for the vIPR-ATM firewal
+ default: b75e27cf-452f-48ef-b107-8777e645c22d
+ constraints: [
+ ]
+ vipr_atm_oam_net_security_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of the security group to apply to the vIPR-ATM firewall management port
+ default:
+ - c2369210-d154-4e4a-984d-047674beb5da
+ entry_schema:
+ type: string
+ vipr_atm_valet_eg_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Valet 1.0 Exclusivity Group for the vIPR-ATM firewall virtual machine
+ default: CORE_INFRASTRUCTURE_VNFs
+ constraints:
+ - max_length: 255
+ - min_length: 1
+ vipr_atm_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the vIPR-ATM firewall virtual machine
+ default: zrcs1cctvpr001
+ constraints:
+ - max_length: 255
+ - min_length: 1
+ vipr_atm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name of the vIPR-ATM firewall virtual machine
+ default: vipr-atm-pan7.1
+ constraints: [
+ ]
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique Name for this VF instance
+ default: RD3TX100vfw
+ constraints:
+ - max_length: 255
+ - min_length: 1
+ vipr_atm_service_left_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: FQDN of the Left service network for the vIPR-ATM firewall
+ default: default-domain:vIPR-ATM:vIPR-ATM-service-left
+ constraints:
+ - pattern: ^(?:[^:]{1,64}:){2}(?:[^:]{1,255})$
+ vipr_atm_ha_one_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP to apply to the vIPR-ATM firewall ha0 port
+ default: 192.168.35.1
+ constraints:
+ - pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ vipr_atm_ha_one_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Neutron UUID of the first high availability network for the vIPR-ATM firewall
+ default: 4abaafc8-b8af-40b9-b0d0-32bd91f958ee
+ constraints: [
+ ]
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF instance
+ default: '1234'
+ constraints:
+ - max_length: 255
+ - min_length: 1
+ vipr_atm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for the vIPR-ATM firewall virtual machine
+ default: m1.vipr-atm-pan
+ constraints: [
+ ]
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability Zone for the vIPR-ATM firewall virtual machine
+ default: nova
+ constraints:
+ - max_length: 255
+ - min_length: 1
+ vipr_atm_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server Group with anti-affinity policy for the vIPR-ATM firewall virtual machine
+ default: 885dbf7f-fcb2-42d2-a694-a5930ce35b71
+ constraints:
+ - max_length: 255
+ - min_length: 1
+ vipr_atm_service_left_ip_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ description: Left vIPR-ATM service network IP address prefix
+ default: 10.254.3.0
+ constraints:
+ - pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ vipr_atm_ha_one_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: vIPR-ATM private High Availability Network One IP address CIDR
+ default: 192.168.35.0/29
+ constraints:
+ - pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:3[0-2]|[12]?[0-9])$
+ vipr_atm_service_right_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: FQDN of the Right service network for the vIPR-ATM firewall
+ default: default-domain:vIPR-ATM:vIPR-ATM-service-right
+ constraints:
+ - pattern: ^(?:[^:]{1,64}:){2}(?:[^:]{1,255})$
+ vipr_atm_service_right_ip_prefix_len:
+ hidden: false
+ immutable: false
+ type: float
+ description: Right vIPR-ATM service network IP address prefix length
+ default: 24
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ vipr_atm_ha_two_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP to apply to the vIPR-ATM firewall ha1 port
+ default: 192.168.35.9
+ constraints:
+ - pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ vipr_atm_ha_two_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: vIPR-ATM private High Availability Network Two IP address CIDR
+ default: 192.168.35.8/29
+ constraints:
+ - pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:3[0-2]|[12]?[0-9])$
+ oam_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Neutron UUID for the managemnet network name of the vIPR-ATM firewall
+ default: 1ac9d738-f545-413a-a9a2-b44309edc511
+ constraints: [
+ ]
+ vipr_atm_service_right_ip_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ description: Right vIPR-ATM service network IP address prefix
+ default: 10.254.4.0
+ constraints:
+ - pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ vipr_atm_service_left_ip_prefix_len:
+ hidden: false
+ immutable: false
+ type: float
+ description: Left vIPR-ATM service network IP address prefix length
+ default: 24
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ vipr_atm_contrail_service_instance_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: FQDN of the vIPR-ATM firewall Contrail service instance for the port tuple
+ default: default-domain:vIPR-ATM:vIPR-ATM-service-instance
+ constraints:
+ - pattern: ^(?:[^:]{1,64}:){2}(?:[^:]{1,255})$
+ vipr_atm_ha_two_security_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of the security group to apply to the vIPR-ATM firewall ha1 port
+ default:
+ - 29e29a4a-b45d-42c2-ac14-b12a70036ae6
+ entry_schema:
+ type: string
+ vipr_atm_ha_one_security_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of the security group to apply to the vIPR-ATM firewall ha0 port
+ default:
+ - cbf8049e-69e8-48c3-a06f-255634391403
+ entry_schema:
+ type: string
+ node_templates:
+ vIPR_ATM_OAM_SG:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_OAM_SG
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ rules:
+ - protocol: tcp
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 22
+ port_range_min: 22
+ - protocol: tcp
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 443
+ port_range_min: 443
+ - protocol: tcp
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 3978
+ port_range_min: 3978
+ - protocol: icmp
+ remote_ip_prefix: 0.0.0.0/0
+ vIPR_ATM_Left_RVMI:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ virtual_network_refs:
+ - get_input: vipr_atm_service_left_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type: left
+ port_tuple_refs:
+ - UNSUPPORTED_RESOURCE_vIPR_ATM_RPT
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: vIPR_ATM_Service_Left
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vIPR_ATM_Firewall
+ relationship: tosca.relationships.network.BindsTo
+ vIPR_ATM_Service_Right:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: vipr_atm_service_right_ip_prefix_len
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: vipr_atm_service_right_ip_prefix
+ network_name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVICE_RIGHT_NETWORK
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ network_ipam_refs:
+ - default-domain:default-project:default-network-ipam
+ vIPR_ATM_Ha_Two:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_enabled: false
+ network_name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_TWO_NETWORK
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ subnets:
+ vIPR_ATM_Ha_Two_Subnet:
+ enable_dhcp: false
+ name:
+ str_replace:
+ template: NET_NAME_SUBNET
+ params:
+ NET_NAME:
+ get_attribute:
+ - vIPR_ATM_Ha_Two
+ - network_name
+ cidr:
+ get_input: vipr_atm_ha_two_cidr
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: vIPR_ATM_Ha_Two
+ relationship: tosca.relationships.DependsOn
+ vIPR_ATM_HA_TWO_SG:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_TWO_SG
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ rules:
+ - remote_mode: remote_group_id
+ vIPR_ATM_HA_ONE_SG:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_ONE_SG
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ rules:
+ - remote_mode: remote_group_id
+ vIPR_ATM_Ha_One:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_enabled: false
+ network_name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_ONE_NETWORK
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ subnets:
+ vIPR_ATM_Ha_One_Subnet:
+ enable_dhcp: false
+ name:
+ str_replace:
+ template: NET_NAME_SUBNET
+ params:
+ NET_NAME:
+ get_attribute:
+ - vIPR_ATM_Ha_One
+ - network_name
+ cidr:
+ get_input: vipr_atm_ha_one_cidr
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: vIPR_ATM_Ha_One
+ relationship: tosca.relationships.DependsOn
+ vIPR_ATM_OAM_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
+ security_groups:
+ get_input: vipr_atm_oam_net_security_groups
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: VM_NAME_PORT_0
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ network_role_tag: oam
+ network:
+ get_input: oam_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vIPR_ATM_Firewall
+ relationship: tosca.relationships.network.BindsTo
+ vIPR_ATM_Service_Left:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: vipr_atm_service_left_ip_prefix_len
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: vipr_atm_service_left_ip_prefix
+ network_name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVICE_LEFT_NETWORK
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ network_ipam_refs:
+ - default-domain:default-project:default-network-ipam
+ vIPR_ATM_Right_RVMI:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_4
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ virtual_network_refs:
+ - get_input: vipr_atm_service_right_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type: right
+ port_tuple_refs:
+ - UNSUPPORTED_RESOURCE_vIPR_ATM_RPT
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: vIPR_ATM_Service_Right
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vIPR_ATM_Firewall
+ relationship: tosca.relationships.network.BindsTo
+ vIPR_ATM_Ha_Two_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: vipr_atm_ha_two_security_groups
+ fixed_ips:
+ - ip_address:
+ get_input: vipr_atm_ha_two_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: VM_NAME_PORT_2
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ network:
+ get_input: vipr_atm_ha_two_id
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: vIPR_ATM_Ha_Two
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vIPR_ATM_Firewall
+ relationship: tosca.relationships.network.BindsTo
+ vIPR_ATM_Firewall:
+ type: org.openecomp.resource.vfc.nodes.heat.vipr_atm
+ properties:
+ flavor:
+ get_input: vipr_atm_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: vipr_atm_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ contrail_service_instance_ind: true
+ name:
+ get_input: vipr_atm_name_0
+ scheduler_hints:
+ group:
+ get_input: vipr_atm_server_group
+ vIPR_ATM_Ha_One_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: vipr_atm_ha_one_security_groups
+ fixed_ips:
+ - ip_address:
+ get_input: vipr_atm_ha_one_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: VM_NAME_PORT_1
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ network:
+ get_input: vipr_atm_ha_one_id
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: vIPR_ATM_Ha_One
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vIPR_ATM_Firewall
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ vIPR_ATM_Server_Group_group:
+ type: tosca.groups.Root
+ members:
+ - vIPR_ATM_Firewall
+ vIPR-ATM-Base_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vIPR-ATM-Base.yaml
+ description: "HOT template to create the vIPR-ATM firwall service template\
+ \ and instance. This template creates the following - Two service virtual\
+ \ networks for each side (left and right) of the vIPR-ATM firewalls - Two\
+ \ virtual networks for high availability between the vIPR-ATM firewalls\
+ \ - A Contrail Service Template for the vIPR-ATM service - A Contrail Service\
+ \ Instance for the vIPR-ATM service\nThe firewall virtual machines connected\
+ \ to these created networks and managed by the vIPR-ATM service instance\
+ \ will be created by the vIPR-ATM-Instance.yaml HOT template.\nNetwork Policy\
+ \ that includes the vIPR-ATM service instance will be created by client\
+ \ specific HOT templates or Contrail APIs. \n"
+ members:
+ - vIPR_ATM_Ha_One
+ - vIPR_ATM_OAM_SG
+ - vIPR_ATM_Service_Left
+ - vIPR_ATM_Service_Right
+ - vIPR_ATM_Ha_Two
+ - vIPR_ATM_HA_TWO_SG
+ - vIPR_ATM_HA_ONE_SG
+ vIPR_ATM_Valet_EG_0_group:
+ type: tosca.groups.Root
+ members:
+ - vIPR_ATM_Firewall
+ vIPR-ATM-Instance_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vIPR-ATM-Instance.yaml
+ description: |
+ HOT template to create a vIPR-ATM firwall service instance. This template creates the following - Contrail Port Tuple for this firwall service instance - Virtual machine interfaces and IP addresses attached to the two service virtual networks. These virtual machine interfaces will be used by the vIPR firewall service instance - Neutron ports for OAM, HA0, and HA1 networks - OS::Nova::Server with the created virtual machine interface and ports. This is the firewall service instance virtual machine.
+ members:
+ - vIPR_ATM_Left_RVMI
+ - vIPR_ATM_OAM_0_Port
+ - vIPR_ATM_Right_RVMI
+ - vIPR_ATM_Ha_Two_0_Port
+ - vIPR_ATM_Firewall
+ - vIPR_ATM_Ha_One_0_Port
+ outputs:
+ vipr_atm_contrail_service_instance_fqdn:
+ description: The FQDN for the Contrail Service Instance that is needed to create tenant OAM network policy to service change through the vIPR-ATM firewall.
+ value:
+ list_join:
+ - ':'
+ - get_attr:
+ - vIPR_ATM_Service_Instance
+ - fq_name
+ policies:
+ vIPR_ATM_Valet_EG_0_policy:
+ type: org.openecomp.policies.placement.valet.Exclusivity
+ properties:
+ level: host
+ targets:
+ - vIPR_ATM_Valet_EG_0_group
+ vIPR_ATM_Server_Group_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVER_GROUP
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ container_type: host
+ targets:
+ - vIPR_ATM_Server_Group_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..96b8ed1d27
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/MANIFEST.json
@@ -0,0 +1,28 @@
+{
+ "name": "vIPR",
+ "description": "HOT template to create vIPR",
+ "data": [
+ {
+ "file": "vIPR-ATM-Base.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "vIPR-ATM-Base.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "vIPR-ATM-Instance.yaml",
+ "type": "HEAT",
+ "isBase": "false",
+ "data": [
+ {
+ "file": "vIPR-ATM-Instance.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.env b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.env
new file mode 100644
index 0000000000..acf1ac5d03
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.env
@@ -0,0 +1,14 @@
+parameters:
+ vipr_atm_service_left_ip_prefix: 10.254.3.0
+ vipr_atm_service_left_ip_prefix_len: 24
+
+ vipr_atm_service_right_ip_prefix: 10.254.4.0
+ vipr_atm_service_right_ip_prefix_len: 24
+
+ vipr_atm_ha_one_cidr: 192.168.35.0/29
+ vipr_atm_ha_two_cidr: 192.168.35.8/29
+
+ vnf_id: '1234'
+ vnf_name: 'RD3TX100vfw'
+ vf_module_id: '5678'
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.yaml
new file mode 100644
index 0000000000..fd70465878
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Base.yaml
@@ -0,0 +1,318 @@
+heat_template_version: 2015-04-30
+
+description: >
+ HOT template to create the vIPR-ATM firwall service template and instance.
+ This template creates the following
+ - Two service virtual networks for each side (left and right) of the vIPR-ATM firewalls
+ - Two virtual networks for high availability between the vIPR-ATM firewalls
+ - A Contrail Service Template for the vIPR-ATM service
+ - A Contrail Service Instance for the vIPR-ATM service
+
+ The firewall virtual machines connected to these created networks and managed by the
+ vIPR-ATM service instance will be created by the vIPR-ATM-Instance.yaml HOT template.
+
+ Network Policy that includes the vIPR-ATM service instance will be created by client
+ specific HOT templates or Contrail APIs.
+
+parameters:
+ vipr_atm_service_left_ip_prefix:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ description: A valid IPv4 dot quad IP address.
+ description: Left vIPR-ATM service network IP address prefix
+ vipr_atm_service_left_ip_prefix_len:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: a valid IPv4 prefix value from 0 to 32.
+ description: Left vIPR-ATM service network IP address prefix length
+
+ vipr_atm_service_right_ip_prefix:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ description: A valid IPv4 dot quad IP address.
+ description: Right vIPR-ATM service network IP address prefix
+ vipr_atm_service_right_ip_prefix_len:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: a valid IPv4 prefix value from 0 to 32.
+ description: Right vIPR-ATM service network IP address prefix length
+
+ vipr_atm_ha_one_cidr:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:3[0-2]|[12]?[0-9])$
+ description: A valid IPv4 CIDR (dot quad IP address / previx value 0 to 32).
+ description: vIPR-ATM private High Availability Network One IP address CIDR
+
+ vipr_atm_ha_two_cidr:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/(?:3[0-2]|[12]?[0-9])$
+ description: A valid IPv4 CIDR (dot quad IP address / previx value 0 to 32).
+ description: vIPR-ATM private High Availability Network Two IP address CIDR
+
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vf_module_id:
+ type: string
+ description: Unique ID for the VF Module instance
+
+resources:
+ vIPR_ATM_Service_Left:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVICE_LEFT_NETWORK
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ network_ipam_refs: ["default-domain:default-project:default-network-ipam"]
+ 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: vipr_atm_service_left_ip_prefix
+ },
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ {
+ get_param: vipr_atm_service_left_ip_prefix_len
+ },
+ },
+ }]
+ }]
+
+ vIPR_ATM_Service_Right:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVICE_RIGHT_NETWORK
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ network_ipam_refs: ["default-domain:default-project:default-network-ipam"]
+ 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: vipr_atm_service_right_ip_prefix
+ },
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ {
+ get_param: vipr_atm_service_right_ip_prefix_len
+ },
+ },
+ }]
+ }]
+
+ vIPR_ATM_Ha_One:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_ONE_NETWORK
+ params:
+ VNF_NAME: { get_param: vnf_name }
+
+ vIPR_ATM_Ha_One_Subnet:
+ type: OS::Neutron::Subnet
+ depends_on:
+ - vIPR_ATM_Ha_One
+ properties:
+ name:
+ str_replace:
+ template: NET_NAME_SUBNET
+ params:
+ NET_NAME: { get_attr: [ vIPR_ATM_Ha_One, name ] }
+ network: { get_resource: vIPR_ATM_Ha_One }
+ cidr: { get_param: vipr_atm_ha_one_cidr }
+ enable_dhcp: False
+ gateway_ip: null
+
+ vIPR_ATM_Ha_Two:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_TWO_NETWORK
+ params:
+ VNF_NAME: { get_param: vnf_name }
+
+ vIPR_ATM_Ha_Two_Subnet:
+ type: OS::Neutron::Subnet
+ depends_on:
+ - vIPR_ATM_Ha_Two
+ properties:
+ name:
+ str_replace:
+ template: NET_NAME_SUBNET
+ params:
+ NET_NAME: { get_attr: [ vIPR_ATM_Ha_Two, name ] }
+ network: { get_resource: vIPR_ATM_Ha_Two }
+ cidr: { get_param: vipr_atm_ha_two_cidr }
+ enable_dhcp: False
+ gateway_ip: null
+
+ vIPR_ATM_Service_Template:
+ type: OS::ContrailV2::ServiceTemplate
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVICE_TEMPLATE
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ service_template_properties:
+ {
+ service_template_properties_version: 2,
+ service_template_properties_service_mode: transparent,
+ service_template_properties_service_type: firewall,
+ service_template_properties_service_virtualization_type: virtual-machine,
+ service_template_properties_interface_type:
+ [
+ {
+ service_template_properties_interface_type_service_interface_type: Left,
+ service_template_properties_interface_type_shared_ip: True,
+ },
+ {
+ service_template_properties_interface_type_service_interface_type: Right,
+ service_template_properties_interface_type_shared_ip: True,
+ }
+ ],
+ }
+ domain: default-domain
+
+ vIPR_ATM_Service_Instance:
+ type: OS::ContrailV2::ServiceInstance
+ depends_on:
+ - vIPR_ATM_Service_Left
+ - vIPR_ATM_Service_Right
+ - vIPR_ATM_Service_Template
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVICE_INSTANCE
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ service_template_refs: [{ get_resource: vIPR_ATM_Service_Template }]
+ service_instance_properties:
+ {
+ service_instance_properties_ha_mode: active-active,
+ service_instance_properties_left_virtual_network:
+ {
+ list_join: [':', { get_attr: [ vIPR_ATM_Service_Left, fq_name ] } ]
+ },
+ service_instance_properties_right_virtual_network:
+ {
+ list_join: [':', { get_attr: [ vIPR_ATM_Service_Right, fq_name ] } ]
+ },
+ }
+
+ # Management (OAM) Port Security Group to allow ingress SSH
+ vIPR_ATM_OAM_SG:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_OAM_SG
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ rules:
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: tcp
+ port_range_min: 22
+ port_range_max: 22
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: tcp
+ port_range_min: 443
+ port_range_max: 443
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: tcp
+ port_range_min: 3978
+ port_range_max: 3978
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: icmp
+
+ vIPR_ATM_HA_ONE_SG:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_ONE_SG
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ rules:
+ - remote_mode: remote_group_id
+
+ vIPR_ATM_HA_TWO_SG:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_HA_TWO_SG
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ rules:
+ - remote_mode: remote_group_id
+
+ vIPR_ATM_Server_Group:
+ type: OS::Nova::ServerGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_VIPR_ATM_SERVER_GROUP
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ policies:
+ - anti-affinity
+
+outputs:
+ vipr_atm_contrail_service_instance_fqdn:
+ description: The FQDN for the Contrail Service Instance that is needed to create tenant OAM network policy to service change through the vIPR-ATM firewall.
+ value: { list_join: [':', { get_attr: [ vIPR_ATM_Service_Instance, fq_name ] } ] }
+
+ vipr_atm_service_left_fqdn:
+ description: The FQDN for the vIPR-ATM Service Left network.
+ value: { list_join: [':', { get_attr: [ vIPR_ATM_Service_Left, fq_name ] } ] }
+
+ vipr_atm_service_right_fqdn:
+ description: The FQDN for the vIPR-ATM Service Right network.
+ value: { list_join: [':', { get_attr: [ vIPR_ATM_Service_Right, fq_name ] } ] }
+
+ vipr_atm_ha_one_id:
+ description: The UUID for the vIPR-ATM HA One network.
+ value: { get_resource: vIPR_ATM_Ha_One }
+
+ vipr_atm_ha_two_id:
+ description: The UUID for the vIPR-ATM HA Two network.
+ value: { get_resource: vIPR_ATM_Ha_Two }
+
+ vipr_atm_oam_net_security_groups:
+ description: The list of OpenStack Security Groups to appliy to the vIPR-ATM-Instance\'s OAM network.
+ value: [ { get_resource: vIPR_ATM_OAM_SG } ]
+
+ vipr_atm_ha_one_security_groups:
+ description: The list of OpenStack Security Groups to appliy to the vIPR-ATM-Instance\'s HA One network.
+ value: [ { get_resource: vIPR_ATM_HA_ONE_SG } ]
+
+ vipr_atm_ha_two_security_groups:
+ description: The list of OpenStack Security Groups to appliy to the vIPR-ATM-Instance\'s HA Two network.
+ value: [ { get_resource: vIPR_ATM_HA_TWO_SG } ]
+
+ vipr_atm_server_group:
+ description: The UUID for the vIPR-ATM OpenStack Server Group
+ value: { get_resource: vIPR_ATM_Server_Group }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.env b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.env
new file mode 100644
index 0000000000..77e8b8630a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.env
@@ -0,0 +1,28 @@
+parameters:
+ oam_net_id: 1ac9d738-f545-413a-a9a2-b44309edc511
+ vipr_atm_oam_net_security_groups: [ "c2369210-d154-4e4a-984d-047674beb5da" ]
+
+ vipr_atm_contrail_service_instance_fqdn: default-domain:vIPR-ATM:vIPR-ATM-service-instance
+
+ vipr_atm_service_left_fqdn: default-domain:vIPR-ATM:vIPR-ATM-service-left
+ vipr_atm_service_right_fqdn: default-domain:vIPR-ATM:vIPR-ATM-service-right
+
+ vipr_atm_ha_one_id: 4abaafc8-b8af-40b9-b0d0-32bd91f958ee
+ vipr_atm_ha_one_ip_0: 192.168.35.1
+ vipr_atm_ha_one_security_groups: [ "cbf8049e-69e8-48c3-a06f-255634391403" ]
+
+ vipr_atm_ha_two_id: b75e27cf-452f-48ef-b107-8777e645c22d
+ vipr_atm_ha_two_ip_0: 192.168.35.9
+ vipr_atm_ha_two_security_groups: [ "29e29a4a-b45d-42c2-ac14-b12a70036ae6" ]
+
+ vipr_atm_server_group: 885dbf7f-fcb2-42d2-a694-a5930ce35b71
+
+ vipr_atm_name_0: zrcs1cctvpr001
+ vipr_atm_image_name: vipr-atm-pan7.1
+ vipr_atm_flavor_name: m1.vipr-atm-pan
+ vipr_atm_valet_eg_0: CORE_INFRASTRUCTURE_VNFs
+ availability_zone_0: 'nova'
+
+ vnf_id: '1234'
+ vnf_name: 'RD3TX100vfw'
+ vf_module_id: '5678'
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.yaml
new file mode 100644
index 0000000000..ea3b8ab659
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/groupNameParameter/inputfiles/vIPR-ATM-Instance.yaml
@@ -0,0 +1,299 @@
+heat_template_version: 2015-04-30
+
+description: >
+ HOT template to create a vIPR-ATM firwall service instance.
+ This template creates the following
+ - Contrail Port Tuple for this firwall service instance
+ - Virtual machine interfaces and IP addresses attached to the two
+ service virtual networks. These virtual machine interfaces will be used
+ by the vIPR firewall service instance
+ - Neutron ports for OAM, HA0, and HA1 networks
+ - OS::Nova::Server with the created virtual machine interface and ports. This
+ is the firewall service instance virtual machine.
+
+parameters:
+ oam_net_id:
+ type: string
+ constraints:
+ - custom_constraint: neutron.network
+ description: This network must currently exist.
+ description: Neutron UUID for the managemnet network name of the vIPR-ATM firewall
+ vipr_atm_oam_net_security_groups:
+ type: comma_delimited_list
+ description: List of the security group to apply to the vIPR-ATM firewall management port
+
+ vipr_atm_service_left_fqdn:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:[^:]{1,64}:){2}(?:[^:]{1,255})$
+ description: |
+ A valid Contrail FQDN that contains three parts seperated by ':'.
+ The first two part are 1 to 64 characters long and must not contain ':'.
+ The third part is 1 to 255 characters long and must not contain ':'.
+ description: FQDN of the Left service network for the vIPR-ATM firewall
+
+ vipr_atm_service_right_fqdn:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:[^:]{1,64}:){2}(?:[^:]{1,255})$
+ description: |
+ A valid Contrail FQDN that contains three parts seperated by ':'.
+ The first two part are 1 to 64 characters long and must not contain ':'.
+ The third part is 1 to 255 characters long and must not contain ':'.
+ description: FQDN of the Right service network for the vIPR-ATM firewall
+
+ vipr_atm_ha_one_id:
+ type: string
+ constraints:
+ - custom_constraint: neutron.network
+ description: This network must currently exist.
+ description: Neutron UUID of the first high availability network for the vIPR-ATM firewall
+ vipr_atm_ha_one_ip_0:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ description: A valid IPv4 dot quad IP address.
+ description: Fixed IP to apply to the vIPR-ATM firewall ha0 port
+ vipr_atm_ha_one_security_groups:
+ type: comma_delimited_list
+ description: List of the security group to apply to the vIPR-ATM firewall ha0 port
+
+ vipr_atm_ha_two_id:
+ type: string
+ constraints:
+ - custom_constraint: neutron.network
+ description: This network must currently exist.
+ description: Neutron UUID of the second high availability network for the vIPR-ATM firewal
+ vipr_atm_ha_two_ip_0:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
+ description: A valid IPv4 dot quad IP address.
+ description: Fixed IP to apply to the vIPR-ATM firewall ha1 port
+ vipr_atm_ha_two_security_groups:
+ type: comma_delimited_list
+ description: List of the security group to apply to the vIPR-ATM firewall ha1 port
+
+ vipr_atm_contrail_service_instance_fqdn:
+ type: string
+ constraints:
+ - allowed_pattern: ^(?:[^:]{1,64}:){2}(?:[^:]{1,255})$
+ description: |
+ A valid Contrail FQDN that contains three parts seperated by ':'.
+ The first two part are 1 to 64 characters long and must not contain ':'.
+ The third part is 1 to 255 characters long and must not contain ':'.
+ description: FQDN of the vIPR-ATM firewall Contrail service instance for the port tuple
+
+ vipr_atm_name_0:
+ type: string
+ constraints:
+ - length: { min: 1, max: 255 }
+ description: A string with length of at least 1 and less than 255.
+ description: Name of the vIPR-ATM firewall virtual machine
+ vipr_atm_image_name:
+ type: string
+ constraints:
+ - custom_constraint: glance.image
+ description: This image must currently exist.
+ description: Image name of the vIPR-ATM firewall virtual machine
+ vipr_atm_flavor_name:
+ type: string
+ constraints:
+ - custom_constraint: nova.flavor
+ description: This flavor must currently exist.
+ description: Flavor for the vIPR-ATM firewall virtual machine
+ vipr_atm_server_group:
+ type: string
+ constraints:
+ - length: { min: 1, max: 255 }
+ description: A string with length of at least 1 and less than 255.
+ description: Server Group with anti-affinity policy for the vIPR-ATM firewall virtual machine
+ vipr_atm_valet_eg_0:
+ type: string
+ constraints:
+ - length: { min: 1, max: 255 }
+ description: A string with length of at least 1 and less than 255.
+ description: The Valet 1.0 Exclusivity Group for the vIPR-ATM firewall virtual machine
+ availability_zone_0:
+ type: string
+ constraints:
+ - length: { min: 1, max: 255 }
+ description: A string with length of at least 1 and less than 255.
+ description: Availability Zone for the vIPR-ATM firewall virtual machine
+
+ vnf_id:
+ type: string
+ constraints:
+ - length: { min: 1, max: 255 }
+ description: A string with length of at least 1 and less than 255.
+ description: Unique ID for this VF instance
+ vnf_name:
+ type: string
+ constraints:
+ - length: { min: 1, max: 255 }
+ description: A string with length of at least 1 and less than 255.
+ description: Unique Name for this VF instance
+ vf_module_id:
+ type: string
+ constraints:
+ - length: { min: 1, max: 255 }
+ description: A string with length of at least 1 and less than 255.
+ description: Unique ID for the VF Module instance
+
+resources:
+ # Create the Port Tuple
+ vIPR_ATM_RPT:
+ type: OS::ContrailV2::PortTuple
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_TUPLE
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ service_instance: { get_param: vipr_atm_contrail_service_instance_fqdn }
+
+ # Left Port (Virtual Machine Interface)
+ vIPR_ATM_Left_RVMI:
+ type: OS::ContrailV2::VirtualMachineInterface
+ depends_on: [ vIPR_ATM_RPT ]
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: 'left'
+ }
+ port_tuple_refs: [{ get_resource: vIPR_ATM_RPT }]
+ virtual_network_refs: [{ get_param: vipr_atm_service_left_fqdn }]
+
+ # Right Port (Virtual Machine Interface)
+ vIPR_ATM_Right_RVMI:
+ type: OS::ContrailV2::VirtualMachineInterface
+ depends_on: [ vIPR_ATM_RPT ]
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_4
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: 'right'
+ }
+ port_tuple_refs: [{ get_resource: vIPR_ATM_RPT }]
+ virtual_network_refs: [{ get_param: vipr_atm_service_right_fqdn }]
+
+ # Left Instance IP
+ vIPR_ATM_Left_RII:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ vIPR_ATM_Left_RVMI ]
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_INSTANCE_IP_LEFT
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_refs: [{ get_resource: vIPR_ATM_Left_RVMI }]
+ virtual_network_refs: [{ get_param: vipr_atm_service_left_fqdn }]
+
+ # Right Instance IP
+ vIPR_ATM_Right_RII:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ vIPR_ATM_Right_RVMI ]
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_INSTANCE_IP_RIGHT
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_refs: [{ get_resource: vIPR_ATM_Right_RVMI }]
+ virtual_network_refs: [{ get_param: vipr_atm_service_right_fqdn }]
+
+ # OAM Network Port (not part of Port Tuple)
+ vIPR_ATM_OAM_0_Port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_0
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ network: { get_param: oam_net_id }
+ security_groups: { get_param: vipr_atm_oam_net_security_groups }
+
+ # HA One Port (not part of Port Tuple)
+ vIPR_ATM_Ha_One_0_Port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_1
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ network: { get_param: vipr_atm_ha_one_id }
+ fixed_ips: [ { "ip_address": { get_param: vipr_atm_ha_one_ip_0 } } ]
+ security_groups: { get_param: vipr_atm_ha_one_security_groups }
+
+ # HA Two Port (not part of Port Tuple)
+ vIPR_ATM_Ha_Two_0_Port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_2
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ network: { get_param: vipr_atm_ha_two_id }
+ fixed_ips: [ { "ip_address": { get_param: vipr_atm_ha_two_ip_0 } } ]
+ security_groups: { get_param: vipr_atm_ha_two_security_groups }
+
+ # Valet Exclusivity Group
+ vIPR_ATM_Valet_EG_0:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_name: { get_param: vipr_atm_valet_eg_0 }
+ group_type: exclusivity
+ level: host
+ resources:
+ - { get_resource: vIPR_ATM_Firewall }
+
+ # Create the VM and bind the five ports to it
+ # vIPR_ATM_Firewall_Cloud_Config:
+ # type: OS::Heat::CloudConfig
+ # properties:
+ # cloud_config:
+ # password: ubuntu
+ # chpasswd: { expire: False }
+ # ssh_pwauth: True
+ # manage_etc_hosts: true
+
+ vIPR_ATM_Firewall:
+ type: OS::Nova::Server
+ depends_on:
+ - vIPR_ATM_Left_RII
+ - vIPR_ATM_Right_RII
+ - vIPR_ATM_OAM_0_Port
+ - vIPR_ATM_Ha_One_0_Port
+ - vIPR_ATM_Ha_Two_0_Port
+ properties:
+ name: { get_param: vipr_atm_name_0 }
+ image: { get_param: vipr_atm_image_name }
+ flavor: { get_param: vipr_atm_flavor_name }
+ availability_zone: { get_param: availability_zone_0 }
+ scheduler_hints:
+ group: { get_param: vipr_atm_server_group }
+ networks:
+ - port: { get_resource: vIPR_ATM_OAM_0_Port }
+ - port: { get_resource: vIPR_ATM_Ha_One_0_Port }
+ - port: { get_resource: vIPR_ATM_Ha_Two_0_Port }
+ - port: { get_resource: vIPR_ATM_Left_RVMI }
+ - port: { get_resource: vIPR_ATM_Right_RVMI }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vnf_name: { get_param: vnf_name }
+ vf_module_id: { get_param: vf_module_id }
+# user_data_format: RAW
+# user_data: { get_resource: vIPR_ATM_Firewall_Cloud_Config }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..5609b76193
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,292 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer3:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myPort6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myPort5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer3
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myNovaServer3:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer3
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myPort6
+ - myPort5
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myNovaServer3
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_simpleGroup1_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ SVCgroup3_complexTwoGroups_group:
+ type: tosca.groups.Root
+ members:
+ - SVCgroup1_simpleGroup1_group
+ policies:
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup1_group
+ SVCgroup3_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup3_complexTwoGroups_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/main.yml
new file mode 100644
index 0000000000..7dc385e7c8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/invalidGroupAssignment/inputfiles/main.yml
@@ -0,0 +1,132 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myNovaServer3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort5 }
+ - port: { get_resource: myPort6 }
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ myPort5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: simpleGroup1
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
+ SVCgroup2:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: invalid
+ level: host
+ resources:
+ - { get_resource: myNovaServer3}
+ SVCgroup3:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: complexTwoGroups
+ level: host
+ resources:
+ - { get_resource: SVCgroup1}
+ - { get_resource: SVCgroup2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..d0f744c3a5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,209 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_simpleGroup_group:
+ type: tosca.groups.Root
+ members: [
+ ]
+ policies:
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Diversity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/main.yml
new file mode 100644
index 0000000000..ce061c122a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/notconnected/inputfiles/main.yml
@@ -0,0 +1,88 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: diversity
+ group_name: simpleGroup
+ level: host
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b16c6c0247
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,209 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_simpleGroup_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer1
+ policies:
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Exclusivity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/main.yml
new file mode 100644
index 0000000000..caa95edfa9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleNovaAndNotSupportedResource/inputfiles/main.yml
@@ -0,0 +1,96 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ myDummyResource:
+ type: myDummyResource::type
+ properties:
+ prop: propertyValue
+
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: exclusivity
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myDummyResource}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a43a1d1f5d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,209 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_emptyGroup_group:
+ type: tosca.groups.Root
+ members: [
+ ]
+ policies:
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_emptyGroup_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/main.yml
new file mode 100644
index 0000000000..e5842434e1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNotSupportedResources/inputfiles/main.yml
@@ -0,0 +1,103 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myDummyResource1:
+ type: myDummyResource1
+ properties:
+ prop1: aaaa
+
+ myDummyResource2:
+ type: myDummyResource2
+ properties:
+ prop1: bbb
+
+
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: emptyGroup
+ level: host
+ resources:
+ - { get_resource: myDummyResource1}
+ - { get_resource: myDummyResource2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3ec1bd245e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,210 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_simpleGroup_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ policies:
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Affinity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/main.yml
new file mode 100644
index 0000000000..586a7343e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlyNova/inputfiles/main.yml
@@ -0,0 +1,91 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
+ - { get_resource: myNovaServer2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..56b552b348
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,209 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.myNovaServer1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: p1
+ image:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: p2
+ names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ description: ip1
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: myAvailability_zone_1
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of network
+ node_templates:
+ myNovaServer1:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer1
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myNovaServer2:
+ type: org.openecomp.resource.vfc.nodes.heat.myNovaServer2
+ properties:
+ flavor:
+ get_input: flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: image
+ name:
+ get_input:
+ - names
+ - 0
+ myPort2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer1
+ relationship: tosca.relationships.network.BindsTo
+ myPort4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ myPort3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: myNovaServer2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - myNovaServer1
+ - myNovaServer2
+ - myPort2
+ - myPort1
+ - myPort4
+ - myPort3
+ SVCgroup1_simpleGroup_group:
+ type: tosca.groups.Root
+ members:
+ - myNovaServer1
+ policies:
+ SVCgroup1_policy:
+ type: org.openecomp.policies.placement.valet.Diversity
+ properties:
+ level: host
+ targets:
+ - SVCgroup1_simpleGroup_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..539e26b7ab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/main.yml
new file mode 100644
index 0000000000..f7079ce7ce
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/att-sdc-translator-impl/src/test/resources/mock/services/heattotosca/attValetGroupAssignment/simpleOnlySingleNova/inputfiles/main.yml
@@ -0,0 +1,90 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ net:
+ type: string
+ description: UID of network
+ p1:
+ type: string
+ description: p1
+ p2:
+ type: string
+ description: p2
+ myIPs:
+ type: string
+ description: ip1
+ availability_zone_1:
+ type: string
+ description: myAvailability_zone_1
+ names:
+ type: string
+ image:
+ type: string
+ flavor:
+ type: string
+resources:
+
+ myNovaServer1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort1 }
+ - port: { get_resource: myPort2 }
+
+
+ myNovaServer2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [names, 0]}
+ image: { get_param: image }
+ availability_zone: { get_param: availability_zone_1 }
+ flavor: { get_param: flavor }
+ networks:
+ - port: { get_resource: myPort3 }
+ - port: { get_resource: myPort4 }
+
+ myPort1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ myPort3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ myPort4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+ SVCgroup1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: diversity
+ group_name: simpleGroup
+ level: host
+ resources:
+ - { get_resource: myNovaServer1}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml
index 46616d6b27..4249d3c734 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-translator-api</name>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,12 +14,9 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-translator-api</name>
- <artifactId>openecomp-sdc-translator-api</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
@@ -24,20 +26,43 @@
<version>${project.version}</version>
</dependency>
<dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
- <version>1.5.3</version>
+ <version>${swagger.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-heat-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-tosca-lib</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ </dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..d46dd3f442
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/pom.xml.versionsBackup
@@ -0,0 +1,68 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-translator-api</name>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ <version>1.5.3</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/api/HeatToToscaTranslator.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/api/HeatToToscaTranslator.java
index 62c098d146..f00017a229 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/api/HeatToToscaTranslator.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/api/HeatToToscaTranslator.java
@@ -20,6 +20,7 @@
package org.openecomp.core.translator.api;
+
import org.openecomp.core.translator.datatypes.TranslatorOutput;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
@@ -27,6 +28,9 @@ import java.io.InputStream;
import java.util.List;
import java.util.Map;
+
+
+
public interface HeatToToscaTranslator {
void addManifest(String name, byte[] content);
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/datatypes/TranslatorOutput.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/datatypes/TranslatorOutput.java
index ec36625ced..c146f31136 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/datatypes/TranslatorOutput.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/datatypes/TranslatorOutput.java
@@ -26,6 +26,7 @@ import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import java.util.List;
import java.util.Map;
+
public class TranslatorOutput {
private Map<String, List<ErrorMessage>> errorMessages;
private ToscaServiceModel toscaServiceModel;
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/factory/HeatToToscaTranslatorFactory.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/factory/HeatToToscaTranslatorFactory.java
index b9234cd87a..2b7b00f435 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/factory/HeatToToscaTranslatorFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-api/src/main/java/org/openecomp/core/translator/factory/HeatToToscaTranslatorFactory.java
@@ -24,6 +24,8 @@ import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
import org.openecomp.core.translator.api.HeatToToscaTranslator;
+
+
public abstract class HeatToToscaTranslatorFactory
extends AbstractComponentFactory<HeatToToscaTranslator> {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml
index 0fc54f2c78..fb6f82e521 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-translator-core</name>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,43 +14,20 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-translator-core</name>
- <artifactId>openecomp-sdc-translator-core</artifactId>
-
<dependencies>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.14</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
- <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
-
+ <version>${logback.version}</version>
</dependency>
-
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>RELEASE</version>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -56,34 +38,48 @@
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-validation-api</artifactId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <scope>test</scope>
- <version>1.10.19</version>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-tosca-datatype</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-validation-core</artifactId>
- <version>${project.version}</version>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>2.5</version>
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-heat-lib</artifactId>
+ <artifactId>openecomp-sdc-validation-impl</artifactId>
<version>${project.version}</version>
+ <scope>test</scope>
</dependency>
+
</dependencies>
-</project> \ No newline at end of file
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..aea451e1ca
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/pom.xml.versionsBackup
@@ -0,0 +1,75 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-translator-core</name>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>att-sdc-validation-impl</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedPropertyVal.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedPropertyVal.java
new file mode 100644
index 0000000000..38bfc99c54
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedPropertyVal.java
@@ -0,0 +1,57 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.datatypes.heattotosca;
+
+public class AttachedPropertyVal {
+ private Object propertyValue;
+ private ReferenceType referenceType;
+
+ /**
+ * Instantiates a new Attached resource id.
+ *
+ * @param propertyValue the property value
+ * @param referenceType the reference type
+ */
+ public AttachedPropertyVal(Object propertyValue, ReferenceType referenceType) {
+ this.referenceType = referenceType;
+ this.propertyValue = propertyValue;
+ }
+
+ public Object getPropertyValue() {
+ return propertyValue;
+ }
+
+ public ReferenceType getReferenceType() {
+ return referenceType;
+ }
+
+ public boolean isGetResource() {
+ return referenceType == ReferenceType.GET_RESOURCE;
+ }
+
+ public boolean isGetParam() {
+ return referenceType == ReferenceType.GET_PARAM;
+ }
+
+ public boolean isGetAttr() {
+ return referenceType == ReferenceType.GET_ATTR;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedResourceId.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedResourceId.java
index 4286666392..16baf4e84b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedResourceId.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/AttachedResourceId.java
@@ -23,7 +23,7 @@ package org.openecomp.sdc.translator.datatypes.heattotosca;
public class AttachedResourceId {
private Object translatedId;
private Object entityId;
- private ResourceReferenceType resourceReferenceType;
+ private ReferenceType resourceReferenceType;
/**
* Instantiates a new Attached resource id.
@@ -33,7 +33,7 @@ public class AttachedResourceId {
* @param resourceReferenceType the resource reference type
*/
public AttachedResourceId(Object translatedId, Object entityId,
- ResourceReferenceType resourceReferenceType) {
+ ReferenceType resourceReferenceType) {
this.translatedId = translatedId;
this.resourceReferenceType = resourceReferenceType;
this.entityId = entityId;
@@ -47,19 +47,19 @@ public class AttachedResourceId {
return translatedId;
}
- public ResourceReferenceType getResourceReferenceType() {
+ public ReferenceType getResourceReferenceType() {
return resourceReferenceType;
}
public boolean isGetResource() {
- return resourceReferenceType == ResourceReferenceType.GET_RESOURCE;
+ return resourceReferenceType == ReferenceType.GET_RESOURCE;
}
public boolean isGetParam() {
- return resourceReferenceType == ResourceReferenceType.GET_PARAM;
+ return resourceReferenceType == ReferenceType.GET_PARAM;
}
public boolean isGetAttr() {
- return resourceReferenceType == ResourceReferenceType.GET_ATTR;
+ return resourceReferenceType == ReferenceType.GET_ATTR;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/PropertyRegexMatcher.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/PropertyRegexMatcher.java
index b04234b413..06d96bc3c1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/PropertyRegexMatcher.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/PropertyRegexMatcher.java
@@ -18,7 +18,7 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.helper;
+package org.openecomp.sdc.translator.datatypes.heattotosca;
import org.apache.commons.collections.CollectionUtils;
@@ -31,6 +31,20 @@ public class PropertyRegexMatcher {
private List<Pattern> regexPatterns;
private String stringToSearchForPropertyValue;
+ /**
+ * Constractor for creating PropertyRegexMatcher.
+ * @param propertyName property name
+ * @param regexPatterns regex pattern
+ * @param stringToSearchForPropertyValue string for search in the property value manipulation
+ */
+ public PropertyRegexMatcher(String propertyName,
+ List<String> regexPatterns,
+ String stringToSearchForPropertyValue) {
+ this.propertyName = propertyName;
+ setRegex(regexPatterns);
+ this.stringToSearchForPropertyValue = stringToSearchForPropertyValue;
+ }
+
public String getPropertyName() {
return propertyName;
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/ResourceReferenceType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/ReferenceType.java
index 81ccd69a66..1f90db9cb3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/ResourceReferenceType.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/ReferenceType.java
@@ -20,6 +20,6 @@
package org.openecomp.sdc.translator.datatypes.heattotosca;
-public enum ResourceReferenceType {
+public enum ReferenceType {
GET_RESOURCE, GET_PARAM, GET_ATTR, OTHER
}
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
new file mode 100644
index 0000000000..736318bcab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/TranslationContext.java
@@ -0,0 +1,452 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.datatypes.heattotosca;
+
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestFile;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionEntity;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedSubstitutionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.services.heattotosca.ConfigConstants;
+import org.openecomp.sdc.translator.services.heattotosca.Constants;
+import org.openecomp.sdc.translator.services.heattotosca.NameExtractor;
+import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
+
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+
+
+public class TranslationContext {
+
+
+ private static Map<String, Map<String, Map<String, String>>> translationMapping;
+ private static Map<String, ServiceTemplate> globalServiceTemplates;
+ private static Map<String, ImplementationConfiguration> nameExtractorImplMap;
+ private static Map<String, ImplementationConfiguration> supportedConsolidationComputeResources;
+ private static Map<String, ImplementationConfiguration> supportedConsolidationPortResources;
+
+ static {
+ Configuration config = ConfigurationManager.lookup();
+ String propertyFileName = SdcCommon.HEAT_TO_TOSCA_MAPPING_CONF;
+ translationMapping =
+ config.generateMap(ConfigConstants.MAPPING_NAMESPACE, ConfigConstants.RESOURCE_MAPPING_KEY);
+ try {
+ globalServiceTemplates = GlobalTypesGenerator.getGlobalTypesServiceTemplate();
+ } catch (Exception e) {
+ throw new RuntimeException("Failed to load GlobalTypes", e);
+ }
+ nameExtractorImplMap = config.populateMap(ConfigConstants.TRANSLATOR_NAMESPACE,
+ ConfigConstants.NAMING_CONVENTION_EXTRACTOR_IMPL_KEY, ImplementationConfiguration.class);
+ supportedConsolidationComputeResources = config.populateMap(ConfigConstants
+ .MANDATORY_UNIFIED_MODEL_NAMESPACE, ConfigConstants
+ .SUPPORTED_CONSOLIDATION_COMPUTE_RESOURCES_KEY, ImplementationConfiguration.class);
+ supportedConsolidationPortResources = config.populateMap(ConfigConstants
+ .MANDATORY_UNIFIED_MODEL_NAMESPACE, ConfigConstants
+ .SUPPORTED_CONSOLIDATION_PORT_RESOURCES_KEY, ImplementationConfiguration.class);
+
+ }
+
+ private Map<String, UnifiedSubstitutionData> unifiedSubstitutionData = new HashMap<>();
+ private ManifestFile manifest;
+ private FileContentHandler files = new FileContentHandler();
+ private Map<String, FileData.Type> manifestFiles = new HashMap<>();
+ //Key - file name, value - file type
+ private Set<String> nestedHeatsFiles = new HashSet<>();
+ private FileContentHandler externalArtifacts = new FileContentHandler();
+ // Key - heat file name,value - set of heat resource ids which were translated
+ private Map<String, Set<String>> translatedResources = new HashMap<>();
+ // Key - heat file name, value - translated Node template id
+ private Map<String, Set<String>> heatStackGroupMembers = new HashMap<>();
+ // Key - heat file name, value - Map with Key - heat resource Id, Value - tosca entity template id
+ private Map<String, Map<String, String>> translatedIds = new HashMap<>();
+ // key - service template type, value - translated service templates
+ private Map<String, ServiceTemplate> translatedServiceTemplates = new HashMap<>();
+ //key - heat param name, value - shared resource data
+ private Map<String, TranslatedHeatResource> heatSharedResourcesByParam = new HashMap<>();
+ //key - translated substitute service template file name, value - source nested heat file name
+ private Map<String, String> nestedHeatFileName = new HashMap<>();
+ //Key - heat file name,value - Map eith key - heat pseudo param name,
+ // value - translated tosca parameter name
+ private Map<String, Map<String, String>> usedHeatPseudoParams = new HashMap<>();
+ //Consolidation data gathered for Unified TOSCA model
+ private ConsolidationData consolidationData = new ConsolidationData();
+
+ public static Map<String, ImplementationConfiguration>
+ getSupportedConsolidationComputeResources() {
+ return supportedConsolidationComputeResources;
+ }
+
+ public static void setSupportedConsolidationComputeResources(
+ Map<String, ImplementationConfiguration> supportedConsolidationComputeResources) {
+ TranslationContext.supportedConsolidationComputeResources =
+ supportedConsolidationComputeResources;
+ }
+
+ public static Map<String, ImplementationConfiguration> getSupportedConsolidationPortResources() {
+ return supportedConsolidationPortResources;
+ }
+
+ public static void setSupportedConsolidationPortResources(
+ Map<String, ImplementationConfiguration> supportedConsolidationPortResources) {
+ TranslationContext.supportedConsolidationPortResources = supportedConsolidationPortResources;
+ }
+
+ /**
+ * Get nameExtractor implemetation class instance.
+ *
+ * @param extractorImplKey configuration key for the implementation class
+ * @return implemetation class instance
+ */
+ public static NameExtractor getNameExtractorImpl(String extractorImplKey) {
+ String nameExtractorImplClassName =
+ nameExtractorImplMap.get(extractorImplKey).getImplementationClass();
+
+ return CommonMethods.newInstance(nameExtractorImplClassName, NameExtractor.class);
+ }
+
+ public Map<String, UnifiedSubstitutionData> getUnifiedSubstitutionData() {
+ return unifiedSubstitutionData;
+ }
+
+ public void setUnifiedSubstitutionData(
+ Map<String, UnifiedSubstitutionData> unifiedSubstitutionData) {
+ this.unifiedSubstitutionData = unifiedSubstitutionData;
+ }
+
+ public void addCleanedNodeTemplate(String serviceTemplateName,
+ String nodeTemplateId,
+ UnifiedCompositionEntity unifiedCompositionEntity,
+ NodeTemplate nodeTemplate) {
+ this.unifiedSubstitutionData.putIfAbsent(serviceTemplateName, new UnifiedSubstitutionData());
+ this.unifiedSubstitutionData
+ .get(serviceTemplateName)
+ .addCleanedNodeTemplate(nodeTemplateId, unifiedCompositionEntity, nodeTemplate);
+ }
+
+ public NodeTemplate getCleanedNodeTemplate(String serviceTemplateName,
+ String nodeTemplateId) {
+ return this.unifiedSubstitutionData.get(serviceTemplateName)
+ .getCleanedNodeTemplate(nodeTemplateId);
+ }
+
+ public void addUnifiedNestedNodeTemplateId(String serviceTemplateName,
+ String nestedNodeTemplateId,
+ String unifiedNestedNodeTemplateId) {
+ this.unifiedSubstitutionData.putIfAbsent(serviceTemplateName, new UnifiedSubstitutionData());
+ this.unifiedSubstitutionData.get(serviceTemplateName)
+ .addUnifiedNestedNodeTemplateId(nestedNodeTemplateId, unifiedNestedNodeTemplateId);
+ }
+
+ public Optional<String> getUnifiedNestedNodeTemplateId(String serviceTemplateName,
+ String nestedNodeTemplateId) {
+ return this.unifiedSubstitutionData.get(serviceTemplateName) == null ? Optional.empty()
+ :this.unifiedSubstitutionData.get(serviceTemplateName).getUnifiedNestedNodeTemplateId(nestedNodeTemplateId);
+ }
+
+ public void addUnifiedNestedNodeTypeId(String serviceTemplateName,
+ String nestedNodeTypeId,
+ String unifiedNestedNodeTypeId){
+ this.unifiedSubstitutionData.putIfAbsent(serviceTemplateName, new UnifiedSubstitutionData());
+ this.unifiedSubstitutionData.get(serviceTemplateName).addUnifiedNestedNodeTypeId(nestedNodeTypeId, unifiedNestedNodeTypeId);
+ }
+
+ public Optional<String> getUnifiedNestedNodeTypeId(String serviceTemplateName,
+ String nestedNodeTemplateId) {
+ return this.unifiedSubstitutionData.get(serviceTemplateName) == null ? Optional.empty()
+ : this.unifiedSubstitutionData.get(serviceTemplateName).getUnifiedNestedNodeTypeId(nestedNodeTemplateId);
+ }
+
+ public ConsolidationData getConsolidationData() {
+ return consolidationData;
+ }
+
+ public void setConsolidationData(ConsolidationData consolidationData) {
+ this.consolidationData = consolidationData;
+ }
+
+ public void addManifestFile(String fileName, FileData.Type fileType) {
+ this.manifestFiles.put(fileName, fileType);
+ }
+
+ public Set<String> getNestedHeatsFiles() {
+ return nestedHeatsFiles;
+ }
+
+ public Map<String, Set<String>> getHeatStackGroupMembers() {
+ return heatStackGroupMembers;
+ }
+
+ public FileContentHandler getFiles() {
+ return files;
+ }
+
+ public void setFiles(Map<String, byte[]> files) {
+ this.files.putAll(files);
+ }
+
+ public InputStream getFileContent(String fileName) {
+ return files.getFileContent(fileName);
+ }
+
+ public void addFile(String name, byte[] content) {
+ files.addFile(name, content);
+ }
+
+ public ManifestFile getManifest() {
+ return manifest;
+ }
+
+ public void setManifest(ManifestFile manifest) {
+ this.manifest = manifest;
+ }
+
+ public Map<String, Set<String>> getTranslatedResources() {
+ return translatedResources;
+ }
+
+ public Map<String, Map<String, String>> getTranslatedIds() {
+ return translatedIds;
+ }
+
+ // get tosca name from mapping configuration file
+ //element type - parameter/attribute
+ // element name - heat parameter/attribute name
+ //return value - tosca parameter/attribute name
+ public String getElementMapping(String resourceType, String elementType, String elementName) {
+ if (Objects.isNull(translationMapping.get(resourceType))) {
+ return null;
+ }
+ if (Objects.isNull(translationMapping.get(resourceType).get(elementType))) {
+ return null;
+ }
+ return translationMapping.get(resourceType).get(elementType).get(elementName);
+ }
+
+ public Map<String, String> getElementMapping(String resourceType, String elementType) {
+ if (Objects.isNull(translationMapping.get(resourceType))) {
+ return null;
+ }
+ return translationMapping.get(resourceType).get(elementType);
+ }
+
+ public Set<String> getElementSet(String resourceType, String elementType) {
+ if (Objects.isNull(translationMapping.get(resourceType))) {
+ return new HashSet<>();
+ }
+ if (Objects.isNull(translationMapping.get(resourceType).get(elementType))) {
+ return new HashSet<>();
+ }
+ return translationMapping.get(resourceType).get(elementType).keySet();
+ }
+
+ public Map<String, ServiceTemplate> getTranslatedServiceTemplates() {
+ return translatedServiceTemplates;
+ }
+
+ public ServiceTemplate getGlobalSubstitutionServiceTemplate() {
+ return getTranslatedServiceTemplates().get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ }
+
+ public FileContentHandler getExternalArtifacts() {
+ return externalArtifacts;
+ }
+
+ public void addExternalArtifacts(String name, byte[] content) {
+ this.externalArtifacts.addFile(name, content);
+ }
+
+ public Map<String, TranslatedHeatResource> getHeatSharedResourcesByParam() {
+ return heatSharedResourcesByParam;
+ }
+
+ public void addHeatSharedResourcesByParam(String parameterName, String resourceId,
+ Resource resource) {
+ this.addHeatSharedResourcesByParam(parameterName,
+ new TranslatedHeatResource(resourceId, resource));
+ }
+
+ private void addHeatSharedResourcesByParam(String parameterName,
+ TranslatedHeatResource translatedHeatResource) {
+ this.heatSharedResourcesByParam.put(parameterName, translatedHeatResource);
+ }
+
+ public Map<String, ServiceTemplate> getGlobalServiceTemplates() {
+ return globalServiceTemplates;
+ }
+
+ public Map<String, String> getNestedHeatFileName() {
+ return nestedHeatFileName;
+ }
+
+ public void addNestedHeatFileName(String substituteServiceTempalteName,
+ String nestedHeatFileName) {
+ this.nestedHeatFileName.put(substituteServiceTempalteName, nestedHeatFileName);
+ }
+
+ public Map<String, Map<String, String>> getUsedHeatPseudoParams() {
+ return usedHeatPseudoParams;
+ }
+
+ public void addUsedHeatPseudoParams(String heatFileName, String heatPseudoParam, String
+ translatedToscaParam) {
+ if (Objects.isNull(this.usedHeatPseudoParams.get(heatFileName))) {
+ this.usedHeatPseudoParams.put(heatFileName, new HashMap<>());
+ }
+ this.usedHeatPseudoParams.get(heatFileName).put(heatPseudoParam, translatedToscaParam);
+ }
+
+ /**
+ * Add the unified substitution data info in context. Contains a mapping of original node
+ * template id and the new node template id in the abstract substitute
+ *
+ * @param serviceTemplateFileName the service template file name
+ * @param originalNodeTemplateId the original node template id
+ * @param abstractNodeTemplateId the node template id in the abstract substitute
+ */
+ public void addUnifiedSubstitutionData(String serviceTemplateFileName,
+ String originalNodeTemplateId,
+ String abstractNodeTemplateId) {
+
+ Map<String, String> nodeAbstractNodeTemplateIdMap = this.getUnifiedSubstitutionData()
+ .computeIfAbsent(serviceTemplateFileName, k -> new UnifiedSubstitutionData())
+ .getNodesRelatedAbstractNode();
+
+ if (nodeAbstractNodeTemplateIdMap == null) {
+ nodeAbstractNodeTemplateIdMap = new HashMap<>();
+ }
+ nodeAbstractNodeTemplateIdMap.put(originalNodeTemplateId, abstractNodeTemplateId);
+ this.getUnifiedSubstitutionData().get(serviceTemplateFileName).setNodesRelatedAbstractNode(
+ nodeAbstractNodeTemplateIdMap);
+ }
+
+ /**
+ * Add the unified substitution data info in context. Contains a mapping of original node
+ * template id and the new node template id in the abstract substitute
+ *
+ * @param serviceTemplateFileName the service template file name
+ * @param originalNodeTemplateId the original node template id
+ * @param substitutionServiceTemplateNodeTemplateId the node template id in the substitution
+ * service template
+ */
+ public void addSubstitutionServiceTemplateUnifiedSubstitutionData(String serviceTemplateFileName,
+ String originalNodeTemplateId,
+ String substitutionServiceTemplateNodeTemplateId) {
+
+ Map<String, String> nodesRelatedSubstitutionServiceTemplateNodeTemplateIdMap = this
+ .getUnifiedSubstitutionData()
+ .computeIfAbsent(serviceTemplateFileName, k -> new UnifiedSubstitutionData())
+ .getNodesRelatedSubstitutionServiceTemplateNode();
+
+ if (nodesRelatedSubstitutionServiceTemplateNodeTemplateIdMap == null) {
+ nodesRelatedSubstitutionServiceTemplateNodeTemplateIdMap = new HashMap<>();
+ }
+ nodesRelatedSubstitutionServiceTemplateNodeTemplateIdMap.put(originalNodeTemplateId,
+ substitutionServiceTemplateNodeTemplateId);
+ this.getUnifiedSubstitutionData().get(serviceTemplateFileName)
+ .setNodesRelatedSubstitutionServiceTemplateNode(
+ nodesRelatedSubstitutionServiceTemplateNodeTemplateIdMap);
+ }
+
+ /**
+ * Get unified abstract node template which is mapped to the input node template id.
+ *
+ * @param serviceTemplate the service template
+ * @param nodeTemplateId the node template id
+ */
+ public String getUnifiedAbstractNodeTemplateId(ServiceTemplate serviceTemplate,
+ String nodeTemplateId) {
+ UnifiedSubstitutionData unifiedSubstitutionData =
+ this.unifiedSubstitutionData.get(ToscaUtil.getServiceTemplateFileName(serviceTemplate));
+ return unifiedSubstitutionData.getNodesRelatedAbstractNode().get(nodeTemplateId);
+ }
+
+ /**
+ * Get unified node template in the substitution service template which is mapped to the
+ * original input node template id.
+ *
+ * @param serviceTemplate the service template
+ * @param nodeTemplateId the node template id
+ */
+ public String getUnifiedSubstitutionNodeTemplateId(ServiceTemplate serviceTemplate,
+ String nodeTemplateId) {
+ UnifiedSubstitutionData unifiedSubstitutionData =
+ this.unifiedSubstitutionData.get(ToscaUtil.getServiceTemplateFileName(serviceTemplate));
+ return unifiedSubstitutionData.getNodesRelatedSubstitutionServiceTemplateNode()
+ .get(nodeTemplateId);
+ }
+
+ public int getHandledNestedComputeNodeTemplateIndex(String serviceTemplateName,
+ String computeType){
+ return this.unifiedSubstitutionData.get(serviceTemplateName)
+ .getHandledNestedComputeNodeTemplateIndex(computeType);
+ }
+
+ public void updateHandledComputeType(String serviceTemplateName,
+ String nestedServiceTemplateFileName,
+ String handledComputeType){
+ this.unifiedSubstitutionData.putIfAbsent(serviceTemplateName, new UnifiedSubstitutionData());
+ this.unifiedSubstitutionData.get(serviceTemplateName)
+ .addHandledComputeType(nestedServiceTemplateFileName, handledComputeType);
+ }
+
+ public boolean isNestedServiceTemplateWasHandled(String serviceTemplateName,
+ String nestedServiceTemplateFileName){
+ if(Objects.isNull(this.unifiedSubstitutionData.get(serviceTemplateName))){
+ return false;
+ }
+ return this.unifiedSubstitutionData.get(serviceTemplateName)
+ .isNestedServiceTemplateWasHandled(nestedServiceTemplateFileName);
+ }
+
+ public void addNestedFileToUsedNestedComputeType(String serviceTemplateName,
+ String nestedServiceTemplateFileName,
+ String computeType){
+ this.unifiedSubstitutionData.putIfAbsent(serviceTemplateName, new UnifiedSubstitutionData());
+
+ this.unifiedSubstitutionData.get(serviceTemplateName).addNestedFileToUsedNestedComputeType
+ (computeType, nestedServiceTemplateFileName);
+ }
+
+ public int getGlobalNodeTypeIndex(String serviceTemplateName,
+ String computeType){
+ if(Objects.isNull(this.unifiedSubstitutionData.get(serviceTemplateName))){
+ return 0;
+ }
+ return this.unifiedSubstitutionData.get(serviceTemplateName).getGlobalNodeTypeIndex
+ (computeType);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/ResourceFileDataAndIDs.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/ResourceFileDataAndIDs.java
index b8349444d7..24eef115e2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/ResourceFileDataAndIDs.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/ResourceFileDataAndIDs.java
@@ -23,6 +23,7 @@ package org.openecomp.sdc.translator.datatypes.heattotosca.to;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+
public class ResourceFileDataAndIDs {
private String resourceId;
private String translatedResourceId;
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/TranslateTo.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/TranslateTo.java
index 6c56715f79..56ba9d120d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/TranslateTo.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/to/TranslateTo.java
@@ -24,7 +24,7 @@ package org.openecomp.sdc.translator.datatypes.heattotosca.to;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
public class TranslateTo {
private String heatFileName;
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/NodeTemplateInformation.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/NodeTemplateInformation.java
new file mode 100644
index 0000000000..bd1263da5f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/NodeTemplateInformation.java
@@ -0,0 +1,38 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition;
+
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
+
+/**
+ * Created by Talio on 4/4/2017.
+ */
+public class NodeTemplateInformation {
+ UnifiedCompositionEntity unifiedCompositionEntity;
+ private NodeTemplate nodeTemplate;
+
+ public NodeTemplateInformation(){}
+
+ public NodeTemplateInformation(
+ UnifiedCompositionEntity unifiedCompositionEntity,
+ NodeTemplate nodeTemplate) {
+ this.unifiedCompositionEntity = unifiedCompositionEntity;
+ this.nodeTemplate = nodeTemplate;
+ }
+
+ public UnifiedCompositionEntity getUnifiedCompositionEntity() {
+ return unifiedCompositionEntity;
+ }
+
+ public void setUnifiedCompositionEntity(
+ UnifiedCompositionEntity unifiedCompositionEntity) {
+ this.unifiedCompositionEntity = unifiedCompositionEntity;
+ }
+
+ public NodeTemplate getNodeTemplate() {
+ return nodeTemplate;
+ }
+
+ public void setNodeTemplate(NodeTemplate nodeTemplate) {
+ this.nodeTemplate = nodeTemplate;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionData.java
new file mode 100644
index 0000000000..a3635391ba
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionData.java
@@ -0,0 +1,95 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition;
+
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.NestedTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.PortTemplateConsolidationData;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * The type Unified composition data.
+ */
+public class UnifiedCompositionData {
+ /**
+ * The Compute template consolidation data.
+ */
+ private ComputeTemplateConsolidationData computeTemplateConsolidationData;
+ /**
+ * The Port template consolidation data list.
+ */
+ private List<PortTemplateConsolidationData> portTemplateConsolidationDataList;
+
+
+ private NestedTemplateConsolidationData nestedTemplateConsolidationData;
+
+ /**
+ * Gets compute template consolidation data.
+ *
+ * @return the compute template consolidation data
+ */
+ public ComputeTemplateConsolidationData getComputeTemplateConsolidationData() {
+ return computeTemplateConsolidationData;
+ }
+
+ /**
+ * Sets compute template consolidation data.
+ *
+ * @param computeTemplateConsolidationData the compute template consolidation data
+ */
+ public void setComputeTemplateConsolidationData(
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+ this.computeTemplateConsolidationData = computeTemplateConsolidationData;
+ }
+
+ /**
+ * Gets port template consolidation data list.
+ *
+ * @return the port template consolidation data list
+ */
+ public List<PortTemplateConsolidationData> getPortTemplateConsolidationDataList() {
+ return portTemplateConsolidationDataList;
+ }
+
+ /**
+ * Sets port template consolidation data list.
+ *
+ * @param portTemplateConsolidationDataList the port template consolidation data list
+ */
+ public void setPortTemplateConsolidationDataList(
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList) {
+ this.portTemplateConsolidationDataList = portTemplateConsolidationDataList;
+ }
+
+ /**
+ * Add port consolidation data.
+ *
+ * @param portTemplateConsolidationData the port consolidation data
+ */
+ public void addPortTemplateConsolidationData(
+ PortTemplateConsolidationData portTemplateConsolidationData) {
+ if (this.portTemplateConsolidationDataList == null) {
+ this.portTemplateConsolidationDataList = new ArrayList<>();
+ }
+ this.portTemplateConsolidationDataList.add(portTemplateConsolidationData);
+ }
+
+ /**
+ * Gets nested template consolidation data.
+ *
+ * @return the nested template consolidation data
+ */
+ public NestedTemplateConsolidationData getNestedTemplateConsolidationData() {
+ return nestedTemplateConsolidationData;
+ }
+
+ /**
+ * Sets nested template consolidation data.
+ *
+ * @param nestedTemplateConsolidationData the nested template consolidation data
+ */
+ public void setNestedTemplateConsolidationData(
+ NestedTemplateConsolidationData nestedTemplateConsolidationData) {
+ this.nestedTemplateConsolidationData = nestedTemplateConsolidationData;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionEntity.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionEntity.java
new file mode 100644
index 0000000000..d0bb826904
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionEntity.java
@@ -0,0 +1,8 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition;
+
+public enum UnifiedCompositionEntity {
+ Compute,
+ Port,
+ Nested,
+ Other;
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionMode.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionMode.java
new file mode 100644
index 0000000000..c4e6f1ce4a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedCompositionMode.java
@@ -0,0 +1,13 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition;
+
+/**
+ * @author SHIRIA
+ * @since March 02, 2017.
+ */
+public enum UnifiedCompositionMode {
+ SingleSubstitution,
+ ScalingInstances,
+ // todo - support B1 SingleSubstitution, but create diff types/services vm_type+<index>
+ CatalogInstance,
+ NestedSingleCompute;
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedSubstitutionData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedSubstitutionData.java
new file mode 100644
index 0000000000..57f77a51e5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/composition/UnifiedSubstitutionData.java
@@ -0,0 +1,145 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition;
+
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+
+public class UnifiedSubstitutionData {
+
+ //Key - node template id, Value - related abstract node template id
+ private Map<String, String> nodesRelatedAbstractNode = new HashMap<>();
+ //Key - node template id, Value - related node template id in the substitution service template
+ private Map<String, String> nodesRelatedSubstitutionServiceTemplateNode = new HashMap<>();
+ private Map<String, NodeTemplateInformation> cleanedNodeTemplates = new HashMap<>();
+ //Key - nested node template id, Value - related unified nested node template id
+ private Map<String, String> nestedNodeTemplateRelatedUnifiedTranslatedId = new HashMap<>();
+ //Key - nested node type id, Value - related unified nested node template id
+ private Map<String, String> nestedNodeTypeRelatedUnifiedTranslatedId = new HashMap<>();
+ //Key - handled compute type, Value - number of times it was handled
+ private Map<String, Integer> handledComputeTypesInNestedSubstitutionTemplate =
+ new HashMap<>();
+ //Key - nested compute type, Value - list of nested files that the compute type is present
+ private Map<String, Set<String>> handledNestedComputeTypesNestedFiles = new HashMap<>();
+ //handled nested files
+ private Set<String> handledNestedFiles = new HashSet<>();
+
+ public Map<String, String> getNodesRelatedAbstractNode() {
+ return nodesRelatedAbstractNode;
+ }
+
+ public void setNodesRelatedAbstractNode(
+ Map<String, String> nodesRelatedAbstractNode) {
+ this.nodesRelatedAbstractNode = nodesRelatedAbstractNode;
+ }
+
+ public Map<String, String> getNodesRelatedSubstitutionServiceTemplateNode() {
+ return nodesRelatedSubstitutionServiceTemplateNode;
+ }
+
+ public void setNodesRelatedSubstitutionServiceTemplateNode(
+ Map<String, String> nodesRelatedSubstitutionServiceTemplateNode) {
+ this.nodesRelatedSubstitutionServiceTemplateNode = nodesRelatedSubstitutionServiceTemplateNode;
+ }
+
+ public String getNodeRelatedAbstractNode(String origNodeId) {
+ return this.nodesRelatedAbstractNode.get(origNodeId);
+ }
+
+ public Collection<String> getAllRelatedAbstractNodeIds() {
+ return this.nodesRelatedAbstractNode.values();
+ }
+
+ public Collection<String> getAllUnifiedNestedNodeTemplateIds() {
+ return this.nestedNodeTemplateRelatedUnifiedTranslatedId.values();
+ }
+
+ /**
+ * Add cleaned node template.
+ *
+ * @param nodeTemplateId the node template id
+ * @param unifiedCompositionEntity the unified composition entity
+ * @param nodeTemplate the node template
+ */
+ public void addCleanedNodeTemplate(String nodeTemplateId,
+ UnifiedCompositionEntity unifiedCompositionEntity,
+ NodeTemplate nodeTemplate) {
+ NodeTemplateInformation nodeTemplateInformation = new NodeTemplateInformation(
+ unifiedCompositionEntity, nodeTemplate);
+ this.cleanedNodeTemplates.putIfAbsent(nodeTemplateId, nodeTemplateInformation);
+ }
+
+ public NodeTemplate getCleanedNodeTemplate(String nodeTemplateId) {
+ return this.cleanedNodeTemplates.get(nodeTemplateId).getNodeTemplate().clone();
+ }
+
+ public UnifiedCompositionEntity getCleanedNodeTemplateCompositionEntity(String nodeTemplateId) {
+ return this.cleanedNodeTemplates.get(nodeTemplateId).getUnifiedCompositionEntity();
+ }
+
+ public void addUnifiedNestedNodeTemplateId(String nestedNodeTemplateId,
+ String unifiedNestedNodeRelatedId) {
+ this.nestedNodeTemplateRelatedUnifiedTranslatedId
+ .put(nestedNodeTemplateId, unifiedNestedNodeRelatedId);
+ }
+
+ public Optional<String> getUnifiedNestedNodeTemplateId(String nestedNodeTemplateId) {
+ return this.nestedNodeTemplateRelatedUnifiedTranslatedId.get(nestedNodeTemplateId) == null
+ ? Optional.empty()
+ : Optional.of(this.nestedNodeTemplateRelatedUnifiedTranslatedId.get(nestedNodeTemplateId));
+ }
+
+ public void addUnifiedNestedNodeTypeId(String nestedNodeTypeId,
+ String unifiedNestedNodeRelatedId) {
+ this.nestedNodeTypeRelatedUnifiedTranslatedId.put(nestedNodeTypeId, unifiedNestedNodeRelatedId);
+ }
+
+ public Optional<String> getUnifiedNestedNodeTypeId(String nestedNodeTypeId) {
+ return this.nestedNodeTypeRelatedUnifiedTranslatedId.get(nestedNodeTypeId) == null ? Optional
+ .empty()
+ : Optional.of(this.nestedNodeTypeRelatedUnifiedTranslatedId.get(nestedNodeTypeId));
+ }
+
+ public void addHandledComputeType(String nestedServiceTemplateFileName,
+ String handledComputeType) {
+
+ if (this.handledComputeTypesInNestedSubstitutionTemplate.containsKey(handledComputeType)) {
+ Integer timesHandled =
+ this.handledComputeTypesInNestedSubstitutionTemplate.get(handledComputeType);
+ this.handledComputeTypesInNestedSubstitutionTemplate
+ .put(handledComputeType, timesHandled + 1);
+ } else {
+ this.handledNestedFiles.add(nestedServiceTemplateFileName);
+ handledComputeTypesInNestedSubstitutionTemplate.put(handledComputeType, 0);
+ }
+ }
+
+ public boolean isComputeTypeHandledInServiceTemplate(String computeType) {
+ return this.handledComputeTypesInNestedSubstitutionTemplate.containsKey(computeType);
+ }
+
+ public int getHandledNestedComputeNodeTemplateIndex(String computeType) {
+ return this.handledComputeTypesInNestedSubstitutionTemplate.containsKey(computeType) ?
+ this.handledComputeTypesInNestedSubstitutionTemplate.get(computeType):
+ 0;
+ }
+
+ public boolean isNestedServiceTemplateWasHandled(String nestedServiceTemplateFileName) {
+ return this.handledNestedFiles.contains(nestedServiceTemplateFileName);
+ }
+
+ public void addNestedFileToUsedNestedComputeType(String computeType,
+ String nestedServiceTemplateFileName){
+ this.handledNestedComputeTypesNestedFiles.putIfAbsent(computeType, new HashSet<>());
+ this.handledNestedComputeTypesNestedFiles.get(computeType).add(nestedServiceTemplateFileName);
+ }
+
+ public int getGlobalNodeTypeIndex(String computeType){
+ return this.handledNestedComputeTypesNestedFiles.get(computeType).size() == 1 ? 0:
+ this.handledNestedComputeTypesNestedFiles.get(computeType).size() - 1;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeConsolidationData.java
new file mode 100644
index 0000000000..d2f6083d23
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeConsolidationData.java
@@ -0,0 +1,52 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * The type Compute consolidation data.
+ */
+public class ComputeConsolidationData {
+
+ //Key - Service template file name
+ private Map<String, FileComputeConsolidationData> fileComputeConsolidationData;
+
+ /**
+ * Instantiates a new Compute consolidation data.
+ */
+ public ComputeConsolidationData() {
+ fileComputeConsolidationData = new HashMap<>();
+ }
+
+ /**
+ * Gets all files.
+ *
+ * @return the all files
+ */
+ public Set<String> getAllServiceTemplateFileNames() {
+ return fileComputeConsolidationData.keySet();
+ }
+
+ /**
+ * Gets file compute consolidation data.
+ *
+ * @param serviceTemplateFileName the file name
+ * @return the file compute consolidation data
+ */
+ public FileComputeConsolidationData getFileComputeConsolidationData(String
+ serviceTemplateFileName) {
+ return fileComputeConsolidationData.get(serviceTemplateFileName);
+ }
+
+ /**
+ * Sets file compute consolidation data.
+ *
+ * @param serviceTemplateFileName the file name
+ * @param fileComputeConsolidationData the file compute consolidation data
+ */
+ public void setFileComputeConsolidationData(String serviceTemplateFileName,
+ FileComputeConsolidationData fileComputeConsolidationData) {
+ this.fileComputeConsolidationData.put(serviceTemplateFileName, fileComputeConsolidationData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeTemplateConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeTemplateConsolidationData.java
new file mode 100644
index 0000000000..c6721ce18f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ComputeTemplateConsolidationData.java
@@ -0,0 +1,88 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * The type Compute template consolidation data.
+ */
+public class ComputeTemplateConsolidationData extends EntityConsolidationData {
+ // key - volume node template id
+ // List of requirement id and the requirement assignment on the
+ // compute node which connect to this volume
+ private Map<String,List<RequirementAssignmentData>> volumes;
+
+ // key - port type (port id excluding index),
+ // value - List of connected port node template ids, with this port type
+ private Map<String, List<String>> ports;
+
+ /**
+ * Gets volumes.
+ *
+ * @return the volumes
+ */
+ public Map<String,List<RequirementAssignmentData>> getVolumes() {
+ return volumes;
+ }
+
+ /**
+ * Sets volumes.
+ *
+ * @param volumes the volumes
+ */
+ public void setVolumes(Map<String,List<RequirementAssignmentData>> volumes) {
+ this.volumes = volumes;
+ }
+
+ /**
+ * Gets ports.
+ *
+ * @return the ports
+ */
+ public Map<String, List<String>> getPorts() {
+ return ports;
+ }
+
+ /**
+ * Sets ports.
+ *
+ * @param ports the ports
+ */
+ public void setPorts(Map<String, List<String>> ports) {
+ this.ports = ports;
+ }
+
+ /**
+ * Add port.
+ *
+ * @param portType the port type
+ * @param portNodeTemplateId the port node template id
+ */
+ public void addPort(String portType, String portNodeTemplateId) {
+ if (this.ports == null) {
+ this.ports = new HashMap<>();
+ }
+ this.ports.putIfAbsent(portType, new ArrayList<>());
+ this.ports.get(portType).add(portNodeTemplateId);
+ }
+
+
+ /**
+ * Add volume.
+ *
+ * @param requirementId the requirement id
+ * @param requirementAssignment the requirement assignment
+ */
+ public void addVolume(String requirementId, RequirementAssignment requirementAssignment) {
+ if (this.volumes == null) {
+ this.volumes = new HashMap<>();
+ }
+ this.volumes.computeIfAbsent(requirementAssignment.getNode(), k -> new ArrayList<>())
+ .add(new RequirementAssignmentData(requirementId,
+ requirementAssignment));
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ConsolidationData.java
new file mode 100644
index 0000000000..496da78f76
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/ConsolidationData.java
@@ -0,0 +1,109 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * The type Consolidation data.
+ */
+public class ConsolidationData {
+
+ //Compute consolidation data
+ private ComputeConsolidationData computeConsolidationData;
+
+ //Port Consolidation data
+ private PortConsolidationData portConsolidationData;
+
+ //Key - Service Template file name
+ //value - List of the abstract/substitute node template id
+ private Map<String, List<String>> substituteNodeTemplates; // todo - remove this one and use
+ // nestedConsolidationData instead
+
+ //Nested Consolidation data
+ private NestedConsolidationData nestedConsolidationData;
+
+
+ /**
+ * Instantiates a new Consolidation data.
+ */
+ public ConsolidationData() {
+ computeConsolidationData = new ComputeConsolidationData();
+ portConsolidationData = new PortConsolidationData();
+ nestedConsolidationData = new NestedConsolidationData();
+ substituteNodeTemplates = new HashMap<>();
+ }
+
+ /**
+ * Gets compute consolidation data.
+ *
+ * @return the compute consolidation data
+ */
+ public ComputeConsolidationData getComputeConsolidationData() {
+ return computeConsolidationData;
+ }
+
+ /**
+ * Sets compute consolidation data.
+ *
+ * @param computeConsolidationData the compute consolidation data
+ */
+ public void setComputeConsolidationData(ComputeConsolidationData computeConsolidationData) {
+ this.computeConsolidationData = computeConsolidationData;
+ }
+
+ /**
+ * Gets port consolidation data.
+ *
+ * @return the port consolidation data
+ */
+ public PortConsolidationData getPortConsolidationData() {
+ return portConsolidationData;
+ }
+
+ /**
+ * Sets port consolidation data.
+ *
+ * @param portConsolidationData the port consolidation data
+ */
+ public void setPortConsolidationData(
+ PortConsolidationData portConsolidationData) {
+ this.portConsolidationData = portConsolidationData;
+ }
+
+ /**
+ * Gets substitute node templates.
+ *
+ * @return the substitute node templates
+ */
+ public Map<String, List<String>> getSubstituteNodeTemplates() {
+ return substituteNodeTemplates;
+ }
+
+ /**
+ * Sets substitute node templates.
+ *
+ * @param substituteNodeTemplates the substitute node templates
+ */
+ public void setSubstituteNodeTemplates(Map<String, List<String>> substituteNodeTemplates) {
+ this.substituteNodeTemplates = substituteNodeTemplates;
+ }
+
+ /**
+ * Gets nested consolidation data.
+ *
+ * @return the nested consolidation data
+ */
+ public NestedConsolidationData getNestedConsolidationData() {
+ return nestedConsolidationData;
+ }
+
+ /**
+ * Sets nested consolidation data.
+ *
+ * @param nestedConsolidationData the nested consolidation data
+ */
+ public void setNestedConsolidationData(NestedConsolidationData nestedConsolidationData) {
+ this.nestedConsolidationData = nestedConsolidationData;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/EntityConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/EntityConsolidationData.java
new file mode 100644
index 0000000000..4545d5cdbd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/EntityConsolidationData.java
@@ -0,0 +1,245 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * The type Entity consolidation data.
+ */
+public class EntityConsolidationData {
+
+ private String nodeTemplateId;
+
+ //groups that point to this entity node template
+ private List<String> groupIds;
+
+ // key - node template id which has connection to this entity
+ // value - List of Requirement assignment data which connect to this entity
+ private Map<String, List<RequirementAssignmentData>> nodesConnectedIn;
+
+ // key - node template id which connected from this entity
+ // List of Requirement assignment data which connect to the key node template id
+ private Map<String, List<RequirementAssignmentData>> nodesConnectedOut;
+
+ //key - node template id which include get attribute function from this entity
+ //key - node template id which include get attribute function from this entity
+ //value - List of getAttr data
+ private Map<String, List<GetAttrFuncData>> nodesGetAttrIn;
+
+ //key - node template id which is pointed by this entity using get attribute function
+ //value - List of getAttr data
+ private Map<String, List<GetAttrFuncData>> nodesGetAttrOut;
+
+ //List of getAttr data
+ private List<GetAttrFuncData> outputParametersGetAttrIn;
+
+ /**
+ * Gets node template id.
+ *
+ * @return the node template id
+ */
+ public String getNodeTemplateId() {
+ return nodeTemplateId;
+ }
+
+ /**
+ * Sets node template id.
+ *
+ * @param nodeTemplateId the node template id
+ */
+ public void setNodeTemplateId(String nodeTemplateId) {
+ this.nodeTemplateId = nodeTemplateId;
+ }
+
+ /**
+ * Gets group ids point to me.
+ *
+ * @return the group ids point to me
+ */
+ public List<String> getGroupIds() {
+ return groupIds;
+ }
+
+ /**
+ * Sets group ids point to me.
+ *
+ * @param groupIds the group ids point to me
+ */
+ public void setGroupIds(List<String> groupIds) {
+ this.groupIds = groupIds;
+ }
+
+
+ /**
+ * Sets node connected to me.
+ *
+ * @param nodesConnectedIn the node connected to me
+ */
+ public void setNodesConnectedIn(Map<String, List<RequirementAssignmentData>> nodesConnectedIn) {
+ this.nodesConnectedIn = nodesConnectedIn;
+ }
+
+ /**
+ * Add nodeConnectedIn.
+ *
+ * @param nodeTemplateId the node template id which has connection to me
+ * @param requirementId the requirement id
+ * @param requirementAssignment the requirement assignment
+ */
+ public void addNodesConnectedIn(String nodeTemplateId, String requirementId,
+ RequirementAssignment requirementAssignment) {
+ if (this.nodesConnectedIn == null) {
+ this.nodesConnectedIn = new HashMap<>();
+ }
+ this.nodesConnectedIn.computeIfAbsent(nodeTemplateId, k -> new ArrayList<>());
+ this.nodesConnectedIn.get(nodeTemplateId).add(new RequirementAssignmentData(requirementId,
+ requirementAssignment));
+ }
+
+ /**
+ * Gets node connected to me.
+ *
+ * @return the node connected to me
+ */
+ public Map<String, List<RequirementAssignmentData>> getNodesConnectedIn() {
+ return nodesConnectedIn;
+ }
+
+
+ /**
+ * Gets node connected from me.
+ *
+ * @return the node connected from me
+ */
+ public Map<String, List<RequirementAssignmentData>> getNodesConnectedOut() {
+ return nodesConnectedOut;
+ }
+
+ /**
+ * Sets node connected from me.
+ *
+ * @param nodesConnectedOut the node connected from me
+ */
+ public void setNodesConnectedOut(
+ Map<String, List<RequirementAssignmentData>> nodesConnectedOut) {
+ this.nodesConnectedOut = nodesConnectedOut;
+ }
+
+ /**
+ * Add nodeConnectedOut.
+ *
+ * @param nodeTemplateId the node template id which is connected from me
+ * @param requirementId the requirement id
+ * @param requirementAssignment the requirement assignment
+ */
+ public void addNodesConnectedOut(String nodeTemplateId, String requirementId,
+ RequirementAssignment
+ requirementAssignment) {
+ if (this.nodesConnectedOut == null) {
+ this.nodesConnectedOut = new HashMap<>();
+ }
+ this.nodesConnectedOut.computeIfAbsent(nodeTemplateId, k -> new ArrayList<>());
+ this.nodesConnectedOut.get(nodeTemplateId).add(new RequirementAssignmentData(requirementId,
+ requirementAssignment));
+ }
+
+ /**
+ * Gets nodes get attr in.
+ *
+ * @return the get attr in
+ */
+ public Map<String, List<GetAttrFuncData>> getNodesGetAttrIn() {
+ return nodesGetAttrIn;
+ }
+
+ /**
+ * Sets nodes get attr in.
+ *
+ * @param nodesGetAttrIn the get attr in
+ */
+ public void setNodesGetAttrIn(
+ Map<String, List<GetAttrFuncData>> nodesGetAttrIn) {
+ this.nodesGetAttrIn = nodesGetAttrIn;
+ }
+
+ /**
+ * Add nodes get attr in data.
+ *
+ * @param nodeTemplateId the node template id
+ * @param getAttrFuncData get attr data
+ */
+ public void addNodesGetAttrIn(String nodeTemplateId, GetAttrFuncData getAttrFuncData) {
+ if (nodesGetAttrIn == null) {
+ nodesGetAttrIn = new HashMap<>();
+ }
+ this.nodesGetAttrIn.putIfAbsent(nodeTemplateId, new ArrayList<>());
+ this.nodesGetAttrIn.get(nodeTemplateId).add(getAttrFuncData);
+ }
+
+ /**
+ * Gets output parameters get attr from me.
+ *
+ * @return the get attr from me
+ */
+ public List<GetAttrFuncData> getOutputParametersGetAttrIn() {
+ return outputParametersGetAttrIn;
+ }
+
+ /**
+ * Sets output parameters get attr from me.
+ *
+ * @param outputParametersGetAttrIn the output parameters get attr from me
+ */
+ public void setOutputParametersGetAttrIn(List<GetAttrFuncData> outputParametersGetAttrIn) {
+ this.outputParametersGetAttrIn = outputParametersGetAttrIn;
+ }
+
+ /**
+ * Add output parameters get attr data.
+ *
+ * @param getAttrFuncData get attr data
+ */
+ public void addOutputParamGetAttrIn(GetAttrFuncData getAttrFuncData) {
+ if (outputParametersGetAttrIn == null) {
+ outputParametersGetAttrIn = new ArrayList<>();
+ }
+ this.outputParametersGetAttrIn.add(getAttrFuncData);
+ }
+
+ /**
+ * Gets nodes get attr out.
+ *
+ * @return the get attr out
+ */
+ public Map<String, List<GetAttrFuncData>> getNodesGetAttrOut() {
+ return nodesGetAttrOut;
+ }
+
+ /**
+ * Sets nodes get attr out.
+ *
+ * @param nodesGetAttrOut the get attr out
+ */
+ public void setNodesGetAttrOut(
+ Map<String, List<GetAttrFuncData>> nodesGetAttrOut) {
+ this.nodesGetAttrOut = nodesGetAttrOut;
+ }
+
+ /**
+ * Add nodes get attr out data.
+ *
+ * @param nodeTemplateId the node template id
+ * @param getAttrFuncData get attr data
+ */
+ public void addNodesGetAttrOut(String nodeTemplateId, GetAttrFuncData getAttrFuncData) {
+ if (nodesGetAttrOut == null) {
+ nodesGetAttrOut = new HashMap<>();
+ }
+ this.nodesGetAttrOut.putIfAbsent(nodeTemplateId, new ArrayList<>());
+ this.nodesGetAttrOut.get(nodeTemplateId).add(getAttrFuncData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileComputeConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileComputeConsolidationData.java
new file mode 100644
index 0000000000..04a75d37b2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileComputeConsolidationData.java
@@ -0,0 +1,56 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * The type File compute consolidation data.
+ */
+public class FileComputeConsolidationData {
+
+ //key - compute node type name (vm_type)
+ private Map<String, TypeComputeConsolidationData> typeComputeConsolidationData;
+
+ /**
+ * Instantiates a new File compute consolidation data.
+ */
+ public FileComputeConsolidationData() {
+ typeComputeConsolidationData = new HashMap<>();
+ }
+
+ /**
+ * Gets all compute types.
+ *
+ * @return the all compute types
+ */
+ public Set<String> getAllComputeTypes() {
+ return typeComputeConsolidationData.keySet();
+ }
+
+ public Collection<TypeComputeConsolidationData> getAllTypeComputeConsolidationData(){
+ return typeComputeConsolidationData.values();
+ }
+
+ /**
+ * Gets type compute consolidation data.
+ *
+ * @param computeType the compute type
+ * @return the type compute consolidation data
+ */
+ public TypeComputeConsolidationData getTypeComputeConsolidationData(String computeType) {
+ return typeComputeConsolidationData.get(computeType);
+ }
+
+ /**
+ * Sets type compute consolidation data.
+ *
+ * @param computeType the compute type
+ * @param typeComputeConsolidationData the type compute consolidation data
+ */
+ public void setTypeComputeConsolidationData(String computeType, TypeComputeConsolidationData
+ typeComputeConsolidationData) {
+ this.typeComputeConsolidationData.put(computeType, typeComputeConsolidationData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileNestedConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileNestedConsolidationData.java
new file mode 100644
index 0000000000..1a3948a3a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FileNestedConsolidationData.java
@@ -0,0 +1,55 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * The type File nested node consolidation data.
+ */
+public class FileNestedConsolidationData {
+
+ //key - nested node template id
+ private Map<String, NestedTemplateConsolidationData> nestedTemplateConsolidationData;
+
+ public FileNestedConsolidationData() {
+ this.nestedTemplateConsolidationData = new HashMap<>();
+ }
+
+ /**
+ * Gets all nested node template ids.
+ *
+ * @return the all nested node template ids
+ */
+ public Set<String> getAllNestedNodeTemplateIds() {
+ return nestedTemplateConsolidationData.keySet();
+ }
+
+ public Collection<NestedTemplateConsolidationData> getAllNestedConsolidationData() {
+ return nestedTemplateConsolidationData.values();
+ }
+
+ /**
+ * Gets nested template consolidation data.
+ *
+ * @param nestedNodeTemplateId the nested node template id
+ * @return the nested template consolidation data
+ */
+ public NestedTemplateConsolidationData getNestedTemplateConsolidationData(
+ String nestedNodeTemplateId) {
+ return nestedTemplateConsolidationData.get(nestedNodeTemplateId);
+ }
+
+ /**
+ * Sets nested template consolidation data.
+ *
+ * @param nestedNodeTemplateId the nested node template id
+ * @param nestedTemplateConsolidationData the nested template consolidation data
+ */
+ public void setNestedTemplateConsolidationData(
+ String nestedNodeTemplateId,
+ NestedTemplateConsolidationData nestedTemplateConsolidationData) {
+ this.nestedTemplateConsolidationData.put(nestedNodeTemplateId, nestedTemplateConsolidationData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FilePortConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FilePortConsolidationData.java
new file mode 100644
index 0000000000..fd02edb818
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/FilePortConsolidationData.java
@@ -0,0 +1,54 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * The type File port consolidation data.
+ */
+public class FilePortConsolidationData {
+
+ //key - port node template id
+ private Map<String, PortTemplateConsolidationData> portTemplateConsolidationData;
+
+ public FilePortConsolidationData() {
+ this.portTemplateConsolidationData = new HashMap<>();
+ }
+
+ /**
+ * Gets all port node template ids.
+ *
+ * @return the all port node template ids
+ */
+ public Set<String> getAllPortNodeTemplateIds() {
+ return portTemplateConsolidationData.keySet();
+ }
+
+ public Collection<PortTemplateConsolidationData> getAllPortConsolidationData() {
+ return portTemplateConsolidationData.values();
+ }
+
+ /**
+ * Gets port template consolidation data.
+ *
+ * @param portNodeTemplateId the port node template id
+ * @return the port template consolidation data
+ */
+ public PortTemplateConsolidationData getPortTemplateConsolidationData(String portNodeTemplateId) {
+ return portTemplateConsolidationData.get(portNodeTemplateId);
+ }
+
+ /**
+ * Sets port template consolidation data.
+ *
+ * @param portNodeTemplateId the port node template id
+ * @param portTemplateConsolidationData the port template consolidation data
+ */
+ public void setPortTemplateConsolidationData(String portNodeTemplateId,
+ PortTemplateConsolidationData
+ portTemplateConsolidationData) {
+ this.portTemplateConsolidationData.put(portNodeTemplateId, portTemplateConsolidationData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/GetAttrFuncData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/GetAttrFuncData.java
new file mode 100644
index 0000000000..8c88232e57
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/GetAttrFuncData.java
@@ -0,0 +1,62 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+/**
+ * The type get attribute data.
+ */
+public class GetAttrFuncData {
+
+ private String fieldName;
+ private String attributeName;
+
+ public GetAttrFuncData(){}
+
+ public GetAttrFuncData(String fieldName, String attributeName) {
+ this.fieldName = fieldName;
+ this.attributeName = attributeName;
+ }
+
+ public String getFieldName() {
+ return fieldName;
+ }
+
+ public void setFieldName(String fieldName) {
+ this.fieldName = fieldName;
+ }
+
+ public String getAttributeName() {
+ return attributeName;
+ }
+
+ public void setAttributeName(String attributeName) {
+ this.attributeName = attributeName;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+
+ GetAttrFuncData that = (GetAttrFuncData) o;
+
+ if (fieldName != null ? !fieldName.equals(that.fieldName) : that.fieldName != null) {
+ return false;
+ }
+ if (attributeName != null ? !attributeName.equals(that.attributeName)
+ : that.attributeName != null) {
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = fieldName != null ? fieldName.hashCode() : 0;
+ result = 31 * result + (attributeName != null ? attributeName.hashCode() : 0);
+ return result;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedConsolidationData.java
new file mode 100644
index 0000000000..8dde9510e2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedConsolidationData.java
@@ -0,0 +1,50 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * The type Nested Node consolidation data.
+ */
+public class NestedConsolidationData {
+
+ //Key - Service template file name
+ private Map<String, FileNestedConsolidationData> fileNestedConsolidationData;
+
+ public NestedConsolidationData() {
+ this.fileNestedConsolidationData = new HashMap<>();
+ }
+
+ /**
+ * Gets all files.
+ *
+ * @return the all files
+ */
+ public Set<String> getAllServiceTemplateFileNames() {
+ return fileNestedConsolidationData.keySet();
+ }
+
+ /**
+ * Gets file nested consolidation data.
+ *
+ * @param serviceTemplateFileName the service template file name
+ * @return the file nested consolidation data
+ */
+ public FileNestedConsolidationData getFileNestedConsolidationData(String
+ serviceTemplateFileName) {
+ return fileNestedConsolidationData.get(serviceTemplateFileName);
+ }
+
+ /**
+ * Sets file nested consolidation data.
+ *
+ * @param serviceTemplateFileName the service template file name
+ * @param fileNestedConsolidationData the file nested consolidation data
+ */
+ public void setFileNestedConsolidationData(String serviceTemplateFileName,
+ FileNestedConsolidationData
+ fileNestedConsolidationData) {
+ this.fileNestedConsolidationData.put(serviceTemplateFileName, fileNestedConsolidationData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedTemplateConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedTemplateConsolidationData.java
new file mode 100644
index 0000000000..b07c2039b8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/NestedTemplateConsolidationData.java
@@ -0,0 +1,11 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.List;
+
+
+/**
+ * The type nested template consolidation data.
+ */
+public class NestedTemplateConsolidationData extends EntityConsolidationData {
+
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java
new file mode 100644
index 0000000000..5c1d38b6e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java
@@ -0,0 +1,48 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * The type Port consolidation data.
+ */
+public class PortConsolidationData {
+
+ //Key - Service template file name
+ private Map<String, FilePortConsolidationData> filePortConsolidationData;
+
+ public PortConsolidationData() {
+ this.filePortConsolidationData = new HashMap<>();
+ }
+
+ /**
+ * Gets all files.
+ *
+ * @return the all files
+ */
+ public Set<String> getAllServiceTemplateFileNames() {
+ return filePortConsolidationData.keySet();
+ }
+
+ /**
+ * Gets file port consolidation data.
+ *
+ * @param serviceTemplateFileName the service template file name
+ * @return the file port consolidation data
+ */
+ public FilePortConsolidationData getFilePortConsolidationData(String serviceTemplateFileName) {
+ return filePortConsolidationData.get(serviceTemplateFileName);
+ }
+
+ /**
+ * Sets file port consolidation data.
+ *
+ * @param serviceTemplateFileName the service template file name
+ * @param filePortConsolidationData the file port consolidation data
+ */
+ public void setFilePortConsolidationData(String serviceTemplateFileName, FilePortConsolidationData
+ filePortConsolidationData) {
+ this.filePortConsolidationData.put(serviceTemplateFileName, filePortConsolidationData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java
new file mode 100644
index 0000000000..c9b59f99db
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java
@@ -0,0 +1,30 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.List;
+
+
+/**
+ * The type Port template consolidation data.
+ */
+public class PortTemplateConsolidationData extends EntityConsolidationData {
+
+ private List<String> subPortIds; //sub ports which point to this port
+
+ /**
+ * Gets sub port ids.
+ *
+ * @return the sub port ids
+ */
+ public List<String> getSubPortIds() {
+ return subPortIds;
+ }
+
+ /**
+ * Sets sub port ids.
+ *
+ * @param subPortIds the sub port ids
+ */
+ public void setSubPortIds(List<String> subPortIds) {
+ this.subPortIds = subPortIds;
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/RequirementAssignmentData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/RequirementAssignmentData.java
new file mode 100644
index 0000000000..a2fffd5a3b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/RequirementAssignmentData.java
@@ -0,0 +1,60 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+
+/**
+ * The type Requirement assignment data.
+ */
+public class RequirementAssignmentData {
+
+ private String requirementId;
+ private RequirementAssignment requirementAssignment;
+
+ /**
+ * Instantiates a new Requirement assignment data.
+ *
+ * @param requirementId the requirement id
+ * @param requirementAssignment the requirement assignment
+ */
+ public RequirementAssignmentData(String requirementId, RequirementAssignment
+ requirementAssignment) {
+ this.requirementId = requirementId;
+ this.requirementAssignment = requirementAssignment;
+ }
+
+ /**
+ * Gets requirement id.
+ *
+ * @return the requirement id
+ */
+ public String getRequirementId() {
+ return requirementId;
+ }
+
+ /**
+ * Sets requirement id.
+ *
+ * @param requirementId the requirement id
+ */
+ public void setRequirementId(String requirementId) {
+ this.requirementId = requirementId;
+ }
+
+ /**
+ * Gets requirement assignment.
+ *
+ * @return the requirement assignment
+ */
+ public RequirementAssignment getRequirementAssignment() {
+ return requirementAssignment;
+ }
+
+ /**
+ * Sets requirement assignment.
+ *
+ * @param requirementAssignment the requirement assignment
+ */
+ public void setRequirementAssignment(RequirementAssignment requirementAssignment) {
+ this.requirementAssignment = requirementAssignment;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/TypeComputeConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/TypeComputeConsolidationData.java
new file mode 100644
index 0000000000..c95db52b95
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/TypeComputeConsolidationData.java
@@ -0,0 +1,59 @@
+package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * The type Type compute consolidation data.
+ */
+public class TypeComputeConsolidationData {
+
+ //key - compute node template id
+ private Map<String, ComputeTemplateConsolidationData> computeTemplateConsolidationData;
+
+ /**
+ * Instantiates a new Type compute consolidation data.
+ */
+ public TypeComputeConsolidationData() {
+ computeTemplateConsolidationData = new HashMap<>();
+ }
+
+ /**
+ * Gets all compute node template ids.
+ *
+ * @return the all compute node template ids
+ */
+ public Set<String> getAllComputeNodeTemplateIds() {
+ return computeTemplateConsolidationData.keySet();
+ }
+
+ public Collection<ComputeTemplateConsolidationData> getAllComputeTemplateConsolidationData(){
+ return computeTemplateConsolidationData.values();
+ }
+
+ /**
+ * Gets compute template consolidation data.
+ *
+ * @param computeNodeTemplateId the compute node template id
+ * @return the compute template consolidation data
+ */
+ public ComputeTemplateConsolidationData getComputeTemplateConsolidationData(
+ String computeNodeTemplateId) {
+ return computeTemplateConsolidationData.get(computeNodeTemplateId);
+ }
+
+ /**
+ * Sets compute template consolidation data.
+ *
+ * @param computeNodeTemplateId the compute node template id
+ * @param computeTemplateConsolidationData the compute template consolidation data
+ */
+ public void setComputeTemplateConsolidationData(String computeNodeTemplateId,
+ ComputeTemplateConsolidationData
+ computeTemplateConsolidationData) {
+ this.computeTemplateConsolidationData.put(computeNodeTemplateId,
+ computeTemplateConsolidationData);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorFactoryImpl.java
index 57f753f103..fe2286c912 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorFactoryImpl.java
@@ -23,6 +23,7 @@ package org.openecomp.sdc.translator.impl.heattotosca;
import org.openecomp.core.translator.api.HeatToToscaTranslator;
import org.openecomp.core.translator.factory.HeatToToscaTranslatorFactory;
+
public class HeatToToscaTranslatorFactoryImpl extends HeatToToscaTranslatorFactory {
private static HeatToToscaTranslator INSTANCE = new HeatToToscaTranslatorImpl();
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorImpl.java
index 0a6986816c..e09be6cdd9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/impl/heattotosca/HeatToToscaTranslatorImpl.java
@@ -21,22 +21,30 @@
package org.openecomp.sdc.translator.impl.heattotosca;
import org.apache.commons.collections4.MapUtils;
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
import org.openecomp.core.translator.api.HeatToToscaTranslator;
import org.openecomp.core.translator.datatypes.TranslatorOutput;
import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.core.utilities.json.JsonUtil;
import org.openecomp.core.validation.api.ValidationManager;
-import org.openecomp.core.validation.errors.Messages;
import org.openecomp.core.validation.factory.ValidationManagerFactory;
-import org.openecomp.core.validation.types.MessageContainerUtil;
-import org.openecomp.sdc.common.utils.AsdcCommon;
+import org.openecomp.core.validation.util.MessageContainerUtil;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
import org.openecomp.sdc.heat.datatypes.manifest.ManifestFile;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.services.heattotosca.ConfigConstants;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationService;
import org.openecomp.sdc.translator.services.heattotosca.TranslationService;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionManager;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
import java.io.InputStream;
import java.util.HashMap;
@@ -59,7 +67,7 @@ public class HeatToToscaTranslatorImpl implements HeatToToscaTranslator {
manifest.setContent(manifestData);
translationContext.setManifest(manifest);
translationContext.addFile(name, content);
- validationManager.addFile(AsdcCommon.MANIFEST_NAME, content);
+ validationManager.addFile(SdcCommon.MANIFEST_NAME, content);
addFilesFromManifestToTranslationContextManifestFilesMap(manifestData.getData());
isValid = false;
}
@@ -82,7 +90,7 @@ public class HeatToToscaTranslatorImpl implements HeatToToscaTranslator {
Map<String, List<ErrorMessage>> errors = new HashMap<>();
if (translationContext.getManifest() == null) {
- ErrorMessage.ErrorMessageUtil.addMessage(AsdcCommon.MANIFEST_NAME, errors)
+ ErrorMessage.ErrorMessageUtil.addMessage(SdcCommon.MANIFEST_NAME, errors)
.add(new ErrorMessage(ErrorLevel.ERROR, Messages.MANIFEST_NOT_EXIST.getErrorMessage()));
return errors;
}
@@ -90,7 +98,7 @@ public class HeatToToscaTranslatorImpl implements HeatToToscaTranslator {
if (MapUtils.isEmpty(errors)) {
errors = validationManager.validate();
}
- if (MapUtils.isEmpty(errors)) {
+ if (MapUtils.isEmpty(MessageContainerUtil.getMessageByLevel(ErrorLevel.ERROR, errors))) {
isValid = true;
}
return errors;
@@ -100,6 +108,8 @@ public class HeatToToscaTranslatorImpl implements HeatToToscaTranslator {
public TranslatorOutput translate() {
TranslationService translationService = new TranslationService();
TranslatorOutput translatorOutput = new TranslatorOutput();
+ UnifiedCompositionManager unifiedCompositionManager = new UnifiedCompositionManager(new
+ ConsolidationService(new UnifiedCompositionService()));
if (!isValid) {
Map<String, List<ErrorMessage>> errors = validate();
@@ -110,6 +120,9 @@ public class HeatToToscaTranslatorImpl implements HeatToToscaTranslator {
}
translatorOutput = translationService.translateHeatFiles(translationContext);
+ ToscaServiceModel unifiedToscaServiceModel = unifiedCompositionManager
+ .createUnifiedComposition(translatorOutput.getToscaServiceModel(), translationContext);
+ translatorOutput.setToscaServiceModel(unifiedToscaServiceModel);
return translatorOutput;
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConfigConstants.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConfigConstants.java
new file mode 100644
index 0000000000..f6918e382b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConfigConstants.java
@@ -0,0 +1,49 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca;
+
+public class ConfigConstants {
+ //namespaces
+ public static final String MANDATORY_TRANSLATOR_NAMESPACE = "mandatoryHeatToToscaTranslator";
+ public static final String MANDATORY_UNIFIED_MODEL_NAMESPACE = "mandatoryUnifiedModel";
+ public static final String TRANSLATOR_NAMESPACE = "heatToToscaTranslator";
+ public static final String MAPPING_NAMESPACE = "heatToToscaMapping";
+
+ //keys
+ public static final String RESOURCE_TRANSLATION_IMPL_KEY = "resourceTranslationImpl";
+ public static final String NESTED_RESOURCE_TRANSLATION_IMPL_KEY = "NestedResource";
+ public static final String DEFAULT_RESOURCE_TRANSLATION_IMPL_KEY = "DefaultResource";
+ public static final String FUNCTION_TRANSLATION_IMPL_KEY = "functionTranslationImpl";
+ public static final String NAMING_CONVENTION_EXTRACTOR_IMPL_KEY = "namingConventionExtractImpl";
+ public static final String UNIFIED_COMPOSITION_IMPL_KEY = "unifiedCompositionImpl";
+ public static final String CONTRAIL_COMPUTE_NODE_TYPE_IMPL_KEY = "ContrailComputeNodeTypeName";
+ public static final String RESOURCE_MAPPING_KEY = "resourceMapping";
+ public static final String SUPPORTED_CONSOLIDATION_COMPUTE_RESOURCES_KEY =
+ "supportedConsolidationComputeResources";
+ public static final String SUPPORTED_CONSOLIDATION_PORT_RESOURCES_KEY =
+ "supportedConsolidationPortResources";
+
+ //others
+ public static final String TRANS_MAPPING_DELIMITER_CHAR = "#";
+
+ private ConfigConstants() {
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationDataUtil.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationDataUtil.java
new file mode 100644
index 0000000000..a89d08bcf6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationDataUtil.java
@@ -0,0 +1,621 @@
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.apache.commons.collections4.MapUtils;
+import org.apache.commons.lang3.math.NumberUtils;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+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.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.EntityConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileComputeConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileNestedConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FilePortConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.GetAttrFuncData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.NestedConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.NestedTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.PortConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.PortTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.RequirementAssignmentData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.TypeComputeConsolidationData;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+
+/**
+ * Utility class for consolidation data collection helper methods.
+ */
+public class ConsolidationDataUtil {
+
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(ConsolidationDataUtil.class);
+
+ /**
+ * Gets compute template consolidation data.
+ *
+ * @param context the translation context
+ * @param serviceTemplate the service template
+ * @param computeNodeType the compute node type
+ * @param computeNodeTemplateId the compute node template id
+ * @return the compute template consolidation data
+ */
+ public static ComputeTemplateConsolidationData getComputeTemplateConsolidationData(
+ TranslationContext context,
+ ServiceTemplate serviceTemplate,
+ String computeNodeType,
+ String computeNodeTemplateId) {
+
+ ConsolidationData consolidationData = context.getConsolidationData();
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+
+ ComputeConsolidationData computeConsolidationData = consolidationData
+ .getComputeConsolidationData();
+
+ FileComputeConsolidationData fileComputeConsolidationData = computeConsolidationData
+ .getFileComputeConsolidationData(serviceTemplateFileName);
+
+ if (fileComputeConsolidationData == null) {
+ fileComputeConsolidationData = new FileComputeConsolidationData();
+ computeConsolidationData.setFileComputeConsolidationData(serviceTemplateFileName,
+ fileComputeConsolidationData);
+ }
+
+ TypeComputeConsolidationData typeComputeConsolidationData = fileComputeConsolidationData
+ .getTypeComputeConsolidationData(computeNodeType);
+ if (typeComputeConsolidationData == null) {
+ typeComputeConsolidationData = new TypeComputeConsolidationData();
+ fileComputeConsolidationData.setTypeComputeConsolidationData(computeNodeType,
+ typeComputeConsolidationData);
+ }
+
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ typeComputeConsolidationData.getComputeTemplateConsolidationData(computeNodeTemplateId);
+ if (computeTemplateConsolidationData == null) {
+ computeTemplateConsolidationData = new ComputeTemplateConsolidationData();
+ computeTemplateConsolidationData.setNodeTemplateId(computeNodeTemplateId);
+ typeComputeConsolidationData.setComputeTemplateConsolidationData(computeNodeTemplateId,
+ computeTemplateConsolidationData);
+ }
+
+ return computeTemplateConsolidationData;
+ }
+
+
+ /**
+ * Gets port template consolidation data.
+ *
+ * @param context the context
+ * @param serviceTemplate the service template
+ * @param portNodeTemplateId the port node template id
+ * @return the port template consolidation data
+ */
+ public static PortTemplateConsolidationData getPortTemplateConsolidationData(
+ TranslationContext context,
+ ServiceTemplate serviceTemplate,
+ String portNodeTemplateId) {
+
+ ConsolidationData consolidationData = context.getConsolidationData();
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+
+ PortConsolidationData portConsolidationData = consolidationData.getPortConsolidationData();
+
+ FilePortConsolidationData filePortConsolidationData = portConsolidationData
+ .getFilePortConsolidationData(serviceTemplateFileName);
+
+ if (filePortConsolidationData == null) {
+ filePortConsolidationData = new FilePortConsolidationData();
+ portConsolidationData.setFilePortConsolidationData(serviceTemplateFileName,
+ filePortConsolidationData);
+ }
+
+ PortTemplateConsolidationData portTemplateConsolidationData =
+ filePortConsolidationData.getPortTemplateConsolidationData(portNodeTemplateId);
+ if (portTemplateConsolidationData == null) {
+ portTemplateConsolidationData = new PortTemplateConsolidationData();
+ portTemplateConsolidationData.setNodeTemplateId(portNodeTemplateId);
+ filePortConsolidationData.setPortTemplateConsolidationData(portNodeTemplateId,
+ portTemplateConsolidationData);
+ }
+
+ return portTemplateConsolidationData;
+ }
+
+
+ /**
+ * Gets nested template consolidation data.
+ *
+ * @param context the context
+ * @param serviceTemplate the service template
+ * @param nestedNodeTemplateId the nested node template id
+ * @return the nested template consolidation data
+ */
+ public static NestedTemplateConsolidationData getNestedTemplateConsolidationData(
+ TranslationContext context,
+ ServiceTemplate serviceTemplate,
+ String nestedNodeTemplateId) {
+
+ ConsolidationData consolidationData = context.getConsolidationData();
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+
+ NestedConsolidationData nestedConsolidationData = consolidationData
+ .getNestedConsolidationData();
+
+ FileNestedConsolidationData fileNestedConsolidationData = nestedConsolidationData
+ .getFileNestedConsolidationData(serviceTemplateFileName);
+
+ if (fileNestedConsolidationData == null) {
+ fileNestedConsolidationData = new FileNestedConsolidationData();
+ nestedConsolidationData.setFileNestedConsolidationData(serviceTemplateFileName,
+ fileNestedConsolidationData);
+ }
+
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ fileNestedConsolidationData.getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ if (nestedTemplateConsolidationData == null) {
+ nestedTemplateConsolidationData = new NestedTemplateConsolidationData();
+ nestedTemplateConsolidationData.setNodeTemplateId(nestedNodeTemplateId);
+ fileNestedConsolidationData.setNestedTemplateConsolidationData(nestedNodeTemplateId,
+ nestedTemplateConsolidationData);
+ }
+
+ return nestedTemplateConsolidationData;
+ }
+
+ /**
+ * Update group id information in consolidation data.
+ *
+ * @param entityConsolidationData Entity consolidation data (Port/Compute)
+ * @param translatedGroupId Group id of which compute node is a part
+ */
+ public static void updateGroupIdInConsolidationData(EntityConsolidationData
+ entityConsolidationData,
+ String translatedGroupId) {
+ if (entityConsolidationData.getGroupIds() == null) {
+ entityConsolidationData.setGroupIds(new ArrayList<>());
+ }
+ entityConsolidationData.getGroupIds().add(translatedGroupId);
+ }
+
+ /**
+ * Update volume information in consolidation data.
+ *
+ * @param translateTo {@link TranslateTo} object
+ * @param computeType Local type of the compute node
+ * @param computeNodeTemplateId Node template id of the compute node
+ * @param requirementAssignment RequirementAssignment object
+ */
+ public static void updateComputeConsolidationDataVolumes(TranslateTo translateTo,
+ String computeType,
+ String computeNodeTemplateId,
+ String requirementId,
+ RequirementAssignment
+ requirementAssignment) {
+ TranslationContext translationContext = translateTo.getContext();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ getComputeTemplateConsolidationData(translationContext, serviceTemplate, computeType,
+ computeNodeTemplateId);
+ computeTemplateConsolidationData.addVolume(requirementId, requirementAssignment);
+ }
+
+
+ /**
+ * Update port in consolidation data.
+ *
+ * @param translateTo the translate to
+ * @param computeNodeType the compute node type
+ * @param portNodeTemplateId the port node template id
+ */
+ public static void updatePortInConsolidationData(TranslateTo translateTo,
+ String computeNodeType,
+ String portNodeTemplateId) {
+ TranslationContext translationContext = translateTo.getContext();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ getComputeTemplateConsolidationData(translationContext, serviceTemplate, computeNodeType,
+ translateTo.getTranslatedId());
+ computeTemplateConsolidationData.addPort(getPortType(portNodeTemplateId), portNodeTemplateId);
+ // create port in consolidation data
+ getPortTemplateConsolidationData(translationContext, serviceTemplate, portNodeTemplateId);
+ }
+
+ /**
+ * Update nodes connected in and out for Depends on and connectivity in consolidation data.
+ *
+ * @param translateTo the translate to
+ * @param targetResourceId the target resource id
+ * @param nodeTemplateId the source node template id
+ * @param requirementAssignment the requirement assignment
+ */
+ public static void updateNodesConnectedData(TranslateTo translateTo, String targetResourceId,
+ Resource targetResource, Resource sourceResource,
+ String nodeTemplateId, String requirementId,
+ RequirementAssignment requirementAssignment) {
+ ConsolidationEntityType consolidationEntityType = ConsolidationEntityType.OTHER;
+ HeatOrchestrationTemplate heatOrchestrationTemplate = translateTo
+ .getHeatOrchestrationTemplate();
+ TranslationContext translationContext = translateTo.getContext();
+
+ consolidationEntityType.setEntityType(heatOrchestrationTemplate, sourceResource,
+ targetResource, translateTo.getContext());
+ // Add resource dependency information in nodesConnectedIn if the target node
+ // is a consolidation entity
+ if (isConsolidationEntity(consolidationEntityType.getTargetEntityType())
+ && HeatToToscaUtil
+ .isValidDependsOnCandidate(heatOrchestrationTemplate, sourceResource,
+ targetResource, consolidationEntityType, translationContext)) {
+ ConsolidationDataUtil.updateNodesConnectedIn(translateTo,
+ nodeTemplateId, consolidationEntityType.getTargetEntityType(), targetResourceId,
+ requirementId, requirementAssignment);
+ }
+
+ //Add resource dependency information in nodesConnectedOut if the source node
+ //is a consolidation entity
+ if (isConsolidationEntity(consolidationEntityType.getSourceEntityType())
+ && HeatToToscaUtil
+ .isValidDependsOnCandidate(heatOrchestrationTemplate, sourceResource,
+ targetResource, consolidationEntityType, translationContext)) {
+ ConsolidationDataUtil.updateNodesConnectedOut(translateTo,
+ requirementAssignment.getNode(), consolidationEntityType.getSourceEntityType(),
+ requirementId, requirementAssignment);
+ }
+ }
+
+
+ private static boolean isConsolidationEntity(ConsolidationEntityType consolidationEntityType) {
+ return (consolidationEntityType == ConsolidationEntityType.COMPUTE
+ || consolidationEntityType == ConsolidationEntityType.PORT
+ || consolidationEntityType == ConsolidationEntityType.NESTED
+ || consolidationEntityType == ConsolidationEntityType.VFC_NESTED);
+ }
+
+ /**
+ * Update nodes connected from this node in consolidation data.
+ *
+ * @param translateTo the translate to
+ * @param nodeTemplateId the node template id of the target node
+ * @param consolidationEntityType the entity type (compute or port)
+ * @param requirementId the requirement id
+ * @param requirementAssignment the requirement assignment
+ */
+ public static void updateNodesConnectedOut(TranslateTo translateTo,
+ String nodeTemplateId,
+ ConsolidationEntityType consolidationEntityType,
+ String requirementId,
+ RequirementAssignment requirementAssignment) {
+ EntityConsolidationData entityConsolidationData = null;
+ TranslationContext translationContext = translateTo.getContext();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ RequirementAssignmentData requirementAssignmentData = new RequirementAssignmentData(
+ requirementId, requirementAssignment);
+
+ if (consolidationEntityType == ConsolidationEntityType.COMPUTE) {
+ String nodeType = DataModelUtil.getNodeTemplate(serviceTemplate, translateTo
+ .getTranslatedId()).getType();
+ entityConsolidationData = getComputeTemplateConsolidationData(translationContext,
+ serviceTemplate, nodeType, translateTo.getTranslatedId());
+ } else if (consolidationEntityType == ConsolidationEntityType.PORT) {
+ entityConsolidationData = getPortTemplateConsolidationData(translationContext,
+ serviceTemplate, translateTo.getTranslatedId());
+ } else if (consolidationEntityType == ConsolidationEntityType.VFC_NESTED
+ || consolidationEntityType == ConsolidationEntityType.NESTED) {
+ //ConnectedOut data for nested is not updated
+ return;
+ }
+
+ if (entityConsolidationData.getNodesConnectedOut() == null) {
+ entityConsolidationData.setNodesConnectedOut(new HashMap<>());
+ }
+
+ entityConsolidationData.getNodesConnectedOut()
+ .computeIfAbsent(nodeTemplateId, k -> new ArrayList<>())
+ .add(requirementAssignmentData);
+ }
+
+ /**
+ * Update nodes connected from this node in consolidation data.
+ *
+ * @param translateTo the translate to
+ * @param sourceNodeTemplateId the node template id of the source node
+ * @param consolidationEntityType Entity type (compute or port)
+ * @param requirementId Requirement Id
+ * @param requirementAssignment the requirement assignment
+ */
+ public static void updateNodesConnectedIn(TranslateTo translateTo, String sourceNodeTemplateId,
+ ConsolidationEntityType consolidationEntityType,
+ String targetResourceId,
+ String requirementId,
+ RequirementAssignment requirementAssignment) {
+ EntityConsolidationData entityConsolidationData = null;
+ TranslationContext translationContext = translateTo.getContext();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ RequirementAssignmentData requirementAssignmentData = new RequirementAssignmentData(
+ requirementId, requirementAssignment);
+ String dependentNodeTemplateId = requirementAssignment.getNode();
+ if (consolidationEntityType == ConsolidationEntityType.COMPUTE) {
+ NodeTemplate computeNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ dependentNodeTemplateId);
+ String nodeType = null;
+ if (Objects.isNull(computeNodeTemplate)) {
+ Resource targetResource =
+ translateTo.getHeatOrchestrationTemplate().getResources().get(targetResourceId);
+ NameExtractor nodeTypeNameExtractor =
+ translateTo.getContext().getNameExtractorImpl(targetResource.getType());
+ nodeType =
+ nodeTypeNameExtractor.extractNodeTypeName(translateTo.getHeatOrchestrationTemplate()
+ .getResources().get(dependentNodeTemplateId),
+ dependentNodeTemplateId, dependentNodeTemplateId);
+ } else {
+ nodeType = computeNodeTemplate.getType();
+ }
+
+ entityConsolidationData = getComputeTemplateConsolidationData(translationContext,
+ serviceTemplate, nodeType, dependentNodeTemplateId);
+ } else if (consolidationEntityType == ConsolidationEntityType.PORT) {
+ entityConsolidationData = getPortTemplateConsolidationData(translationContext,
+ serviceTemplate, dependentNodeTemplateId);
+ } else if (consolidationEntityType == ConsolidationEntityType.NESTED
+ || consolidationEntityType == ConsolidationEntityType.VFC_NESTED) {
+ entityConsolidationData = getNestedTemplateConsolidationData(translationContext,
+ serviceTemplate, dependentNodeTemplateId);
+ }
+
+ if (entityConsolidationData.getNodesConnectedIn() == null) {
+ entityConsolidationData.setNodesConnectedIn(new HashMap<>());
+ }
+
+ entityConsolidationData.getNodesConnectedIn()
+ .computeIfAbsent(sourceNodeTemplateId, k -> new ArrayList<>())
+ .add(requirementAssignmentData);
+
+ }
+
+ /**
+ * Checks if the current HEAT resource if of type compute.
+ *
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param resourceId the resource id
+ * @return true if the resource is of compute type and false otherwise
+ */
+ public static boolean isComputeResource(HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String resourceId) {
+ String resourceType = heatOrchestrationTemplate.getResources().get(resourceId).getType();
+ Map<String, ImplementationConfiguration> supportedComputeResources = TranslationContext
+ .getSupportedConsolidationComputeResources();
+ if (supportedComputeResources.containsKey(resourceType)) {
+ if (supportedComputeResources.get(resourceType).isEnable()) {
+ return true;
+ }
+ return false;
+ }
+ return false;
+ }
+
+ /**
+ * Checks if the current HEAT resource if of type compute.
+ *
+ * @param resource the resource
+ * @return true if the resource is of compute type and false otherwise
+ */
+ public static boolean isComputeResource(Resource resource) {
+ String resourceType = resource.getType();
+ Map<String, ImplementationConfiguration> supportedComputeResources = TranslationContext
+ .getSupportedConsolidationComputeResources();
+ if (supportedComputeResources.containsKey(resourceType)) {
+ if (supportedComputeResources.get(resourceType).isEnable()) {
+ return true;
+ }
+ return false;
+ }
+ return false;
+ }
+
+ /**
+ * Checks if the current HEAT resource if of type port.
+ *
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param resourceId the resource id
+ * @return true if the resource is of port type and false otherwise
+ */
+ public static boolean isPortResource(HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String resourceId) {
+ String resourceType = heatOrchestrationTemplate.getResources().get(resourceId).getType();
+ Map<String, ImplementationConfiguration> supportedPortResources = TranslationContext
+ .getSupportedConsolidationPortResources();
+ if (supportedPortResources.containsKey(resourceType)) {
+ if (supportedPortResources.get(resourceType).isEnable()) {
+ return true;
+ }
+ return false;
+ }
+ return false;
+ }
+
+ /**
+ * Checks if the current HEAT resource if of type port.
+ *
+ * @param resource the resource
+ * @return true if the resource is of port type and false otherwise
+ */
+ public static boolean isPortResource(Resource resource) {
+ String resourceType = resource.getType();
+ Map<String, ImplementationConfiguration> supportedPortResources = TranslationContext
+ .getSupportedConsolidationPortResources();
+ if (supportedPortResources.containsKey(resourceType)) {
+ if (supportedPortResources.get(resourceType).isEnable()) {
+ return true;
+ }
+ return false;
+ }
+ return false;
+ }
+
+ /**
+ * Checks if the current HEAT resource if of type volume.
+ *
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param resourceId the resource id
+ * @return true if the resource is of volume type and false otherwise
+ */
+ public static boolean isVolumeResource(HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String resourceId) {
+ String resourceType = heatOrchestrationTemplate.getResources().get(resourceId).getType();
+ return (resourceType.equals(HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource())
+ || resourceType.equals(HeatResourcesTypes.CINDER_VOLUME_ATTACHMENT_RESOURCE_TYPE
+ .getHeatResource()));
+ }
+
+ /**
+ * Checks if the current HEAT resource if of type volume.
+ *
+ * @param resource the resource
+ * @return true if the resource is of volume type and false otherwise
+ */
+ public static boolean isVolumeResource(Resource resource) {
+ String resourceType = resource.getType();
+ return (resourceType.equals(HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource())
+ || resourceType.equals(HeatResourcesTypes.CINDER_VOLUME_ATTACHMENT_RESOURCE_TYPE
+ .getHeatResource()));
+ }
+
+ /**
+ * Gets port type.
+ *
+ * @param portNodeTemplateId the port node template id
+ * @return the port type
+ */
+ public static String getPortType(String portNodeTemplateId) {
+ String[] portSplitArr = portNodeTemplateId.split("(?<=\\D)(?=\\d)|(?<=\\d)(?=\\D)");
+ String finalValue = "";
+ if (NumberUtils.isNumber(portSplitArr[portSplitArr.length - 1])) {
+ for (String id : portSplitArr) {
+ finalValue = finalValue + id;
+ }
+ while (finalValue.length() > 0) {
+ if (Character.isLetter(finalValue.charAt(finalValue.length() - 1))) {
+ break;
+ }
+ finalValue = finalValue.substring(0, finalValue.length() - 1);
+ }
+ } else {
+ for (String id : portSplitArr) {
+ if (!NumberUtils.isNumber(id)) {
+ finalValue = finalValue + id;
+ }
+ }
+ }
+ return finalValue;
+ }
+
+ /**
+ * Update node template id for the nested node templates in the consolidation data.
+ *
+ * @param translateTo the translate to
+ */
+ public static void updateNestedNodeTemplateId(TranslateTo translateTo) {
+ TranslationContext context = translateTo.getContext();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ getNestedTemplateConsolidationData(context, serviceTemplate, translateTo.getTranslatedId());
+ }
+
+ public static void removeSharedResource(ServiceTemplate serviceTemplate,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context,
+ String paramName,
+ String contrailSharedResourceId,
+ String sharedTranslatedResourceId) {
+ if (ConsolidationDataUtil.isComputeResource(heatOrchestrationTemplate,
+ contrailSharedResourceId)) {
+ NodeTemplate nodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ sharedTranslatedResourceId);
+ EntityConsolidationData entityConsolidationData = getComputeTemplateConsolidationData(
+ context, serviceTemplate, nodeTemplate.getType(), sharedTranslatedResourceId);
+ List<GetAttrFuncData> getAttrFuncDataList = entityConsolidationData
+ .getOutputParametersGetAttrIn();
+ removeParamNameFromAttrFuncList(paramName, getAttrFuncDataList);
+ }
+ if (ConsolidationDataUtil.isPortResource(heatOrchestrationTemplate,
+ contrailSharedResourceId)) {
+ NodeTemplate nodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ sharedTranslatedResourceId);
+ EntityConsolidationData entityConsolidationData = getPortTemplateConsolidationData(context,
+ serviceTemplate, sharedTranslatedResourceId);
+ List<GetAttrFuncData> getAttrFuncDataList = entityConsolidationData
+ .getOutputParametersGetAttrIn();
+ removeParamNameFromAttrFuncList(paramName, getAttrFuncDataList);
+ }
+ }
+
+ private static void removeParamNameFromAttrFuncList(String paramName,
+ List<GetAttrFuncData> getAttrFuncDataList) {
+ Iterator<GetAttrFuncData> itr = getAttrFuncDataList.iterator();
+ while (itr.hasNext()) {
+ GetAttrFuncData getAttrFuncData = itr.next();
+ if (paramName.equals(getAttrFuncData.getFieldName())) {
+ itr.remove();
+ }
+ }
+ }
+
+ public static void updateNodeGetAttributeIn(EntityConsolidationData entityConsolidationData,
+ String nodeTemplateId, String propertyName,
+ String attributeName) {
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData();
+ getAttrFuncData.setFieldName(propertyName);
+ getAttrFuncData.setAttributeName(attributeName);
+ entityConsolidationData.addNodesGetAttrIn(nodeTemplateId, getAttrFuncData);
+
+ }
+
+ public static void updateNodeGetAttributeOut(EntityConsolidationData entityConsolidationData,
+ String nodeTemplateId, String propertyName,
+ String attributeName) {
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData();
+ getAttrFuncData.setFieldName(propertyName);
+ getAttrFuncData.setAttributeName(attributeName);
+ entityConsolidationData.addNodesGetAttrOut(nodeTemplateId, getAttrFuncData);
+
+ }
+
+ public static void updateOutputGetAttributeInConsolidationData(EntityConsolidationData
+ entityConsolidationData,
+ String outputParameterName,
+ String attributeName) {
+
+
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData();
+ getAttrFuncData.setFieldName(outputParameterName);
+ getAttrFuncData.setAttributeName(attributeName);
+ entityConsolidationData.addOutputParamGetAttrIn(getAttrFuncData);
+
+ }
+
+ public static boolean isComputeReferenceToPortId(ComputeTemplateConsolidationData compute,
+ String portId) {
+ if (MapUtils.isEmpty(compute.getPorts())) {
+ return false;
+ }
+ for (List<String> portIdsPerType : compute.getPorts().values()) {
+ if (portIdsPerType.contains(portId)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationEntityType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationEntityType.java
new file mode 100644
index 0000000000..c2de58fd5a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationEntityType.java
@@ -0,0 +1,86 @@
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import static org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil.isComputeResource;
+import static org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil.isPortResource;
+import static org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil.isVolumeResource;
+
+import org.apache.commons.lang3.ObjectUtils;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+
+import java.util.Collection;
+import java.util.Objects;
+import java.util.Optional;
+
+/**
+ * The enum Entity type.
+ */
+public enum ConsolidationEntityType {
+ COMPUTE,
+ PORT,
+ VOLUME,
+ NESTED,
+ VFC_NESTED,
+ SUB_PORT,
+ OTHER;
+
+ private ConsolidationEntityType sourceEntityType;
+ private ConsolidationEntityType targetEntityType;
+
+ public ConsolidationEntityType getSourceEntityType() {
+ return sourceEntityType;
+ }
+
+ public ConsolidationEntityType getTargetEntityType() {
+ return targetEntityType;
+ }
+
+ /**
+ * Sets entity type.
+ *
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param sourceResource the source resource
+ * @param targetResource the target resource
+ */
+ public void setEntityType(HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Resource sourceResource,
+ Resource targetResource,
+ TranslationContext context) {
+ targetEntityType =
+ getEntityType(heatOrchestrationTemplate, targetResource, context);
+ sourceEntityType =
+ getEntityType(heatOrchestrationTemplate, sourceResource, context);
+ }
+
+ private ConsolidationEntityType getEntityType(HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Resource resource, TranslationContext context) {
+ if (isComputeResource(resource)) {
+ return ConsolidationEntityType.COMPUTE;
+ } else if (isPortResource(resource)) {
+ return ConsolidationEntityType.PORT;
+ } else if (isVolumeResource(resource)) {
+ return ConsolidationEntityType.VOLUME;
+ } else if (HeatToToscaUtil.isNestedResource(resource)) {
+ Optional<String> nestedHeatFileName = HeatToToscaUtil.getNestedHeatFileName(resource);
+ if (nestedHeatFileName.isPresent()) {
+ HeatOrchestrationTemplate nestedHeatOrchestrationTemplate = new YamlUtil()
+ .yamlToObject(context.getFileContent(nestedHeatFileName.get()),
+ HeatOrchestrationTemplate.class);
+ if (Objects.nonNull(nestedHeatOrchestrationTemplate.getResources())) {
+ for (String innerResourceId : nestedHeatOrchestrationTemplate.getResources().keySet()) {
+ if (ConsolidationDataUtil
+ .isComputeResource(nestedHeatOrchestrationTemplate, innerResourceId)) {
+ return ConsolidationEntityType.VFC_NESTED;
+ }
+ }
+ }
+ }
+ return ConsolidationEntityType.NESTED;
+ } else {
+ return ConsolidationEntityType.OTHER;
+ }
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java
new file mode 100644
index 0000000000..607dc36c4b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationService.java
@@ -0,0 +1,937 @@
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.tosca.services.ToscaUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionMode;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.EntityConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileComputeConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileNestedConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FilePortConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.GetAttrFuncData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.NestedTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.PortTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.RequirementAssignmentData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.TypeComputeConsolidationData;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+
+public class ConsolidationService {
+
+ private MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private UnifiedCompositionService unifiedCompositionService;
+
+ public ConsolidationService(UnifiedCompositionService unifiedCompositionService) {
+ this.unifiedCompositionService = unifiedCompositionService;
+ }
+
+ ConsolidationService() {
+
+ }
+
+ void mainServiceTemplateConsolidation(ServiceTemplate serviceTemplate,
+ TranslationContext translationContext) {
+
+ ConsolidationData consolidationData = translationContext.getConsolidationData();
+
+ FileComputeConsolidationData fileComputeConsolidationData =
+ consolidationData.getComputeConsolidationData()
+ .getFileComputeConsolidationData(ToscaUtil.getServiceTemplateFileName(serviceTemplate));
+
+ if (Objects.isNull(fileComputeConsolidationData)) {
+ return;
+ }
+ for (TypeComputeConsolidationData typeComputeConsolidationData :
+ fileComputeConsolidationData.getAllTypeComputeConsolidationData()) {
+ boolean preConditionResult =
+ consolidationPreCondition(
+ serviceTemplate, consolidationData, typeComputeConsolidationData);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList =
+ createUnifiedCompositionDataList(
+ serviceTemplate, consolidationData, typeComputeConsolidationData);
+
+ if (preConditionResult) {
+ boolean consolidationRuleCheckResult =
+ checkConsolidationRules(serviceTemplate, typeComputeConsolidationData,
+ consolidationData);
+
+ unifiedCompositionService.createUnifiedComposition(
+ serviceTemplate, null, unifiedCompositionDataList,
+ consolidationRuleCheckResult ? UnifiedCompositionMode.ScalingInstances
+ : UnifiedCompositionMode.CatalogInstance,
+ translationContext);
+ } else {
+ unifiedCompositionService.createUnifiedComposition(
+ serviceTemplate, null, unifiedCompositionDataList, UnifiedCompositionMode
+ .SingleSubstitution,
+ translationContext);
+ }
+ }
+
+ }
+
+ private Map<String, String> getConsolidationEntityIdToType(ServiceTemplate serviceTemplate,
+ ConsolidationData consolidationData) {
+ Map<String, String> consolidationEntityIdToType = new HashMap<>();
+
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ FileComputeConsolidationData fileComputeConsolidationData =
+ consolidationData.getComputeConsolidationData()
+ .getFileComputeConsolidationData(serviceTemplateFileName);
+ FilePortConsolidationData filePortConsolidationData =
+ consolidationData.getPortConsolidationData()
+ .getFilePortConsolidationData(serviceTemplateFileName);
+
+ for (String computeType : fileComputeConsolidationData.getAllComputeTypes()) {
+ TypeComputeConsolidationData typeComputeConsolidationData =
+ fileComputeConsolidationData.getTypeComputeConsolidationData(computeType);
+ Set<String> computeNodeTemplateIds =
+ typeComputeConsolidationData.getAllComputeNodeTemplateIds();
+ for (String computeNodeTemplateId : computeNodeTemplateIds) {
+ consolidationEntityIdToType.put(computeNodeTemplateId, computeType);
+ }
+ }
+
+ Set<String> portNodeTemplateIds = filePortConsolidationData.getAllPortNodeTemplateIds();
+ for (String portNodeTemplateId : portNodeTemplateIds) {
+ consolidationEntityIdToType
+ .put(portNodeTemplateId, ConsolidationDataUtil.getPortType(portNodeTemplateId));
+ }
+
+ return consolidationEntityIdToType;
+ }
+
+
+ private boolean checkConsolidationRules(ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData,
+ ConsolidationData consolidationData) {
+ return checkComputeConsolidation(serviceTemplate, typeComputeConsolidationData)
+ && checkPortConsolidation(serviceTemplate, typeComputeConsolidationData, consolidationData)
+ && !checkGetAttrBetweenEntityConsolidationOfTheSameType(serviceTemplate,
+ typeComputeConsolidationData, consolidationData);
+ }
+
+ private boolean checkGetAttrBetweenConsolidationDataEntitiesNotFromSameType(
+ ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData,
+ ConsolidationData consolidationData) {
+ List<ComputeTemplateConsolidationData> computeTemplateConsolidationDataList =
+ new ArrayList(typeComputeConsolidationData.getAllComputeTemplateConsolidationData());
+
+ Set<String> computeNodeTemplateIds =
+ typeComputeConsolidationData.getAllComputeNodeTemplateIds();
+
+ Map<String, Set<String>> portTypeToIds = UnifiedCompositionUtil
+ .collectAllPortsFromEachTypesFromComputes(computeTemplateConsolidationDataList);
+
+ return
+ checkGetAttrOutFromEntityToPortIsLegal(computeTemplateConsolidationDataList, portTypeToIds)
+ && checkGetAttrOutFromPortLegal(ToscaUtil.getServiceTemplateFileName(serviceTemplate),
+ computeNodeTemplateIds, portTypeToIds, consolidationData);
+
+ }
+
+ private boolean checkGetAttrInEntityConsolidationWithPortIsLegal(
+ List entityConsolidationDatas,
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+ Map<String, Set<String>> portTypeToIds =
+ UnifiedCompositionUtil.collectAllPortsFromEachTypesFromComputes(
+ typeComputeConsolidationData.getAllComputeTemplateConsolidationData());
+
+ Set<String> startingPortTypesPointByGetAttr =
+ getPortTypesPointedByGetAttrFromEntity(
+ (EntityConsolidationData) entityConsolidationDatas.get(0), portTypeToIds);
+
+ for (int i = 1; i < entityConsolidationDatas.size(); i++) {
+ Set<String> currentPortTypesPointByGetAttr =
+ getPortTypesPointedByGetAttrFromEntity(
+ (EntityConsolidationData) entityConsolidationDatas.get(i), portTypeToIds);
+ if (!startingPortTypesPointByGetAttr.equals(currentPortTypesPointByGetAttr)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private Set<String> getPortTypesPointedByGetAttrFromEntity(
+ EntityConsolidationData entity,
+ Map<String, Set<String>> portTypeToIds) {
+ return getPortTypeToIdPointByGetAttrInOrOut(
+ entity.getNodesGetAttrIn(), portTypeToIds, entity).keySet();
+ }
+
+ private boolean checkGetAttrInToPortIsLegal(
+ ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData,
+ ConsolidationData consolidationData) {
+
+ Map<String, Set<String>> portTypeToIds = UnifiedCompositionUtil
+ .collectAllPortsFromEachTypesFromComputes(
+ typeComputeConsolidationData.getAllComputeTemplateConsolidationData());
+
+ for (Set<String> portIdsFromSameType : portTypeToIds.values()) {
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ collectAllPortsTemplateConsolidationData(
+ portIdsFromSameType, ToscaUtil.getServiceTemplateFileName(serviceTemplate),
+ consolidationData);
+
+ if (!checkGetAttrInEntityConsolidationWithPortIsLegal(
+ portTemplateConsolidationDataList, typeComputeConsolidationData)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+
+ private boolean checkGetAttrOutFromPortLegal(String serviceTemplateName,
+ Set<String> computeNodeTemplateIds,
+ Map<String, Set<String>> portTypeToIds,
+ ConsolidationData consolidationData) {
+ for (Set<String> portIdsFromSameType : portTypeToIds.values()) {
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ collectAllPortsTemplateConsolidationData(portIdsFromSameType, serviceTemplateName,
+ consolidationData);
+
+ if (!(checkGetAttrOutFromEntityToPortIsLegal(portTemplateConsolidationDataList, portTypeToIds)
+ && checkGetAttrOutFromPortToComputeIsLegal(portTemplateConsolidationDataList,
+ computeNodeTemplateIds))) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private boolean checkGetAttrOutFromEntityToPortIsLegal(List entityConsolidationDataList,
+ Map<String, Set<String>> portTypeToIds) {
+
+ for (String portType : portTypeToIds.keySet()) {
+ Set<GetAttrFuncData> startingGetAttrFunc =
+ getEntityGetAttrFuncAsSet(portType,
+ (EntityConsolidationData) entityConsolidationDataList.get(0));
+ for (int i = 1; i < entityConsolidationDataList.size(); i++) {
+ Object entity = entityConsolidationDataList.get(i);
+ Set<GetAttrFuncData> currentGetAttrFuncData =
+ getEntityGetAttrFuncAsSet(portType,
+ (EntityConsolidationData) entity);
+ if (!(startingGetAttrFunc.equals(currentGetAttrFuncData))) {
+ return false;
+ }
+ }
+ }
+
+ return true;
+ }
+
+ private boolean checkGetAttrOutFromPortToComputeIsLegal(
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList,
+ Set<String> computeNodeTemplateIds) {
+ PortTemplateConsolidationData startingPortTemplate =
+ portTemplateConsolidationDataList.get(0);
+ Map<String, Set<GetAttrFuncData>> startingComputeGetAttrOutFuncData =
+ getComputeGetAttrOutFuncData(startingPortTemplate.getNodesGetAttrOut(),
+ computeNodeTemplateIds);
+
+ for (int i = 1; i < portTemplateConsolidationDataList.size(); i++) {
+ PortTemplateConsolidationData currentPortTemplate =
+ portTemplateConsolidationDataList.get(i);
+ Map<String, Set<GetAttrFuncData>> currentComputeGetAttrOutFuncData =
+ getComputeGetAttrOutFuncData(currentPortTemplate.getNodesGetAttrOut(),
+ computeNodeTemplateIds);
+
+ if (!isGetAttrRelationToComputeSimilarBetweenEntities(startingComputeGetAttrOutFuncData,
+ currentComputeGetAttrOutFuncData)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private boolean isGetAttrRelationToComputeSimilarBetweenEntities(
+ Map<String, Set<GetAttrFuncData>> firstMap,
+ Map<String, Set<GetAttrFuncData>> secondMap) {
+ if (MapUtils.isEmpty(firstMap) != MapUtils.isEmpty(secondMap)) {
+ return false;
+ }
+
+ if (MapUtils.isEmpty(firstMap) && MapUtils.isEmpty(secondMap)) {
+ return true;
+ }
+
+ return new ArrayList<>(firstMap.values()).equals(new ArrayList<>(secondMap.values()));
+ }
+
+ private Set<GetAttrFuncData> getEntityGetAttrFuncAsSet(String portType,
+ EntityConsolidationData entityConsolidationData) {
+
+ Set<GetAttrFuncData> getAttrFuncDataFromPortsWithSameType = new HashSet<>();
+ Map<String, List<GetAttrFuncData>> nodesGetAttrOut =
+ entityConsolidationData.getNodesGetAttrOut();
+
+ if (MapUtils.isEmpty(nodesGetAttrOut)) {
+ return getAttrFuncDataFromPortsWithSameType;
+ }
+
+ for (Map.Entry<String, List<GetAttrFuncData>> entry : nodesGetAttrOut.entrySet()) {
+ if (portType.equals(ConsolidationDataUtil.getPortType(entry.getKey()))) {
+ getAttrFuncDataFromPortsWithSameType.addAll(entry.getValue());
+ }
+ }
+
+ return getAttrFuncDataFromPortsWithSameType;
+ }
+
+ private Map<String, Set<GetAttrFuncData>> getComputeGetAttrOutFuncData(
+ Map<String, List<GetAttrFuncData>> nodesGetAttrOut,
+ Set<String> computeNodeTemplateIds) {
+ Map<String, Set<GetAttrFuncData>> computeGetAttrFuncData = new HashMap<>();
+
+ if (MapUtils.isEmpty(nodesGetAttrOut)) {
+ return computeGetAttrFuncData;
+ }
+
+ for (Map.Entry<String, List<GetAttrFuncData>> getAttrFuncEntry : nodesGetAttrOut.entrySet()) {
+ if (computeNodeTemplateIds.contains(getAttrFuncEntry.getKey())) {
+ computeGetAttrFuncData.put(getAttrFuncEntry.getKey(), new HashSet<>(getAttrFuncEntry
+ .getValue()));
+ }
+ }
+
+ return computeGetAttrFuncData;
+ }
+
+ private Map<String, List<String>> getPortTypeToIdPointByGetAttrInOrOut(
+ Map<String, List<GetAttrFuncData>> getAttr,
+ Map<String, Set<String>> portTypeToIds,
+ EntityConsolidationData entityConsolidationData) {
+ Map<String, List<String>> portIdToType = new HashMap<>();
+
+ if (MapUtils.isEmpty(getAttr)) {
+ return portIdToType;
+ }
+
+ for (String getAttrId : getAttr.keySet()) {
+ if (isNodeTemplateIdIsInComputeConsolidationData(getAttrId, portTypeToIds)) {
+ String portType = ConsolidationDataUtil.getPortType(getAttrId);
+ portIdToType.putIfAbsent(portType, new ArrayList<>());
+ portIdToType.get(portType).add(getAttrId);
+ }
+ }
+
+ return portIdToType;
+
+ }
+
+
+ private boolean isNodeTemplateIdIsInComputeConsolidationData(
+ String getAttrInId,
+ Map<String, Set<String>> portTypeToIds) {
+ return portTypeToIds.keySet().contains(ConsolidationDataUtil.getPortType(getAttrInId));
+ }
+
+ private boolean checkGetAttrBetweenEntityConsolidationOfTheSameType(
+ ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData,
+ ConsolidationData consolidationData) {
+ return checkGetAttrRelationsBetweenComputesOfSameType(typeComputeConsolidationData)
+ || checkGetAttrRelationsBetweenPortsOfTheSameType(serviceTemplate,
+ typeComputeConsolidationData, consolidationData);
+
+ }
+
+ private boolean checkGetAttrRelationsBetweenComputesOfSameType(
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDatas =
+ typeComputeConsolidationData.getAllComputeTemplateConsolidationData();
+ Set<String> computeNodeTemplateIds =
+ typeComputeConsolidationData.getAllComputeNodeTemplateIds();
+
+ return checkGetAttrRelationsForEntityConsolidationData(
+ computeTemplateConsolidationDatas, computeNodeTemplateIds);
+ }
+
+ private boolean checkGetAttrRelationsBetweenPortsOfTheSameType(
+ ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData,
+ ConsolidationData consolidationData) {
+
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDatas =
+ typeComputeConsolidationData.getAllComputeTemplateConsolidationData();
+ Map<String, Set<String>> portTypeToPortIds = UnifiedCompositionUtil
+ .collectAllPortsFromEachTypesFromComputes(computeTemplateConsolidationDatas);
+
+ FilePortConsolidationData filePortConsolidationData =
+ consolidationData.getPortConsolidationData().getFilePortConsolidationData(ToscaUtil
+ .getServiceTemplateFileName(serviceTemplate));
+
+ for (Set<String> portsOfTheSameTypeIds : portTypeToPortIds.values()) {
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataOfSameType =
+ getAllPortTemplateConsolidationData(portsOfTheSameTypeIds, filePortConsolidationData);
+ if (!checkGetAttrRelationsForEntityConsolidationData(portTemplateConsolidationDataOfSameType,
+ portsOfTheSameTypeIds)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private List<PortTemplateConsolidationData> getAllPortTemplateConsolidationData(
+ Set<String> portsIds,
+ FilePortConsolidationData filePortConsolidationData) {
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataOfSameType = new ArrayList<>();
+
+ for (String portId : portsIds) {
+ PortTemplateConsolidationData portTemplateConsolidationData =
+ filePortConsolidationData.getPortTemplateConsolidationData(portId);
+ if (Objects.nonNull(portTemplateConsolidationData)) {
+ portTemplateConsolidationDataOfSameType.add(portTemplateConsolidationData);
+ }
+ }
+
+ return portTemplateConsolidationDataOfSameType;
+ }
+
+ private boolean checkGetAttrRelationsForEntityConsolidationData(
+ Collection entities,
+ Set<String> nodeTemplateIdsOfTheSameType) {
+
+ List<EntityConsolidationData> entityConsolidationDataList =
+ new ArrayList(entities);
+
+ for (EntityConsolidationData entityConsolidationData : entityConsolidationDataList) {
+ Set<String> getAttrInNodeIds =
+ entityConsolidationData.getNodesGetAttrIn() == null ? new HashSet<>()
+ : entityConsolidationData.getNodesGetAttrIn().keySet();
+ for (String nodeId : getAttrInNodeIds) {
+ if (nodeTemplateIdsOfTheSameType.contains(nodeId)) {
+ return true;
+ }
+ }
+ }
+
+ return false;
+ }
+
+
+ private boolean checkComputeConsolidation(
+ ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+ List<String> computeNodeTemplateIds =
+ new ArrayList(typeComputeConsolidationData.getAllComputeNodeTemplateIds());
+ List<String> propertiesWithIdenticalVal = getPropertiesWithIdenticalVal();
+
+ return arePropertiesSimilarBetweenComputeNodeTemplates(
+ serviceTemplate, computeNodeTemplateIds, propertiesWithIdenticalVal)
+ && checkComputeRelations(
+ typeComputeConsolidationData.getAllComputeTemplateConsolidationData());
+ }
+
+
+ private boolean checkComputeRelations(
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDatas) {
+
+ return checkEntityConsolidationDataRelations(computeTemplateConsolidationDatas)
+ && checkComputesRelationsToVolume(computeTemplateConsolidationDatas);
+ }
+
+ private boolean checkEntityConsolidationDataRelations(Collection entities) {
+ List<EntityConsolidationData> entityConsolidationDataList =
+ new ArrayList(entities);
+ EntityConsolidationData startingEntity = entityConsolidationDataList.get(0);
+
+ for (int i = 1; i < entityConsolidationDataList.size(); i++) {
+ EntityConsolidationData currentEntity = entityConsolidationDataList.get(i);
+ if (!(checkNodesConnectedInRelations(startingEntity, currentEntity)
+ && (checkNodesConnectedOutRelations(startingEntity, currentEntity))
+ && (checkGroupIdsRelations(startingEntity, currentEntity)))) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private boolean checkNodesConnectedInRelations(EntityConsolidationData firstEntity,
+ EntityConsolidationData secondEntity) {
+ return compareNodeConnectivity(firstEntity.getNodesConnectedIn(),
+ secondEntity.getNodesConnectedIn());
+ }
+
+ private boolean checkNodesConnectedOutRelations(EntityConsolidationData firstEntity,
+ EntityConsolidationData secondEntity) {
+ return compareNodeConnectivity(firstEntity.getNodesConnectedOut(),
+ secondEntity.getNodesConnectedOut());
+ }
+
+ private boolean compareNodeConnectivity(
+ Map<String, List<RequirementAssignmentData>> firstEntityMap,
+ Map<String, List<RequirementAssignmentData>> secondEntityMap) {
+ if (MapUtils.isEmpty(firstEntityMap)
+ && MapUtils.isEmpty(secondEntityMap)) {
+ return true;
+ }
+ if (!MapUtils.isEmpty(firstEntityMap)
+ && !MapUtils.isEmpty(secondEntityMap)) {
+ return firstEntityMap.keySet().equals(secondEntityMap.keySet());
+ }
+ return false;
+ }
+
+ private boolean checkGroupIdsRelations(EntityConsolidationData startingEntity,
+ EntityConsolidationData currentEntity) {
+ if (CollectionUtils.isEmpty(startingEntity.getGroupIds()) &&
+ CollectionUtils.isEmpty(currentEntity.getGroupIds())) {
+ return true;
+ }
+
+ return startingEntity.getGroupIds().equals(currentEntity.getGroupIds());
+ }
+
+ private boolean checkComputesRelationsToVolume(
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDatas) {
+
+ Set<String> volumeRelationsFromComputes = new HashSet<>();
+ List<ComputeTemplateConsolidationData> computeTemplateConsolidationDataList =
+ new ArrayList(computeTemplateConsolidationDatas);
+
+ Map<String, List<RequirementAssignmentData>> startingVolumes =
+ computeTemplateConsolidationDataList.get(0).getVolumes();
+
+ for (int i = 1; i < computeTemplateConsolidationDataList.size(); i++) {
+ Map<String, List<RequirementAssignmentData>> currentVolumes =
+ computeTemplateConsolidationDataList.get(i).getVolumes();
+ if (!compareNodeConnectivity(startingVolumes, currentVolumes)) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+
+ private boolean checkPortConsolidation(ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData,
+ ConsolidationData consolidationData) {
+ return isWantedPortPropertiesUsageIsSimilarInAllPorts(serviceTemplate,
+ typeComputeConsolidationData)
+ && checkPortRelations(ToscaUtil.getServiceTemplateFileName(serviceTemplate),
+ typeComputeConsolidationData, consolidationData);
+ }
+
+
+ private boolean isWantedPortPropertiesUsageIsSimilarInAllPorts(ServiceTemplate serviceTemplate,
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDataCollection =
+ typeComputeConsolidationData.getAllComputeTemplateConsolidationData();
+ List<String> propertiesThatNeedHaveUsage = getPropertiesThatNeedHaveUsage();
+ Map<String, Set<String>> portTypeToIds = UnifiedCompositionUtil
+ .collectAllPortsFromEachTypesFromComputes(computeTemplateConsolidationDataCollection);
+
+ for (Set<String> portsIds : portTypeToIds.values()) {
+ if (!areAllPortsFromSameTypeHaveTheSameUsageForProperties(
+ serviceTemplate, portsIds, propertiesThatNeedHaveUsage)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private boolean checkPortRelations(String serviceTemplateName,
+ TypeComputeConsolidationData typeComputeConsolidationData,
+ ConsolidationData consolidationData) {
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDataCollection =
+ typeComputeConsolidationData.getAllComputeTemplateConsolidationData();
+ Map<String, Set<String>> portTypeToIds = UnifiedCompositionUtil
+ .collectAllPortsFromEachTypesFromComputes(computeTemplateConsolidationDataCollection);
+
+ for (Set<String> portIds : portTypeToIds.values()) {
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ collectAllPortsTemplateConsolidationData(
+ portIds, serviceTemplateName, consolidationData);
+
+ if (!checkEntityConsolidationDataRelations(portTemplateConsolidationDataList)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private List<PortTemplateConsolidationData>
+ collectAllPortsTemplateConsolidationData(Set<String> portIds,
+ String serviceTemplateName,
+ ConsolidationData consolidationData) {
+
+ FilePortConsolidationData filePortConsolidationData =
+ consolidationData.getPortConsolidationData()
+ .getFilePortConsolidationData(serviceTemplateName);
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList = new ArrayList<>();
+
+ for (String portId : portIds) {
+ PortTemplateConsolidationData portTemplateConsolidationData = filePortConsolidationData
+ .getPortTemplateConsolidationData(portId);
+ if (Objects.nonNull(portTemplateConsolidationData)) {
+ portTemplateConsolidationDataList.add(portTemplateConsolidationData);
+ }
+ }
+
+ return portTemplateConsolidationDataList;
+ }
+
+ private boolean areAllPortsFromSameTypeHaveTheSameUsageForProperties(
+ ServiceTemplate serviceTemplate,
+ Set<String> portNodeTemplateIds,
+ List<String> propertiesThatNeedToHaveUsage) {
+ Map<String, NodeTemplate> nodeTemplates =
+ serviceTemplate.getTopology_template().getNode_templates();
+
+ for (String property : propertiesThatNeedToHaveUsage) {
+ if (!areAllPortsContainWantedProperty(property, portNodeTemplateIds, nodeTemplates)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private boolean areAllPortsContainWantedProperty(
+ String propertyToCheck,
+ Set<String> portNodeTemplateIds,
+ Map<String, NodeTemplate> nodeTemplates) {
+
+ List<String> portNodeTemplateIdList = new ArrayList(portNodeTemplateIds);
+ NodeTemplate startingPortNodeTemplate = nodeTemplates.get(portNodeTemplateIdList.get(0));
+
+ if (Objects.isNull(startingPortNodeTemplate)) {
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage("Resource with id "
+ + portNodeTemplateIdList.get(0) + " occures more than once in different addOn files")
+ .build());
+ }
+
+ boolean startingUsageCondition =
+ startingPortNodeTemplate.getProperties().containsKey(propertyToCheck);
+
+ for (int i = 1; i < portNodeTemplateIdList.size(); i++) {
+ NodeTemplate portNodeTemplate = nodeTemplates.get(portNodeTemplateIdList.get(i));
+
+ if (Objects.isNull(portNodeTemplate)) {
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage("Resource with id "
+ + portNodeTemplateIdList.get(i) + " occures more than once in different addOn "
+ + "files").build());
+ }
+
+ Map<String, Object> properties = portNodeTemplate.getProperties();
+ if (!(properties.containsKey(propertyToCheck) == startingUsageCondition)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+
+ private boolean arePropertiesSimilarBetweenComputeNodeTemplates(
+ ServiceTemplate serviceTemplate,
+ List<String> computeNodeTemplateIds,
+ List<String> propertiesThatNeedToBeSimilar) {
+
+ Map<String, NodeTemplate> idToNodeTemplate =
+ serviceTemplate.getTopology_template().getNode_templates();
+
+ for (String property : propertiesThatNeedToBeSimilar) {
+ if (!isPropertySimilarBetweenComputeNodeTemplates(property, computeNodeTemplateIds,
+ idToNodeTemplate)) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private boolean isPropertySimilarBetweenComputeNodeTemplates(
+ String propertyToCheck,
+ List<String> computeNodeTemplateIds,
+ Map<String, NodeTemplate> idToNodeTemplate) {
+ Set<Object> propertiesValues = new HashSet<>();
+ for (String computeNodeId : computeNodeTemplateIds) {
+ NodeTemplate currentNodeTemplate = idToNodeTemplate.get(computeNodeId);
+ if (Objects.isNull(currentNodeTemplate)) {
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage("Resource with id "
+ + computeNodeId + " occures more than once in different addOn files").build());
+ }
+ propertiesValues
+ .add(currentNodeTemplate.getProperties().get(propertyToCheck));
+ }
+
+ return propertiesValues.size() == 1;
+ }
+
+ public void substitutionServiceTemplateConsolidation(String substituteNodeTemplateId,
+ ServiceTemplate mainServiceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ TranslationContext translationContext) {
+
+ ConsolidationData consolidationData = translationContext.getConsolidationData();
+
+ FileComputeConsolidationData fileComputeConsolidationData =
+ translationContext.getConsolidationData().getComputeConsolidationData()
+ .getFileComputeConsolidationData(
+ ToscaUtil.getServiceTemplateFileName(substitutionServiceTemplate));
+ boolean consolidationRuleResult =
+ substitutionServiceTemplateConsolidationRule(substitutionServiceTemplate,
+ fileComputeConsolidationData, translationContext);
+
+ if (consolidationRuleResult) {
+ List<UnifiedCompositionData> unifiedCompositionDataList =
+ createSubstitutionUnifiedCompositionDataList(substituteNodeTemplateId,
+ mainServiceTemplate, consolidationData);
+ unifiedCompositionService
+ .createUnifiedComposition(mainServiceTemplate, substitutionServiceTemplate,
+ unifiedCompositionDataList, UnifiedCompositionMode.NestedSingleCompute,
+ translationContext);
+ } else {
+ //The node template does not qualify for unified composition
+ //Adding the id in the context for fixing connectivity from/to nested non-unified nodes
+ translationContext.addUnifiedNestedNodeTemplateId(ToscaUtil
+ .getServiceTemplateFileName(mainServiceTemplate),
+ substituteNodeTemplateId, substituteNodeTemplateId);
+ }
+ }
+
+ private boolean substitutionServiceTemplateConsolidationRule(
+ ServiceTemplate nestedServiceTemplate,
+ FileComputeConsolidationData fileComputeConsolidationData,
+ TranslationContext context) {
+ if (Objects.isNull(fileComputeConsolidationData)) {
+ return false;
+ }
+ return isNumberOfComputeTypesLegal(fileComputeConsolidationData)
+ && isNumberOfComputeConsolidationDataPerTypeLegal(
+ fileComputeConsolidationData.getAllTypeComputeConsolidationData().iterator().next())
+ && !isThereMoreThanOneNestedLevel(nestedServiceTemplate, context.getConsolidationData());
+ }
+
+ private boolean isNumberOfComputeTypesLegal(
+ FileComputeConsolidationData fileComputeConsolidationData) {
+ return fileComputeConsolidationData.getAllTypeComputeConsolidationData().size() == 1;
+ }
+
+ private boolean isNumberOfComputeConsolidationDataPerTypeLegal(
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+ return typeComputeConsolidationData.getAllComputeTemplateConsolidationData().size() == 1;
+ }
+
+ private boolean isThereMoreThanOneNestedLevel(ServiceTemplate nestedServiceTemplate,
+ ConsolidationData consolidationData) {
+ String nestedServiceTemplateName = ToscaUtil.getServiceTemplateFileName(nestedServiceTemplate);
+ if (Objects.isNull(nestedServiceTemplateName)) {
+ return false;
+ }
+
+ FileNestedConsolidationData fileNestedConsolidationData =
+ consolidationData.getNestedConsolidationData() == null ? new FileNestedConsolidationData()
+ : consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(nestedServiceTemplateName);
+
+ if (Objects.isNull(fileNestedConsolidationData)) {
+ return false;
+ }
+
+ return !CollectionUtils.isEmpty(fileNestedConsolidationData.getAllNestedNodeTemplateIds());
+ }
+
+
+ private List<UnifiedCompositionData> createUnifiedCompositionDataList(
+ ServiceTemplate serviceTemplate,
+ ConsolidationData consolidationData,
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+
+ for (ComputeTemplateConsolidationData computeTemplateConsolidationData : typeComputeConsolidationData
+ .getAllComputeTemplateConsolidationData()) {
+
+ UnifiedCompositionData unifiedCompositionData = new UnifiedCompositionData();
+ unifiedCompositionData.setComputeTemplateConsolidationData(computeTemplateConsolidationData);
+
+ Collection<List<String>> portCollection =
+ computeTemplateConsolidationData.getPorts() == null ? Collections.emptyList()
+ : computeTemplateConsolidationData.getPorts().values();
+
+ FilePortConsolidationData filePortConsolidationData =
+ consolidationData.getPortConsolidationData().getFilePortConsolidationData(ToscaUtil
+ .getServiceTemplateFileName(serviceTemplate));
+
+ for (List<String> portList : portCollection) {
+ for (String portId : portList) {
+ if (!Objects.isNull(filePortConsolidationData)) {
+ unifiedCompositionData.addPortTemplateConsolidationData(
+ (filePortConsolidationData.getPortTemplateConsolidationData(portId)));
+ }
+ }
+ }
+ unifiedCompositionDataList.add(unifiedCompositionData);
+ }
+
+ return unifiedCompositionDataList;
+ }
+
+ private List<UnifiedCompositionData> createSubstitutionUnifiedCompositionDataList(
+ String substituteNodeTemplateId,
+ ServiceTemplate serviceTemplate,
+ ConsolidationData consolidationData) {
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ FileNestedConsolidationData fileNestedConsolidationData =
+ consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(ToscaUtil.getServiceTemplateFileName(serviceTemplate));
+
+ if (Objects.nonNull(fileNestedConsolidationData)) {
+ Collection<NestedTemplateConsolidationData> nestedConsolidationDatas =
+ fileNestedConsolidationData.getAllNestedConsolidationData();
+
+ for (NestedTemplateConsolidationData nested : nestedConsolidationDatas) {
+ if (nested.getNodeTemplateId().equals(substituteNodeTemplateId)) {
+ UnifiedCompositionData unifiedCompositionData = new UnifiedCompositionData();
+ unifiedCompositionData.setNestedTemplateConsolidationData(nested);
+ unifiedCompositionDataList.add(unifiedCompositionData);
+ }
+ }
+ }
+
+ return unifiedCompositionDataList;
+ }
+
+ private boolean consolidationPreCondition(ServiceTemplate serviceTemplate,
+ ConsolidationData consolidationData,
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+
+ return (isThereMoreThanOneComputeTypeInstance(typeComputeConsolidationData)
+ && isNumberOfPortsEqualsBetweenComputeNodes(typeComputeConsolidationData)
+ && isNumberOfPortFromEachTypeLegal(typeComputeConsolidationData)
+ && isPortTypesEqualsBetweenComputeNodes(typeComputeConsolidationData)
+ && checkGetAttrBetweenConsolidationDataEntitiesNotFromSameType(serviceTemplate,
+ typeComputeConsolidationData, consolidationData));
+
+ }
+
+ private boolean isThereMoreThanOneComputeTypeInstance(
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+ return typeComputeConsolidationData.getAllComputeNodeTemplateIds().size() > 1;
+ }
+
+ private boolean isNumberOfPortsEqualsBetweenComputeNodes(
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+
+ ArrayList<ComputeTemplateConsolidationData> computeTemplateConsolidationDataList =
+ new ArrayList(typeComputeConsolidationData.getAllComputeTemplateConsolidationData());
+ int startingNumberOfPorts =
+ getNumberOfPortsPerCompute(computeTemplateConsolidationDataList.get(0));
+
+
+ for (int i = 1; i < computeTemplateConsolidationDataList.size(); i++) {
+ int currNumberOfPorts =
+ getNumberOfPortsPerCompute(computeTemplateConsolidationDataList.get(i));
+ if (currNumberOfPorts != startingNumberOfPorts) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+
+ private boolean isNumberOfPortFromEachTypeLegal(
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+
+ ArrayList<ComputeTemplateConsolidationData> computeTemplateConsolidationDataList =
+ new ArrayList(typeComputeConsolidationData.getAllComputeTemplateConsolidationData());
+
+ for (ComputeTemplateConsolidationData computeTemplate : computeTemplateConsolidationDataList) {
+ Map<String, List<String>> currPortsMap = computeTemplate.getPorts();
+ if (MapUtils.isEmpty(currPortsMap)) {
+ return true;
+ }
+ for (List<String> portList : currPortsMap.values()) {
+ if (portList.size() > 1) {
+ return false;
+ }
+ }
+ }
+
+ return true;
+ }
+
+ private boolean isPortTypesEqualsBetweenComputeNodes(
+ TypeComputeConsolidationData typeComputeConsolidationData) {
+
+ ArrayList<ComputeTemplateConsolidationData> computeTemplateConsolidationDataList =
+ new ArrayList(typeComputeConsolidationData.getAllComputeTemplateConsolidationData());
+ Set<String> staringPortIds = getPortsIds(computeTemplateConsolidationDataList.get(0));
+
+ for (int i = 1; i < computeTemplateConsolidationDataList.size(); i++) {
+ Set<String> currentPortIds = getPortsIds(computeTemplateConsolidationDataList.get(i));
+ if (!currentPortIds.equals(staringPortIds)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ private int getNumberOfPortsPerCompute(
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+ return getPortsIds(computeTemplateConsolidationData) == null ? 0 :
+ getPortsIds(computeTemplateConsolidationData).size();
+ }
+
+ private Set<String> getPortsIds(
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+ return computeTemplateConsolidationData.getPorts() == null ? new HashSet<>()
+ : computeTemplateConsolidationData
+ .getPorts().keySet();
+ }
+
+ List<String> getPropertiesWithIdenticalVal() {
+ List<String> propertyWithIdenticalValue = new ArrayList<>();
+ propertyWithIdenticalValue.add(ToscaConstants.COMPUTE_IMAGE);
+ propertyWithIdenticalValue.add(ToscaConstants.COMPUTE_FLAVOR);
+ return propertyWithIdenticalValue;
+ }
+
+ private List<String> getPropertiesThatNeedHaveUsage() {
+ List<String> propertiesThatNeedToHaveUsage = new ArrayList<>();
+ propertiesThatNeedToHaveUsage.add(ToscaConstants.PORT_FIXED_IPS);
+ propertiesThatNeedToHaveUsage.add(ToscaConstants.PORT_ALLOWED_ADDRESS_PAIRS);
+ propertiesThatNeedToHaveUsage.add(ToscaConstants.MAC_ADDRESS);
+
+ return propertiesThatNeedToHaveUsage;
+ }
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java
index abd6c27a21..e5d752798b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/Constants.java
@@ -44,6 +44,13 @@ public class Constants {
public static final String CONTRAIL_PORT_TEMPLATE_NAME = "ContrailPortGlobalTypes";
public static final String CONTRAIL_ABSTRACT_SUBSTITUTE_TEMPLATE_NAME =
"ContrailAbstractSubstituteGlobalTypes";
+ public static final String MAIN_TEMPLATE_NAME = "Main";
+ public static final String PORT_TEMPLATE_NAME = "PortGlobalTypes";
+ public static final String COMPUTE_TEMPLATE_NAME = "ComputeGlobalTypes";
+ public static final String NETWORK_TEMPLATE_NAME = "NetworkGlobalTypes";
+ public static final String SUB_INTERFACE_TEMPLATE_NAME = "SubInterfaceGlobalTypes";
+ public static final String CONTRAILV2_VLAN_SUB_INTERFACE_TEMPLATE_NAME =
+ "ContrailV2VLANSubInterfaceGlobalType";
//properties
public static final String MAX_INSTANCES_PROPERTY_NAME = "max_instances";
public static final String DESCRIPTION_PROPERTY_NAME = "description";
@@ -54,6 +61,12 @@ public class Constants {
//General
public static final String PROP = "properties";
public static final String ATTR = "attributes";
+ public static final String SERVICE_INSTANCE_PORT_PREFIX = "port_";
+ public static final String SERVICE_INSTANCE_LINK_PREFIX = "link_";
+ //Unified model
+ public static final String IDENTICAL_VALUE_PROPERTY_PREFIX = "vm_";
+ public static final String IDENTICAL_VALUE_PROPERTY_SUFFIX = "_name";
+ public static final String ABSTRACT_NODE_TEMPLATE_ID_PREFIX = "abstract_";
private Constants() {
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslation.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslation.java
new file mode 100644
index 0000000000..dbbc63ece1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslation.java
@@ -0,0 +1,38 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca;
+
+
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+
+
+public interface FunctionTranslation {
+
+ //return the value of the translated function ("get_param", "get_attr" and etc)
+ Object translateFunction(ServiceTemplate serviceTemplate,
+ String resourceId, String propertyName, String functionKey,
+ Object functionValue, String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Template toscaTemplate, TranslationContext context);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslationFactory.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslationFactory.java
new file mode 100644
index 0000000000..07e8fcdad6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/FunctionTranslationFactory.java
@@ -0,0 +1,70 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca;
+
+
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+
+import java.util.Map;
+import java.util.Optional;
+
+
+public class FunctionTranslationFactory {
+ private static Map<String, ImplementationConfiguration> functionTranslationImplMap;
+
+ static {
+ Configuration config = ConfigurationManager.lookup();
+ functionTranslationImplMap = config.populateMap(ConfigConstants.TRANSLATOR_NAMESPACE,
+ ConfigConstants.FUNCTION_TRANSLATION_IMPL_KEY, ImplementationConfiguration.class);
+ functionTranslationImplMap.putAll(config.populateMap(ConfigConstants.MANDATORY_TRANSLATOR_NAMESPACE,
+ ConfigConstants.FUNCTION_TRANSLATION_IMPL_KEY, ImplementationConfiguration.class));
+
+ }
+
+ /**
+ * Gets function translation instance.
+ *
+ * @param heatFunctionKey heat function key
+ * @return the instance
+ */
+ public static Optional<FunctionTranslation> getInstance(String heatFunctionKey) {
+ if (isSupportedFunction(heatFunctionKey)) {
+ String functionTranslationImplClassName =
+ functionTranslationImplMap.get(heatFunctionKey).getImplementationClass();
+ return Optional.of(CommonMethods
+ .newInstance(functionTranslationImplClassName, FunctionTranslation.class));
+ }
+
+ return Optional.empty();
+ }
+
+ private static boolean isSupportedFunction(String heatFunctionKey) {
+ if (functionTranslationImplMap.containsKey(heatFunctionKey)) {
+ return true;
+ }
+ return false;
+ }
+
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/HeatToToscaUtil.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/HeatToToscaUtil.java
index f245a6dee6..7c67a5af2c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/HeatToToscaUtil.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/HeatToToscaUtil.java
@@ -21,27 +21,74 @@
package org.openecomp.sdc.translator.services.heattotosca;
import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.translator.api.HeatToToscaTranslator;
+import org.openecomp.core.translator.datatypes.TranslatorOutput;
+import org.openecomp.core.translator.factory.HeatToToscaTranslatorFactory;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.core.validation.util.MessageContainerUtil;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
import org.openecomp.sdc.heat.datatypes.HeatBoolean;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
+import org.openecomp.sdc.heat.datatypes.structure.ValidationStructureList;
import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.heat.services.tree.HeatTreeManager;
+import org.openecomp.sdc.heat.services.tree.HeatTreeManagerUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaElementTypes;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.Import;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.SubstitutionMapping;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.tosca.datatypes.model.TopologyTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.tosca.services.ToscaUtil;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedPropertyVal;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.datatypes.heattotosca.ResourceReferenceType;
+import org.openecomp.sdc.translator.datatypes.heattotosca.ReferenceType;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.FileDataCollection;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.errors.ResourceNotFoundInHeatFileErrorBuilder;
-import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaFunctionConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
+import org.openecomp.sdc.translator.services.heattotosca.helper.FunctionTranslationHelper;
+import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
+import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
@@ -53,10 +100,58 @@ import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
+/**
+ * The type Heat to tosca util.
+ */
public class HeatToToscaUtil {
- protected static Logger logger = LoggerFactory.getLogger(HeatToToscaUtil.class);
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(HeatToToscaUtil.class);
+ protected static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+
+ /**
+ * Load and translate template data translator output.
+ *
+ * @param fileNameContentMap the file name content map
+ * @return the translator output
+ */
+ public static TranslatorOutput loadAndTranslateTemplateData(
+ FileContentHandler fileNameContentMap) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ HeatToToscaTranslator heatToToscaTranslator =
+ HeatToToscaTranslatorFactory.getInstance().createInterface();
+ InputStream fileContent = fileNameContentMap.getFileContent(SdcCommon.MANIFEST_NAME);
+
+ heatToToscaTranslator.addManifest(SdcCommon.MANIFEST_NAME, FileUtils.toByteArray(fileContent));
+
+ fileNameContentMap.getFileList().stream()
+ .filter(fileName -> !(fileName.equals(SdcCommon.MANIFEST_NAME))).forEach(
+ fileName -> heatToToscaTranslator
+ .addFile(fileName, FileUtils.toByteArray
+ (fileNameContentMap.getFileContent(fileName))));
+
+ Map<String, List<ErrorMessage>> errors = heatToToscaTranslator.validate();
+ if (MapUtils.isNotEmpty(MessageContainerUtil.getMessageByLevel(ErrorLevel.ERROR, errors))) {
+ TranslatorOutput translatorOutput = new TranslatorOutput();
+ translatorOutput.setErrorMessages(errors);
+ return translatorOutput;
+ }
+
+ InputStream structureFile = getHeatStructureTreeFile(fileNameContentMap);
+ heatToToscaTranslator.addExternalArtifacts(SdcCommon.HEAT_META, structureFile);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return heatToToscaTranslator.translate();
+ }
+
+ private static InputStream getHeatStructureTreeFile(FileContentHandler fileNameContentMap) {
+ HeatTreeManager heatTreeManager = HeatTreeManagerUtil.initHeatTreeManager(fileNameContentMap);
+ heatTreeManager.createTree();
+ HeatStructureTree tree = heatTreeManager.getTree();
+ ValidationStructureList validationStructureList = new ValidationStructureList(tree);
+ return FileUtils.convertToInputStream(validationStructureList, FileUtils.FileExtension.JSON);
+ }
/**
* Build list of files to search optional.
@@ -77,6 +172,13 @@ public class HeatToToscaUtil {
return Optional.ofNullable(HeatToToscaUtil.getFilteredListOfFileDataByTypes(list, types));
}
+ /**
+ * Gets filtered list of file data by types.
+ *
+ * @param filesToSearch the files to search
+ * @param types the types
+ * @return the filtered list of file data by types
+ */
public static List<FileData> getFilteredListOfFileDataByTypes(List<FileData> filesToSearch,
FileData.Type... types) {
return filesToSearch.stream().filter(FileData.buildFileDataPredicateByType(types))
@@ -84,7 +186,7 @@ public class HeatToToscaUtil {
}
/**
- * Gets file data.
+ * Gets file data from the list according to the input heat file name.
*
* @param heatFileName the heat file name
* @param fileDataList the file data list
@@ -100,6 +202,26 @@ public class HeatToToscaUtil {
return Optional.empty();
}
+ /**
+ * Gets file data which is supported by the translator, from the context according the input heat
+ * file name.
+ *
+ * @param heatFileName the heat file name
+ * @param context the translation context
+ * @return the file data
+ */
+ public static FileData getFileData(String heatFileName, TranslationContext context) {
+
+ List<FileData> fileDataList = context.getManifest().getContent().getData();
+ for (FileData fileData : fileDataList) {
+ if (TranslationService.getTypesToProcessByTranslator().contains(fileData.getType())
+ && fileData.getFile().equals(heatFileName)) {
+ return fileData;
+ }
+ }
+ return null;
+ }
+
static FileDataCollection getFileCollectionsByFilter(List<FileData> fileDataList,
Set<FileData.Type> typeFilter,
TranslationContext translationContext) {
@@ -118,20 +240,23 @@ public class HeatToToscaUtil {
HeatOrchestrationTemplate heatOrchestrationTemplate = new YamlUtil()
.yamlToObject(translationContext.getFileContent(fileName),
HeatOrchestrationTemplate.class);
- for (Resource resource : heatOrchestrationTemplate.getResources().values()) {
- if (filenames.contains(resource.getType())) {
- handleNestedFile(translationContext, fileDataCollection, filteredFiles, referenced,
- resource.getType());
- } else if (resource.getType()
- .equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource())) {
- Object resourceDef =
- resource.getProperties().get(HeatConstants.RESOURCE_DEF_PROPERTY_NAME);
- Object innerTypeDef = ((Map) resourceDef).get("type");
- if (innerTypeDef instanceof String) {
- String internalResourceType = (String) innerTypeDef;
- if (filenames.contains(internalResourceType)) {
- handleNestedFile(translationContext, fileDataCollection, filteredFiles, referenced,
- internalResourceType);
+ if (!MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
+ for (Resource resource : heatOrchestrationTemplate.getResources().values()) {
+ if (filenames.contains(resource.getType())) {
+ handleNestedFile(translationContext, fileDataCollection, filteredFiles, referenced,
+ resource.getType());
+ } else if (resource.getType()
+ .equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource())) {
+ Object resourceDef =
+ resource.getProperties().get(HeatConstants.RESOURCE_DEF_PROPERTY_NAME);
+ Object innerTypeDef = ((Map) resourceDef).get("type");
+ if (innerTypeDef instanceof String) {
+ String internalResourceType = (String) innerTypeDef;
+ if (filenames.contains(internalResourceType)) {
+ handleNestedFile(translationContext, fileDataCollection, filteredFiles,
+ referenced,
+ internalResourceType);
+ }
}
}
}
@@ -157,9 +282,15 @@ public class HeatToToscaUtil {
FileDataCollection fileDataCollection,
Map<String, FileData> filteredFiles, Set<String> referenced,
String nestedFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
referenced.add(nestedFileName);
fileDataCollection.addNestedFiles(filteredFiles.get(nestedFileName));
translationContext.getNestedHeatsFiles().add(nestedFileName);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private static Map<String, FileData> filterFileDataListByType(List<FileData> fileDataList,
@@ -183,10 +314,16 @@ public class HeatToToscaUtil {
*/
public static Optional<AttachedResourceId> extractAttachedResourceId(TranslateTo translateTo,
String propertyName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object propertyValue = translateTo.getResource().getProperties().get(propertyName);
if (propertyValue == null) {
return Optional.empty();
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return extractAttachedResourceId(translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getContext(), propertyValue);
}
@@ -201,9 +338,9 @@ public class HeatToToscaUtil {
* @return the optional
*/
public static Optional<AttachedResourceId> extractAttachedResourceId(String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- TranslationContext context,
- Object propertyValue) {
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context,
+ Object propertyValue) {
Object entity;
Object translatedId;
@@ -212,7 +349,7 @@ public class HeatToToscaUtil {
return Optional.empty();
}
- ResourceReferenceType referenceType = ResourceReferenceType.OTHER;
+ ReferenceType referenceType = ReferenceType.OTHER;
if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
Map<String, Object> propMap = (Map) propertyValue;
Map.Entry<String, Object> entry = propMap.entrySet().iterator().next();
@@ -220,21 +357,28 @@ public class HeatToToscaUtil {
String key = entry.getKey();
switch (key) {
case "get_resource":
- referenceType = ResourceReferenceType.GET_RESOURCE;
+ referenceType = ReferenceType.GET_RESOURCE;
break;
case "get_param":
- referenceType = ResourceReferenceType.GET_PARAM;
+ referenceType = ReferenceType.GET_PARAM;
break;
case "get_attr":
- referenceType = ResourceReferenceType.GET_ATTR;
+ referenceType = ReferenceType.GET_ATTR;
break;
default:
+ referenceType = ReferenceType.OTHER;
+ break;
+ }
+
+ if (!FunctionTranslationFactory.getInstance(entry.getKey()).isPresent()) {
+ translatedId = null;
+ } else {
+ translatedId = FunctionTranslationFactory.getInstance(entry.getKey()).get()
+ .translateFunction(null, null, null, entry.getKey(), entry.getValue(), heatFileName,
+ heatOrchestrationTemplate, null, context);
}
- translatedId = TranslatorHeatToToscaFunctionConverter
- .getToscaFunction(entry.getKey(), entry.getValue(), heatFileName,
- heatOrchestrationTemplate, null, context);
if (translatedId instanceof String
- && !TranslatorHeatToToscaFunctionConverter.isResourceSupported((String) translatedId)) {
+ && !FunctionTranslationHelper.isResourceSupported((String) translatedId)) {
translatedId = null;
}
@@ -254,6 +398,10 @@ public class HeatToToscaUtil {
*/
public static Optional<String> getContrailAttachedHeatResourceId(
AttachedResourceId attachedResource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (attachedResource == null) {
return Optional.empty();
}
@@ -267,6 +415,7 @@ public class HeatToToscaUtil {
return Optional.of((String) ((List) attachedResource.getEntityId()).get(0));
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.empty();
}
@@ -276,37 +425,40 @@ public class HeatToToscaUtil {
* @param propertyValue the property value
* @return the optional
*/
- public static Optional<AttachedResourceId> extractProperty(Object propertyValue) {
+ public static Optional<AttachedPropertyVal> extractProperty(Object propertyValue) {
- Object entity;
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ Object attachedPropertyVal;
if (Objects.isNull(propertyValue)) {
return Optional.empty();
}
- ResourceReferenceType referenceType = ResourceReferenceType.OTHER;
+ ReferenceType referenceType = ReferenceType.OTHER;
if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
Map<String, Object> propMap = (Map) propertyValue;
Map.Entry<String, Object> entry = propMap.entrySet().iterator().next();
- entity = entry.getValue();
+ attachedPropertyVal = entry.getValue();
String key = entry.getKey();
switch (key) {
case "get_resource":
- referenceType = ResourceReferenceType.GET_RESOURCE;
+ referenceType = ReferenceType.GET_RESOURCE;
break;
case "get_param":
- referenceType = ResourceReferenceType.GET_PARAM;
+ referenceType = ReferenceType.GET_PARAM;
break;
case "get_attr":
- referenceType = ResourceReferenceType.GET_ATTR;
+ referenceType = ReferenceType.GET_ATTR;
break;
default:
+ break;
}
} else {
- entity = propertyValue;
+ attachedPropertyVal = propertyValue;
}
- return Optional.of(new AttachedResourceId(null, entity, referenceType));
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(new AttachedPropertyVal(attachedPropertyVal, referenceType));
}
/**
@@ -316,10 +468,14 @@ public class HeatToToscaUtil {
* @param propertyKey the property key
*/
public static void mapBoolean(NodeTemplate nodeTemplate, String propertyKey) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object value = nodeTemplate.getProperties().get(propertyKey);
if (value != null && !(value instanceof Map)) {
nodeTemplate.getProperties().put(propertyKey, HeatBoolean.eval(value));
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -342,6 +498,12 @@ public class HeatToToscaUtil {
}
+ /**
+ * Is yml file type boolean.
+ *
+ * @param filename the filename
+ * @return the boolean
+ */
public static boolean isYmlFileType(String filename) {
return (filename.indexOf("yaml") > 0 || filename.indexOf("yml") > 0);
}
@@ -353,10 +515,17 @@ public class HeatToToscaUtil {
* @return the boolean
*/
public static boolean isNestedResource(Resource resource) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String resourceType = resource.getType();
if (resourceType.equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource())) {
Object resourceDef = resource.getProperties().get(HeatConstants.RESOURCE_DEF_PROPERTY_NAME);
+ if (!(((Map) resourceDef).get("type") instanceof String)) {
+ //currently only resource group which is poinitng to nested heat file is supported
+ //dynamic type is currently not supported
+ return false;
+ }
String internalResourceType = (String) ((Map) resourceDef).get("type");
if (isYamlFile(internalResourceType)) {
return true;
@@ -364,16 +533,47 @@ public class HeatToToscaUtil {
} else if (isYamlFile(resourceType)) {
return true;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return false;
}
/**
+ * Get nested heat file name in case of nested resource.
+ *
+ * @param resource the resource
+ * @return the nested heat file name
+ */
+ public static Optional<String> getNestedHeatFileName(Resource resource) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!isNestedResource(resource)) {
+ return Optional.empty();
+ }
+
+ String resourceType = resource.getType();
+
+ if (resourceType.equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource())) {
+ Object resourceDef = resource.getProperties().get(HeatConstants.RESOURCE_DEF_PROPERTY_NAME);
+ String internalResourceType = (String) ((Map) resourceDef).get("type");
+ return Optional.of(internalResourceType);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(resourceType);
+ }
+
+ /**
* Gets nested file.
*
* @param resource the resource
* @return the nested file
*/
public static Optional<String> getNestedFile(Resource resource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (!isNestedResource(resource)) {
return Optional.empty();
}
@@ -381,8 +581,11 @@ public class HeatToToscaUtil {
if (resourceType.equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource())) {
Object resourceDef = resource.getProperties().get(HeatConstants.RESOURCE_DEF_PROPERTY_NAME);
String internalResourceType = (String) ((Map) resourceDef).get("type");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.of(internalResourceType);
} else {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.of(resourceType);
}
}
@@ -401,27 +604,69 @@ public class HeatToToscaUtil {
*/
public static Resource getResource(HeatOrchestrationTemplate heatOrchestrationTemplate,
String resourceId, String heatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
if (resource == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.TRANSLATE_HEAT);
throw new CoreException(
new ResourceNotFoundInHeatFileErrorBuilder(resourceId, heatFileName).build());
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return resource;
}
+
+ /**
+ * Get resource type.
+ *
+ * @param resourceId the resource id
+ * @param heatOrchestrationTemplate heat orchestration template
+ * @param heatFileName heat file name
+ * @return resource type
+ */
+ public static String getResourceType(String resourceId,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String heatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return HeatToToscaUtil.getResource(heatOrchestrationTemplate, resourceId, heatFileName)
+ .getType();
+ }
+
+ /**
+ * Is heat file nested boolean.
+ *
+ * @param translateTo the translate to
+ * @param heatFileName the heat file name
+ * @return the boolean
+ */
public static boolean isHeatFileNested(TranslateTo translateTo, String heatFileName) {
return translateTo.getContext().getNestedHeatsFiles().contains(heatFileName);
}
/**
- * Extract contrail get resource attached heat resource id string.
+ * Extract contrail get resource attached heat resource id optional.
*
* @param propertyValue the property value
- * @return the string
+ * @return the optional
*/
- public static String extractContrailGetResourceAttachedHeatResourceId(Object propertyValue) {
+ public static Optional<String> extractContrailGetResourceAttachedHeatResourceId(
+ Object propertyValue) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (propertyValue == null) {
- return null;
+ return Optional.empty();
}
Object value;
@@ -431,7 +676,7 @@ public class HeatToToscaUtil {
if (value instanceof List) {
if (((List) value).size() == 2 && ((List) value).get(1).equals("fq_name")) {
if (((List) value).get(0) instanceof String) {
- return (String) ((List) value).get(0);
+ return Optional.of((String) ((List) value).get(0));
} else {
logger.warn("invalid format of 'get_attr' function - " + propertyValue.toString());
}
@@ -440,15 +685,15 @@ public class HeatToToscaUtil {
} else if (((Map) propertyValue).containsKey("get_resource")) {
value = ((Map) propertyValue).get("get_resource");
if (value instanceof String) {
- return (String) value;
+ return Optional.of((String) value);
} else {
logger.warn("invalid format of 'get_resource' function - " + propertyValue.toString());
}
} else {
Collection<Object> valCollection = ((Map) propertyValue).values();
for (Object entryValue : valCollection) {
- String ret = extractContrailGetResourceAttachedHeatResourceId(entryValue);
- if (ret != null) {
+ Optional<String> ret = extractContrailGetResourceAttachedHeatResourceId(entryValue);
+ if (ret.isPresent()) {
return ret;
}
@@ -456,31 +701,54 @@ public class HeatToToscaUtil {
}
} else if (propertyValue instanceof List) {
for (Object prop : (List) propertyValue) {
- String ret = extractContrailGetResourceAttachedHeatResourceId(prop);
- if (ret != null) {
+ Optional<String> ret = extractContrailGetResourceAttachedHeatResourceId(prop);
+ if (ret.isPresent()) {
return ret;
}
}
}
- return null;
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+
+ /**
+ * Gets tosca service model.
+ *
+ * @param context translation context
+ * @return the tosca service model
+ */
+ public static ToscaServiceModel getToscaServiceModel(TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+
+ Map<String, String> metadata = new HashMap<>();
+ metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, Constants.MAIN_TEMPLATE_NAME);
+ return getToscaServiceModel(context, metadata);
}
/**
* Gets tosca service model.
*
- * @param translateTo the translate to
+ * @param context translation context
+ * @param entryDefinitionMetadata template name of the entry definition servie template
* @return the tosca service model
*/
- public static ToscaServiceModel getToscaServiceModel(TranslateTo translateTo) {
+ public static ToscaServiceModel getToscaServiceModel(TranslationContext context,
+ Map<String, String> entryDefinitionMetadata) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Map<String, ServiceTemplate> serviceTemplates =
- new HashMap<>(translateTo.getContext().getGlobalServiceTemplates());
+ new HashMap<>(context.getGlobalServiceTemplates());
Collection<ServiceTemplate> tmpServiceTemplates =
- translateTo.getContext().getTranslatedServiceTemplates().values();
+ context.getTranslatedServiceTemplates().values();
for (ServiceTemplate serviceTemplate : tmpServiceTemplates) {
ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates, serviceTemplate);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return new ToscaServiceModel(null, serviceTemplates,
- ToscaUtil.getServiceTemplateFileName(translateTo.getResource().getType()));
+ ToscaUtil.getServiceTemplateFileName(entryDefinitionMetadata));
}
/**
@@ -492,12 +760,929 @@ public class HeatToToscaUtil {
*/
public static Optional<ServiceTemplate> getServiceTemplateFromContext(
String serviceTemplateFileName, TranslationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
for (ServiceTemplate serviceTemplate : context.getTranslatedServiceTemplates().values()) {
if (ToscaUtil.getServiceTemplateFileName(serviceTemplate).equals(serviceTemplateFileName)) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.of(serviceTemplate);
}
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.empty();
}
+
+ /**
+ * Adding binding requerment from port node template to compute node template.
+ *
+ * @param computeNodeTemplateId compute node template id
+ * @param portNodeTemplate port node template
+ */
+ public static void addBindingReqFromPortToCompute(String computeNodeTemplateId,
+ NodeTemplate portNodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ RequirementAssignment requirementAssignment = new RequirementAssignment();
+ requirementAssignment.setCapability(ToscaCapabilityType.NATIVE_NETWORK_BINDABLE);
+ requirementAssignment.setRelationship(ToscaRelationshipType.NATIVE_NETWORK_BINDS_TO);
+ requirementAssignment.setNode(computeNodeTemplateId);
+ DataModelUtil.addRequirementAssignment(portNodeTemplate, ToscaConstants.BINDING_REQUIREMENT_ID,
+ requirementAssignment);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ /**
+ * Adding link requerment from port node template to network node template.
+ *
+ * @param portNodeTemplate port node template
+ * @param networkTranslatedId network node template id
+ */
+ public static RequirementAssignment addLinkReqFromPortToNetwork(NodeTemplate portNodeTemplate,
+ String networkTranslatedId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ RequirementAssignment requirement = new RequirementAssignment();
+ requirement.setCapability(ToscaCapabilityType.NATIVE_NETWORK_LINKABLE);
+ requirement.setRelationship(ToscaRelationshipType.NATIVE_NETWORK_LINK_TO);
+ requirement.setNode(networkTranslatedId);
+ DataModelUtil.addRequirementAssignment(portNodeTemplate,
+ ToscaConstants.LINK_REQUIREMENT_ID, requirement);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+
+ return requirement;
+ }
+
+ /**
+ * Adding binding requerment from sub interface node template to interface (port) node template.
+ *
+ * @param subInterfaceNodeTemplate sub interface template
+ * @param interfaceTranslatedId interface node template id
+ */
+ public static void addBindingReqFromSubInterfaceToInterface(
+ NodeTemplate subInterfaceNodeTemplate, String interfaceTranslatedId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ RequirementAssignment requirement = new RequirementAssignment();
+ requirement.setCapability(ToscaCapabilityType.NATIVE_NETWORK_BINDABLE);
+ requirement.setRelationship(ToscaRelationshipType.NATIVE_NETWORK_BINDS_TO);
+ requirement.setNode(interfaceTranslatedId);
+ DataModelUtil
+ .addRequirementAssignment(subInterfaceNodeTemplate,
+ ToscaConstants.BINDING_REQUIREMENT_ID, requirement);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ /**
+ * Get property Parameter Name Value.
+ *
+ * @param property property
+ * @return Parameter name in case the property include "get_param" function
+ */
+ public static Optional<String> getPropertyParameterNameValue(Object property) {
+ if (Objects.isNull(property)) {
+ return Optional.empty();
+ }
+ Optional<AttachedPropertyVal> extractedProperty = extractProperty(property);
+ if (extractedProperty.isPresent()) {
+ return getParameterName(extractedProperty.get());
+ }
+ return Optional.empty();
+ }
+
+ private static Optional<String> getParameterName(AttachedPropertyVal extractedProperty) {
+ if (!extractedProperty.isGetParam()) {
+ return Optional.empty();
+ }
+ Object getParamFuncValue = extractedProperty.getPropertyValue();
+ if (getParamFuncValue instanceof String) {
+ return Optional.of((String) getParamFuncValue);
+ } else {
+ return Optional.of((String) ((List) getParamFuncValue).get(0));
+ }
+ }
+
+ public static String getToscaPropertyName(TranslationContext context, String heatResourceType,
+ String heatPropertyName) {
+ return context.getElementMapping(heatResourceType, Constants.PROP, heatPropertyName);
+ }
+
+ /**
+ * Gets tosca property name.
+ *
+ * @param translateTo the translate to
+ * @param heatPropertyName the heat property name
+ * @return the tosca property name
+ */
+ public static String getToscaPropertyName(TranslateTo translateTo, String heatPropertyName) {
+ return translateTo.getContext()
+ .getElementMapping(translateTo.getResource().getType(), Constants.PROP, heatPropertyName);
+ }
+
+ /**
+ * Gets tosca attribute name.
+ *
+ * @param context the context
+ * @param heatResourceType the heat resource type
+ * @param heatAttrName the heat attr name
+ * @return the tosca attribute name
+ */
+ public static String getToscaAttributeName(TranslationContext context, String heatResourceType,
+ String heatAttrName) {
+ return context.getElementMapping(heatResourceType, Constants.ATTR, heatAttrName);
+ }
+
+ /**
+ * Gets tosca attribute name.
+ *
+ * @param translateTo the translate to
+ * @param heatAttrName the heat attr name
+ * @return the tosca attribute name
+ */
+ public static String getToscaAttributeName(TranslateTo translateTo, String heatAttrName) {
+ return translateTo.getContext()
+ .getElementMapping(translateTo.getResource().getType(), Constants.ATTR, heatAttrName);
+ }
+
+ /**
+ * Create init substitution service template service template.
+ *
+ * @param templateName the template name
+ * @return the service template
+ */
+ public static ServiceTemplate createInitSubstitutionServiceTemplate(String templateName) {
+ ServiceTemplate nestedSubstitutionServiceTemplate = new ServiceTemplate();
+ Map<String, String> templateMetadata = new HashMap<>();
+ templateMetadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, templateName);
+ nestedSubstitutionServiceTemplate.setMetadata(templateMetadata);
+ nestedSubstitutionServiceTemplate
+ .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
+ nestedSubstitutionServiceTemplate.setTopology_template(new TopologyTemplate());
+ List<Map<String, Import>> globalTypesImportList =
+ GlobalTypesGenerator.getGlobalTypesImportList();
+ globalTypesImportList.addAll(
+ HeatToToscaUtil.createImportList(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
+ nestedSubstitutionServiceTemplate.setImports(globalTypesImportList);
+ return nestedSubstitutionServiceTemplate;
+ }
+
+ /**
+ * Create init global substitution service template service template.
+ *
+ * @return the service template
+ */
+ public static ServiceTemplate createInitGlobalSubstitutionServiceTemplate() {
+ ServiceTemplate globalSubstitutionServiceTemplate = new ServiceTemplate();
+ Map<String, String> templateMetadata = new HashMap<>();
+ templateMetadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME,
+ Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ globalSubstitutionServiceTemplate.setMetadata(templateMetadata);
+ globalSubstitutionServiceTemplate
+ .setImports(GlobalTypesGenerator.getGlobalTypesImportList());
+ globalSubstitutionServiceTemplate
+ .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
+ return globalSubstitutionServiceTemplate;
+ }
+
+ /**
+ * Create substitution node type node type.
+ *
+ * @param substitutionServiceTemplate the substitution service template
+ * @return the node type
+ */
+ public NodeType createSubstitutionNodeType(ServiceTemplate substitutionServiceTemplate) {
+ NodeType substitutionNodeType = new NodeType();
+ substitutionNodeType.setDerived_from(ToscaNodeType.ABSTRACT_SUBSTITUTE);
+ substitutionNodeType.setDescription(substitutionServiceTemplate.getDescription());
+ substitutionNodeType
+ .setProperties(manageSubstitutionNodeTypeProperties(substitutionServiceTemplate));
+ substitutionNodeType
+ .setAttributes(manageSubstitutionNodeTypeAttributes(substitutionServiceTemplate));
+ return substitutionNodeType;
+ }
+
+ private Map<String, PropertyDefinition> manageSubstitutionNodeTypeProperties(
+ ServiceTemplate substitutionServiceTemplate) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, PropertyDefinition> substitutionNodeTypeProperties = new HashMap<>();
+ Map<String, ParameterDefinition> properties =
+ substitutionServiceTemplate.getTopology_template().getInputs();
+ if (properties == null) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return null;
+ }
+
+ PropertyDefinition propertyDefinition;
+ String toscaPropertyName;
+ for (Map.Entry<String, ParameterDefinition> entry : properties.entrySet()) {
+ toscaPropertyName = entry.getKey();
+ propertyDefinition = new PropertyDefinition();
+ ParameterDefinition parameterDefinition =
+ substitutionServiceTemplate.getTopology_template().getInputs().get(toscaPropertyName);
+ propertyDefinition.setType(parameterDefinition.getType());
+ propertyDefinition.setDescription(parameterDefinition.getDescription());
+ propertyDefinition.setRequired(parameterDefinition.getRequired());
+ propertyDefinition.set_default(parameterDefinition.get_default());
+ propertyDefinition.setConstraints(parameterDefinition.getConstraints());
+ propertyDefinition.setEntry_schema(parameterDefinition.getEntry_schema());
+ propertyDefinition.setStatus(parameterDefinition.getStatus());
+ substitutionNodeTypeProperties.put(toscaPropertyName, propertyDefinition);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return substitutionNodeTypeProperties;
+ }
+
+ private Map<String, AttributeDefinition> manageSubstitutionNodeTypeAttributes(
+ ServiceTemplate substitutionServiceTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, AttributeDefinition> substitutionNodeTypeAttributes = new HashMap<>();
+ Map<String, ParameterDefinition> attributes =
+ substitutionServiceTemplate.getTopology_template().getOutputs();
+ if (attributes == null) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return null;
+ }
+ AttributeDefinition attributeDefinition;
+ String toscaAttributeName;
+
+ for (Map.Entry<String, ParameterDefinition> entry : attributes.entrySet()) {
+ attributeDefinition = new AttributeDefinition();
+ toscaAttributeName = entry.getKey();
+ ParameterDefinition parameterDefinition =
+ substitutionServiceTemplate.getTopology_template().getOutputs().get(toscaAttributeName);
+ if (parameterDefinition.getType() != null && !parameterDefinition.getType().isEmpty()) {
+ attributeDefinition.setType(parameterDefinition.getType());
+ } else {
+ attributeDefinition.setType(PropertyType.STRING.getDisplayName());
+ }
+ attributeDefinition.setDescription(parameterDefinition.getDescription());
+ attributeDefinition.set_default(parameterDefinition.get_default());
+ attributeDefinition.setEntry_schema(parameterDefinition.getEntry_schema());
+ attributeDefinition.setStatus(parameterDefinition.getStatus());
+ substitutionNodeTypeAttributes.put(toscaAttributeName, attributeDefinition);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return substitutionNodeTypeAttributes;
+ }
+
+ /**
+ * .
+ * Create and add substitution mapping to the nested substitution service template, and update
+ * the subtitution node type accordingly with the exposed requerments and capabilities
+ *
+ * @param context the translation context
+ * @param substitutionNodeTypeKey the substitution node type key
+ * @param nestedSubstitutionServiceTemplate the nested substitution service template
+ * @param substitutionNodeType the substitution node type
+ */
+ public static void handleSubstitutionMapping(
+ TranslationContext context,
+ String substitutionNodeTypeKey,
+ ServiceTemplate nestedSubstitutionServiceTemplate,
+ NodeType substitutionNodeType) {
+ Map<String, Map<String, List<String>>> substitutionMapping =
+ getSubstitutionNodeTypeExposedConnectionPoints(substitutionNodeType,
+ nestedSubstitutionServiceTemplate, context);
+ //add substitution mapping after capability and requirement expose calculation
+ nestedSubstitutionServiceTemplate.getTopology_template().setSubstitution_mappings(
+ createSubstitutionTemplateSubMapping(substitutionNodeTypeKey,
+ substitutionNodeType, substitutionMapping));
+ }
+
+ /**
+ * Gets node type with flat hierarchy.
+ *
+ * @param nodeTypeId the node type id
+ * @param serviceTemplate the service template
+ * @param context the context
+ * @return the node type with flat hierarchy
+ */
+ public static NodeType getNodeTypeWithFlatHierarchy(String nodeTypeId,
+ ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ ToscaServiceModel toscaServiceModel = HeatToToscaUtil
+ .getToscaServiceModel(context, serviceTemplate.getMetadata());
+ NodeType flatNodeType = (NodeType) toscaAnalyzerService
+ .getFlatEntity(ToscaElementTypes.NODE_TYPE, nodeTypeId, serviceTemplate, toscaServiceModel);
+ return flatNodeType;
+ }
+
+ /**
+ * Create substitution node template node template.
+ *
+ * @param translateTo the translate to
+ * @param templateName the template name
+ * @param substitutionNodeTypeKey the substitution node type key
+ * @return the node template
+ */
+ public NodeTemplate createSubstitutionNodeTemplate(TranslateTo translateTo, String templateName,
+ String substitutionNodeTypeKey) {
+ NodeTemplate substitutionNodeTemplate = new NodeTemplate();
+ List<String> directiveList = new ArrayList<>();
+ directiveList.add(ToscaConstants.NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE);
+ substitutionNodeTemplate.setDirectives(directiveList);
+ substitutionNodeTemplate.setType(substitutionNodeTypeKey);
+ substitutionNodeTemplate.setProperties(
+ managerSubstitutionNodeTemplateProperties(translateTo, substitutionNodeTemplate,
+ templateName));
+ return substitutionNodeTemplate;
+ }
+
+ /**
+ * Create abstract substitution node template.
+ *
+ * @param translateTo the translate to
+ * @param templateName the template name
+ * @param substitutionNodeTypeKey the substitution node type key
+ * @return the abstract substitute node template
+ */
+ public static NodeTemplate createAbstractSubstitutionNodeTemplate(
+ TranslateTo translateTo,
+ String templateName,
+ String substitutionNodeTypeKey) {
+ NodeTemplate substitutionNodeTemplate = new NodeTemplate();
+ List<String> directiveList = new ArrayList<>();
+ directiveList.add(ToscaConstants.NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE);
+ substitutionNodeTemplate.setDirectives(directiveList);
+ substitutionNodeTemplate.setType(substitutionNodeTypeKey);
+ substitutionNodeTemplate.setProperties(
+ managerSubstitutionNodeTemplateProperties(translateTo, substitutionNodeTemplate,
+ templateName));
+ return substitutionNodeTemplate;
+ }
+
+
+ /**
+ * Checks if the source and target resource is a valid candidate for adding tosca dependency
+ * relationship.
+ *
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param sourceResource the source resource
+ * @param targetResource the target resource
+ * @param dependencyEntity the dependency entity
+ * @return true if the candidate resources are a valid combination for the dependency relationship
+ * and false otherwise
+ */
+ public static boolean isValidDependsOnCandidate(HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ Resource sourceResource,
+ Resource targetResource,
+ ConsolidationEntityType dependencyEntity,
+ TranslationContext context) {
+ dependencyEntity
+ .setEntityType(heatOrchestrationTemplate, sourceResource, targetResource, context);
+ ConsolidationEntityType sourceEntityType = dependencyEntity.getSourceEntityType();
+ ConsolidationEntityType targetEntityType = dependencyEntity.getTargetEntityType();
+
+ //Ignore Compute->Port, Compute->volume, Compute->Compute and Compute->VFC Nested relationships
+ if (sourceEntityType == ConsolidationEntityType.COMPUTE) {
+ if (targetEntityType == ConsolidationEntityType.COMPUTE
+ || targetEntityType == ConsolidationEntityType.VOLUME
+ || targetEntityType == ConsolidationEntityType.PORT
+ || targetEntityType == ConsolidationEntityType.VFC_NESTED) {
+ return false;
+ }
+ }
+ //Ignore Port->Compute, Port->volume, Port->Port and Port->VFC Nested relationships
+ if (sourceEntityType == ConsolidationEntityType.PORT) {
+ if (targetEntityType == ConsolidationEntityType.COMPUTE
+ || targetEntityType == ConsolidationEntityType.VOLUME
+ || targetEntityType == ConsolidationEntityType.PORT
+ || targetEntityType == ConsolidationEntityType.VFC_NESTED) {
+ return false;
+ }
+ }
+
+ //Ignore Volume->Compute, Volume->Volume, Volume->Port and Volume->VFC Nested relationships
+ if (sourceEntityType == ConsolidationEntityType.VOLUME) {
+ if (targetEntityType == ConsolidationEntityType.COMPUTE
+ || targetEntityType == ConsolidationEntityType.VOLUME
+ || targetEntityType == ConsolidationEntityType.PORT
+ || targetEntityType == ConsolidationEntityType.VFC_NESTED) {
+ return false;
+ }
+ }
+
+ //Ignore VFC Nested->Compute, VFC Nested->Volume, VFC Nested->Port and
+ // VFC Nested->VFC Nested relationships
+ if (sourceEntityType == ConsolidationEntityType.VFC_NESTED) {
+ if (targetEntityType == ConsolidationEntityType.COMPUTE
+ || targetEntityType == ConsolidationEntityType.VOLUME
+ || targetEntityType == ConsolidationEntityType.PORT
+ || targetEntityType == ConsolidationEntityType.VFC_NESTED) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private static Map<String, Object> managerSubstitutionNodeTemplateProperties(
+ TranslateTo translateTo,
+ Template template,
+ String templateName) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, Object> substitutionProperties = new HashMap<>();
+ Map<String, Object> heatProperties = translateTo.getResource().getProperties();
+ if (Objects.nonNull(heatProperties)) {
+ for (Map.Entry<String, Object> entry : heatProperties.entrySet()) {
+ Object property = TranslatorHeatToToscaPropertyConverter
+ .getToscaPropertyValue(translateTo.getServiceTemplate(),
+ translateTo.getTranslatedId(), entry.getKey(),
+ entry.getValue(), null, translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), template, translateTo.getContext());
+ substitutionProperties.put(entry.getKey(), property);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return addAbstractSubstitutionProperty(templateName, substitutionProperties);
+ }
+
+ private static Map<String, Object> addAbstractSubstitutionProperty(String templateName,
+ Map<String, Object>
+ substitutionProperties) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, Object> innerProps = new HashMap<>();
+ innerProps.put(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME,
+ ToscaUtil.getServiceTemplateFileName(templateName));
+ substitutionProperties.put(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME, innerProps);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return substitutionProperties;
+ }
+
+ private static SubstitutionMapping createSubstitutionTemplateSubMapping(
+ String nodeTypeKey,
+ NodeType substitutionNodeType,
+ Map<String, Map<String, List<String>>> mapping) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ SubstitutionMapping substitutionMapping = new SubstitutionMapping();
+ substitutionMapping.setNode_type(nodeTypeKey);
+ substitutionMapping.setCapabilities(
+ manageCapabilityMapping(substitutionNodeType.getCapabilities(), mapping.get("capability")));
+ substitutionMapping.setRequirements(
+ manageRequirementMapping(substitutionNodeType.getRequirements(),
+ mapping.get("requirement")));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return substitutionMapping;
+ }
+
+ private static Map<String, List<String>> manageRequirementMapping(
+ List<Map<String, RequirementDefinition>> requirementList,
+ Map<String, List<String>> requirementSubstitutionMapping) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (requirementList == null) {
+ return null;
+ }
+ Map<String, List<String>> requirementMapping = new HashMap<>();
+ String requirementKey;
+ List<String> requirementMap;
+ for (Map<String, RequirementDefinition> requirementDefMap : requirementList) {
+ for (Map.Entry<String, RequirementDefinition> entry : requirementDefMap.entrySet()) {
+ requirementKey = entry.getKey();
+ requirementMap = requirementSubstitutionMapping.get(requirementKey);
+ requirementMapping.put(requirementKey, requirementMap);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return requirementMapping;
+ }
+
+ private static Map<String, List<String>> manageCapabilityMapping(
+ Map<String, CapabilityDefinition> capabilities,
+ Map<String, List<String>> capabilitySubstitutionMapping) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (capabilities == null) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return null;
+ }
+
+ Map<String, List<String>> capabilityMapping = new HashMap<>();
+ String capabilityKey;
+ List<String> capabilityMap;
+ for (Map.Entry<String, CapabilityDefinition> entry : capabilities.entrySet()) {
+ capabilityKey = entry.getKey();
+ capabilityMap = capabilitySubstitutionMapping.get(capabilityKey);
+ capabilityMapping.put(capabilityKey, capabilityMap);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return capabilityMapping;
+ }
+
+ private static Map<String, Map<String, List<String>>>
+ getSubstitutionNodeTypeExposedConnectionPoints(NodeType substitutionNodeType,
+ ServiceTemplate substitutionServiceTemplate,
+ TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, NodeTemplate> nodeTemplates =
+ substitutionServiceTemplate.getTopology_template().getNode_templates();
+ String nodeTemplateId;
+ NodeTemplate nodeTemplate;
+ String nodeType;
+ Map<String, Map<String, List<String>>> substitutionMapping = new HashMap<>();
+ if (nodeTemplates == null) {
+ return substitutionMapping;
+ }
+
+ Map<String, List<String>> capabilitySubstitutionMapping = new HashMap<>();
+ Map<String, List<String>> requirementSubstitutionMapping = new HashMap<>();
+ substitutionMapping.put("capability", capabilitySubstitutionMapping);
+ substitutionMapping.put("requirement", requirementSubstitutionMapping);
+ List<Map<String, RequirementDefinition>> nodeTypeRequirementsDefinition;
+ Map<String, RequirementAssignment> nodeTemplateRequirementsAssignment;
+ List<Map<String, RequirementDefinition>> exposedRequirementsDefinition;
+ Map<String, Map<String, RequirementAssignment>> fullFilledRequirementsDefinition =
+ new HashMap<>();
+ Map<String, CapabilityDefinition> nodeTypeCapabilitiesDefinition = new HashMap<>();
+ Map<String, CapabilityDefinition> exposedCapabilitiesDefinition;
+
+ for (Map.Entry<String, NodeTemplate> entry : nodeTemplates.entrySet()) {
+ nodeTemplateId = entry.getKey();
+ nodeTemplate = entry.getValue();
+ nodeType = nodeTemplate.getType();
+
+ // get requirements
+ nodeTypeRequirementsDefinition =
+ getNodeTypeReqs(nodeType, nodeTemplateId, substitutionServiceTemplate,
+ requirementSubstitutionMapping, context);
+ nodeTemplateRequirementsAssignment = DataModelUtil.getNodeTemplateRequirements(nodeTemplate);
+ fullFilledRequirementsDefinition.put(nodeTemplateId, nodeTemplateRequirementsAssignment);
+ //set substitution node type requirements
+ exposedRequirementsDefinition = calculateExposedRequirements(nodeTypeRequirementsDefinition,
+ nodeTemplateRequirementsAssignment);
+ addSubstitutionNodeTypeRequirements(substitutionNodeType, exposedRequirementsDefinition,
+ nodeTemplateId);
+
+ //get capabilities
+ addNodeTypeCapabilitiesToSubMapping(nodeTypeCapabilitiesDefinition,
+ capabilitySubstitutionMapping, nodeType,
+ nodeTemplateId, substitutionServiceTemplate, context);
+ }
+
+ exposedCapabilitiesDefinition = calculateExposedCapabilities(nodeTypeCapabilitiesDefinition,
+ fullFilledRequirementsDefinition);
+ DataModelUtil.addNodeTypeCapabilitiesDef(substitutionNodeType, exposedCapabilitiesDefinition);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return substitutionMapping;
+ }
+
+ private static Map<String, CapabilityDefinition> calculateExposedCapabilities(
+ Map<String, CapabilityDefinition> nodeTypeCapabilitiesDefinition,
+ Map<String, Map<String, RequirementAssignment>> fullFilledRequirementsDefinitionMap) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String capabilityKey;
+ String capability;
+ String node;
+ for (Map.Entry<String, Map<String, RequirementAssignment>> entry :
+ fullFilledRequirementsDefinitionMap.entrySet()) {
+ for (Map.Entry<String, RequirementAssignment> fullFilledEntry : entry.getValue().entrySet()) {
+
+ capability = fullFilledEntry.getValue().getCapability();
+ fullFilledEntry.getValue().getOccurrences();
+ node = fullFilledEntry.getValue().getNode();
+ capabilityKey = capability + "_" + node;
+ CapabilityDefinition capabilityDefinition = nodeTypeCapabilitiesDefinition.get(
+ capabilityKey);
+ if (capabilityDefinition != null) {
+ CapabilityDefinition clonedCapabilityDefinition = capabilityDefinition.clone();
+ nodeTypeCapabilitiesDefinition.put(capabilityKey, capabilityDefinition.clone());
+ if (evaluateCapabilityFulfillment(clonedCapabilityDefinition)) {
+ nodeTypeCapabilitiesDefinition.remove(capabilityKey);
+ } else {
+ nodeTypeCapabilitiesDefinition.put(capabilityKey, clonedCapabilityDefinition);
+ }
+ }
+ }
+ }
+
+ Map<String, CapabilityDefinition> exposedCapabilitiesDefinition = new HashMap<>();
+ for (Map.Entry<String, CapabilityDefinition> entry : nodeTypeCapabilitiesDefinition
+ .entrySet()) {
+ exposedCapabilitiesDefinition.put(entry.getKey(), entry.getValue());
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return exposedCapabilitiesDefinition;
+ }
+
+ private static void addNodeTypeCapabilitiesToSubMapping(
+ Map<String, CapabilityDefinition> nodeTypeCapabilitiesDefinition,
+ Map<String, List<String>> capabilitySubstitutionMapping, String type, String templateName,
+ ServiceTemplate serviceTemplate, TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ NodeType flatNodeType =
+ getNodeTypeWithFlatHierarchy(type, serviceTemplate, context);
+ String capabilityKey;
+ List<String> capabilityMapping;
+ if (flatNodeType.getCapabilities() != null) {
+ for (Map.Entry<String, CapabilityDefinition> capabilityNodeEntry : flatNodeType
+ .getCapabilities()
+ .entrySet()) {
+ capabilityKey = capabilityNodeEntry.getKey() + "_" + templateName;
+ nodeTypeCapabilitiesDefinition.put(capabilityKey, capabilityNodeEntry.getValue().clone());
+ capabilityMapping = new ArrayList<>();
+ capabilityMapping.add(templateName);
+ capabilityMapping.add(capabilityNodeEntry.getKey());
+ capabilitySubstitutionMapping.put(capabilityKey, capabilityMapping);
+ }
+ }
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private static void addSubstitutionNodeTypeRequirements(NodeType substitutionNodeType,
+ List<Map<String, RequirementDefinition>>
+ requirementsList,
+ String templateName) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (requirementsList == null || requirementsList.size() == 0) {
+ return;
+ }
+
+ if (substitutionNodeType.getRequirements() == null) {
+ substitutionNodeType.setRequirements(new ArrayList<>());
+ }
+
+ for (Map<String, RequirementDefinition> requirementDef : requirementsList) {
+ for (Map.Entry<String, RequirementDefinition> entry : requirementDef.entrySet()) {
+ Map<String, RequirementDefinition> requirementMap = new HashMap<>();
+ requirementMap.put(entry.getKey() + "_" + templateName, entry.getValue().clone());
+ substitutionNodeType.getRequirements().add(requirementMap);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private static List<Map<String, RequirementDefinition>> getNodeTypeReqs(
+ String type,
+ String templateName,
+ ServiceTemplate serviceTemplate,
+ Map<String, List<String>> requirementSubstitutionMapping,
+ TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ List<Map<String, RequirementDefinition>> requirementList = new ArrayList<>();
+ NodeType flatNodeType =
+ getNodeTypeWithFlatHierarchy(type, serviceTemplate, context);
+ List<String> requirementMapping;
+
+ if (flatNodeType.getRequirements() != null) {
+ for (Map<String, RequirementDefinition> requirementMap : flatNodeType.getRequirements()) {
+ for (Map.Entry<String, RequirementDefinition> requirementNodeEntry : requirementMap
+ .entrySet()) {
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ RequirementDefinition requirementNodeEntryValue = toscaExtensionYamlUtil
+ .yamlToObject(toscaExtensionYamlUtil.objectToYaml(requirementNodeEntry.getValue()),
+ RequirementDefinition.class);
+ if (requirementNodeEntryValue.getOccurrences() == null) {
+ requirementNodeEntryValue.setOccurrences(new Object[]{1, 1});
+ }
+ Map<String, RequirementDefinition> requirementDef = new HashMap<>();
+ requirementDef.put(requirementNodeEntry.getKey(), requirementNodeEntryValue);
+ DataModelUtil.addRequirementToList(requirementList, requirementDef);
+ requirementMapping = new ArrayList<>();
+ requirementMapping.add(templateName);
+ requirementMapping.add(requirementNodeEntry.getKey());
+ requirementSubstitutionMapping
+ .put(requirementNodeEntry.getKey() + "_" + templateName, requirementMapping);
+ if (requirementNodeEntryValue.getNode() == null) {
+ requirementNodeEntryValue.setOccurrences(new Object[]{1, 1});
+ }
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return requirementList;
+ }
+
+ private static List<Map<String, RequirementDefinition>> calculateExposedRequirements(
+ List<Map<String, RequirementDefinition>> nodeTypeRequirementsDefinitionList,
+ Map<String, RequirementAssignment> nodeTemplateRequirementsAssignment) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (nodeTypeRequirementsDefinitionList == null) {
+ return null;
+ }
+ for (Map.Entry<String, RequirementAssignment> entry : nodeTemplateRequirementsAssignment
+ .entrySet()) {
+ if (entry.getValue().getNode() != null) {
+ Optional<RequirementDefinition> requirementDefinition =
+ DataModelUtil.getRequirementDefinition(nodeTypeRequirementsDefinitionList, entry
+ .getKey());
+ RequirementDefinition cloneRequirementDefinition;
+ if (requirementDefinition.isPresent()) {
+ cloneRequirementDefinition = requirementDefinition.get().clone();
+ if (!evaluateRequirementFulfillment(cloneRequirementDefinition)) {
+ CommonMethods.mergeEntryInList(entry.getKey(), cloneRequirementDefinition,
+ nodeTypeRequirementsDefinitionList);
+ } else {
+ DataModelUtil.removeRequirementsDefinition(nodeTypeRequirementsDefinitionList, entry
+ .getKey());
+ }
+ }
+ } else {
+ for (Map<String, RequirementDefinition> nodeTypeRequirementsMap :
+ nodeTypeRequirementsDefinitionList) {
+ Object max = nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences() != null
+ && nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences().length > 0
+ ? nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences()[1] : 1;
+ Object min = nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences() != null
+ && nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences().length > 0
+ ? nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences()[0] : 1;
+ nodeTypeRequirementsMap.get(entry.getKey()).setOccurrences(new Object[]{min, max});
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return nodeTypeRequirementsDefinitionList;
+ }
+
+ private static boolean evaluateRequirementFulfillment(RequirementDefinition
+ requirementDefinition) {
+ Object[] occurrences = requirementDefinition.getOccurrences();
+ if (occurrences == null) {
+ requirementDefinition.setOccurrences(new Object[]{1, 1});
+ return false;
+ }
+ if (occurrences[1].equals(ToscaConstants.UNBOUNDED)) {
+ return false;
+ }
+
+ if (occurrences[1].equals(1)) {
+ return true;
+ }
+ occurrences[1] = (Integer) occurrences[1] - 1;
+ return false;
+ }
+
+ private static boolean evaluateCapabilityFulfillment(CapabilityDefinition capabilityDefinition) {
+
+ Object[] occurrences = capabilityDefinition.getOccurrences();
+ if (occurrences == null) {
+ capabilityDefinition.setOccurrences(new Object[]{1, ToscaConstants.UNBOUNDED});
+ return false;
+ }
+ if (occurrences[1].equals(ToscaConstants.UNBOUNDED)) {
+ return false;
+ }
+
+ if (occurrences[1].equals(1)) {
+ return true;
+ }
+ occurrences[1] = (Integer) occurrences[1] - 1;
+ return false;
+ }
+
+ /**
+ * Fetch global substitution service template service template.
+ *
+ * @param serviceTemplate the service template
+ * @param context the context
+ * @return the service template
+ */
+ public static ServiceTemplate fetchGlobalSubstitutionServiceTemplate(
+ ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+ ServiceTemplate globalSubstitutionServiceTemplate =
+ context.getTranslatedServiceTemplates()
+ .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ if (globalSubstitutionServiceTemplate == null) {
+ globalSubstitutionServiceTemplate =
+ HeatToToscaUtil.createInitGlobalSubstitutionServiceTemplate();
+ context.getTranslatedServiceTemplates()
+ .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ globalSubstitutionServiceTemplate);
+ }
+ boolean isImportAddedToServiceTemplate =
+ DataModelUtil.isImportAddedToServiceTemplate(serviceTemplate.getImports(), Constants
+ .GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ if (!isImportAddedToServiceTemplate) {
+ serviceTemplate.getImports()
+ .addAll(
+ HeatToToscaUtil.createImportList(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
+ }
+ return globalSubstitutionServiceTemplate;
+ }
+
+ public static List<Map<String, Import>> createImportList(String templateName) {
+ List<Map<String, Import>> imports = new ArrayList<>();
+ Map<String, Import> importsMap = new HashMap<>();
+ importsMap.put(templateName, HeatToToscaUtil.createServiceTemplateImport(templateName));
+ imports.add(importsMap);
+ return imports;
+ }
+
+ /**
+ * Create service template import import.
+ *
+ * @param serviceTemplate the service template
+ * @return the import
+ */
+ public static Import createServiceTemplateImport(ServiceTemplate serviceTemplate) {
+ Import serviceTemplateImport = new Import();
+ serviceTemplateImport.setFile(ToscaUtil.getServiceTemplateFileName(serviceTemplate));
+ return serviceTemplateImport;
+ }
+
+ /**
+ * Create service template import import.
+ *
+ * @param metadataTemplateName the service template name
+ * @return the import
+ */
+ public static Import createServiceTemplateImport(String metadataTemplateName) {
+ Import serviceTemplateImport = new Import();
+ serviceTemplateImport.setFile(ToscaUtil.getServiceTemplateFileName(metadataTemplateName));
+ return serviceTemplateImport;
+ }
+
+ public static ToscaServiceModel createToscaServiceModel(ServiceTemplate
+ entryDefinitionServiceTemplate,
+ TranslationContext translationContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return new ToscaServiceModel(getCsarArtifactFiles(translationContext),
+ getServiceTemplates(translationContext),
+ ToscaUtil.getServiceTemplateFileName(entryDefinitionServiceTemplate));
+ }
+
+ private static FileContentHandler getCsarArtifactFiles(TranslationContext translationContext) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ FileContentHandler artifactFiles = new FileContentHandler();
+ artifactFiles.setFiles(translationContext.getFiles());
+ artifactFiles.setFiles(translationContext.getExternalArtifacts());
+
+ HeatTreeManager heatTreeManager =
+ HeatTreeManagerUtil.initHeatTreeManager(translationContext.getFiles());
+ heatTreeManager.createTree();
+ ValidationStructureList validationStructureList =
+ new ValidationStructureList(heatTreeManager.getTree());
+ byte[] validationStructureFile =
+ FileUtils.convertToBytes(validationStructureList, FileUtils.FileExtension.JSON);
+ artifactFiles.addFile("HEAT.meta", validationStructureFile);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return artifactFiles;
+ }
+
+
+ private static Map<String, ServiceTemplate> getServiceTemplates(TranslationContext
+ translationContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<ServiceTemplate> serviceTemplates = new ArrayList<>();
+ serviceTemplates.addAll(GlobalTypesGenerator.getGlobalTypesServiceTemplate().values());
+ serviceTemplates.addAll(translationContext.getTranslatedServiceTemplates().values());
+ Map<String, ServiceTemplate> serviceTemplatesMap = new HashMap<>();
+
+ for (ServiceTemplate template : serviceTemplates) {
+ serviceTemplatesMap.put(ToscaUtil.getServiceTemplateFileName(template), template);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return serviceTemplatesMap;
+ }
+
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Status.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/NameExtractor.java
index 0805982a54..fc4c3f8841 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Status.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/NameExtractor.java
@@ -18,25 +18,17 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.translator.services.heattotosca;
-import java.util.Map;
-
-public enum Status {
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
- SUPPORTED("supported"),
- UNSUPPORTED("unsupported"),
- EXPERIMENTAL("experimental"),
- DEPRECATED("deprecated"),;
- private String displayName;
-
- Status(String displayName) {
- this.displayName = displayName;
- }
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
- public String getDisplayName() {
- return displayName;
- }
+public interface NameExtractor {
+ String extractNodeTypeName(Resource resource, String resourceId, String translatedId);
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/NameExtractorUtil.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/NameExtractorUtil.java
new file mode 100644
index 0000000000..8241603fed
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/NameExtractorUtil.java
@@ -0,0 +1,77 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedPropertyVal;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.PropertyRegexMatcher;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.regex.Pattern;
+
+public class NameExtractorUtil {
+
+ /**
+ * Extract Node Type Name By Properties Priority.
+ * @param properties properties list
+ * @param propertiesRegexMatchers Regex expression list
+ * @return node type name
+ */
+ public static Optional<String> extractNodeTypeNameByPropertiesPriority(
+ Map<String, Object> properties,
+ List<PropertyRegexMatcher> propertiesRegexMatchers) {
+
+ for (PropertyRegexMatcher propertyRegexMatcher : propertiesRegexMatchers) {
+ Optional<String> parameterNameValue =
+ HeatToToscaUtil.getPropertyParameterNameValue(
+ properties.get(propertyRegexMatcher.getPropertyName()));
+ if (parameterNameValue.isPresent()) {
+ if (isPropertyValueMatchNamingConvention(propertyRegexMatcher, parameterNameValue.get())) {
+ return Optional.of(parameterNameValue.get().substring(0, parameterNameValue.get()
+ .lastIndexOf(propertyRegexMatcher.getStringToSearchForPropertyValue())));
+ }
+ }
+ }
+ return Optional.empty();
+ }
+
+ /**
+ * Check if property value match the naming convention using Regex expression.
+ * @param propertyRegexMatcher naming convention using Regex expression
+ * @param propertyValue property value
+ * @return true is there is a match, false otherwise
+ */
+ public static boolean isPropertyValueMatchNamingConvention(PropertyRegexMatcher
+ propertyRegexMatcher,
+ String propertyValue) {
+ for (Pattern pattern : propertyRegexMatcher.getRegexPatterns()) {
+ if (pattern.matcher(propertyValue).matches()) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslation.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslation.java
index 231eb42c03..634e703f5e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslation.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslation.java
@@ -24,9 +24,11 @@ package org.openecomp.sdc.translator.services.heattotosca;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import java.util.Optional;
+
public interface ResourceTranslation {
//return the Id of translated object (NodeTemplate, RelationshipTemplate and etc)
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslationFactory.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslationFactory.java
index 730c2ddd7a..ab8230d946 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslationFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/ResourceTranslationFactory.java
@@ -21,87 +21,56 @@
package org.openecomp.sdc.translator.services.heattotosca;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationBase;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationBase;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationCinderVolumeAttachmentImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationCinderVolumeImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailAttachPolicyImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailNetworkPolicyImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailServiceInstanceImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailServiceTemplateImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailV2NetworkPolicyImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailV2VirtualNetworkImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailV2VmInterfaceImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationContrailVirtualNetworkImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationDefaultImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNestedImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNeutronNetImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNeutronPortImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNeutronSecurityGroupImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNeutronSubnetImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNovaServerGroupsImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNovaServerImpl;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationResourceGroupImpl;
+import java.util.Map;
-import java.util.Objects;
public class ResourceTranslationFactory {
+ private static Map<String, ImplementationConfiguration> resourceTranslationImplMap;
+
+ static {
+ Configuration config = ConfigurationManager.lookup();
+ resourceTranslationImplMap = config.populateMap(ConfigConstants.TRANSLATOR_NAMESPACE,
+ ConfigConstants.RESOURCE_TRANSLATION_IMPL_KEY, ImplementationConfiguration.class);
+ resourceTranslationImplMap.putAll(config.populateMap(ConfigConstants.MANDATORY_TRANSLATOR_NAMESPACE,
+ ConfigConstants.RESOURCE_TRANSLATION_IMPL_KEY, ImplementationConfiguration.class));
+ }
/**
- * Gets instance.
+ * Gets resource translation instance.
*
* @param resource the resource
* @return the instance
*/
public static ResourceTranslationBase getInstance(Resource resource) {
- HeatResourcesTypes heatResource = HeatResourcesTypes.findByHeatResource(resource.getType());
- if (Objects.isNull(heatResource)) {
- if (HeatToToscaUtil.isYmlFileType(resource.getType())) {
- return new ResourceTranslationNestedImpl();
- }
- return new ResourceTranslationDefaultImpl();
- }
- switch (heatResource) {
- case NOVA_SERVER_RESOURCE_TYPE:
- return new ResourceTranslationNovaServerImpl();
- case NOVA_SERVER_GROUP_RESOURCE_TYPE:
- return new ResourceTranslationNovaServerGroupsImpl();
- case NEUTRON_SECURITY_GROUP_RESOURCE_TYPE:
- return new ResourceTranslationNeutronSecurityGroupImpl();
- case NEUTRON_PORT_RESOURCE_TYPE:
- return new ResourceTranslationNeutronPortImpl();
- case CONTRAIL_VIRTUAL_NETWORK_RESOURCE_TYPE:
- return new ResourceTranslationContrailVirtualNetworkImpl();
- case CONTRAIL_V2_VIRTUAL_NETWORK_RESOURCE_TYPE:
- return new ResourceTranslationContrailV2VirtualNetworkImpl();
- case CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE:
- return new ResourceTranslationContrailV2VmInterfaceImpl();
- case CINDER_VOLUME_RESOURCE_TYPE:
- return new ResourceTranslationCinderVolumeImpl();
- case CINDER_VOLUME_ATTACHMENT_RESOURCE_TYPE:
- return new ResourceTranslationCinderVolumeAttachmentImpl();
- case NEUTRON_NET_RESOURCE_TYPE:
- return new ResourceTranslationNeutronNetImpl();
- case NEUTRON_SUBNET_RESOURCE_TYPE:
- return new ResourceTranslationNeutronSubnetImpl();
- case CONTRAIL_NETWORK_RULE_RESOURCE_TYPE:
- return new ResourceTranslationContrailNetworkPolicyImpl();
- case CONTRAIL_V2_NETWORK_RULE_RESOURCE_TYPE:
- return new ResourceTranslationContrailV2NetworkPolicyImpl();
- case CONTRAIL_NETWORK_ATTACH_RULE_RESOURCE_TYPE:
- return new ResourceTranslationContrailAttachPolicyImpl();
- case RESOURCE_GROUP_RESOURCE_TYPE:
- return new ResourceTranslationResourceGroupImpl();
- case CONTRAIL_SERVICE_TEMPLATE:
- return new ResourceTranslationContrailServiceTemplateImpl();
- case CONTRAIL_SERVICE_INSTANCE:
- return new ResourceTranslationContrailServiceInstanceImpl();
- default:
- return new ResourceTranslationDefaultImpl();
+ if (isSupportedResource(resource.getType())) {
+ return getResourceTranslationImpl(resource.getType());
+ } else if (HeatToToscaUtil.isYmlFileType(resource.getType())) {
+ return getResourceTranslationImpl(ConfigConstants.NESTED_RESOURCE_TRANSLATION_IMPL_KEY);
}
+ return getResourceTranslationImpl(ConfigConstants.DEFAULT_RESOURCE_TRANSLATION_IMPL_KEY);
+ }
+
+ private static ResourceTranslationBase getResourceTranslationImpl(String resourceImplKey) {
+ String resourceTranslationImplClassName = resourceTranslationImplMap
+ .get(resourceImplKey).getImplementationClass();
+ return CommonMethods
+ .newInstance(resourceTranslationImplClassName, ResourceTranslationBase.class);
}
+ private static boolean isSupportedResource(String resourceType) {
+ if (resourceTranslationImplMap.containsKey(resourceType)
+ && resourceTranslationImplMap.get(resourceType).isEnable()) {
+ return true;
+ }
+ return false;
+ }
}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationContext.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationContext.java
deleted file mode 100644
index a242eda3f0..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationContext.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca;
-
-import org.openecomp.core.utilities.file.FileContentHandler;
-import org.openecomp.core.utilities.file.FileUtils;
-import org.openecomp.core.utilities.json.JsonUtil;
-import org.openecomp.sdc.common.utils.AsdcCommon;
-import org.openecomp.sdc.heat.datatypes.manifest.FileData;
-import org.openecomp.sdc.heat.datatypes.manifest.ManifestFile;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
-
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-
-public class TranslationContext {
-
-
- private static Map<String, Map<String, Map<String, String>>> translationMapping;
- private static Map<String, ServiceTemplate> globalServiceTemplates;
-
- static {
-
- String propertyFileName = AsdcCommon.HEAT_TO_TOSCA_MAPPING_CONF;
- InputStream is = FileUtils.getFileInputStream(propertyFileName);
- translationMapping = JsonUtil.json2Object(is, Map.class);
- globalServiceTemplates = GlobalTypesGenerator.getGlobalTypesServiceTemplate();
- }
-
- private ManifestFile manifest;
-
- private FileContentHandler files = new FileContentHandler();
-
- private Map<String, FileData.Type> manifestFiles = new HashMap<>();
- //Key - file name, value - file type
- private Set<String> nestedHeatsFiles = new HashSet<>();
- private FileContentHandler externalArtifacts = new FileContentHandler();
-
- private Map<String, Set<String>> translatedResources = new HashMap<>();
- // Key - heat file name,value - set of heat resource ids which were translated
- private Map<String, Set<String>> heatStackGroupMembers = new HashMap<>();
- // Key - heat file name, value - translated Node template id
- private Map<String, Map<String, String>> translatedIds = new HashMap<>();
- // Key - heat file name, value - Map with Key - heat resource Id, Value - tosca entity template id
- private Map<String, ServiceTemplate> translatedServiceTemplates = new HashMap<>();
- // key - service template type, value - translated service templates
- private Map<String, TranslatedHeatResource> heatSharedResourcesByParam = new HashMap<>();
- //key - heat param name, value - shared resource data
-
- public void addManifestFile(String fileName, FileData.Type fileType) {
- this.manifestFiles.put(fileName, fileType);
- }
-
- public Set<String> getNestedHeatsFiles() {
- return nestedHeatsFiles;
- }
-
- public Map<String, Set<String>> getHeatStackGroupMembers() {
- return heatStackGroupMembers;
- }
-
- public FileContentHandler getFiles() {
- return files;
- }
-
- public void setFiles(Map<String, byte[]> files) {
- this.files.putAll(files);
- }
-
- public InputStream getFileContent(String fileName) {
- return files.getFileContent(fileName);
- }
-
- public void addFile(String name, byte[] content) {
- files.addFile(name, content);
- }
-
- public ManifestFile getManifest() {
- return manifest;
- }
-
- public void setManifest(ManifestFile manifest) {
- this.manifest = manifest;
- }
-
- public Map<String, Set<String>> getTranslatedResources() {
- return translatedResources;
- }
-
- public Map<String, Map<String, String>> getTranslatedIds() {
- return translatedIds;
- }
-
- // get tosca name from mapping configuration file
- //element type - parameter/attribute
- // element name - heat parameter/attribute name
- //return value - tosca parameter/attribute name
- public String getElementMapping(String resourceType, String elementType, String elementName) {
- return translationMapping.get(resourceType).get(elementType).get(elementName);
- }
-
- public Map<String, String> getElementMapping(String resourceType, String elementType) {
- return translationMapping.get(resourceType).get(elementType);
- }
-
- public Set<String> getElementSet(String resourceType, String elementType) {
- return translationMapping.get(resourceType).get(elementType).keySet();
- }
-
- public Map<String, ServiceTemplate> getTranslatedServiceTemplates() {
- return translatedServiceTemplates;
- }
-
- public ServiceTemplate getGlobalSubstitutionServiceTemplate() {
- return getTranslatedServiceTemplates().get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
- }
-
- public FileContentHandler getExternalArtifacts() {
- return externalArtifacts;
- }
-
- public void addExternalArtifacts(String name, byte[] content) {
- this.externalArtifacts.addFile(name, content);
- }
-
-
- public Map<String, TranslatedHeatResource> getHeatSharedResourcesByParam() {
- return heatSharedResourcesByParam;
- }
-
- public void addHeatSharedResourcesByParam(String parameterName, String resourceId,
- Resource resource) {
- this.addHeatSharedResourcesByParam(parameterName,
- new TranslatedHeatResource(resourceId, resource));
- }
-
- public void addHeatSharedResourcesByParam(String parameterName,
- TranslatedHeatResource translatedHeatResource) {
- this.heatSharedResourcesByParam.put(parameterName, translatedHeatResource);
- }
-
- public Map<String, ServiceTemplate> getGlobalServiceTemplates() {
- return globalServiceTemplates;
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationService.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationService.java
index 1d90d8b2af..ab41d43cc9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationService.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/TranslationService.java
@@ -20,11 +20,13 @@
package org.openecomp.sdc.translator.services.heattotosca;
+import org.apache.commons.collections4.MapUtils;
import org.openecomp.core.translator.datatypes.TranslatorOutput;
import org.openecomp.core.utilities.file.FileContentHandler;
import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.core.utilities.yaml.YamlUtil;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.model.Environment;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
@@ -33,38 +35,50 @@ import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.heat.datatypes.structure.ValidationStructureList;
import org.openecomp.sdc.heat.services.tree.HeatTreeManager;
import org.openecomp.sdc.heat.services.tree.HeatTreeManagerUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaGroupType;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Metadata;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.datatypes.model.TopologyTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
import org.openecomp.sdc.tosca.services.ToscaUtil;
import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.FileDataCollection;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.EntityConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.GetAttrFuncData;
import org.openecomp.sdc.translator.services.heattotosca.errors.ResourceNotFoundInHeatFileErrorBuilder;
import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaParameterConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.Set;
-
public class TranslationService {
- protected static Logger logger = LoggerFactory.getLogger(TranslationService.class);
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(TranslationService.class);
+ protected static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
/**
* Gets types to process by translator.
@@ -85,6 +99,8 @@ public class TranslationService {
* @return the translator output
*/
public TranslatorOutput translateHeatFiles(TranslationContext translationContext) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
ServiceTemplate mainServiceTemplate = createMainServiceTemplate(translationContext);
List<FileData> fileDataList = translationContext.getManifest().getContent().getData();
FileDataCollection fileDataCollection = HeatToToscaUtil.getFileCollectionsByFilter(fileDataList,
@@ -102,59 +118,31 @@ public class TranslationService {
}
ToscaServiceModel toscaServiceModel =
- createToscaServiceModel(mainServiceTemplate, translationContext);
+ HeatToToscaUtil.createToscaServiceModel(mainServiceTemplate, translationContext);
TranslatorOutput translatorOutput = new TranslatorOutput();
translatorOutput.setToscaServiceModel(toscaServiceModel);
- return translatorOutput;
- }
- private ToscaServiceModel createToscaServiceModel(ServiceTemplate entryDefinitionServiceTemplate,
- TranslationContext translationContext) {
- return new ToscaServiceModel(getCsarArtifactFiles(translationContext),
- getServiceTemplates(translationContext),
- ToscaUtil.getServiceTemplateFileName(entryDefinitionServiceTemplate));
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return translatorOutput;
}
- private Map<String, ServiceTemplate> getServiceTemplates(TranslationContext translationContext) {
- List<ServiceTemplate> serviceTemplates = new ArrayList<>();
- serviceTemplates.addAll(GlobalTypesGenerator.getGlobalTypesServiceTemplate().values());
- serviceTemplates.addAll(translationContext.getTranslatedServiceTemplates().values());
- Map<String, ServiceTemplate> serviceTemplatesMap = new HashMap<>();
+ private ServiceTemplate createMainServiceTemplate(TranslationContext translationContext) {
- for (ServiceTemplate template : serviceTemplates) {
- serviceTemplatesMap.put(ToscaUtil.getServiceTemplateFileName(template), template);
- }
- return serviceTemplatesMap;
- }
- private FileContentHandler getCsarArtifactFiles(TranslationContext translationContext) {
- FileContentHandler artifactFiles = new FileContentHandler();
- artifactFiles.setFiles(translationContext.getFiles());
- artifactFiles.setFiles(translationContext.getExternalArtifacts());
-
- HeatTreeManager heatTreeManager =
- HeatTreeManagerUtil.initHeatTreeManager(translationContext.getFiles());
- heatTreeManager.createTree();
- ValidationStructureList validationStructureList =
- new ValidationStructureList(heatTreeManager.getTree());
- byte[] validationStructureFile =
- FileUtils.convertToBytes(validationStructureList, FileUtils.FileExtension.JSON);
- artifactFiles.addFile("HEAT.meta", validationStructureFile);
-
- return artifactFiles;
- }
+ mdcDataDebugMessage.debugEntryMessage(null, null);
- private ServiceTemplate createMainServiceTemplate(TranslationContext translationContext) {
ServiceTemplate mainServiceTemplate = new ServiceTemplate();
- translationContext.getTranslatedServiceTemplates().put("Main", mainServiceTemplate);
- Metadata templateMetadata = new Metadata();
- templateMetadata.setTemplate_name("Main");
+ translationContext.getTranslatedServiceTemplates()
+ .put(Constants.MAIN_TEMPLATE_NAME, mainServiceTemplate);
+ Map<String, String> templateMetadata = new HashMap<>();
+ templateMetadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, Constants.MAIN_TEMPLATE_NAME);
mainServiceTemplate.setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
mainServiceTemplate.setMetadata(templateMetadata);
mainServiceTemplate.setTopology_template(new TopologyTemplate());
mainServiceTemplate.setImports(GlobalTypesGenerator.getGlobalTypesImportList());
+ mdcDataDebugMessage.debugExitMessage(null, null);
return mainServiceTemplate;
}
@@ -167,6 +155,10 @@ public class TranslationService {
*/
public void translateHeatFile(ServiceTemplate serviceTemplate, FileData heatFileData,
TranslationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String heatFileName = heatFileData.getFile();
HeatOrchestrationTemplate heatOrchestrationTemplate = new YamlUtil()
.yamlToObject(context.getFileContent(heatFileName), HeatOrchestrationTemplate.class);
@@ -177,23 +169,47 @@ public class TranslationService {
translateOutputParameters(serviceTemplate, heatOrchestrationTemplate, heatFileData,
heatFileName, context);
createHeatStackGroup(serviceTemplate, heatFileData, heatOrchestrationTemplate, context);
+ handleHeatPseudoParam(heatFileName, serviceTemplate, context);
if (Objects.nonNull(heatFileData.getData())) {
heatFileData.getData().stream().filter(data -> data.getType() == FileData.Type.HEAT_VOL)
.forEach(data -> translateHeatFile(serviceTemplate, data, context));
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void handleHeatPseudoParam(String heatFileName, ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+ Map<String, String> translatedHeatPseudoParam =
+ context.getUsedHeatPseudoParams().get(heatFileName);
+ if (Objects.nonNull(translatedHeatPseudoParam)) {
+ for (String heatPseudoParam : translatedHeatPseudoParam.keySet()) {
+ if (!serviceTemplate.getTopology_template().getInputs().containsKey(heatPseudoParam)) {
+ ParameterDefinition parameterDefinition = new ParameterDefinition();
+ parameterDefinition.setType(PropertyType.STRING.getDisplayName());
+ parameterDefinition.setRequired(false);
+ String parameterDefinitionId = translatedHeatPseudoParam.get(heatPseudoParam);
+ DataModelUtil.addInputParameterToTopologyTemplate(serviceTemplate, parameterDefinitionId,
+ parameterDefinition);
+ }
+ }
+ }
}
private void createHeatStackGroup(ServiceTemplate serviceTemplate, FileData heatFileData,
HeatOrchestrationTemplate heatOrchestrationTemplate,
TranslationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
- String fileName = heatFileData.getFile();
- final String fileNameWoExtension =
- FileUtils.getFileWithoutExtention(fileName);//.heatFileData.getFile().split("\\.")[0];
+ final String fileName = heatFileData.getFile();
+ final String heatStackGroupId = FileUtils.getFileWithoutExtention(fileName) + "_group";
GroupDefinition groupDefinition = new GroupDefinition();
- groupDefinition.setType(ToscaGroupType.HEAT_STACK.getDisplayName());
+ groupDefinition.setType(ToscaGroupType.HEAT_STACK);
groupDefinition.setProperties(new HashMap<>());
groupDefinition.getProperties()
.put("heat_file", "../" + toscaFileOutputService.getArtifactsFolderName() + "/" + fileName);
@@ -207,11 +223,10 @@ public class TranslationService {
return; //not creating a group when no resources are present in the heat input
}
groupDefinition.getMembers().addAll(heatStackGroupMembers.get(fileName));
- if (serviceTemplate.getTopology_template().getGroups() == null) {
- Map<String, GroupDefinition> groups = new HashMap<>();
- serviceTemplate.getTopology_template().setGroups(groups);
- }
- serviceTemplate.getTopology_template().getGroups().put(fileNameWoExtension, groupDefinition);
+ DataModelUtil
+ .addGroupDefinitionToTopologyTemplate(serviceTemplate, heatStackGroupId, groupDefinition);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void translateInputParameters(ServiceTemplate serviceTemplate,
@@ -219,13 +234,16 @@ public class TranslationService {
FileData heatFileData, TranslationContext context,
String heatFileName) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (heatOrchestrationTemplate.getParameters() == null) {
return;
}
Map<String, ParameterDefinition> parameterDefinitionMap =
TranslatorHeatToToscaParameterConverter
- .parameterConverter(heatOrchestrationTemplate.getParameters(),
+ .parameterConverter(serviceTemplate,heatOrchestrationTemplate.getParameters(),
heatOrchestrationTemplate, heatFileName, context);
Environment heatEnvFile = getHeatEnvFile(heatFileData, context);
Map<String, Object> parameters = heatEnvFile.getParameters();
@@ -236,7 +254,7 @@ public class TranslationService {
parameterValue = parameters.get(paramName);
if (parameterValue != null) {
entry.getValue().set_default(TranslatorHeatToToscaParameterConverter
- .getToscaParameterDefaultValue(parameterValue, entry.getValue().getType(),
+ .getToscaParameterDefaultValue(null, null, parameterValue, entry.getValue().getType(),
heatFileName, heatOrchestrationTemplate, context));
}
}
@@ -248,18 +266,24 @@ public class TranslationService {
} else {
inputs.putAll(parameterDefinitionMap);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void translateOutputParameters(ServiceTemplate serviceTemplate,
HeatOrchestrationTemplate heatOrchestrationTemplate,
FileData heatFileData, String heatFileName,
TranslationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (heatOrchestrationTemplate.getOutputs() == null) {
return;
}
Map<String, ParameterDefinition> parameterDefinitionMap =
TranslatorHeatToToscaParameterConverter
- .parameterOutputConverter(heatOrchestrationTemplate.getOutputs(),
+ .parameterOutputConverter(serviceTemplate,heatOrchestrationTemplate.getOutputs(),
heatOrchestrationTemplate, heatFileName, context);
if (serviceTemplate.getTopology_template().getOutputs() != null) {
serviceTemplate.getTopology_template().getOutputs().putAll(parameterDefinitionMap);
@@ -271,30 +295,40 @@ public class TranslationService {
updateSharedResources(serviceTemplate, heatFileName, heatOrchestrationTemplate,
heatOrchestrationTemplate.getOutputs(), context);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void updateSharedResources(ServiceTemplate serviceTemplate, String heatFileName,
HeatOrchestrationTemplate heatOrchestrationTemplate,
Map<String, Output> outputs, TranslationContext context) {
- for (Map.Entry<String, Output> paramName : outputs.entrySet()) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ for (Map.Entry<String, Output> parameter : outputs.entrySet()) {
Optional<AttachedResourceId> attachedSharedResourceId = HeatToToscaUtil
.extractAttachedResourceId(heatFileName, heatOrchestrationTemplate, context,
- paramName.getValue().getValue());
+ parameter.getValue().getValue());
if (attachedSharedResourceId.isPresent() && attachedSharedResourceId.get().isGetResource()
&& attachedSharedResourceId.get().getTranslatedId() != null) {
String sharedTranslatedResourceId =
attachedSharedResourceId.get().getTranslatedId().toString();
- updateSharedResource(serviceTemplate, context, paramName, sharedTranslatedResourceId,
+ updateSharedResource(serviceTemplate, context, parameter, sharedTranslatedResourceId,
heatOrchestrationTemplate.getResources()
.get(attachedSharedResourceId.get().getEntityId()));
} else {
- String contrailSharedResourceId = HeatToToscaUtil
- .extractContrailGetResourceAttachedHeatResourceId(paramName.getValue().getValue());
- if (contrailSharedResourceId != null
- && context.getTranslatedIds().get(heatFileName).get(contrailSharedResourceId) != null) {
- updateSharedResource(serviceTemplate, context, paramName,
- context.getTranslatedIds().get(heatFileName).get(contrailSharedResourceId),
- heatOrchestrationTemplate.getResources().get(contrailSharedResourceId));
+ Optional<String> contrailSharedResourceId = HeatToToscaUtil
+ .extractContrailGetResourceAttachedHeatResourceId(parameter.getValue().getValue());
+ if (contrailSharedResourceId.isPresent()
+ && context.getTranslatedIds().get(heatFileName).get(contrailSharedResourceId.get())
+ != null) {
+ String sharedTranslatedResourceId = context.getTranslatedIds().get(heatFileName).get
+ (contrailSharedResourceId.get());
+ ConsolidationDataUtil.removeSharedResource(serviceTemplate, heatOrchestrationTemplate,
+ context, parameter.getKey(),contrailSharedResourceId.get(), sharedTranslatedResourceId);
+ updateSharedResource(serviceTemplate, context, parameter,sharedTranslatedResourceId,
+ heatOrchestrationTemplate.getResources().get(contrailSharedResourceId.get()));
}
}
}
@@ -302,21 +336,40 @@ public class TranslationService {
&& serviceTemplate.getTopology_template().getOutputs().size() == 0) {
serviceTemplate.getTopology_template().setOutputs(null);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void updateSharedResource(ServiceTemplate serviceTemplate, TranslationContext context,
Map.Entry<String, Output> paramName,
String sharedTranslatedResourceId, Resource resource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
context.addHeatSharedResourcesByParam(paramName.getKey(), sharedTranslatedResourceId, resource);
serviceTemplate.getTopology_template().getOutputs().remove(paramName.getKey());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void translateResources(String heatFileName, ServiceTemplate serviceTemplate,
HeatOrchestrationTemplate heatOrchestrationTemplate,
TranslationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if(MapUtils.isEmpty(heatOrchestrationTemplate.getResources())){
+ return;
+ }
+
for (String resourceId : heatOrchestrationTemplate.getResources().keySet()) {
Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
if (resource == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.TRANSLATE_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.TRANSLATE_HEAT);
throw new CoreException(
new ResourceNotFoundInHeatFileErrorBuilder(resourceId, heatFileName).build());
}
@@ -324,6 +377,8 @@ public class TranslationService {
.translateResource(heatFileName, serviceTemplate, heatOrchestrationTemplate, resource,
resourceId, context);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private Environment getHeatEnvFile(FileData heatFileData, TranslationContext context) {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedComposition.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedComposition.java
new file mode 100644
index 0000000000..d72915c843
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedComposition.java
@@ -0,0 +1,37 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+
+import java.util.List;
+
+public interface UnifiedComposition {
+
+ void createUnifiedComposition(ServiceTemplate serviceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedComposotionDataList,
+ TranslationContext context);
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionManager.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionManager.java
new file mode 100644
index 0000000000..2e67983194
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionManager.java
@@ -0,0 +1,80 @@
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileNestedConsolidationData;
+
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+
+public class UnifiedCompositionManager {
+
+ private MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private ConsolidationService consolidationService;
+ private TranslationService translationService = new TranslationService();
+ private UnifiedCompositionService unifiedCompositionService = new UnifiedCompositionService();
+
+ public UnifiedCompositionManager(ConsolidationService consolidationService) {
+ this.consolidationService = consolidationService;
+ }
+
+ public UnifiedCompositionManager() {
+
+ }
+
+ /**
+ * Create unified composition.
+ *
+ * @param toscaServiceModel the tosca service model
+ * @param translationContext the translation context
+ * @return the tosca service model
+ */
+ public ToscaServiceModel createUnifiedComposition(ToscaServiceModel toscaServiceModel,
+ TranslationContext translationContext) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ Map<String, ServiceTemplate> serviceTemplates = toscaServiceModel.getServiceTemplates();
+ ServiceTemplate mainServiceTemplate =
+ serviceTemplates.get(toscaServiceModel.getEntryDefinitionServiceTemplate());
+ consolidationService.mainServiceTemplateConsolidation(mainServiceTemplate, translationContext);
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+
+
+ FileNestedConsolidationData mainFileNestedConsolidationData =
+ translationContext.getConsolidationData().getNestedConsolidationData()
+ .getFileNestedConsolidationData(toscaServiceModel.getEntryDefinitionServiceTemplate());
+ Set<String> substituteNodeTemplatesId =
+ mainFileNestedConsolidationData == null
+ || mainFileNestedConsolidationData.getAllNestedNodeTemplateIds() == null
+ ? new HashSet<>() : mainFileNestedConsolidationData.getAllNestedNodeTemplateIds();
+
+ for (String substituteNodeTemplateId : substituteNodeTemplatesId) {
+ NodeTemplate subNodeTemplate = mainServiceTemplate.getTopology_template().getNode_templates()
+ .get(substituteNodeTemplateId);
+ Optional<String> substituteServiceTemplateName = toscaAnalyzerService
+ .getSubstituteServiceTemplateName(substituteNodeTemplateId, subNodeTemplate);
+ if (substituteServiceTemplateName.isPresent()) {
+ ServiceTemplate substituteServiceTemplate =
+ serviceTemplates.get(substituteServiceTemplateName.get());
+
+ consolidationService.substitutionServiceTemplateConsolidation(substituteNodeTemplateId,
+ mainServiceTemplate, substituteServiceTemplate, translationContext);
+ }
+ }
+ unifiedCompositionService
+ .updateUnifiedAbstractNodesConnectivity(mainServiceTemplate, translationContext);
+ ToscaServiceModel unifiedToscaServiceModel =
+ HeatToToscaUtil.createToscaServiceModel(mainServiceTemplate, translationContext);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return unifiedToscaServiceModel;
+ }
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java
new file mode 100644
index 0000000000..471b1475d6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionService.java
@@ -0,0 +1,2575 @@
+/*
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.apache.commons.collections.map.HashedMap;
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.apache.commons.lang3.tuple.Pair;
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
+import org.openecomp.sdc.tosca.datatypes.ToscaGroupType;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.Constraint;
+import org.openecomp.sdc.tosca.datatypes.model.EntrySchema;
+import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
+import org.openecomp.sdc.tosca.datatypes.model.RelationshipTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.SubstitutionMapping;
+import org.openecomp.sdc.tosca.datatypes.model.heatextend.PropertyTypeExt;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+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.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionEntity;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionMode;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedSubstitutionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.EntityConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileComputeConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.GetAttrFuncData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.NestedTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.PortTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.RequirementAssignmentData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.TypeComputeConsolidationData;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.NotSerializableException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+import java.util.regex.Pattern;
+
+import static org.openecomp.sdc.translator.services.heattotosca.Constants.ABSTRACT_NODE_TEMPLATE_ID_PREFIX;
+import static org.openecomp.sdc.translator.services.heattotosca.Constants.IDENTICAL_VALUE_PROPERTY_PREFIX;
+import static org.openecomp.sdc.translator.services.heattotosca.Constants.IDENTICAL_VALUE_PROPERTY_SUFFIX;
+
+public class UnifiedCompositionService {
+
+ protected static Logger logger =
+ (Logger) LoggerFactory.getLogger(UnifiedCompositionService.class);
+ protected static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private static Map<String, ImplementationConfiguration> unifiedCompositionImplMap;
+
+ static {
+ Configuration config = ConfigurationManager.lookup();
+ unifiedCompositionImplMap =
+ config.populateMap(ConfigConstants.MANDATORY_UNIFIED_MODEL_NAMESPACE,
+ ConfigConstants.UNIFIED_COMPOSITION_IMPL_KEY, ImplementationConfiguration.class);
+
+ }
+
+ private ConsolidationService consolidationService = new ConsolidationService();
+
+ private static List<EntityConsolidationData> getPortConsolidationDataList(
+ Set<String> portIds,
+ List<UnifiedCompositionData> unifiedCompositionDataList) {
+ List<EntityConsolidationData> portConsolidationDataList = new ArrayList<>();
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData : unifiedCompositionData
+ .getPortTemplateConsolidationDataList()) {
+ if (portIds.contains(portTemplateConsolidationData.getNodeTemplateId())) {
+ portConsolidationDataList.add(portTemplateConsolidationData);
+ }
+ }
+ }
+ return portConsolidationDataList;
+ }
+
+ /**
+ * Create unified composition.
+ *
+ * @param serviceTemplate the service template
+ * @param nestedServiceTemplate the nested service template
+ * @param unifiedCompositionDataList the unified composition data list. In case no consolidation,
+ * one entry will be in this list, in case of having
+ * consolidation, all entries in the list are the once which
+ * need to be consolidated.
+ * @param mode the mode
+ * @param context the context
+ */
+ public void createUnifiedComposition(ServiceTemplate serviceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ UnifiedCompositionMode mode, TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ Optional<UnifiedComposition> unifiedCompositionInstance = getUnifiedCompositionInstance(mode);
+ if (!unifiedCompositionInstance.isPresent()) {
+ return;
+ }
+ unifiedCompositionInstance.get()
+ .createUnifiedComposition(serviceTemplate, nestedServiceTemplate,
+ unifiedCompositionDataList, context);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ /**
+ * Create unified substitution service template according to the input service template, based on
+ * the unified composition data.
+ *
+ * @param serviceTemplate the service template
+ * @param unifiedCompositionDataList the unified composition data list. In case no consolidation,
+ * one entry will be in this list, in case of having
+ * consolidation, all entries in the list are the once which
+ * need to be consolidated.
+ * @param context the translation context
+ * @return the substitution service template
+ */
+ public Optional<ServiceTemplate> createUnifiedSubstitutionServiceTemplate(
+ ServiceTemplate serviceTemplate, List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context, Integer index) {
+ if (CollectionUtils.isEmpty(unifiedCompositionDataList)) {
+ return Optional.empty();
+ }
+ UnifiedCompositionData unifiedCompositionData = unifiedCompositionDataList.get(0);
+ String templateName =
+ getTemplateName(serviceTemplate, unifiedCompositionData, index);
+ ServiceTemplate substitutionServiceTemplate =
+ HeatToToscaUtil.createInitSubstitutionServiceTemplate(templateName);
+
+ createIndexInputParameter(substitutionServiceTemplate);
+
+ String computeNodeType =
+ handleCompute(serviceTemplate, substitutionServiceTemplate, unifiedCompositionDataList,
+ context);
+ handlePorts(serviceTemplate, substitutionServiceTemplate, unifiedCompositionDataList,
+ computeNodeType, context);
+ createOutputParameters(serviceTemplate, substitutionServiceTemplate, unifiedCompositionDataList,
+ computeNodeType);
+ NodeType substitutionGlobalNodeType =
+ handleSubstitutionGlobalNodeType(serviceTemplate, substitutionServiceTemplate,
+ context, unifiedCompositionData, index);
+
+ HeatToToscaUtil.handleSubstitutionMapping(context,
+ getSubstitutionNodeTypeId(serviceTemplate, unifiedCompositionData, index),
+ substitutionServiceTemplate, substitutionGlobalNodeType);
+
+ context.getTranslatedServiceTemplates().put(templateName, substitutionServiceTemplate);
+ return Optional.of(substitutionServiceTemplate);
+ }
+
+ /**
+ * Create abstract substitute node template that can be substituted by the input
+ * substitutionServiceTemplate.
+ *
+ * @param serviceTemplate the service template
+ * @param substitutionServiceTemplate the subtitution service template
+ * @param unifiedCompositionDataList the unified composition data list. In case no consolidation,
+ * one entry will be in this list, in case of having
+ * consolidation, all entries in the list are the once which
+ * need to be consolidated.
+ * @param context the translation context
+ * @return the abstract substitute node template id
+ */
+ public String createAbstractSubstituteNodeTemplate(
+ ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context,
+ Integer index) {
+
+ NodeTemplate substitutionNodeTemplate = new NodeTemplate();
+ List<String> directiveList = new ArrayList<>();
+ directiveList.add(ToscaConstants.NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE);
+ substitutionNodeTemplate.setDirectives(directiveList);
+ String substituteNodeTemplateType =
+ getSubstitutionNodeTypeId(serviceTemplate, unifiedCompositionDataList.get(0), index);
+ substitutionNodeTemplate.setType(substituteNodeTemplateType);
+ Optional<Map<String, Object>> abstractSubstitutionProperties =
+ createAbstractSubstitutionProperties(serviceTemplate,
+ substitutionServiceTemplate, unifiedCompositionDataList);
+ abstractSubstitutionProperties.ifPresent(substitutionNodeTemplate::setProperties);
+
+ //Add substitution filtering property
+ String substitutionServiceTemplateName = ToscaUtil.getServiceTemplateFileName(
+ substitutionServiceTemplate);
+ int count = unifiedCompositionDataList.size();
+ addSubstitutionFilteringProperty(substitutionServiceTemplateName, substitutionNodeTemplate,
+ count);
+ //Add index_value property
+ addIndexValueProperty(substitutionNodeTemplate);
+ String substituteNodeTemplateId =
+ getSubstituteNodeTemplateId(serviceTemplate, unifiedCompositionDataList.get(0), index);
+ //Add node template id and related abstract node template id in context
+ addUnifiedSubstitionData(context, serviceTemplate, unifiedCompositionDataList,
+ substituteNodeTemplateId);
+ DataModelUtil
+ .addNodeTemplate(serviceTemplate, substituteNodeTemplateId, substitutionNodeTemplate);
+ return substituteNodeTemplateId;
+
+ }
+
+ /**
+ * Update the connectivity from/to the "moved" nodes from the original service template to the new
+ * substitution service template.
+ *
+ * @param serviceTemplate the service template
+ * @param unifiedCompositionDataList the unified composition data list. In case no consolidation,
+ * one entry will be in this list, in case of having
+ * consolidation, all entries in the list are the once which
+ * need to be consolidated.
+ * @param context the translation context
+ */
+ public void updateCompositionConnectivity(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ updOutputParamGetAttrInConnectivity(serviceTemplate, unifiedCompositionDataList, context);
+ updNodesGetAttrInConnectivity(serviceTemplate, unifiedCompositionDataList, context);
+ updNodesConnectedOutConnectivity(serviceTemplate, unifiedCompositionDataList, context);
+ updNodesConnectedInConnectivity(serviceTemplate, unifiedCompositionDataList, context);
+ updVolumeConnectivity(serviceTemplate, unifiedCompositionDataList, context);
+ updGroupsConnectivity(serviceTemplate, unifiedCompositionDataList, context);
+ }
+
+ /**
+ * Delete the "moved" nodes from the original service template to the new substitution service
+ * template.
+ *
+ * @param serviceTemplate the service template
+ * @param unifiedCompositionDataList the unified composition data list. In case no consolidation,
+ * one entry will be in this list, in case of having
+ * consolidation, all entries in the list are the once which
+ * need to be consolidated.
+ * @param context the translation context
+ */
+ public void cleanUnifiedCompositionEntities(
+ ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionData.getComputeTemplateConsolidationData();
+ cleanServiceTemplate(serviceTemplate, computeTemplateConsolidationData, context);
+
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ cleanServiceTemplate(serviceTemplate, portTemplateConsolidationData, context);
+ }
+ }
+
+ }
+
+ public void cleanNodeTypes(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedData : unifiedCompositionDataList) {
+ removeCleanedNodeType(
+ unifiedData.getComputeTemplateConsolidationData().getNodeTemplateId(), serviceTemplate,
+ context);
+ }
+
+ if (MapUtils.isEmpty(serviceTemplate.getNode_types())) {
+ serviceTemplate.setNode_types(null);
+ }
+ }
+
+ /**
+ * Update unified abstract nodes connectivity.
+ *
+ * @param serviceTemplate the service template
+ * @param context the context
+ */
+ public void updateUnifiedAbstractNodesConnectivity(ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+
+
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ UnifiedSubstitutionData unifiedSubstitutionData = context.getUnifiedSubstitutionData()
+ .get(serviceTemplateFileName);
+
+ if (Objects.nonNull(unifiedSubstitutionData)) {
+ //Handle get attribute in connectivity for abstarct node to abstract node templates
+ Set<String> abstractNodeIds =
+ new HashSet<>(unifiedSubstitutionData.getAllRelatedAbstractNodeIds());
+ handleGetAttrInConnectivity(serviceTemplate, abstractNodeIds, context);
+ //Handle get attribute in connectivity for abstract node templates to nested node template
+ Set<String> nestedNodeIds =
+ new HashSet<>(unifiedSubstitutionData.getAllUnifiedNestedNodeTemplateIds());
+ handleGetAttrInConnectivity(serviceTemplate, nestedNodeIds, context);
+ }
+ }
+
+ public void handleUnifiedNestedDefinition(ServiceTemplate mainServiceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ handleUnifiedNestedNodeType(mainServiceTemplate, nestedServiceTemplate, context);
+ updateUnifiedNestedTemplates(mainServiceTemplate, nestedServiceTemplate, unifiedCompositionDataList, context);
+ }
+
+ private void handleGetAttrInConnectivity(ServiceTemplate serviceTemplate,
+ Set<String> unifiedNodeIds,
+ TranslationContext context) {
+ Map<String, NodeTemplate> nodeTemplates =
+ serviceTemplate.getTopology_template().getNode_templates();
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ for (String unifiedNodeId : unifiedNodeIds) {
+ NodeTemplate nodeTemplate = nodeTemplates.get(unifiedNodeId);
+ handleGetAttrInAbstractNodeTemplate(serviceTemplate, context, serviceTemplateFileName,
+ nodeTemplate);
+ }
+ }
+
+ private void handleUnifiedNestedNodeType(ServiceTemplate mainServiceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ TranslationContext context) {
+
+
+ SubstitutionMapping substitutionMappings =
+ nestedServiceTemplate.getTopology_template().getSubstitution_mappings();
+ String nodeTypeId = substitutionMappings.getNode_type();
+
+ Optional<String> newNestedNodeTypeId =
+ getNewNestedNodeTypeId(mainServiceTemplate, nestedServiceTemplate, context);
+
+ if (isNestedServiceTemplateWasHandled(mainServiceTemplate, nestedServiceTemplate, context,
+ newNestedNodeTypeId)) {
+ context.updateHandledComputeType(
+ ToscaUtil.getServiceTemplateFileName(mainServiceTemplate),
+ ToscaUtil.getServiceTemplateFileName(nestedServiceTemplate),
+ newNestedNodeTypeId.get());
+ return;
+ }
+
+ ServiceTemplate globalSubstitutionServiceTemplate =
+ context.getGlobalSubstitutionServiceTemplate();
+
+ newNestedNodeTypeId.ifPresent(
+ newNestedNodeTypeIdVal -> updateNestedNodeType(nodeTypeId, newNestedNodeTypeIdVal,
+ nestedServiceTemplate, mainServiceTemplate, globalSubstitutionServiceTemplate,
+ context));
+
+ }
+
+ private boolean isNestedServiceTemplateWasHandled(ServiceTemplate mainServiceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ TranslationContext context,
+ Optional<String> newNestedNodeTypeId) {
+ return newNestedNodeTypeId.isPresent()
+ && context.isNestedServiceTemplateWasHandled(
+ ToscaUtil.getServiceTemplateFileName(mainServiceTemplate),
+ ToscaUtil.getServiceTemplateFileName(nestedServiceTemplate));
+ }
+
+ private void updateNestedNodeType(String nodeTypeId, String newNestedNodeTypeId,
+ ServiceTemplate nestedServiceTemplate,
+ ServiceTemplate mainServiceTemplate,
+ ServiceTemplate globalSubstitutionServiceTemplate,
+ TranslationContext context) {
+ context.addNestedFileToUsedNestedComputeType(
+ ToscaUtil.getServiceTemplateFileName(mainServiceTemplate),
+ ToscaUtil.getServiceTemplateFileName(nestedServiceTemplate),
+ newNestedNodeTypeId);
+ String indexedNodeType =
+ handleNestedNodeTypeInGlobalSubstitutionTemplate(nodeTypeId, newNestedNodeTypeId,
+ mainServiceTemplate, globalSubstitutionServiceTemplate, context);
+
+ handleSubstitutionMappingInNestedServiceTemplate(indexedNodeType, nestedServiceTemplate);
+
+ context
+ .updateHandledComputeType(
+ ToscaUtil.getServiceTemplateFileName(mainServiceTemplate),
+ ToscaUtil.getServiceTemplateFileName(nestedServiceTemplate),
+ newNestedNodeTypeId);
+ }
+
+ private String handleNestedNodeTypeInGlobalSubstitutionTemplate(String nodeTypeId,
+ String newNestedNodeTypeId,
+ ServiceTemplate mainServiceTemplate,
+ ServiceTemplate globalSubstitutionServiceTemplate,
+ TranslationContext context) {
+ String indexedNodeType =
+ getIndexedGlobalNodeTypeId(newNestedNodeTypeId, mainServiceTemplate, context);
+ handleNestedNodeTypesInGlobalSubstituteServiceTemplate(nodeTypeId, indexedNodeType,
+ globalSubstitutionServiceTemplate, context);
+ return indexedNodeType;
+ }
+
+ private String getIndexedGlobalNodeTypeId(String newNestedNodeTypeId,
+ ServiceTemplate mainServiceTemplate,
+ TranslationContext context) {
+ int globalNodeTypeIndex =
+ context.getGlobalNodeTypeIndex(ToscaUtil.getServiceTemplateFileName(mainServiceTemplate),
+ newNestedNodeTypeId);
+ return globalNodeTypeIndex > 0 ?
+ newNestedNodeTypeId + "_" + String.valueOf(globalNodeTypeIndex) : newNestedNodeTypeId;
+ }
+
+ private void updateUnifiedNestedTemplates(ServiceTemplate mainServiceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ unifiedCompositionData.getNestedTemplateConsolidationData();
+ if (Objects.isNull(nestedTemplateConsolidationData)) {
+ continue;
+ }
+ handleNestedNodeTemplateInMainServiceTemplate(nestedTemplateConsolidationData.getNodeTemplateId(), mainServiceTemplate, nestedServiceTemplate, context);
+ }
+ }
+
+ /**
+ * Update connectivity for unified nested patterns.
+ *
+ * @param serviceTemplate the service template
+ * @param nestedServiceTemplate the nested service template
+ * @param unifiedCompositionDataList the unified composition data list
+ * @param context the context
+ */
+ public void updateUnifiedNestedConnectivity(ServiceTemplate serviceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData>
+ unifiedCompositionDataList,
+ TranslationContext context) {
+
+ updNestedCompositionNodesConnectedInConnectivity(serviceTemplate, unifiedCompositionDataList,
+ context);
+ updNestedCompositionNodesGetAttrInConnectivity(serviceTemplate, unifiedCompositionDataList,
+ context);
+ updNestedCompositionOutputParamGetAttrInConnectivity(serviceTemplate,
+ unifiedCompositionDataList, context);
+ }
+
+
+ /**
+ * Clean unified nested entities. Update the heat stack group with the new node template ids.
+ *
+ * @param serviceTemplate the service template
+ * @param unifiedCompositionDataList the unified composition data list
+ * @param context the context
+ */
+ public void cleanUnifiedNestedEntities(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ EntityConsolidationData entityConsolidationData = unifiedCompositionDataList.get(0)
+ .getNestedTemplateConsolidationData();
+ updateHeatStackGroupNestedComposition(serviceTemplate, entityConsolidationData, context);
+
+ }
+
+ protected void updNodesConnectedOutConnectivity(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData>
+ unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = unifiedCompositionData
+ .getComputeTemplateConsolidationData();
+ //Add requirements in the abstract node template for nodes connected out for computes
+ String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ Map<String, List<RequirementAssignmentData>> computeNodesConnectedOut =
+ computeTemplateConsolidationData.getNodesConnectedOut();
+ if (computeNodesConnectedOut != null) {
+ updateRequirementInAbstractNodeTemplate(serviceTemplate, computeTemplateConsolidationData,
+ newComputeNodeTemplateId, computeNodesConnectedOut, context);
+ }
+ String computeType = getComputeTypeSuffix(serviceTemplate, computeTemplateConsolidationData
+ .getNodeTemplateId());
+ //Add requirements in the abstract node template for nodes connected out for ports
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String newPortNodeTemplateId = getNewPortNodeTemplateId(portTemplateConsolidationData
+ .getNodeTemplateId(), computeType, computeTemplateConsolidationData);
+ Map<String, List<RequirementAssignmentData>> portNodesConnectedOut =
+ portTemplateConsolidationData.getNodesConnectedOut();
+ if (portNodesConnectedOut != null) {
+ updateRequirementInAbstractNodeTemplate(serviceTemplate, portTemplateConsolidationData,
+ newPortNodeTemplateId, portNodesConnectedOut, context);
+ }
+ }
+ }
+ }
+
+ protected void updNodesConnectedInConnectivity(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData>
+ unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = unifiedCompositionData
+ .getComputeTemplateConsolidationData();
+ //Update requirements in the node template which pointing to the computes
+ String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ updNodesConnectedInConnectivity(serviceTemplate, computeTemplateConsolidationData,
+ newComputeNodeTemplateId, context, false);
+
+ String computeType = getComputeTypeSuffix(serviceTemplate, computeTemplateConsolidationData
+ .getNodeTemplateId());
+ //Update requirements in the node template which pointing to the ports
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String newPortNodeTemplateId = getNewPortNodeTemplateId(portTemplateConsolidationData
+ .getNodeTemplateId(), computeType, computeTemplateConsolidationData);
+ updNodesConnectedInConnectivity(serviceTemplate, portTemplateConsolidationData,
+ newPortNodeTemplateId, context, false);
+ }
+ }
+ }
+
+ private void updNodesConnectedInConnectivity(ServiceTemplate serviceTemplate,
+ EntityConsolidationData entityConsolidationData,
+ String newNodeTemplateId,
+ TranslationContext context,
+ boolean isNested) {
+ Map<String, List<RequirementAssignmentData>> nodesConnectedIn =
+ entityConsolidationData.getNodesConnectedIn();
+ if (nodesConnectedIn == null) {
+ //No nodes connected in info
+ return;
+ }
+ for (Map.Entry<String, List<RequirementAssignmentData>> entry : nodesConnectedIn
+ .entrySet()) {
+ List<RequirementAssignmentData> requirementAssignmentDataList = entry.getValue();
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList) {
+ RequirementAssignment requirementAssignment = requirementAssignmentData
+ .getRequirementAssignment();
+ if (!requirementAssignment.getNode().equals(entityConsolidationData
+ .getNodeTemplateId())) {
+ //The requirement assignment target node should be the one which we are handling in the
+ //consolidation object
+ continue;
+ }
+ //Update the requirement assignment object in the original node template
+ if (isNested) {
+ updateRequirementForNestedCompositionNodesConnectedIn(serviceTemplate,
+ requirementAssignmentData, entityConsolidationData, newNodeTemplateId, context);
+ } else {
+ updateRequirementForNodesConnectedIn(serviceTemplate, requirementAssignmentData,
+ entityConsolidationData, entry.getKey(), newNodeTemplateId, context);
+ }
+
+ }
+ }
+ }
+
+ protected void updNestedCompositionNodesConnectedInConnectivity(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData>
+ unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ NestedTemplateConsolidationData nestedTemplateConsolidationData = unifiedCompositionData
+ .getNestedTemplateConsolidationData();
+ //Update requirements in the node template which pointing to the nested nodes
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ Optional<String> newNestedNodeTemplateId = context.getUnifiedNestedNodeTemplateId(
+ serviceTemplateFileName, nestedTemplateConsolidationData.getNodeTemplateId());
+ newNestedNodeTemplateId.ifPresent(
+ newNestedNodeTemplateIdVal -> updNodesConnectedInConnectivity(serviceTemplate,
+ nestedTemplateConsolidationData,
+ newNestedNodeTemplateIdVal, context, true));
+ }
+ }
+
+ protected void updVolumeConnectivity(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData>
+ unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = unifiedCompositionData
+ .getComputeTemplateConsolidationData();
+ //Add requirements in the abstract node template for compute volumes
+ String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ Map<String, List<RequirementAssignmentData>> computeVolumes =
+ computeTemplateConsolidationData.getVolumes();
+ if (computeVolumes != null) {
+ updateRequirementInAbstractNodeTemplate(serviceTemplate, computeTemplateConsolidationData,
+ newComputeNodeTemplateId, computeVolumes, context);
+ }
+ }
+ }
+
+ protected void updGroupsConnectivity(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData>
+ unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = unifiedCompositionData
+ .getComputeTemplateConsolidationData();
+ //Add requirements in the abstract node template for nodes connected in for computes
+ String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ updGroupsConnectivity(serviceTemplate, computeTemplateConsolidationData, context);
+
+ String computeType = getComputeTypeSuffix(serviceTemplate, computeTemplateConsolidationData
+ .getNodeTemplateId());
+ //Add requirements in the abstract node template for nodes connected in for ports
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String newPortNodeTemplateId = getNewPortNodeTemplateId(portTemplateConsolidationData
+ .getNodeTemplateId(), computeType, computeTemplateConsolidationData);
+ updGroupsConnectivity(serviceTemplate, portTemplateConsolidationData, context);
+ }
+ }
+ }
+
+ private void updGroupsConnectivity(ServiceTemplate serviceTemplate, EntityConsolidationData
+ entityConsolidationData, TranslationContext context) {
+ List<String> groupIds = entityConsolidationData.getGroupIds();
+ if (groupIds == null) {
+ return;
+ }
+ String oldNodeTemplateId = entityConsolidationData.getNodeTemplateId();
+ String abstractNodeTemplateId = context.getUnifiedAbstractNodeTemplateId(
+ serviceTemplate, entityConsolidationData.getNodeTemplateId());
+ Map<String, GroupDefinition> groups = serviceTemplate.getTopology_template().getGroups();
+ if (groups != null) {
+ for (String groupId : groupIds) {
+ GroupDefinition groupDefinition = groups.get(groupId);
+ if (groupDefinition != null) {
+ List<String> groupMembers = groupDefinition.getMembers();
+ if (groupMembers.contains(oldNodeTemplateId)) {
+ //Replace the old node template id
+ groupMembers.remove(oldNodeTemplateId);
+ if (!groupMembers.contains(abstractNodeTemplateId)) {
+ //Add the abstract node template id if not already present
+ groupMembers.add(abstractNodeTemplateId);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ protected void updOutputParamGetAttrInConnectivity(
+ ServiceTemplate serviceTemplate, List<UnifiedCompositionData> unifiedComposotionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedComposotionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionData.getComputeTemplateConsolidationData();
+ String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+
+ updOutputParamGetAttrInConnectivity(serviceTemplate, computeTemplateConsolidationData,
+ computeTemplateConsolidationData.getNodeTemplateId(), newComputeNodeTemplateId,
+ context, false);
+
+ String computeType =
+ getComputeTypeSuffix(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String newPortNodeTemplateId =
+ getNewPortNodeTemplateId(portTemplateConsolidationData.getNodeTemplateId(), computeType,
+ computeTemplateConsolidationData);
+
+ updOutputParamGetAttrInConnectivity(serviceTemplate, portTemplateConsolidationData,
+ portTemplateConsolidationData.getNodeTemplateId(), newPortNodeTemplateId, context,
+ false);
+ }
+ }
+ }
+
+ protected void updNodesGetAttrInConnectivity(
+ ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedComposotionDataList,
+ TranslationContext context) {
+ Map<String, UnifiedCompositionEntity> consolidationNodeTemplateIdAndType =
+ getAllConsolidationNodeTemplateIdAndType(unifiedComposotionDataList);
+ for (UnifiedCompositionData unifiedCompositionData : unifiedComposotionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionData.getComputeTemplateConsolidationData();
+ String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+
+ updNodeGetAttrInConnectivity(serviceTemplate, computeTemplateConsolidationData,
+ computeTemplateConsolidationData.getNodeTemplateId(),
+ newComputeNodeTemplateId, context, consolidationNodeTemplateIdAndType, false);
+
+ String computeType =
+ getComputeTypeSuffix(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String newPotNodeTemplateId =
+ getNewPortNodeTemplateId(portTemplateConsolidationData.getNodeTemplateId(), computeType,
+ computeTemplateConsolidationData);
+
+ updNodeGetAttrInConnectivity(serviceTemplate, portTemplateConsolidationData,
+ portTemplateConsolidationData.getNodeTemplateId(),
+ newPotNodeTemplateId, context, consolidationNodeTemplateIdAndType, false);
+ }
+ }
+ }
+
+ protected void updNestedCompositionOutputParamGetAttrInConnectivity(
+ ServiceTemplate serviceTemplate, List<UnifiedCompositionData> unifiedComposotionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedComposotionDataList) {
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ unifiedCompositionData.getNestedTemplateConsolidationData();
+ if (Objects.isNull(nestedTemplateConsolidationData)) {
+ continue;
+ }
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ Optional<String> newNestedNodeTemplateId = context.getUnifiedNestedNodeTemplateId(
+ serviceTemplateFileName, nestedTemplateConsolidationData.getNodeTemplateId());
+
+ newNestedNodeTemplateId.ifPresent(
+ newNestedNodeTemplateIdVal -> updOutputParamGetAttrInConnectivity(serviceTemplate,
+ nestedTemplateConsolidationData, nestedTemplateConsolidationData.getNodeTemplateId(),
+ newNestedNodeTemplateIdVal, context, true));
+ }
+ }
+
+ protected void updNestedCompositionNodesGetAttrInConnectivity(
+ ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ unifiedCompositionData.getNestedTemplateConsolidationData();
+ if (Objects.isNull(nestedTemplateConsolidationData)) {
+ continue;
+ }
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ Optional<String> newNestedNodeTemplateId = context.getUnifiedNestedNodeTemplateId(
+ serviceTemplateFileName, nestedTemplateConsolidationData.getNodeTemplateId());
+
+ newNestedNodeTemplateId.ifPresent(
+ newNestedNodeTemplateIdVal -> updNodeGetAttrInConnectivity(serviceTemplate,
+ nestedTemplateConsolidationData, nestedTemplateConsolidationData.getNodeTemplateId(),
+ newNestedNodeTemplateIdVal, context, null, true));
+ }
+ }
+
+ private void updateRequirementForNodesConnectedIn(
+ ServiceTemplate serviceTemplate,
+ RequirementAssignmentData requirementAssignmentData,
+ EntityConsolidationData entityConsolidationData,
+ String originalNodeTemplateId,
+ String newNodeTemplateId,
+ TranslationContext context) {
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ RequirementAssignment requirementAssignment = requirementAssignmentData
+ .getRequirementAssignment();
+ String newAbstractUnifiedNodeTemplateId = context.getUnifiedAbstractNodeTemplateId(
+ serviceTemplate, entityConsolidationData.getNodeTemplateId());
+ NodeTemplate abstractUnifiedNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ newAbstractUnifiedNodeTemplateId);
+ Optional<String> newCapabilityId = getNewCapabilityForNodesConnectedIn(serviceTemplate,
+ abstractUnifiedNodeTemplate, requirementAssignment, newNodeTemplateId, context);
+ if (newCapabilityId.isPresent()) {
+ //Creating a copy of the requirement object and checking if it already exists in the
+ // original node template
+ RequirementAssignment requirementAssignmentCopy = (RequirementAssignment) getClonedObject(
+ requirementAssignmentData.getRequirementAssignment(), RequirementAssignment.class);
+ NodeTemplate originalNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ originalNodeTemplateId);
+ requirementAssignmentCopy.setCapability(newCapabilityId.get());
+ requirementAssignmentCopy.setNode(newAbstractUnifiedNodeTemplateId);
+ if (!toscaAnalyzerService.isRequirementExistInNodeTemplate(originalNodeTemplate,
+ requirementAssignmentData.getRequirementId(), requirementAssignmentCopy)) {
+ //Update the existing requirement
+ requirementAssignmentData.getRequirementAssignment().setCapability(newCapabilityId
+ .get());
+ requirementAssignmentData.getRequirementAssignment()
+ .setNode(newAbstractUnifiedNodeTemplateId);
+ } else {
+ //The updated requirement already exists in the node template so simply remove the
+ // current one
+ DataModelUtil.removeRequirementAssignment(originalNodeTemplate, requirementAssignmentData
+ .getRequirementId(), requirementAssignmentData.getRequirementAssignment());
+ }
+ }
+ }
+
+ private void updateRequirementForNestedCompositionNodesConnectedIn(
+ ServiceTemplate serviceTemplate,
+ RequirementAssignmentData requirementAssignmentData,
+ EntityConsolidationData entityConsolidationData,
+ String newNodeTemplateId,
+ TranslationContext context) {
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ String newAbstractUnifiedNodeTemplateId = newNodeTemplateId;
+ RequirementAssignment requirementAssignment = requirementAssignmentData
+ .getRequirementAssignment();
+ //Creating a copy of the requirement object and checking if it already exists in the
+ // original node template
+ RequirementAssignment requirementAssignmentCopy = (RequirementAssignment) getClonedObject(
+ requirementAssignmentData.getRequirementAssignment(), RequirementAssignment.class);
+ NodeTemplate unifiedAbstractNestedNodeTemplate = DataModelUtil
+ .getNodeTemplate(serviceTemplate, newAbstractUnifiedNodeTemplateId);
+ requirementAssignmentCopy.setCapability(requirementAssignment.getCapability());
+ requirementAssignmentCopy.setNode(newAbstractUnifiedNodeTemplateId);
+ if (!toscaAnalyzerService.isRequirementExistInNodeTemplate(unifiedAbstractNestedNodeTemplate,
+ requirementAssignmentData.getRequirementId(), requirementAssignmentCopy)) {
+ //Update the existing requirement
+ requirementAssignmentData.getRequirementAssignment()
+ .setNode(newAbstractUnifiedNodeTemplateId);
+ } else {
+ //The updated requirement already exists in the node template so simply remove the
+ // current one
+ DataModelUtil.removeRequirementAssignment(unifiedAbstractNestedNodeTemplate,
+ requirementAssignmentData.getRequirementId(), requirementAssignmentData
+ .getRequirementAssignment());
+ }
+ }
+
+ private Optional<String> getNewCapabilityForNodesConnectedIn(ServiceTemplate serviceTemplate,
+ NodeTemplate unifiedNodeTemplate,
+ RequirementAssignment
+ requirementAssignment,
+ String newNodeTemplateId,
+ TranslationContext context) {
+ ServiceTemplate globalSubstitutionServiceTemplate =
+ HeatToToscaUtil.fetchGlobalSubstitutionServiceTemplate(serviceTemplate, context);
+ Map<String, NodeType> nodeTypes = globalSubstitutionServiceTemplate.getNode_types();
+ String unifiedNodeTemplateType = unifiedNodeTemplate.getType();
+ NodeType unifiedNodeType = nodeTypes.get(unifiedNodeTemplateType);
+ Map<String, CapabilityDefinition> abstractNodeTypeCapabilities = unifiedNodeType
+ .getCapabilities();
+ for (Map.Entry<String, CapabilityDefinition> entry : abstractNodeTypeCapabilities.entrySet()) {
+ String capabilityId = entry.getKey();
+ CapabilityDefinition capabilityDefinition = entry.getValue();
+ String capabilityType = capabilityDefinition.getType();
+ if (capabilityType.equals(requirementAssignment.getCapability())) {
+ //Matching capability type found..Check if the id ends with new node template id
+ if (capabilityId.endsWith(newNodeTemplateId)) {
+ return Optional.ofNullable(capabilityId);
+ }
+ }
+ }
+ return Optional.empty();
+ }
+
+
+ private void updateRequirementInAbstractNodeTemplate(ServiceTemplate serviceTemplate,
+ EntityConsolidationData
+ entityConsolidationData,
+ String newNodeTemplateId,
+ Map<String, List<RequirementAssignmentData>>
+ requirementAssignmentDataMap,
+ TranslationContext context) {
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ for (Map.Entry<String, List<RequirementAssignmentData>> entry : requirementAssignmentDataMap
+ .entrySet()) {
+ String abstractNodeTemplateId = context.getUnifiedAbstractNodeTemplateId(
+ serviceTemplate, entityConsolidationData.getNodeTemplateId());
+ NodeTemplate abstractNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ abstractNodeTemplateId);
+ if (abstractNodeTemplate == null) {
+ //The abstract node template is not found from id in the context
+ return;
+ }
+ List<RequirementAssignmentData> requirementAssignmentDataList = entry.getValue();
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList) {
+ String oldRequirementId = requirementAssignmentData.getRequirementId();
+ RequirementAssignment abstractRequirementAssignment = (RequirementAssignment)
+ getClonedObject(requirementAssignmentData.getRequirementAssignment(),
+ RequirementAssignment.class);
+ String newRequirementId = oldRequirementId + "_" + newNodeTemplateId;
+ //Check if the requirement is not already present in the list of requirements of the
+ // abstract node template
+ if (!toscaAnalyzerService.isRequirementExistInNodeTemplate(abstractNodeTemplate,
+ newRequirementId, abstractRequirementAssignment)) {
+ DataModelUtil.addRequirementAssignment(abstractNodeTemplate, newRequirementId,
+ abstractRequirementAssignment);
+ //Update the volume relationship template if required
+ updateVolumeRelationshipTemplate(serviceTemplate, abstractRequirementAssignment
+ .getRelationship(), context);
+ }
+ }
+ }
+ }
+
+ private NodeTemplate getAbstractNodeTemplate(
+ ServiceTemplate serviceTemplate,
+ UnifiedCompositionEntity unifiedCompositionEntity,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ PortTemplateConsolidationData portTemplateConsolidationData,
+ TranslationContext context) {
+ String abstractNodeTemplateId =
+ getAbstractNodeTemplateId(serviceTemplate, unifiedCompositionEntity,
+ computeTemplateConsolidationData, portTemplateConsolidationData, context);
+
+ return DataModelUtil.getNodeTemplate(serviceTemplate,
+ abstractNodeTemplateId);
+ }
+
+ private String getAbstractNodeTemplateId(
+ ServiceTemplate serviceTemplate,
+ UnifiedCompositionEntity unifiedCompositionEntity,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ PortTemplateConsolidationData portTemplateConsolidationData,
+ TranslationContext context) {
+ switch (unifiedCompositionEntity) {
+ case Compute:
+ return context.getUnifiedAbstractNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ case Port:
+ return context.getUnifiedAbstractNodeTemplateId(serviceTemplate,
+ portTemplateConsolidationData.getNodeTemplateId());
+ default:
+ return null;
+ }
+ }
+
+ private void updNodeGetAttrInConnectivity(
+ ServiceTemplate serviceTemplate,
+ EntityConsolidationData entityConsolidationData,
+ String oldNodeTemplateId, String newNodeTemplateId,
+ TranslationContext context,
+ Map<String, UnifiedCompositionEntity> consolidationNodeTemplateIdAndType,
+ boolean isNested) {
+ Map<String, List<GetAttrFuncData>> nodesGetAttrIn = entityConsolidationData.getNodesGetAttrIn();
+ if (MapUtils.isEmpty(nodesGetAttrIn)) {
+ return;
+ }
+
+ for (String sourceNodeTemplateId : nodesGetAttrIn.keySet()) {
+ NodeTemplate sourceNodeTemplate =
+ DataModelUtil.getNodeTemplate(serviceTemplate, sourceNodeTemplateId);
+ if (!isNested && consolidationNodeTemplateIdAndType.keySet().contains(sourceNodeTemplateId)) {
+ continue;
+ }
+ List<GetAttrFuncData> getAttrFuncDataList = nodesGetAttrIn.get(sourceNodeTemplateId);
+ for (GetAttrFuncData getAttrFuncData : getAttrFuncDataList) {
+ Object propertyValue =
+ DataModelUtil.getPropertyValue(sourceNodeTemplate, getAttrFuncData.getFieldName());
+ String newAttrName = null;
+ String newGetAttrAbstractNodeTemplateId = newNodeTemplateId;
+ if (!isNested) {
+ newGetAttrAbstractNodeTemplateId =
+ context.getUnifiedAbstractNodeTemplateId(serviceTemplate, oldNodeTemplateId);
+ newAttrName = getNewSubstitutionOutputParameterId(newNodeTemplateId, getAttrFuncData
+ .getAttributeName());
+ }
+ List<List<Object>> getAttrFuncValueList = extractGetAttrFunction(propertyValue);
+ updateGetAttrValue(oldNodeTemplateId, getAttrFuncData, newGetAttrAbstractNodeTemplateId,
+ newAttrName, getAttrFuncValueList, isNested);
+ }
+ }
+ }
+
+ private void updateGetAttrValue(String oldNodeTemplateId, GetAttrFuncData getAttrFuncData,
+ String newNodeTemplateId, String newAttrName,
+ List<List<Object>> getAttrFuncValueList, boolean isNested) {
+ for (List<Object> getAttrFuncValue : getAttrFuncValueList) {
+ if (oldNodeTemplateId.equals(getAttrFuncValue.get(0))
+ && getAttrFuncData.getAttributeName().equals(getAttrFuncValue.get(1))) {
+ getAttrFuncValue.set(0, newNodeTemplateId);
+ if (!isNested) {
+ getAttrFuncValue.set(1, newAttrName);
+ }
+ }
+ }
+ }
+
+ private String getTemplateName(ServiceTemplate serviceTemplate,
+ UnifiedCompositionData unifiedCompositionData,
+ Integer index) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionData.getComputeTemplateConsolidationData();
+ String computeType =
+ getComputeTypeSuffix(serviceTemplate, computeTemplateConsolidationData.getNodeTemplateId());
+ String templateName = "Nested_" + computeType;
+ if (Objects.nonNull(index)) {
+ templateName = templateName + "_" + index.toString();
+ }
+ return templateName;
+ }
+
+ private String getComputeTypeSuffix(ServiceTemplate serviceTemplate,
+ String computeNodeTemplateId) {
+ NodeTemplate computeNodeTemplate =
+ DataModelUtil.getNodeTemplate(serviceTemplate, computeNodeTemplateId);
+ return getComputeTypeSuffix(computeNodeTemplate.getType());
+ }
+
+ /**
+ * Gets compute type.
+ *
+ * @param computeType the compute node type abc.def.vFSB
+ * @return the compute type e.g.:vFSB
+ */
+ private String getComputeTypeSuffix(String computeType) {
+ return DataModelUtil.getNamespaceSuffix(computeType);
+ }
+
+ private void updOutputParamGetAttrInConnectivity(ServiceTemplate serviceTemplate,
+ EntityConsolidationData entityConsolidationData,
+ String oldNodeTemplateId,
+ String newNodeTemplateId,
+ TranslationContext context,
+ boolean isNested) {
+ List<GetAttrFuncData> outputParametersGetAttrIn =
+ entityConsolidationData.getOutputParametersGetAttrIn();
+ if (CollectionUtils.isEmpty(outputParametersGetAttrIn)) {
+ return;
+ }
+ for (GetAttrFuncData getAttrFuncData : outputParametersGetAttrIn) {
+ Object outputParamValue =
+ DataModelUtil.getOuputParameter(serviceTemplate, getAttrFuncData.getFieldName())
+ .getValue();
+ String newAttrName = null;
+ String newGetAttrAbstractNodeTemplateId = newNodeTemplateId;
+ if (!isNested) {
+ newGetAttrAbstractNodeTemplateId =
+ context.getUnifiedAbstractNodeTemplateId(serviceTemplate, oldNodeTemplateId);
+ newAttrName = getNewSubstitutionOutputParameterId(newNodeTemplateId, getAttrFuncData
+ .getAttributeName());
+ }
+ List<List<Object>> getAttrFuncValueList = extractGetAttrFunction(outputParamValue);
+ updateGetAttrValue(oldNodeTemplateId, getAttrFuncData, newGetAttrAbstractNodeTemplateId,
+ newAttrName,
+ getAttrFuncValueList, isNested);
+ }
+
+ }
+
+ private List<List<Object>> extractGetAttrFunction(Object valueObject) {
+
+ List<List<Object>> getAttrValueList = new ArrayList<>();
+
+ if (valueObject instanceof Map) {
+ if (((Map) valueObject).containsKey(ToscaFunctions.GET_ATTRIBUTE.getDisplayName())) {
+ getAttrValueList.add(
+ (List<Object>) ((Map) valueObject).get(ToscaFunctions.GET_ATTRIBUTE.getDisplayName()));
+ }
+
+ for (Object key : ((Map) valueObject).keySet()) {
+ getAttrValueList.addAll(extractGetAttrFunction(((Map) valueObject).get(key)));
+ }
+
+
+ } else if (valueObject instanceof List) {
+ for (Object valueEntity : (List) valueObject) {
+ getAttrValueList.addAll(extractGetAttrFunction(valueEntity));
+ }
+ }
+ return getAttrValueList;
+ }
+
+ private boolean isIncludeGetInputFunc(Object valueObject) {
+ if (valueObject instanceof Map) {
+ if (((Map) valueObject).containsKey(ToscaFunctions.GET_INPUT.getDisplayName())) {
+ return true;
+ }
+ Map.Entry<String, Object> functionMapEntry =
+ (Map.Entry<String, Object>) ((Map) valueObject).entrySet().iterator().next();
+ return isIncludeGetInputFunc(functionMapEntry.getValue());
+
+ } else if (valueObject instanceof List) {
+ for (Object valueEntity : (List) valueObject) {
+ if (isIncludeGetInputFunc(valueEntity) == true) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ private void createOutputParameters(ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ String computeNodeType) {
+
+ createOutputParametersForCompute(serviceTemplate, substitutionServiceTemplate,
+ unifiedCompositionDataList);
+ createOutputParameterForPorts(serviceTemplate, substitutionServiceTemplate,
+ unifiedCompositionDataList, computeNodeType);
+ }
+
+ private void createOutputParameterForPorts(
+ ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ String connectedComputeNodeType) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ if (CollectionUtils.isEmpty(portTemplateConsolidationDataList)) {
+ return;
+ }
+
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String newPortNodeTemplateId =
+ getNewPortNodeTemplateId(portTemplateConsolidationData.getNodeTemplateId(),
+ connectedComputeNodeType,
+ unifiedCompositionData.getComputeTemplateConsolidationData());
+ addOutputParameters(portTemplateConsolidationData, newPortNodeTemplateId,
+ substitutionServiceTemplate, unifiedCompositionDataList);
+ }
+ }
+ }
+
+ //The ID should be <vm_type>_<port_type> or <vm_type>_<portNodeTemplateId>
+ private String getNewPortNodeTemplateId(
+ String portNodeTemplateId,
+ String connectedComputeNodeType,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+
+ StringBuilder newPortNodeTemplateId = new StringBuilder();
+ String portType = ConsolidationDataUtil.getPortType(portNodeTemplateId);
+ newPortNodeTemplateId.append(DataModelUtil.getNamespaceSuffix(connectedComputeNodeType));
+ if (computeTemplateConsolidationData.getPorts().get(portType).size() > 1) {
+ //single port
+ newPortNodeTemplateId.append("_").append(portNodeTemplateId);
+ } else {
+ //consolidation port
+ newPortNodeTemplateId.append("_").append(portType);
+ }
+ return newPortNodeTemplateId.toString();
+ }
+
+ private void createOutputParametersForCompute(
+ ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData>
+ unifiedCompositionDataList) {
+ List<EntityConsolidationData> computeConsolidationDataList =
+ getComputeConsolidationDataList(unifiedCompositionDataList);
+
+ for (EntityConsolidationData computeTemplateConsolidationData : computeConsolidationDataList) {
+ String newComputeNodeTemplateId =
+ getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ addOutputParameters(computeTemplateConsolidationData, newComputeNodeTemplateId,
+ substitutionServiceTemplate, unifiedCompositionDataList);
+ }
+ }
+
+ private void addOutputParameters(EntityConsolidationData entityConsolidationData,
+ String newNodeTemplateId,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList) {
+ handleNodesGetAttrIn(entityConsolidationData, newNodeTemplateId, substitutionServiceTemplate,
+ unifiedCompositionDataList);
+
+ handleOutputParamGetAttrIn(entityConsolidationData, newNodeTemplateId,
+ substitutionServiceTemplate);
+ }
+
+ private void handleOutputParamGetAttrIn(EntityConsolidationData entityConsolidationData,
+ String newNodeTemplateId,
+ ServiceTemplate substitutionServiceTemplate) {
+ List<GetAttrFuncData> outputParametersGetAttrIn =
+ entityConsolidationData.getOutputParametersGetAttrIn();
+ if (!CollectionUtils.isEmpty(outputParametersGetAttrIn)) {
+ for (GetAttrFuncData getAttrFuncData : outputParametersGetAttrIn) {
+ createAndAddOutputParameter(entityConsolidationData, newNodeTemplateId,
+ substitutionServiceTemplate, getAttrFuncData);
+ }
+ }
+ }
+
+ private void handleNodesGetAttrIn(EntityConsolidationData entityConsolidationData,
+ String newNodeTemplateId,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList) {
+ Map<String, List<GetAttrFuncData>> getAttrIn = entityConsolidationData.getNodesGetAttrIn();
+
+ if (!MapUtils.isEmpty(getAttrIn)) {
+ Map<String, UnifiedCompositionEntity> consolidationNodeTemplateIdAndType =
+ getAllConsolidationNodeTemplateIdAndType(unifiedCompositionDataList);
+ for (String sourceNodeTemplateId : getAttrIn.keySet()) {
+ if (!consolidationNodeTemplateIdAndType.keySet().contains(sourceNodeTemplateId)) {
+ List<GetAttrFuncData> getAttrFuncDataList = getAttrIn.get(sourceNodeTemplateId);
+ for (GetAttrFuncData getAttrFuncData : getAttrFuncDataList) {
+ createAndAddOutputParameter(entityConsolidationData, newNodeTemplateId,
+ substitutionServiceTemplate, getAttrFuncData);
+ }
+ }
+ }
+ }
+ }
+
+ private void createAndAddOutputParameter(EntityConsolidationData entityConsolidationData,
+ String newNodeTemplateId,
+ ServiceTemplate substitutionServiceTemplate,
+ GetAttrFuncData getAttrFuncData) {
+ Map<String, List<Object>> parameterValue = new HashMap<>();
+ List<Object> valueList = new ArrayList<>();
+ valueList.add(newNodeTemplateId);
+ valueList.add(getAttrFuncData.getAttributeName());
+ parameterValue.put(ToscaFunctions.GET_ATTRIBUTE.getDisplayName(), valueList);
+ ParameterDefinition outputParameter = new ParameterDefinition();
+ outputParameter.setValue(parameterValue);
+ //todo - the type need to be change based on the attribute type in the accordingly node type
+ // of this node template - XXX, instead of list of string, list of XXXX,
+ outputParameter.setType(PropertyType.LIST.getDisplayName());
+ outputParameter.setEntry_schema(
+ DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null));
+ DataModelUtil.addOutputParameterToTopologyTemplate(substitutionServiceTemplate,
+ getNewSubstitutionOutputParameterId(newNodeTemplateId, getAttrFuncData.getAttributeName()),
+ outputParameter);
+ }
+
+ private String getNewSubstitutionOutputParameterId(String newNodeTemplateId,
+ String attributeName) {
+ return newNodeTemplateId + "_" + attributeName;
+ }
+
+ private void addUnifiedSubstitionData(TranslationContext context, ServiceTemplate
+ serviceTemplate, List<UnifiedCompositionData> unifiedCompositionDataList, String
+ substituteNodeTemplateId) {
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ //Add compute node template mapping information
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionData.getComputeTemplateConsolidationData();
+ String computeNodeTemplateId = computeTemplateConsolidationData.getNodeTemplateId();
+ context.addUnifiedSubstitutionData(serviceTemplateFileName, computeNodeTemplateId,
+ substituteNodeTemplateId);
+ //Add Port template mapping information
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+
+ if (CollectionUtils.isNotEmpty(portTemplateConsolidationDataList)) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String oldPortNodeTemplateId = portTemplateConsolidationData.getNodeTemplateId();
+ context.addUnifiedSubstitutionData(serviceTemplateFileName, oldPortNodeTemplateId,
+ substituteNodeTemplateId);
+ }
+ }
+ }
+ }
+
+ private void addSubstitutionFilteringProperty(String templateName, NodeTemplate nodeTemplate,
+ int count) {
+ Map<String, Object> serviceTemplateFilterPropertyValue = new HashMap<>();
+ Map<String, Object> properties = nodeTemplate.getProperties();
+ serviceTemplateFilterPropertyValue.put(ToscaConstants
+ .SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME, templateName);
+ serviceTemplateFilterPropertyValue.put(ToscaConstants.COUNT_PROPERTY_NAME, count);
+ properties.put(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME,
+ serviceTemplateFilterPropertyValue);
+ nodeTemplate.setProperties(properties);
+ }
+
+ private void addIndexValueProperty(NodeTemplate nodeTemplate) {
+ List<String> indexValueGetPropertyValue = new ArrayList<>();
+ indexValueGetPropertyValue.add(ToscaConstants.MODELABLE_ENTITY_NAME_SELF);
+ indexValueGetPropertyValue.add(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME);
+ indexValueGetPropertyValue.add(ToscaConstants.INDEX_VALUE_PROPERTY_NAME);
+
+ Map<String, Object> indexPropertyValue = new HashMap<>();
+ Map<String, Object> properties = nodeTemplate.getProperties();
+ indexPropertyValue.put(ToscaFunctions.GET_PROPERTY.getDisplayName(),
+ indexValueGetPropertyValue);
+ properties.put(ToscaConstants.INDEX_VALUE_PROPERTY_NAME,
+ indexPropertyValue);
+ nodeTemplate.setProperties(properties);
+ }
+
+ private String getSubstituteNodeTemplateId(ServiceTemplate serviceTemplate,
+ UnifiedCompositionData unifiedCompositionData,
+ Integer index) {
+ String computeNodeTemplateId =
+ unifiedCompositionData.getComputeTemplateConsolidationData().getNodeTemplateId();
+ NodeTemplate computeNodeTemplate =
+ DataModelUtil.getNodeTemplate(serviceTemplate, computeNodeTemplateId);
+ String nodeTemplateId = ABSTRACT_NODE_TEMPLATE_ID_PREFIX + DataModelUtil
+ .getNamespaceSuffix(computeNodeTemplate.getType());
+ if (Objects.nonNull(index)) {
+ nodeTemplateId = nodeTemplateId + "_" + index.toString();
+ }
+ return nodeTemplateId;
+ }
+
+ private String getSubstitutionNodeTypeId(ServiceTemplate serviceTemplate,
+ UnifiedCompositionData unifiedCompositionData,
+ Integer index) {
+ String computeNodeTemplateId =
+ unifiedCompositionData.getComputeTemplateConsolidationData().getNodeTemplateId();
+ NodeTemplate computeNodeTemplate =
+ DataModelUtil.getNodeTemplate(serviceTemplate, computeNodeTemplateId);
+ String nodeTypeId = ToscaNodeType.ABSTRACT_NODE_TYPE_PREFIX
+ + DataModelUtil.getNamespaceSuffix(computeNodeTemplate.getType());
+ if (Objects.nonNull(index)) {
+ nodeTypeId = nodeTypeId + "_" + index.toString();
+ }
+ return nodeTypeId;
+ }
+
+ private String getNewComputeNodeTemplateId(
+ ServiceTemplate serviceTemplate,
+ String computeNodeTemplateId) {
+ return getComputeTypeSuffix(serviceTemplate, computeNodeTemplateId);
+ }
+
+ private NodeType handleSubstitutionGlobalNodeType(ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ TranslationContext context,
+ UnifiedCompositionData unifiedCompositionData,
+ Integer index) {
+ String substitutionNodeTypeId =
+ getSubstitutionNodeTypeId(serviceTemplate, unifiedCompositionData, index);
+ NodeType substitutionNodeType = new ToscaAnalyzerServiceImpl()
+ .createInitSubstitutionNodeType(substitutionServiceTemplate,
+ ToscaNodeType.VFC_ABSTRACT_SUBSTITUTE);
+ ServiceTemplate globalSubstitutionServiceTemplate =
+ HeatToToscaUtil.fetchGlobalSubstitutionServiceTemplate(serviceTemplate, context);
+ DataModelUtil.addNodeType(globalSubstitutionServiceTemplate, substitutionNodeTypeId,
+ substitutionNodeType);
+
+ return substitutionNodeType;
+ }
+
+ private void handlePorts(ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ String connectedComputeNodeType,
+ TranslationContext context) {
+
+ if (unifiedCompositionDataList.size() > 1) {
+ handleConsolidationPorts(serviceTemplate, substitutionServiceTemplate,
+ unifiedCompositionDataList, connectedComputeNodeType, context);
+ } else {
+ handleSinglePorts(serviceTemplate, substitutionServiceTemplate, connectedComputeNodeType,
+ unifiedCompositionDataList, context);
+ }
+ }
+
+ private void handleSinglePorts(ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ String connectedComputeNodeType,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ UnifiedCompositionData unifiedCompositionData = unifiedCompositionDataList.get(0);
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ if (CollectionUtils.isEmpty(portTemplateConsolidationDataList)) {
+ return;
+ }
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ List<EntityConsolidationData> portConsolidationDataList = new ArrayList<>();
+ portConsolidationDataList.add(portTemplateConsolidationData);
+ handlePortNodeTemplate(serviceTemplate, substitutionServiceTemplate,
+ portConsolidationDataList, connectedComputeNodeType,
+ unifiedCompositionData.getComputeTemplateConsolidationData(),
+ unifiedCompositionDataList, context);
+ }
+ }
+
+ private void handleConsolidationPorts(ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ String connectedComputeNodeType,
+ TranslationContext context) {
+ Collection<ComputeTemplateConsolidationData> computeConsolidationDataList =
+ (Collection) getComputeConsolidationDataList(unifiedCompositionDataList);
+
+ Map<String, Set<String>> portIdsPerPortType = UnifiedCompositionUtil
+ .collectAllPortsFromEachTypesFromComputes(computeConsolidationDataList);
+
+ for (String portType : portIdsPerPortType.keySet()) {
+ List<EntityConsolidationData> portTemplateConsolidationDataList =
+ getPortConsolidationDataList(portIdsPerPortType.get(portType),
+ unifiedCompositionDataList);
+ if (CollectionUtils.isEmpty(portTemplateConsolidationDataList)) {
+ continue;
+ }
+
+ handlePortNodeTemplate(serviceTemplate, substitutionServiceTemplate,
+ portTemplateConsolidationDataList, connectedComputeNodeType,
+ unifiedCompositionDataList.get(0).getComputeTemplateConsolidationData(),
+ unifiedCompositionDataList, context);
+ }
+ }
+
+ private void handlePortNodeTemplate(
+ ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<EntityConsolidationData> portTemplateConsolidationDataList,
+ String connectedComputeNodeType,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ EntityConsolidationData portTemplateConsolidationData =
+ portTemplateConsolidationDataList.get(0);
+ NodeTemplate newPortNodeTemplate = getNodeTemplate(
+ portTemplateConsolidationData.getNodeTemplateId(), serviceTemplate, context).clone();
+
+ removeConnectivityOut(portTemplateConsolidationData, newPortNodeTemplate);
+ handleProperties(serviceTemplate, newPortNodeTemplate, substitutionServiceTemplate,
+ UnifiedCompositionEntity.Port, portTemplateConsolidationDataList,
+ computeTemplateConsolidationData, unifiedCompositionDataList, context);
+
+ String newPortNodeTemplateId =
+ getNewPortNodeTemplateId(portTemplateConsolidationData
+ .getNodeTemplateId(), connectedComputeNodeType,
+ computeTemplateConsolidationData);
+ //Update requirements for relationships between the consolidation entities
+ handleConsolidationEntitiesRequirementConnectivity(newPortNodeTemplateId, newPortNodeTemplate,
+ substitutionServiceTemplate, context);
+ DataModelUtil.addNodeTemplate(substitutionServiceTemplate, newPortNodeTemplateId,
+ newPortNodeTemplate);
+
+ //Add the node template mapping in the context for handling requirement updation
+ context.addSubstitutionServiceTemplateUnifiedSubstitutionData(ToscaUtil
+ .getServiceTemplateFileName(substitutionServiceTemplate),
+ portTemplateConsolidationData.getNodeTemplateId(), newPortNodeTemplateId);
+ }
+
+
+ private NodeTemplate getNodeTemplate(String nodeTemplateId, ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+
+ NodeTemplate nodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate, nodeTemplateId);
+
+ if (Objects.isNull(nodeTemplate)) {
+ nodeTemplate = context
+ .getCleanedNodeTemplate(ToscaUtil.getServiceTemplateFileName(serviceTemplate),
+ nodeTemplateId);
+
+ }
+ return nodeTemplate;
+ }
+
+
+ private String handleCompute(ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionDataList.get(0).getComputeTemplateConsolidationData();
+ handleComputeNodeTemplate(serviceTemplate, substitutionServiceTemplate,
+ unifiedCompositionDataList, context);
+ return handleComputeNodeType(serviceTemplate, substitutionServiceTemplate,
+ computeTemplateConsolidationData);
+ }
+
+ private String handleComputeNodeType(
+ ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+ NodeTemplate computeNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ NodeType computeNodeType =
+ DataModelUtil.getNodeType(serviceTemplate, computeNodeTemplate.getType());
+ DataModelUtil
+ .addNodeType(substitutionServiceTemplate, computeNodeTemplate.getType(), computeNodeType);
+
+ return computeNodeTemplate.getType();
+ }
+
+ private void handleComputeNodeTemplate(ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionDataList.get(0).getComputeTemplateConsolidationData();
+ NodeTemplate newComputeNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId()).clone();
+
+ removeConnectivityOut(computeTemplateConsolidationData, newComputeNodeTemplate);
+ removeVolumeConnectivity(computeTemplateConsolidationData, newComputeNodeTemplate);
+
+ List<EntityConsolidationData> computeConsoliadtionDataList =
+ getComputeConsolidationDataList(unifiedCompositionDataList);
+
+ handleProperties(serviceTemplate, newComputeNodeTemplate, substitutionServiceTemplate,
+ UnifiedCompositionEntity.Compute, computeConsoliadtionDataList,
+ computeTemplateConsolidationData, unifiedCompositionDataList, context);
+
+ String newComputeNodeTemplateId = getNewComputeNodeTemplateId(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ //Update requirements for relationships between the consolidation entities
+ handleConsolidationEntitiesRequirementConnectivity(newComputeNodeTemplateId,
+ newComputeNodeTemplate,
+ substitutionServiceTemplate, context);
+ DataModelUtil
+ .addNodeTemplate(substitutionServiceTemplate,
+ newComputeNodeTemplateId, newComputeNodeTemplate);
+ //Add the node template mapping in the context for handling requirement updation
+ context.addSubstitutionServiceTemplateUnifiedSubstitutionData(ToscaUtil
+ .getServiceTemplateFileName(substitutionServiceTemplate),
+ computeTemplateConsolidationData.getNodeTemplateId(), newComputeNodeTemplateId);
+
+ }
+
+ private List<EntityConsolidationData> getComputeConsolidationDataList(
+ List<UnifiedCompositionData> unifiedCompositionDataList) {
+ List<EntityConsolidationData> computeConsolidationDataList = new ArrayList<>();
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ computeConsolidationDataList
+ .add(unifiedCompositionData.getComputeTemplateConsolidationData());
+ }
+ return computeConsolidationDataList;
+ }
+
+
+ private void handleProperties(ServiceTemplate serviceTemplate, NodeTemplate nodeTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ UnifiedCompositionEntity unifiedCompositionEntity,
+ List<EntityConsolidationData> entityConsolidationDataList,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ List<String> propertiesWithIdenticalVal = consolidationService.getPropertiesWithIdenticalVal();
+ nodeTemplate.setProperties(new HashedMap());
+
+ for (EntityConsolidationData entityConsolidationData : entityConsolidationDataList) {
+ String nodeTemplateId = entityConsolidationData.getNodeTemplateId();
+ Map<String, Object> properties =
+ DataModelUtil.getNodeTemplateProperties(serviceTemplate, nodeTemplateId);
+ if (MapUtils.isEmpty(properties)) {
+ continue;
+ }
+
+ for (Map.Entry<String, Object> propertyEntry : properties.entrySet()) {
+ if (propertiesWithIdenticalVal.contains(propertyEntry.getKey())) {
+ String parameterId = updateIdenticalProperty(nodeTemplate, propertyEntry.getKey());
+ addInputParameter(parameterId, PropertyType.STRING.getDisplayName(), null,
+ substitutionServiceTemplate);
+ } else {
+ Optional<String> parameterId =
+ updateProperty(serviceTemplate, nodeTemplateId, nodeTemplate, propertyEntry,
+ unifiedCompositionEntity, computeTemplateConsolidationData,
+ unifiedCompositionDataList,
+ context);
+
+ //todo - define list of type which will match the node property type (instead of string)
+ NodeType nodeTypeWithFlatHierarchy =
+ HeatToToscaUtil.getNodeTypeWithFlatHierarchy(nodeTemplate.getType(), serviceTemplate,
+ context);
+ String propertyType =
+ nodeTypeWithFlatHierarchy.getProperties().get(propertyEntry.getKey())
+ .getType();
+
+ if (propertyType.equalsIgnoreCase(PropertyType.STRING.getDisplayName())
+ || propertyType.equalsIgnoreCase(PropertyType.INTEGER.getDisplayName())
+ || propertyType.equalsIgnoreCase(PropertyType.FLOAT.getDisplayName())
+ || propertyType.equalsIgnoreCase(PropertyType.BOOLEAN.getDisplayName())) {
+ parameterId
+ .ifPresent(parameterIdValue -> addInputParameter(parameterIdValue,
+ PropertyType.LIST.getDisplayName(),
+ DataModelUtil
+ .createEntrySchema(propertyType.toLowerCase(), null, null),
+ substitutionServiceTemplate));
+ } else {
+ parameterId
+ .ifPresent(parameterIdValue -> addInputParameter(parameterIdValue,
+ PropertyType.LIST.getDisplayName(),
+ DataModelUtil
+ .createEntrySchema(PropertyTypeExt.JSON.getDisplayName(), null, null),
+ substitutionServiceTemplate));
+ }
+ }
+ }
+ }
+ }
+
+ private void handleConsolidationEntitiesRequirementConnectivity(String nodeTemplateId,
+ NodeTemplate nodeTemplate,
+ ServiceTemplate
+ substitutionServiceTemplate,
+ TranslationContext context) {
+ Map<String, RequirementAssignment> updatedNodeTemplateRequirements = new HashMap<>();
+ List<Map<String, RequirementAssignment>> nodeTemplateRequirements = DataModelUtil
+ .getNodeTemplateRequirementList(nodeTemplate);
+ if (CollectionUtils.isEmpty(nodeTemplateRequirements)) {
+ return;
+ }
+
+ for (Map<String, RequirementAssignment> requirement : nodeTemplateRequirements) {
+ for (Map.Entry<String, RequirementAssignment> entry : requirement.entrySet()) {
+ RequirementAssignment requirementAssignment = entry.getValue();
+ String requirementNode = requirementAssignment.getNode();
+ String unifiedNodeTemplateId =
+ context.getUnifiedSubstitutionNodeTemplateId(substitutionServiceTemplate,
+ requirementNode);
+ if (unifiedNodeTemplateId != null) {
+ //Update the node id in the requirement
+ requirementAssignment.setNode(unifiedNodeTemplateId);
+ }
+ }
+ }
+ nodeTemplate.setRequirements(nodeTemplateRequirements);
+ }
+
+ /**
+ * Update the node references in the volume relationship templates.
+ *
+ * @param serviceTemplate the service template
+ * @param context the context
+ */
+ private void updateVolumeRelationshipTemplate(ServiceTemplate serviceTemplate,
+ String relationshipId,
+ TranslationContext context) {
+ Map<String, RelationshipTemplate> relationshipTemplates = DataModelUtil
+ .getRelationshipTemplates(serviceTemplate);
+ if (relationshipTemplates != null) {
+ RelationshipTemplate relationshipTemplate = relationshipTemplates.get(relationshipId);
+ if (relationshipTemplate != null) {
+ String relationshipTemplateType = relationshipTemplate.getType();
+ if (relationshipTemplateType.equals(ToscaRelationshipType.CINDER_VOLUME_ATTACHES_TO)) {
+ handleCinderVolumeAttachmentRelationshipTemplate(serviceTemplate,
+ relationshipTemplate, context);
+ }
+ }
+ }
+ }
+
+
+ private void handleCinderVolumeAttachmentRelationshipTemplate(ServiceTemplate
+ substitutionServiceTemplate,
+ RelationshipTemplate
+ relationshipTemplate,
+ TranslationContext context) {
+ Map<String, Object> properties = relationshipTemplate.getProperties();
+ properties.computeIfPresent(HeatConstants.INSTANCE_UUID_PROPERTY_NAME, (key, value) ->
+ context.getUnifiedAbstractNodeTemplateId(substitutionServiceTemplate,
+ (String) value));
+ }
+
+ private String updateIdenticalProperty(NodeTemplate nodeTemplate, String propertyId) {
+ Map<String, String> propertyVal = new HashMap<>();
+ String inputParamId = IDENTICAL_VALUE_PROPERTY_PREFIX + propertyId
+ + IDENTICAL_VALUE_PROPERTY_SUFFIX;
+ propertyVal.put(ToscaFunctions.GET_INPUT.getDisplayName(), inputParamId);
+ nodeTemplate.getProperties().put(propertyId, propertyVal);
+ return inputParamId;
+ }
+
+ private void addInputParameter(String parameterId, String parameterType, EntrySchema entrySchema,
+ ServiceTemplate serviceTemplate) {
+
+ ParameterDefinition parameterDefinition =
+ DataModelUtil.createParameterDefinition(parameterType, null, null,
+ true, null, null, entrySchema, null);
+ DataModelUtil
+ .addInputParameterToTopologyTemplate(serviceTemplate, parameterId, parameterDefinition);
+ }
+
+ // Return the input parameter Id which is used in the new property value if there is one
+ private Optional<String> updateProperty(
+ ServiceTemplate serviceTemplate,
+ String nodeTemplateId, NodeTemplate nodeTemplate,
+ Map.Entry<String, Object> propertyEntry,
+ UnifiedCompositionEntity compositionEntity,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+
+ if (handleGetAttrFromConsolidationNodes(serviceTemplate, nodeTemplate, propertyEntry,
+ unifiedCompositionDataList, context)) {
+ return Optional.empty();
+ }
+
+ Map<String, List<String>> propertyVal = new HashMap<>();
+ List<String> getInputFuncParams = new ArrayList<>();
+ String inputParamId =
+ getParameterId(nodeTemplateId, nodeTemplate, propertyEntry.getKey(), compositionEntity,
+ computeTemplateConsolidationData);
+ getInputFuncParams.add(inputParamId);
+ getInputFuncParams.add(ToscaConstants.INDEX_VALUE_PROPERTY_NAME);
+ propertyVal.put(ToscaFunctions.GET_INPUT.getDisplayName(), getInputFuncParams);
+ nodeTemplate.getProperties().put(propertyEntry.getKey(), propertyVal);
+ return Optional.of(inputParamId);
+ }
+
+ private boolean handleGetAttrFromConsolidationNodes(
+ ServiceTemplate serviceTemplate,
+ NodeTemplate nodeTemplate,
+ Map.Entry<String, Object> propertyEntry,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ Map<String, UnifiedCompositionEntity> consolidationNodeTemplateIdAndType =
+ getAllConsolidationNodeTemplateIdAndType(unifiedCompositionDataList);
+
+ Set<String> consolidationNodeTemplateIds = consolidationNodeTemplateIdAndType.keySet();
+ boolean includeGetAttrFromConsolidationNodes = false;
+ boolean includeGetAttrFromOutsideNodes = false;
+ List<List<Object>> getAttrFunctionList = extractGetAttrFunction(propertyEntry.getValue());
+ for (List<Object> getAttrFunc : getAttrFunctionList) {
+ if (consolidationNodeTemplateIds.contains(getAttrFunc.get(0))) {
+ includeGetAttrFromConsolidationNodes = true;
+ } else {
+ includeGetAttrFromOutsideNodes = true;
+ }
+ }
+ if ((includeGetAttrFromConsolidationNodes && includeGetAttrFromOutsideNodes)
+ ||
+ (includeGetAttrFromConsolidationNodes && isIncludeGetInputFunc(propertyEntry.getValue()))) {
+ //This case is currently not supported - this property will be ignored
+ return true;
+ } else if (includeGetAttrFromConsolidationNodes) {
+ Object clonedPropertyValue = getClonedPropertyValue(propertyEntry);
+ List<List<Object>> clonedGetAttrFuncList = extractGetAttrFunction(clonedPropertyValue);
+ for (List<Object> getAttrFunc : clonedGetAttrFuncList) {
+ String targetNodeTemplateId = (String) getAttrFunc.get(0);
+ if (consolidationNodeTemplateIds.contains(targetNodeTemplateId)) {
+ updatePropertyGetAttrFunc(serviceTemplate, unifiedCompositionDataList, context,
+ consolidationNodeTemplateIdAndType, targetNodeTemplateId, getAttrFunc);
+ }
+ }
+ nodeTemplate.getProperties().put(propertyEntry.getKey(), clonedPropertyValue);
+ return true;
+ }
+ return false;
+ }
+
+ private void updatePropertyGetAttrFunc(
+ ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context,
+ Map<String, UnifiedCompositionEntity> consolidationNodeTemplateIdAndType,
+ String targetNodeTemplateId,
+ List<Object> getAttrFunc) {
+ UnifiedCompositionEntity targetCompositionEntity =
+ consolidationNodeTemplateIdAndType.get(targetNodeTemplateId);
+ String targetNewNodeTemplateId =
+ getNewNodeTemplateId(serviceTemplate, unifiedCompositionDataList, targetNodeTemplateId,
+ targetCompositionEntity);
+ getAttrFunc.set(0, targetNewNodeTemplateId);
+ }
+
+ private String getNewNodeTemplateId(ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ String nodeTemplateId,
+ UnifiedCompositionEntity compositionEntity) {
+ switch (compositionEntity) {
+ case Compute:
+ return getNewComputeNodeTemplateId(serviceTemplate, nodeTemplateId);
+ case Port:
+ ComputeTemplateConsolidationData connectedComputeConsolidationData =
+ getConnectedComputeConsolidationData(serviceTemplate,
+ unifiedCompositionDataList, nodeTemplateId);
+ NodeTemplate connectedComputeNodeTemplate =
+ DataModelUtil.getNodeTemplate(serviceTemplate,
+ connectedComputeConsolidationData.getNodeTemplateId());
+ return getNewPortNodeTemplateId(nodeTemplateId, connectedComputeNodeTemplate.getType(),
+ connectedComputeConsolidationData);
+ default:
+ return null;
+ }
+ }
+
+ private String getNewNodeTemplateId(String origNodeTemplateId,
+ String serviceTemplateFileName,
+ ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+ ConsolidationData consolidationData = context.getConsolidationData();
+
+ if (isIdIsOfExpectedType(origNodeTemplateId, UnifiedCompositionEntity.Port,
+ serviceTemplateFileName,
+ consolidationData, context)) {
+ return handleIdOfPort(origNodeTemplateId, serviceTemplateFileName, consolidationData);
+ } else if (isIdIsOfExpectedType(origNodeTemplateId, UnifiedCompositionEntity.Compute,
+ serviceTemplateFileName, consolidationData, context)) {
+ NodeTemplate nodeTemplate =
+ getComputeNodeTemplate(origNodeTemplateId, serviceTemplate, context);
+ return getComputeTypeSuffix(nodeTemplate.getType());
+ }
+
+ return null;
+ }
+
+ private ComputeTemplateConsolidationData getConnectedComputeConsolidationData(
+ ServiceTemplate serviceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ String portNodeTemplateId) {
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ Collection<List<String>> portsCollection =
+ unifiedCompositionData.getComputeTemplateConsolidationData().getPorts().values();
+ for (List<String> portIdList : portsCollection) {
+ for (String portId : portIdList) {
+ if (portId.equals(portNodeTemplateId)) {
+ return unifiedCompositionData.getComputeTemplateConsolidationData();
+ }
+ }
+ }
+ }
+ return null;
+ }
+
+ private Object getClonedPropertyValue(Map.Entry<String, Object> propertyEntry) {
+ if (propertyEntry.getValue() instanceof Map) {
+ return getClonedObject(propertyEntry.getValue(), Map.class);
+ } else if (propertyEntry.getValue() instanceof List) {
+ return getClonedObject(propertyEntry.getValue(), List.class);
+ }
+ return propertyEntry.getValue();
+ }
+
+
+ private String getParameterId(String nodeTemplateId, NodeTemplate nodeTemplate, String propertyId,
+ UnifiedCompositionEntity unifiedCompositionEntity,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+ switch (unifiedCompositionEntity) {
+ case Compute:
+ return UnifiedCompositionEntity.Compute.name().toLowerCase() + "_"
+ + getComputeTypeSuffix(nodeTemplate.getType()) + "_" + propertyId;
+ case Port:
+ String portType = ConsolidationDataUtil.getPortType(nodeTemplateId);
+ if (computeTemplateConsolidationData.getPorts().get(portType).size() > 1) {
+ return UnifiedCompositionEntity.Port.name().toLowerCase() + "_" + nodeTemplateId + "_"
+ + propertyId;
+ }
+ return UnifiedCompositionEntity.Port.name().toLowerCase() + "_" + portType + "_"
+ + propertyId;
+ default:
+ return propertyId;
+ }
+ }
+
+ private void removeConnectivityOut(EntityConsolidationData entityConsolidationData,
+ NodeTemplate nodeTemplate) {
+ if (MapUtils.isEmpty(entityConsolidationData.getNodesConnectedOut())) {
+ return;
+ }
+
+ for (List<RequirementAssignmentData> requirementAssignmentDataList : entityConsolidationData
+ .getNodesConnectedOut().values()) {
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList) {
+ DataModelUtil.removeRequirementsAssignment(nodeTemplate.getRequirements(),
+ requirementAssignmentData.getRequirementId());
+ }
+ if (nodeTemplate.getRequirements().isEmpty()) {
+ nodeTemplate.setRequirements(null);
+ }
+ }
+ }
+
+ private void removeVolumeConnectivity(
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ NodeTemplate computeNodeTemplate) {
+ if (MapUtils.isEmpty(computeTemplateConsolidationData.getVolumes())) {
+ return;
+ }
+ Collection<List<RequirementAssignmentData>> volumeCollection =
+ computeTemplateConsolidationData.getVolumes().values();
+ for (List<RequirementAssignmentData> requirementAssignmentDataList : volumeCollection) {
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList) {
+ DataModelUtil.removeRequirementsAssignment(computeNodeTemplate.getRequirements(),
+ requirementAssignmentData.getRequirementId());
+ }
+ }
+ if (computeNodeTemplate.getRequirements().isEmpty()) {
+ computeNodeTemplate.setRequirements(null);
+ }
+ }
+
+ private void createIndexInputParameter(ServiceTemplate substitutionServiceTemplate) {
+ ParameterDefinition indexParameterDefinition =
+ DataModelUtil.createParameterDefinition(PropertyType.INTEGER.getDisplayName(),
+ "Index value of this substitution service template runtime instance", null,
+ false, createIndexValueConstraint(), null, null, 0);
+ DataModelUtil.addInputParameterToTopologyTemplate(substitutionServiceTemplate,
+ ToscaConstants.INDEX_VALUE_PROPERTY_NAME, indexParameterDefinition);
+ }
+
+
+ private List<Constraint> createIndexValueConstraint() {
+ List<Constraint> constraints;
+ constraints = new ArrayList<>();
+ Constraint constraint = new Constraint();
+ constraint.setGreater_or_equal(0);
+ constraints.add(constraint);
+ return constraints;
+ }
+
+ private Optional<UnifiedComposition> getUnifiedCompositionInstance(UnifiedCompositionMode mode) {
+ String unifiedCompositionImplClassName =
+ unifiedCompositionImplMap.get(mode.name()).getImplementationClass();
+ if (StringUtils.isEmpty(unifiedCompositionImplClassName)) {
+ return Optional.empty();
+ }
+ return Optional
+ .of(CommonMethods.newInstance(unifiedCompositionImplClassName, UnifiedComposition.class));
+ }
+
+ private Optional<Map<String, Object>> createAbstractSubstitutionProperties(
+ ServiceTemplate serviceTemplate,
+ ServiceTemplate substitutionServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList) {
+ Map<String, Object> abstractSubstituteProperties = new LinkedHashMap<>();
+ Map<String, ParameterDefinition> substitutionTemplateInputs = DataModelUtil
+ .getInputParameters(substitutionServiceTemplate);
+ if (substitutionTemplateInputs == null) {
+ return Optional.empty();
+ }
+ //Since all the computes have the same type fetching the type from the first entry
+ NodeTemplate firstComputeNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ unifiedCompositionDataList.get(0)
+ .getComputeTemplateConsolidationData().getNodeTemplateId());
+ String computeType = getComputeTypeSuffix(firstComputeNodeTemplate.getType());
+ for (Map.Entry<String, ParameterDefinition> input : substitutionTemplateInputs.entrySet()) {
+ String substitutionTemplateInputName = input.getKey();
+ ParameterDefinition inputParameterDefinition = input.getValue();
+ String inputType = inputParameterDefinition.getType();
+ if (!inputType.equalsIgnoreCase(PropertyType.LIST.getDisplayName())) {
+ if (isIdenticalValueProperty(substitutionTemplateInputName)) {
+ //Handle identical value properties
+ Object abstractPropertyValue = getPropertyValueFromNodeTemplate(
+ getIdenticalValuePropertyName(substitutionTemplateInputName),
+ firstComputeNodeTemplate);
+ abstractSubstituteProperties.put(substitutionTemplateInputName, abstractPropertyValue);
+ }
+ continue;
+ }
+
+ //Check if the input is of type compute or port
+ UnifiedCompositionEntity inputUnifiedCompositionEntity = getInputCompositionEntity(
+ substitutionTemplateInputName);
+ List<Object> abstractPropertyValue = new ArrayList<>();
+ Object propertyValue = null;
+ switch (inputUnifiedCompositionEntity) {
+ case Compute:
+ for (UnifiedCompositionData compositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ compositionData.getComputeTemplateConsolidationData();
+ propertyValue = getComputePropertyValue(substitutionTemplateInputName,
+ serviceTemplate, computeTemplateConsolidationData);
+ if (!(propertyValue instanceof Optional)) {
+ abstractPropertyValue.add(propertyValue);
+ }
+ }
+ break;
+ case Port:
+ for (UnifiedCompositionData compositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = compositionData
+ .getComputeTemplateConsolidationData();
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(compositionData);
+ //Get the input type for this input whether it is of type
+ // port_<port_node_template_id>_<property_name> or port_<port_type>_<property_name>
+ PortInputType portInputType = getPortInputType(substitutionTemplateInputName,
+ compositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ //Get the port property value
+ String portNodeTemplateId = portTemplateConsolidationData.getNodeTemplateId();
+ propertyValue = getPortPropertyValue(substitutionTemplateInputName,
+ computeType, portInputType, serviceTemplate, computeTemplateConsolidationData,
+ portNodeTemplateId);
+ //If the value object is Optional.empty it implies that the property name was not
+ // found in the input name
+ if (!(propertyValue instanceof Optional)) {
+ abstractPropertyValue.add(propertyValue);
+ }
+ }
+ }
+ break;
+ default:
+ break;
+ }
+ abstractSubstituteProperties.put(substitutionTemplateInputName, abstractPropertyValue);
+ }
+ return Optional.ofNullable(abstractSubstituteProperties);
+ }
+
+ private PortInputType getPortInputType(String inputName,
+ UnifiedCompositionData unifiedCompositionData) {
+ String portInputPrefix = UnifiedCompositionEntity.Port.name().toLowerCase() + "_";
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = unifiedCompositionData
+ .getComputeTemplateConsolidationData();
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ //Scan the available port node template ids to check if the input is of the form
+ // "port_<port_node_template_id>_<property_name>"
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ String portNodeTemplateId = portTemplateConsolidationData.getNodeTemplateId();
+ String portNodeTemplateIdPrefix = portInputPrefix + portNodeTemplateId;
+ if (inputName.startsWith(portNodeTemplateIdPrefix)) {
+ return PortInputType.NodeTemplateId;
+ }
+ }
+ //Check whether the input is of the form "port_<port_type>_<property_name>"
+ Set<String> portTypes = computeTemplateConsolidationData.getPorts().keySet();
+ for (String portType : portTypes) {
+ String expectedPortTypeSusbtring = portInputPrefix + portType + "_";
+ if (inputName.startsWith(expectedPortTypeSusbtring)) {
+ return PortInputType.PortType;
+ }
+ }
+ return PortInputType.Other;
+ }
+
+ private void cleanServiceTemplate(ServiceTemplate serviceTemplate,
+ EntityConsolidationData entity,
+ TranslationContext context) {
+ removeNodeTemplateFromServiceTemplate(serviceTemplate, entity, context);
+ updateHeatStackGroup(serviceTemplate, entity, context);
+ }
+
+ private void removeNodeTemplateFromServiceTemplate(ServiceTemplate serviceTemplate,
+ EntityConsolidationData entity,
+ TranslationContext context) {
+ String nodeTemplateIdToRemove = entity.getNodeTemplateId();
+ Map<String, NodeTemplate> nodeTemplates =
+ serviceTemplate.getTopology_template().getNode_templates();
+ NodeTemplate nodeTemplateToRemove =
+ nodeTemplates.get(nodeTemplateIdToRemove);
+ nodeTemplates.remove(nodeTemplateIdToRemove);
+
+ context.addCleanedNodeTemplate(ToscaUtil.getServiceTemplateFileName(serviceTemplate),
+ nodeTemplateIdToRemove,
+ entity.getClass() == ComputeTemplateConsolidationData.class
+ ? UnifiedCompositionEntity.Compute
+ : UnifiedCompositionEntity.Port,
+ nodeTemplateToRemove);
+
+ }
+
+ private void removeCleanedNodeType(String cleanedNodeTemplateId,
+ ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+ NodeTemplate cleanedNodeTemplate =
+ context
+ .getCleanedNodeTemplate(ToscaUtil.getServiceTemplateFileName(serviceTemplate),
+ cleanedNodeTemplateId);
+ String typeToRemove = cleanedNodeTemplate.getType();
+
+ if (Objects.nonNull(typeToRemove)
+ && serviceTemplate.getNode_types().containsKey(typeToRemove)) {
+ serviceTemplate.getNode_types().remove(typeToRemove);
+ }
+ }
+
+ private void updateHeatStackGroup(ServiceTemplate serviceTemplate,
+ EntityConsolidationData entity,
+ TranslationContext context) {
+ Map<String, GroupDefinition> groups = serviceTemplate.getTopology_template()
+ .getGroups() == null ? new HashMap<>()
+ : serviceTemplate.getTopology_template().getGroups();
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ String nodeRelatedAbstractNodeId =
+ context.getUnifiedAbstractNodeTemplateId(serviceTemplate, entity.getNodeTemplateId());
+
+ for (Map.Entry<String, GroupDefinition> groupEntry : groups.entrySet()) {
+ GroupDefinition groupDefinition = groupEntry.getValue();
+ if (isHeatStackGroup(groupDefinition.getType())) {
+ updateGroupMembersWithNewUnifiedNodeTemplateId(entity, nodeRelatedAbstractNodeId,
+ groupEntry);
+ }
+ }
+ }
+
+ private void updateGroupMembersWithNewUnifiedNodeTemplateId(
+ EntityConsolidationData entity,
+ String newNodetemplateId,
+ Map.Entry<String, GroupDefinition> groupEntry) {
+ List<String> members = groupEntry.getValue().getMembers();
+ if (members.contains(entity.getNodeTemplateId())) {
+ members.remove(entity.getNodeTemplateId());
+ if (!members.contains(newNodetemplateId)) {
+ members.add(newNodetemplateId);
+ }
+ }
+ groupEntry.getValue().setMembers(members);
+ }
+
+ private void updateHeatStackGroupNestedComposition(ServiceTemplate serviceTemplate,
+ EntityConsolidationData entity,
+ TranslationContext context) {
+ Map<String, GroupDefinition> groups = serviceTemplate.getTopology_template()
+ .getGroups() == null ? new HashMap<>() : serviceTemplate.getTopology_template().getGroups();
+ String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
+ Optional<String> nestedNodeTemplateId =
+ context.getUnifiedNestedNodeTemplateId(serviceTemplateFileName, entity.getNodeTemplateId());
+
+ if (nestedNodeTemplateId.isPresent()) {
+ for (Map.Entry<String, GroupDefinition> groupEntry : groups.entrySet()) {
+ GroupDefinition groupDefinition = groupEntry.getValue();
+ if (isHeatStackGroup(groupDefinition.getType())) {
+ updateGroupMembersWithNewUnifiedNodeTemplateId(entity, nestedNodeTemplateId.get(),
+ groupEntry);
+ }
+ }
+ }
+ }
+
+ private void handleNestedNodeTemplateInMainServiceTemplate(String nestedNodeTemplateId,
+ ServiceTemplate mainServiceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ TranslationContext context) {
+ NodeTemplate nestedNodeTemplate = DataModelUtil.getNodeTemplate(mainServiceTemplate,
+ nestedNodeTemplateId);
+ if (Objects.isNull(nestedNodeTemplate)) {
+ return;
+ }
+
+ Optional<String> unifiedNestedNodeTypeId = context
+ .getUnifiedNestedNodeTypeId(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ nestedNodeTemplate.getType());
+ unifiedNestedNodeTypeId
+ .ifPresent(unifiedNestedNodeTypeIdVal -> updateNestedNodeTemplate(
+ unifiedNestedNodeTypeIdVal, nestedNodeTemplateId, nestedNodeTemplate,
+ mainServiceTemplate, nestedServiceTemplate, context));
+ }
+
+ private void handleSubstitutionMappingInNestedServiceTemplate(
+ String newNestedNodeType,
+ ServiceTemplate nestedServiceTemplate) {
+ if (Objects.isNull(newNestedNodeType)) {
+ return;
+ }
+
+ SubstitutionMapping substitutionMappings =
+ nestedServiceTemplate.getTopology_template().getSubstitution_mappings();
+ substitutionMappings.setNode_type(newNestedNodeType);
+ }
+
+ private void updateNestedNodeTemplate(String newNestedNodeTypeId,
+ String nestedNodeTemplateId,
+ NodeTemplate nestedNodeTemplate,
+ ServiceTemplate mainServiceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ TranslationContext context) {
+ String mainServiceTemplateName = ToscaUtil.getServiceTemplateFileName(mainServiceTemplate);
+ int index =
+ context.getHandledNestedComputeNodeTemplateIndex(mainServiceTemplateName,
+ newNestedNodeTypeId);
+ String newNodeTemplateId =
+ Constants.ABSTRACT_NODE_TEMPLATE_ID_PREFIX + getComputeTypeSuffix(newNestedNodeTypeId) + "_" + index;
+
+ nestedNodeTemplate.setType(newNestedNodeTypeId);
+ mainServiceTemplate.getTopology_template().getNode_templates().remove(nestedNodeTemplateId);
+ mainServiceTemplate.getTopology_template().getNode_templates()
+ .put(newNodeTemplateId, nestedNodeTemplate);
+
+ context
+ .addUnifiedNestedNodeTemplateId(mainServiceTemplateName,
+ nestedNodeTemplateId, newNodeTemplateId);
+ }
+
+ private void handleNestedNodeTypesInGlobalSubstituteServiceTemplate(
+ String origNestedNodeTypeId,
+ String newNestedNodeTypeId,
+ ServiceTemplate globalSubstitutionServiceTemplate,
+ TranslationContext context) {
+ Map<String, NodeType> nodeTypes = globalSubstitutionServiceTemplate.getNode_types();
+ NodeType nested = DataModelUtil.getNodeType(globalSubstitutionServiceTemplate,
+ origNestedNodeTypeId);
+ setNewValuesForNestedNodeType(origNestedNodeTypeId, newNestedNodeTypeId, nested, nodeTypes);
+ context.addUnifiedNestedNodeTypeId(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ origNestedNodeTypeId, newNestedNodeTypeId);
+ }
+
+ private void setNewValuesForNestedNodeType(String origNestedNodeType,
+ String newNestedNodeTypeId,
+ NodeType nested,
+ Map<String, NodeType> nodeTypes) {
+ if (Objects.nonNull(nested)) {
+ nested.setDerived_from(ToscaNodeType.VFC_ABSTRACT_SUBSTITUTE);
+ nodeTypes.remove(origNestedNodeType);
+ nodeTypes.put(newNestedNodeTypeId, nested);
+ }
+ }
+
+ private Optional<String> getNewNestedNodeTypeId(ServiceTemplate mainServiceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ TranslationContext context) {
+ FileComputeConsolidationData fileComputeConsolidationData =
+ context.getConsolidationData().getComputeConsolidationData()
+ .getFileComputeConsolidationData(
+ ToscaUtil.getServiceTemplateFileName(nestedServiceTemplate));
+
+ if (Objects.nonNull(fileComputeConsolidationData)) {
+ String nestedNodeTypePrefix = ToscaNodeType.ABSTRACT_NODE_TYPE_PREFIX + "heat.";
+ return Optional
+ .of(nestedNodeTypePrefix + getComputeTypeInNestedFile(fileComputeConsolidationData));
+ }
+ return Optional.empty();
+ }
+
+ private String getComputeTypeInNestedFile(
+ FileComputeConsolidationData fileComputeConsolidationData) {
+ List<TypeComputeConsolidationData> typeComputeConsolidationDatas =
+ new ArrayList<>(fileComputeConsolidationData.getAllTypeComputeConsolidationData());
+ if (typeComputeConsolidationDatas.size() == 0) {
+ return null;
+ } else {
+ String computeNodeType = fileComputeConsolidationData.getAllComputeTypes().iterator().next();
+ return getComputeTypeSuffix(computeNodeType);
+ }
+ }
+
+ private void handleGetAttrInAbstractNodeTemplate(ServiceTemplate serviceTemplate,
+ TranslationContext context,
+ String serviceTemplateFileName,
+ NodeTemplate abstractNodeTemplate) {
+ Map<String, Object> properties =
+ abstractNodeTemplate == null || abstractNodeTemplate.getProperties() == null
+ ? new HashMap<>()
+ : abstractNodeTemplate.getProperties();
+ for (Object propertyValue : properties.values()) {
+ List<List<Object>> getAttrList = extractGetAttrFunction(propertyValue);
+ for (List<Object> getAttrFuncValue : getAttrList) {
+ String origNodeTemplateId = (String) getAttrFuncValue.get(0);
+ Optional<String> nestedNodeTemplateId = context.getUnifiedNestedNodeTemplateId(ToscaUtil
+ .getServiceTemplateFileName(serviceTemplate), origNodeTemplateId);
+ if (nestedNodeTemplateId.isPresent()) {
+ getAttrFuncValue.set(0, nestedNodeTemplateId.get());
+ } else {
+ replaceGetAttrNodeIdAndAttrName(serviceTemplate, context, serviceTemplateFileName,
+ getAttrFuncValue);
+ }
+ }
+ }
+ }
+
+ private void replaceGetAttrNodeIdAndAttrName(ServiceTemplate serviceTemplate,
+ TranslationContext context,
+ String serviceTemplateFileName,
+ List<Object> getAttrFuncValue) {
+ String origNodeTemplateId = (String) getAttrFuncValue.get(0);
+ String attributeName = (String) getAttrFuncValue.get(1);
+
+ String unifiedAbstractNodeTemplateId =
+ context.getUnifiedAbstractNodeTemplateId(serviceTemplate, origNodeTemplateId);
+
+ if (Objects.isNull(unifiedAbstractNodeTemplateId)) {
+ return;
+ }
+
+ String newNodeTemplateId =
+ getNewNodeTemplateId(origNodeTemplateId, serviceTemplateFileName, serviceTemplate, context);
+
+ String newSubstitutionOutputParameterId =
+ getNewSubstitutionOutputParameterId(newNodeTemplateId, attributeName);
+
+ getAttrFuncValue.set(0, unifiedAbstractNodeTemplateId);
+ getAttrFuncValue.set(1, newSubstitutionOutputParameterId);
+ }
+
+ private NodeTemplate getComputeNodeTemplate(String origNodeTemplateId,
+ ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+ NodeTemplate computeNodeTemplate =
+ DataModelUtil.getNodeTemplate(serviceTemplate, origNodeTemplateId);
+ if (computeNodeTemplate == null) {
+ computeNodeTemplate =
+ context.getCleanedNodeTemplate(ToscaUtil.getServiceTemplateFileName(serviceTemplate),
+ origNodeTemplateId);
+ }
+ return computeNodeTemplate;
+ }
+
+ private String handleIdOfPort(String origNodeTemplateId, String serviceTemplateFileName,
+ ConsolidationData consolidationData) {
+ Optional<Pair<String, ComputeTemplateConsolidationData>>
+ computeTypeAndComputeTemplateByPortId =
+ getComputeTypeAndComputeTemplateByPortId(origNodeTemplateId, serviceTemplateFileName,
+ consolidationData);
+ if (computeTypeAndComputeTemplateByPortId.isPresent()) {
+ Pair<String, ComputeTemplateConsolidationData> computeIdToComputeData =
+ computeTypeAndComputeTemplateByPortId.get();
+ return getNewPortNodeTemplateId(origNodeTemplateId, computeIdToComputeData.getKey(),
+ computeIdToComputeData.getValue());
+ }
+
+ return null;
+ }
+
+ private Optional<Pair<String, ComputeTemplateConsolidationData>>
+ getComputeTypeAndComputeTemplateByPortId(String portId, String serviceTemplateFileName,
+ ConsolidationData consolidationData) {
+ FileComputeConsolidationData fileComputeConsolidationData =
+ consolidationData.getComputeConsolidationData()
+ .getFileComputeConsolidationData(serviceTemplateFileName);
+ Set<String> computeTypes =
+ fileComputeConsolidationData.getAllComputeTypes();
+
+ for (String computeType : computeTypes) {
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDatas =
+ fileComputeConsolidationData.getTypeComputeConsolidationData(computeType)
+ .getAllComputeTemplateConsolidationData();
+
+ for (ComputeTemplateConsolidationData compute : computeTemplateConsolidationDatas) {
+ if (ConsolidationDataUtil.isComputeReferenceToPortId(compute, portId)) {
+ return Optional.of(new ImmutablePair<>(computeType, compute));
+ }
+ }
+ }
+
+ return Optional.empty();
+ }
+
+ private boolean isIdIsOfExpectedType(String id,
+ UnifiedCompositionEntity expectedUnifiedCompositionEntity,
+ String serviceTemplateFileName,
+ ConsolidationData consolidationData,
+ TranslationContext context) {
+ UnifiedSubstitutionData unifiedSubstitutionData =
+ context.getUnifiedSubstitutionData().get(serviceTemplateFileName);
+ if (Objects.isNull(unifiedSubstitutionData)) {
+ return false;
+ }
+
+ UnifiedCompositionEntity actualUnifiedCompositionEntity =
+ unifiedSubstitutionData.getCleanedNodeTemplateCompositionEntity(id);
+
+ return actualUnifiedCompositionEntity == null ? false
+ : actualUnifiedCompositionEntity.equals(expectedUnifiedCompositionEntity);
+ }
+
+ private boolean isHeatStackGroup(String groupType) {
+ return groupType.equals(ToscaGroupType.HEAT_STACK);
+ }
+
+ private Object getPortPropertyValue(String inputName,
+ String computeType,
+ PortInputType portInputType,
+ ServiceTemplate serviceTemplate,
+ ComputeTemplateConsolidationData
+ computeTemplateConsolidationData,
+ String portNodeTemplateId) {
+ //Get the input prefix to extract the property name from the input name
+ String portInputPrefix = getPortInputPrefix(computeTemplateConsolidationData,
+ portNodeTemplateId, portInputType);
+ //Get the property name from the input
+ Optional<String> propertyName = getPropertyNameFromInput(inputName,
+ UnifiedCompositionEntity.Port, computeType, portInputPrefix);
+ //Get the property value from the node template
+ if (propertyName.isPresent()) {
+ NodeTemplate portNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ portNodeTemplateId);
+ return getPropertyValueFromNodeTemplate(propertyName.get(), portNodeTemplate);
+ }
+ return Optional.empty();
+ }
+
+ private Optional<String> getPortTypeFromInput(
+ String inputName,
+ String portNodeTemplateId,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+ String portTypeFromInput = null;
+ String portInputPrefix = UnifiedCompositionEntity.Port.name().toLowerCase() + "_";
+ String portNodeTemplateIdPrefix = portInputPrefix + portNodeTemplateId;
+ if (inputName.startsWith(portNodeTemplateIdPrefix)) {
+ return Optional.empty();
+ }
+ Set<String> portTypes = computeTemplateConsolidationData.getPorts().keySet();
+ for (String portType : portTypes) {
+ String expectedPortTypeSusbtring = "_" + portType + "_";
+ if (inputName.contains(expectedPortTypeSusbtring)) {
+ portTypeFromInput = portType;
+ break;
+ }
+ }
+ return Optional.ofNullable(portTypeFromInput);
+ }
+
+ private Object getComputePropertyValue(
+ String inputName,
+ ServiceTemplate serviceTemplate,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData) {
+ NodeTemplate nodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ computeTemplateConsolidationData.getNodeTemplateId());
+ String nodeType = getComputeTypeSuffix(nodeTemplate.getType());
+ Optional<String> propertyName =
+ getPropertyNameFromInput(inputName, UnifiedCompositionEntity.Compute, nodeType, null);
+ if (propertyName.isPresent()) {
+ return getPropertyValueFromNodeTemplate(propertyName.get(), nodeTemplate);
+ }
+ return Optional.empty();
+ }
+
+ private UnifiedCompositionEntity getInputCompositionEntity(String inputName) {
+ UnifiedCompositionEntity inputCompositionEntity = UnifiedCompositionEntity.Other;
+ String inputType = inputName.substring(0, inputName.indexOf('_'));
+ if (inputType.equals(UnifiedCompositionEntity.Compute.name().toLowerCase())) {
+ inputCompositionEntity = UnifiedCompositionEntity.Compute;
+ } else if (inputType.equals(UnifiedCompositionEntity.Port.name().toLowerCase())) {
+ inputCompositionEntity = UnifiedCompositionEntity.Port;
+ }
+ return inputCompositionEntity;
+ }
+
+ private Optional<String> getPropertyNameFromInput(
+ String inputName,
+ UnifiedCompositionEntity compositionEntity,
+ String computeType, String portInputPrefix) {
+ String propertyName = null;
+ switch (compositionEntity) {
+ case Compute:
+ propertyName = inputName.substring(inputName.lastIndexOf(computeType)
+ + computeType.length() + 1);
+ break;
+ case Port:
+ if (inputName.startsWith(portInputPrefix)) {
+ propertyName = inputName.split(portInputPrefix)[1];
+ }
+ break;
+ default:
+ break;
+ }
+ return Optional.ofNullable(propertyName);
+ }
+
+ private String getPortInputPrefix(
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ String portNodeTemplateId,
+ PortInputType portInputType) {
+ String portInputPrefix = UnifiedCompositionEntity.Port.name().toLowerCase() + "_";
+ String portType = ConsolidationDataUtil.getPortType(portNodeTemplateId);
+ if (portInputType == PortInputType.NodeTemplateId) {
+ portInputPrefix += portNodeTemplateId + "_";
+ } else if (portInputType == PortInputType.PortType) {
+ portInputPrefix += portType + "_";
+ }
+ return portInputPrefix;
+ }
+
+ private boolean isIdenticalValueProperty(String inputName) {
+ StringBuilder builder = new StringBuilder(IDENTICAL_VALUE_PROPERTY_PREFIX);
+ builder.append("[a-z]+");
+ builder.append(IDENTICAL_VALUE_PROPERTY_SUFFIX);
+ boolean isMatchingProperty = Pattern.matches(builder.toString(), inputName);
+ List<String> identicalValuePropertyList = consolidationService.getPropertiesWithIdenticalVal();
+ if (isMatchingProperty
+ && identicalValuePropertyList.contains(getIdenticalValuePropertyName(inputName))) {
+ return true;
+ }
+ return false;
+ }
+
+ private String getIdenticalValuePropertyName(String input) {
+ return input.split("_")[1];
+ }
+
+ private Object getPropertyValueFromNodeTemplate(String propertyName, NodeTemplate nodeTemplate) {
+ Map<String, Object> nodeTemplateProperties = nodeTemplate.getProperties();
+ if (nodeTemplateProperties != null) {
+ Object propertyValue = nodeTemplateProperties.get(propertyName);
+ propertyValue = getClonedObject(propertyValue);
+ return propertyValue;
+ }
+ return null;
+ }
+
+ private <T> Object getClonedObject(Object objectValue, Class<T> clazz) {
+ YamlUtil yamlUtil = new YamlUtil();
+ Object clonedObjectValue;
+ String objectToYaml = yamlUtil.objectToYaml(objectValue);
+ clonedObjectValue = yamlUtil.yamlToObject(objectToYaml, clazz);
+ return clonedObjectValue;
+ }
+
+ private Object getClonedObject(Object objectValue) {
+ Object clonedObjectValue;
+ try {
+ ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+ ObjectOutputStream objectOutputStream = new ObjectOutputStream(byteArrayOutputStream);
+ objectOutputStream.writeObject(objectValue);
+
+ ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(byteArrayOutputStream
+ .toByteArray());
+ ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream);
+ clonedObjectValue = objectInputStream.readObject();
+ } catch (NotSerializableException ex) {
+ return getClonedObject(objectValue, objectValue.getClass());
+ } catch (IOException ioe) {
+ return null;
+ } catch (ClassNotFoundException cnfe) {
+ return null;
+ }
+ return clonedObjectValue;
+ }
+
+ private Map<String, UnifiedCompositionEntity> getAllConsolidationNodeTemplateIdAndType(
+ List<UnifiedCompositionData> unifiedCompositionDataList) {
+
+ Map<String, UnifiedCompositionEntity> consolidationNodeTemplateIdAndType = new HashMap<>();
+ for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ unifiedCompositionData.getComputeTemplateConsolidationData();
+ if (Objects.nonNull(computeTemplateConsolidationData)) {
+ consolidationNodeTemplateIdAndType
+ .put(computeTemplateConsolidationData.getNodeTemplateId(),
+ UnifiedCompositionEntity.Compute);
+ }
+ List<PortTemplateConsolidationData> portTemplateConsolidationDataList =
+ getPortTemplateConsolidationDataList(unifiedCompositionData);
+ for (PortTemplateConsolidationData portTemplateConsolidationData :
+ portTemplateConsolidationDataList) {
+ consolidationNodeTemplateIdAndType.put(portTemplateConsolidationData.getNodeTemplateId(),
+ UnifiedCompositionEntity.Port);
+ }
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ unifiedCompositionData.getNestedTemplateConsolidationData();
+ if (Objects.nonNull(nestedTemplateConsolidationData)) {
+ consolidationNodeTemplateIdAndType
+ .put(nestedTemplateConsolidationData.getNodeTemplateId(),
+ UnifiedCompositionEntity.Nested);
+ }
+ }
+ return consolidationNodeTemplateIdAndType;
+ }
+
+ private enum PortInputType {
+ NodeTemplateId,
+ PortType,
+ Other;
+ }
+
+ private List<PortTemplateConsolidationData> getPortTemplateConsolidationDataList(
+ UnifiedCompositionData unifiedCompositionData) {
+ return unifiedCompositionData.getPortTemplateConsolidationDataList() == null ? new
+ ArrayList<>() : unifiedCompositionData.getPortTemplateConsolidationDataList();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionUtil.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionUtil.java
new file mode 100644
index 0000000000..4d08176943
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionUtil.java
@@ -0,0 +1,55 @@
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Utility class for consolidation data collection helper methods.
+ */
+public class UnifiedCompositionUtil {
+
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(UnifiedCompositionUtil.class);
+
+ /**
+ * Gets all ports per port type, which are connected to the computes from the input
+ * computeTemplateConsolidationDataCollection.
+ *
+ * @param computeTemplateConsolidationDataCollection collection of compute template
+ * consolidation data
+ * @return set of port ids, per port type
+ */
+ public static Map<String, Set<String>> collectAllPortsFromEachTypesFromComputes(
+ Collection<ComputeTemplateConsolidationData> computeTemplateConsolidationDataCollection) {
+ Map<String, Set<String>> portTypeToIds = new HashMap<>();
+
+ for (ComputeTemplateConsolidationData compute : computeTemplateConsolidationDataCollection) {
+ Map<String, List<String>> ports = compute.getPorts();
+ if (!MapUtils.isEmpty(ports)) {
+ addPortsToMap(portTypeToIds, ports);
+ }
+ }
+
+ return portTypeToIds;
+ }
+
+ private static void addPortsToMap(Map<String, Set<String>> portTypeToIds,
+ Map<String, List<String>> ports) {
+ for (Map.Entry<String, List<String>> portTypeToIdEntry : ports.entrySet()) {
+ portTypeToIds.putIfAbsent(portTypeToIdEntry.getKey(), new HashSet<>());
+ portTypeToIds.get(portTypeToIdEntry.getKey()).addAll(portTypeToIdEntry.getValue());
+ }
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/IncorrectResourceReferenceErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/IncorrectResourceReferenceErrorBuilder.java
index c713855f60..fddf2a82d8 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/IncorrectResourceReferenceErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/IncorrectResourceReferenceErrorBuilder.java
@@ -23,11 +23,12 @@ package org.openecomp.sdc.translator.services.heattotosca.errors;
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
+
public class IncorrectResourceReferenceErrorBuilder extends BaseErrorBuilder {
private static final String INCORRECT_RESOURCE_REFERENCE_MSG =
"resource id '%s' with type '%s' has reference to resource '%s' with"
- + " type '%s' in property '%s'. Invalid type, resource type should be type of '%s'.";
+ + " type '%s' in property '%s'. Invalid type, resource type should be type of '%s'.";
/**
* Instantiates a new Incorrect resource reference error builder.
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/NotInSyncNumberOfInterfacesErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/NotInSyncNumberOfInterfacesErrorBuilder.java
index 810c09880e..ae903946e4 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/NotInSyncNumberOfInterfacesErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/NotInSyncNumberOfInterfacesErrorBuilder.java
@@ -28,7 +28,7 @@ public class NotInSyncNumberOfInterfacesErrorBuilder extends BaseErrorBuilder {
private static final String NOT_IN_SYNC_NUMBER_OF_INTERFACES_MSG =
"More than one ServiceInstance pointing to the same "
- + "ServiceTemplate '%s', with different number of interfaces.";
+ + "ServiceTemplate '%s', with different number of interfaces.";
/**
* Instantiates a new Not in sync number of interfaces error builder.
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/ReferenceToUnsupportedResourceErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/ReferenceToUnsupportedResourceErrorBuilder.java
index 5b48cb2c59..dc41e5d207 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/ReferenceToUnsupportedResourceErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/ReferenceToUnsupportedResourceErrorBuilder.java
@@ -27,8 +27,8 @@ import org.openecomp.sdc.common.errors.ErrorCategory;
public class ReferenceToUnsupportedResourceErrorBuilder extends BaseErrorBuilder {
private static final String REFERENCE_TO_UNSUPPORTED_RESOURCE_MSG =
- "Resource id '%s' with type '%s' has reference to"
- + " unsupported resource '%s' with type '%s' in property '%s'";
+ "Resource id '%s' with type '%s' has reference "
+ + "to unsupported resource '%s' with type '%s' in property '%s'";
/**
* Instantiates a new Reference to unsupported resource error builder.
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/TranslatorErrorCodes.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/TranslatorErrorCodes.java
index f9b873adca..bfcf834ae1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/TranslatorErrorCodes.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/errors/TranslatorErrorCodes.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.translator.services.heattotosca.errors;
+
public class TranslatorErrorCodes {
public static final String MISSING_MANDATORY_PROPERTY = "MISSING_MANDATORY_PROPERTY";
public static final String HEAT_TO_TOSCA_MAPPING_COLLISION = "HEAT_TO_TOSCA_MAPPING_COLLISION";
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/AbstractSubstituteGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/AbstractSubstituteGlobalType.java
deleted file mode 100644
index 221a9e522b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/AbstractSubstituteGlobalType.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.Constraint;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-
-public class AbstractSubstituteGlobalType {
-
- private AbstractSubstituteGlobalType() {
- }
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate serviceTemplate = new ServiceTemplate();
- serviceTemplate.setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- serviceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.ABSTRACT_SUBSTITUTE_TEMPLATE_NAME, "1.0.0", null));
- serviceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- serviceTemplate.setDescription("Abstract Substitute Global Types");
- serviceTemplate.setData_types(createGlobalDataTypes());
- serviceTemplate.setNode_types(createGlobalNodeTypes());
- return serviceTemplate;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.ABSTRACT_SUBSTITUTE.getDisplayName(),
- createAbstractSubstituteNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createAbstractSubstituteNodeType() {
- NodeType nodeType = new NodeType();
- nodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- nodeType.setProperties(createAbstractSubstituteProperties());
- return nodeType;
- }
-
- private static Map<String, PropertyDefinition> createAbstractSubstituteProperties() {
- Map<String, PropertyDefinition> props = new HashMap<>();
- props.put(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(ToscaDataType.SUBSTITUTION_FILTERING.getDisplayName(),
- "Substitution Filter", true, null, null, null, null));
-
- return props;
- }
-
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes.put(ToscaDataType.SUBSTITUTION_FILTER.getDisplayName(),
- createSubstitutionFilterDataType());
- globalDataTypes.put(ToscaDataType.SUBSTITUTION_FILTERING.getDisplayName(),
- createSubstitutionFilteringDataType());
- return globalDataTypes;
- }
-
- private static DataType createSubstitutionFilterDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Substitution Filter");
- Map<String, PropertyDefinition> properties = new HashMap<>();
- properties.put(ToscaConstants.COUNT_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Count", false, null, null,
- null, 1));
- properties.put(ToscaConstants.SCALING_ENABLED_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Indicates whether service scaling is enabled", false, null, null, null, true));
- properties.put(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Substitute Service Template", true, null, null, null, null));
- properties.put("mandatory", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(), "Mandatory", false, null,
- null, null, true));
- properties.put("index_variable", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Index variable", false,
- createMinLengthConstraint(), null, null, "%index%"));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static List<Constraint> createMinLengthConstraint() {
- List<Constraint> constraints;
- constraints = new ArrayList<>();
- Constraint constraint = new Constraint();
- constraint.setMin_length(3);
- constraints.add(constraint);
- return constraints;
- }
-
- private static DataType createSubstitutionFilteringDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Substitution Filter");
- Map<String, PropertyDefinition> properties = new HashMap<>();
- properties.put(ToscaConstants.COUNT_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Count", false, null, null,
- null, 1));
- properties.put(ToscaConstants.INDEX_VALUE_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(),
- "Index value of the substitution service template runtime instance", false,
- createIndexValueConstraint(), null, null, 0));
- properties.put(ToscaConstants.SCALING_ENABLED_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Indicates whether service scaling is enabled", false, null, null, null, true));
- properties.put(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Substitute Service Template", true, null, null, null, null));
- properties.put("mandatory", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(), "Mandatory", false, null,
- null, null, true));
-
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static List<Constraint> createIndexValueConstraint() {
- List<Constraint> constraints;
- constraints = new ArrayList<>();
- Constraint constraint = new Constraint();
- constraint.setGreater_or_equal(0);
- constraints.add(constraint);
- return constraints;
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CinderVolumeGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CinderVolumeGlobalType.java
deleted file mode 100644
index 72f3043225..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CinderVolumeGlobalType.java
+++ /dev/null
@@ -1,242 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Constraint;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.RelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class CinderVolumeGlobalType {
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate cinderVolumeServiceTemplate = new ServiceTemplate();
- cinderVolumeServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- cinderVolumeServiceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.CINDER_VOLUME_TEMPLATE_NAME, "1.0.0", null));
- cinderVolumeServiceTemplate.setDescription("Cinder Volume TOSCA Global Types");
- cinderVolumeServiceTemplate.setRelationship_types(createGlobalRelationshipTypes());
- cinderVolumeServiceTemplate.setNode_types(createGlobalNodeTypes());
- return cinderVolumeServiceTemplate;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CINDER_VOLUME.getDisplayName(), createCinderVolumeNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createCinderVolumeNodeType() {
- NodeType cinderVolumeNodeType = new NodeType();
- cinderVolumeNodeType.setDerived_from(ToscaNodeType.BLOCK_STORAGE.getDisplayName());
- cinderVolumeNodeType.setProperties(createCinderVolumeProperties());
- cinderVolumeNodeType.setAttributes(createCinderVolumeAttributes());
- return cinderVolumeNodeType;
- }
-
- private static Map<String, RelationshipType> createGlobalRelationshipTypes() {
- Map<String, RelationshipType> globalRelationshipTypes = new HashMap<>();
- globalRelationshipTypes.put(ToscaRelationshipType.CINDER_VOLUME_ATTACHES_TO.getDisplayName(),
- createCinderVolumeAttachesToRelationshipType());
- return globalRelationshipTypes;
- }
-
- private static RelationshipType createCinderVolumeAttachesToRelationshipType() {
- RelationshipType cinderVolumeAttachesToRelationType = new RelationshipType();
- cinderVolumeAttachesToRelationType
- .setDerived_from(ToscaRelationshipType.NATIVE_ATTACHES_TO.getDisplayName());
- cinderVolumeAttachesToRelationType
- .setDescription("This type represents an attachment relationship for associating volume");
-
- Map<String, PropertyDefinition> cinderVolumeAttachesToProps = new HashMap<>();
- cinderVolumeAttachesToProps.put("location", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The location where the volume is exposed on the instance, mountpoint", false, null,
- null, null, null)); //overridden location prop from attachesTo
- cinderVolumeAttachesToProps.put("instance_uuid", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The ID of the server to which the volume attaches", true, null, null, null, null));
- cinderVolumeAttachesToProps.put("volume_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The ID of the volume to be attached", true, null, null, null, null));
- cinderVolumeAttachesToRelationType.setProperties(cinderVolumeAttachesToProps);
-
- Map<String, AttributeDefinition> cinderVolumeAttachesToAttributes = new HashMap<>();
- cinderVolumeAttachesToAttributes.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Detailed information about resource", null, null, null));
- cinderVolumeAttachesToRelationType.setAttributes(cinderVolumeAttachesToAttributes);
-
- return cinderVolumeAttachesToRelationType;
- }
-
- private static Map<String, PropertyDefinition> createCinderVolumeProperties() {
- Map<String, PropertyDefinition> cinderVolumePropertyDefMap = new HashMap<>();
- cinderVolumePropertyDefMap.put("availability_zone", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The availability zone in which the volume will be created", false, null, null, null,
- null));
- cinderVolumePropertyDefMap.put("backup_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "If specified, the backup to create the volume from", false, null, null, null, null));
- cinderVolumePropertyDefMap.put(Constants.DESCRIPTION_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "A description of the volume", false, null, null, null, null));
- cinderVolumePropertyDefMap.put("image", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "If specified, the name or ID of the image to create the volume from", false, null,
- null, null, null));
- cinderVolumePropertyDefMap.put("metadata", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "Key/value pairs to associate with the volume", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- cinderVolumePropertyDefMap.put("multiattach", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Whether allow the volume to be attached more than once", false, null, null, null,
- null));
- cinderVolumePropertyDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "A name used to distinguish the volume", false, null, null, null, null));
- cinderVolumePropertyDefMap.put("read_only", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Enables or disables read-only access mode of volume", false, null, null, null, null));
- cinderVolumePropertyDefMap.put("scheduler_hints", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "Arbitrary key-value pairs specified by the client "
- + "to help the Cinder scheduler creating a volume",
- false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- cinderVolumePropertyDefMap.put("size", DataModelUtil
- .createPropertyDefinition(PropertyType.SCALAR_UNIT_SIZE.getDisplayName(),
- "The requested storage size (default unit is MB)", false, getSizeConstraints(), null,
- null, null));
- cinderVolumePropertyDefMap.put("source_volid", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "If specified, the volume to use as source", false, null, null, null, null));
- cinderVolumePropertyDefMap.put("volume_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "If specified, the type of volume to use, mapping to a specific backend", false, null,
- null, null, null));
- cinderVolumePropertyDefMap.put("delete_on_termination", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Indicate whether the volume should be deleted when the server is terminated", false,
- null, null, null, null));
- cinderVolumePropertyDefMap.put("boot_index", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(),
- "Integer used for ordering the boot disks", false, null, null, null, null));
- cinderVolumePropertyDefMap.put("device_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Device type", false,
- getDeviceTypeConstraints(), null, null, null));
- cinderVolumePropertyDefMap.put("disk_bus", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Bus of the device: hypervisor driver chooses a suitable default if omitted", false,
- getDiskBusConstraints(), null, null, null));
- cinderVolumePropertyDefMap.put("swap_size", DataModelUtil
- .createPropertyDefinition(PropertyType.SCALAR_UNIT_SIZE.getDisplayName(),
- "The size of the swap, in MB", false, null, null, null, null));
-
- return cinderVolumePropertyDefMap;
- }
-
- private static Map<String, AttributeDefinition> createCinderVolumeAttributes() {
- Map<String, AttributeDefinition> cinderVolumeAttributesDefMap = new HashMap<>();
- cinderVolumeAttributesDefMap.put("attachments", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The list of attachments of the volume", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- cinderVolumeAttributesDefMap.put("bootable", DataModelUtil
- .createAttributeDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Boolean indicating if the volume can be booted or not", null, null, null));
- cinderVolumeAttributesDefMap.put("created_at", DataModelUtil
- .createAttributeDefinition(PropertyType.TIMESTAMP.getDisplayName(),
- "The timestamp indicating volume creation", null, null, null));
- cinderVolumeAttributesDefMap.put("display_description", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Description of the volume", null, null, null));
- cinderVolumeAttributesDefMap.put("display_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "Name of the volume", null,
- null, null));
- cinderVolumeAttributesDefMap.put("encrypted", DataModelUtil
- .createAttributeDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Boolean indicating if the volume is encrypted or not", null, null, null));
- cinderVolumeAttributesDefMap.put("metadata_values", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(),
- "Key/value pairs associated with the volume in raw dict form", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- cinderVolumeAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Detailed information about resource", null, null, null));
- cinderVolumeAttributesDefMap.put("status", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The current status of the volume", null, null, null));
- return cinderVolumeAttributesDefMap;
- }
-
- private static List<Constraint> getDeviceTypeConstraints() {
- Constraint validValues;
- List<Constraint> constraints = new ArrayList<>();
- validValues = DataModelUtil.createValidValuesConstraint("cdrom", "disk");
- constraints.add(validValues);
- return constraints;
- }
-
- private static List<Constraint> getDiskBusConstraints() {
- Constraint validValues;
- List<Constraint> constraints = new ArrayList<>();
- validValues =
- DataModelUtil.createValidValuesConstraint("ide", "lame_bus", "scsi", "usb", "virtio");
- constraints.add(validValues);
- return constraints;
- }
-
-
- private static List<Constraint> getSizeConstraints() {
- List<Constraint> constraints;
- constraints = new ArrayList<>();
- Constraint constraint = new Constraint();
- constraint.setGreater_or_equal("1 GB");
- constraints.add(constraint);
- return constraints;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CommonGlobalTypes.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CommonGlobalTypes.java
deleted file mode 100644
index 43a4782149..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/CommonGlobalTypes.java
+++ /dev/null
@@ -1,500 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaGroupType;
-import org.openecomp.sdc.tosca.datatypes.ToscaPolicyType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityType;
-import org.openecomp.sdc.tosca.datatypes.model.Constraint;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.GroupType;
-import org.openecomp.sdc.tosca.datatypes.model.Import;
-import org.openecomp.sdc.tosca.datatypes.model.PolicyType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.RelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.tosca.services.ToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class CommonGlobalTypes {
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate serviceTemplate = new ServiceTemplate();
- serviceTemplate.setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- serviceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.COMMON_GLOBAL_TEMPLATE_NAME, "1.0.0", null));
- serviceTemplate.setDescription("TOSCA Global Types");
- serviceTemplate.setData_types(createGlobalDataTypes());
- serviceTemplate.setGroup_types(createGroupTypes());
- serviceTemplate.setPolicy_types(createPolicyTypes());
- serviceTemplate.setRelationship_types(createRelationTypes());
- serviceTemplate.setCapability_types(createCapabilityTypes());
- serviceTemplate.setImports(createImportList());
- return serviceTemplate;
- }
-
- private static Map<String, CapabilityType> createCapabilityTypes() {
- Map<String, CapabilityType> capabilityMap = new HashMap<>();
- capabilityMap.put(ToscaCapabilityType.METRIC.getDisplayName(), createMetricCapabilityType());
- capabilityMap
- .put(ToscaCapabilityType.METRIC_CEILOMETER.getDisplayName(), createMetricCeilometerType());
- capabilityMap.put(ToscaCapabilityType.METRIC_SNMP_TRAP.getDisplayName(), createMetricSnmpType(
- "A node type that includes the Metric capability"
- + " indicates that it can be monitored using snmp trap."));
- capabilityMap.put(ToscaCapabilityType.METRIC_SNMP_POLLING.getDisplayName(),
- createMetricSnmpType(
- "A node type that includes the Metric capability indicates"
- + " that it can be monitored using snmp polling."));
- return capabilityMap;
- }
-
-
- private static CapabilityType createMetricSnmpType(String description) {
- CapabilityType capabilityType = new CapabilityType();
- capabilityType.setDerived_from(ToscaCapabilityType.METRIC.getDisplayName());
- capabilityType.setDescription(description);
- capabilityType.setProperties(createCapabilityMetricSnmpProperties());
-
- return capabilityType;
- }
-
-
- private static Map<String, PropertyDefinition> createCapabilityMetricSnmpProperties() {
- Map<String, PropertyDefinition> propertyDefinitionMap = new HashMap<>();
- propertyDefinitionMap.put("oid", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Object Id of the metric",
- true, null, null, null, null));
- return propertyDefinitionMap;
- }
-
- private static CapabilityType createMetricCeilometerType() {
- CapabilityType capabilityType = new CapabilityType();
- capabilityType.setDerived_from(ToscaCapabilityType.METRIC.getDisplayName());
- capabilityType.setDescription(
- "A node type that includes the Metric capability"
- + " indicates that it can be monitored using ceilometer.");
- capabilityType.setProperties(createCapabilityMetricCeilometerProperties());
- return capabilityType;
- }
-
-
- private static Map<String, PropertyDefinition> createCapabilityMetricCeilometerProperties() {
- Map<String, PropertyDefinition> propertyDefinitionMap = new HashMap<>();
- propertyDefinitionMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Ceilometer metric type name to monitor. (The name ceilometer is using)", true, null,
- null, null, null));
- return propertyDefinitionMap;
- }
-
- private static Map<String, Import> createImportList() {
- Map<String, Import> importsMap = new HashMap<>();
- importsMap.put(ToscaConstants.NATIVE_TYPES_SERVICE_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(ToscaConstants.NATIVE_TYPES_SERVICE_TEMPLATE_NAME));
- return importsMap;
- }
-
- /**
- * Create metric capability type capability type.
- *
- * @return the capability type
- */
- public static CapabilityType createMetricCapabilityType() {
- CapabilityType capabilityType = new CapabilityType();
- capabilityType.setDerived_from(ToscaCapabilityType.NFV_METRIC.getDisplayName());
- capabilityType.setDescription(
- "A node type that includes the Metric capability indicates that it can be monitored.");
- capabilityType.setProperties(createCapabilityMetricProperties());
- capabilityType.setAttributes(createCapabilityMetricAttributes());
- return capabilityType;
- }
-
- private static Map<String, AttributeDefinition> createCapabilityMetricAttributes() {
- Map<String, AttributeDefinition> attributeDefinitionMap = new HashMap<>();
-
- attributeDefinitionMap.put("value", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "Runtime monitored value",
- null, null, null));
- return attributeDefinitionMap;
- }
-
- private static Map<String, PropertyDefinition> createCapabilityMetricProperties() {
- Map<String, PropertyDefinition> propertyDefinitionMap = new HashMap<>();
- propertyDefinitionMap.put("type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Type of the metric value, for an example, Cumulative, Delta, Gauge and etc.", true,
- null, null, null, null));
- propertyDefinitionMap.put("unit", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Unit of the metric value",
- true, null, null, null, null));
- propertyDefinitionMap.put("category", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Category of the metric, for an example, compute, disk, network, storage and etc.",
- false, null, null, null, null));
- propertyDefinitionMap.put(Constants.DESCRIPTION_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Description of the metric",
- false, null, null, null, null));
- return propertyDefinitionMap;
- }
-
- private static Map<String, RelationshipType> createRelationTypes() {
- Map<String, RelationshipType> globalRelationshipTypes = new HashMap<>();
- globalRelationshipTypes.put(ToscaRelationshipType.ATTACHES_TO.getDisplayName(),
- createAttachesToRelationshipType());
- return globalRelationshipTypes;
- }
-
- private static RelationshipType createAttachesToRelationshipType() {
- RelationshipType attachesToRelationType = new RelationshipType();
- attachesToRelationType.setDerived_from(ToscaRelationshipType.ROOT.getDisplayName());
- attachesToRelationType.setDescription("This type represents an attachment relationship");
- return attachesToRelationType;
- }
-
- private static Map<String, PolicyType> createPolicyTypes() {
- Map<String, PolicyType> globalPolicyTypes = new HashMap<>();
- globalPolicyTypes
- .put(ToscaPolicyType.PLACEMENT_ANTILOCATE.getDisplayName(), createAntilocatePolicyType());
- globalPolicyTypes
- .put(ToscaPolicyType.PLACEMENT_COLOCATE.getDisplayName(), createColocatePolicyType());
- globalPolicyTypes.put(ToscaPolicyType.PLACEMENT_VALET_AFFINITY.getDisplayName(),
- createValetAffinityPolicyType());
- globalPolicyTypes.put(ToscaPolicyType.PLACEMENT_VALET_DIVERSITY.getDisplayName(),
- createValetDiversityPolicyType());
- globalPolicyTypes.put(ToscaPolicyType.PLACEMENT_VALET_EXCLUSIVITY.getDisplayName(),
- createValetExclusivityPolicyType());
- return globalPolicyTypes;
- }
-
- private static PolicyType createValetDiversityPolicyType() {
- PolicyType policyType = new PolicyType();
- policyType.setDerived_from(ToscaPolicyType.PLACEMENT.getDisplayName());
- policyType.setDescription("Valet Diversity");
- policyType.setProperties(new HashMap<>());
- policyType.getProperties().put("level", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "diversity", false,
- DataModelUtil.createValidValuesConstraintsList("host", "rack"), null, null, "host"));
-
- return policyType;
- }
-
- private static PolicyType createValetExclusivityPolicyType() {
- PolicyType policyType = new PolicyType();
- policyType.setDerived_from(ToscaPolicyType.PLACEMENT.getDisplayName());
- policyType.setDescription("Valet Exclusivity");
- policyType.setProperties(addNamePropertyToPolicyType());
- policyType.setProperties(new HashMap<>());
- policyType.getProperties().put("level", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "exclusivity", false,
- DataModelUtil.createValidValuesConstraintsList("host", "rack"), null, null, "host"));
- return policyType;
- }
-
- private static PolicyType createValetAffinityPolicyType() {
- PolicyType policyType = new PolicyType();
- policyType.setDerived_from(ToscaPolicyType.PLACEMENT.getDisplayName());
- policyType.setDescription("Valet Affinity");
- policyType.setProperties(new HashMap<>());
- policyType.getProperties().put("level", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "affinity", false,
- DataModelUtil.createValidValuesConstraintsList("host", "rack"), null, null, "host"));
-
- return policyType;
- }
-
-
- private static PolicyType createColocatePolicyType() {
- PolicyType policyType = new PolicyType();
- policyType.setDerived_from(ToscaPolicyType.PLACEMENT.getDisplayName());
- policyType.setDescription("Keep associated nodes (groups of nodes) based upon affinity value");
- policyType.setProperties(addNamePropertyToPolicyType());
- policyType.getProperties().put("affinity", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "affinity", true,
- DataModelUtil.createValidValuesConstraintsList("host", "region", "compute"), null, null,
- null));
-
- return policyType;
- }
-
- private static PolicyType createAntilocatePolicyType() {
- PolicyType policyType = new PolicyType();
- policyType.setDerived_from(ToscaPolicyType.PLACEMENT.getDisplayName());
- policyType.setDescription("My placement policy for separation based upon container type value");
- policyType.setProperties(addNamePropertyToPolicyType());
- policyType.getProperties().put("container_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "container type", false,
- DataModelUtil.createValidValuesConstraintsList("host", "region", "compute"), null, null,
- null));
- return policyType;
- }
-
- private static Map<String, PropertyDefinition> addNamePropertyToPolicyType() {
- Map<String, PropertyDefinition> policyTypeProperties = new HashMap<>();
- policyTypeProperties.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "The name of the policy",
- false, null, null, null, null));
- return policyTypeProperties;
- }
-
- private static Map<String, GroupType> createGroupTypes() {
- Map<String, GroupType> globalGroupTypes = new HashMap<>();
- globalGroupTypes.put(ToscaGroupType.HEAT_STACK.getDisplayName(), createHeatStackGroupType());
- return globalGroupTypes;
- }
-
- private static GroupType createHeatStackGroupType() {
- GroupType heatStackGroupType = new GroupType();
- heatStackGroupType.setDerived_from(ToscaGroupType.ROOT.getDisplayName());
- heatStackGroupType
- .setDescription("Grouped all heat resources which are in the same heat stack");
- heatStackGroupType.setProperties(createHeatStackGroupProperties());
-
- return heatStackGroupType;
- }
-
- private static Map<String, PropertyDefinition> createHeatStackGroupProperties() {
- Map<String, PropertyDefinition> propertiesDef = new HashMap<>();
- propertiesDef.put("heat_file", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Heat file which associate to this group/heat stack", true, null, null, null, null));
- propertiesDef.put(Constants.DESCRIPTION_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Heat file description",
- false, null, null, null, null));
- return propertiesDef;
- }
-
-
- /**
- * Create common service template import import.
- *
- * @return the import
- */
- public static Import createCommonServiceTemplateImport() {
- Import commonServiceTemplateImport = new Import();
- commonServiceTemplateImport
- .setFile(ToscaUtil.getServiceTemplateFileName(Constants.COMMON_GLOBAL_TEMPLATE_NAME));
- return commonServiceTemplateImport;
- }
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes.put(ToscaDataType.NETWORK_ALLOCATION_POOL.getDisplayName(),
- createAllocationPoolDataType());
- globalDataTypes
- .put(ToscaDataType.NETWORK_HOST_ROUTE.getDisplayName(), createHostRouteDataType());
- globalDataTypes.put(ToscaDataType.NEUTRON_SUBNET.getDisplayName(), createSubnetDataType());
- globalDataTypes
- .put(ToscaDataType.NETWORK_ADDRESS_PAIR.getDisplayName(), createAddressPairDataType());
- globalDataTypes.put(ToscaDataType.CONTRAIL_STATIC_ROUTE.getDisplayName(),
- createContrailStaticRouteDataType());
- globalDataTypes.put(ToscaDataType.CONTRAIL_ADDRESS_PAIR.getDisplayName(),
- createContrailAddressPairDataType());
- return globalDataTypes;
- }
-
- private static DataType createContrailStaticRouteDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("static route");
- Map<String, PropertyDefinition> prop = new HashMap<>();
-
- prop.put("prefix", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Route prefix", false, null,
- null, null, null));
- prop.put("next_hop", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Next hop", false, null,
- null, null, null));
- prop.put("next_hop_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Next hop type", false,
- null, null, null, null));
-
- dataType.setProperties(prop);
- return dataType;
- }
-
- private static DataType createContrailAddressPairDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Address Pair");
- Map<String, PropertyDefinition> prop = new HashMap<>();
-
- prop.put("prefix", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "IP address prefix", false,
- null, null, null, null));
- prop.put("mac_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Mac address", false, null,
- null, null, null));
- prop.put("address_mode", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Address mode active-active or active-standy", false,
- DataModelUtil.createValidValuesConstraintsList("active-active", "active-standby"), null,
- null, null));
-
- dataType.setProperties(prop);
- return dataType;
- }
-
- private static DataType createAddressPairDataType() {
- DataType addressPairDataType = new DataType();
- addressPairDataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- addressPairDataType.setDescription("MAC/IP address pairs");
- Map<String, PropertyDefinition> addressPairProp = new HashMap<>();
-
- addressPairProp.put("ip_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "IP address", false, null,
- null, null, null));
- addressPairProp.put("mac_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "MAC address", false, null,
- null, null, null));
- addressPairDataType.setProperties(addressPairProp);
-
- return addressPairDataType;
- }
-
- private static DataType createHostRouteDataType() {
- DataType hostRouteDataType = new DataType();
- hostRouteDataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- hostRouteDataType.setDescription("Host route info for the subnet");
-
- Map<String, PropertyDefinition> hostRoutePoolProp = new HashMap<>();
- hostRoutePoolProp.put("destination", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The destination for static route", false, null, null, null, null));
- hostRoutePoolProp.put("nexthop", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The next hop for the destination", false, null, null, null, null));
- hostRouteDataType.setProperties(hostRoutePoolProp);
-
- return hostRouteDataType;
- }
-
- private static DataType createAllocationPoolDataType() {
- DataType allocationPoolDataType = new DataType();
- allocationPoolDataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- allocationPoolDataType.setDescription("The start and end addresses for the allocation pool");
-
- Map<String, PropertyDefinition> allocationPoolProp = new HashMap<>();
- allocationPoolProp.put("start", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Start address for the allocation pool", false, null, null, null, null));
- allocationPoolProp.put("end", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "End address for the allocation pool", false, null, null, null, null));
- allocationPoolDataType.setProperties(allocationPoolProp);
-
- return allocationPoolDataType;
- }
-
- private static DataType createSubnetDataType() {
- DataType subnetDataType = new DataType();
- subnetDataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- subnetDataType.setDescription(
- "A subnet represents an IP address block that can "
- + "be used for assigning IP addresses to virtual instances");
-
- Map<String, PropertyDefinition> subnetProp = new HashMap<>();
- subnetProp.put("allocation_pools", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "The start and end addresses for the allocation pools", false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.NETWORK_ALLOCATION_POOL.getDisplayName(), null,
- null), null));
- subnetProp.put("cidr", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "The CIDR", false, null,
- null, null, null));
- subnetProp.put("dns_nameservers", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "A specified set of DNS name servers to be used", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- new ArrayList<String>()));
- subnetProp.put("enable_dhcp", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Set to true if DHCP is enabled and false if DHCP is disabled", false, null, null, null,
- true));
- subnetProp.put("gateway_ip", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "The gateway IP address",
- false, null, null, null, null));
- subnetProp.put("host_routes", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "The gateway IP address",
- false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.NETWORK_HOST_ROUTE.getDisplayName(), null, null),
- null));
- subnetProp.put("ip_version", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(), "The gateway IP address",
- false, DataModelUtil.createValidValuesConstraintsList("4", "6"), null, null, 4));
- subnetProp.put("ipv6_address_mode", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "IPv6 address mode", false,
- DataModelUtil
- .createValidValuesConstraintsList("dhcpv6-stateful", "dhcpv6-stateless", "slaac"),
- null, null, null));
- subnetProp.put("ipv6_ra_mode", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "IPv6 RA (Router Advertisement) mode", false, DataModelUtil
- .createValidValuesConstraintsList("dhcpv6-stateful", "dhcpv6-stateless", "slaac"),
- null, null, null));
- subnetProp.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "The name of the subnet",
- false, null, null, null, null));
- subnetProp.put("prefixlen", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(),
- "Prefix length for subnet allocation from subnet pool", false,
- createPrefixlenConstraint(), null, null, null));
- subnetProp.put("subnetpool", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The name or ID of the subnet pool", false, null, null, null, null));
- subnetProp.put("tenant_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The ID of the tenant who owns the network", false, null, null, null, null));
- subnetProp.put("value_specs", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "Extra parameters to include in the request", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- new HashMap<>()));
- subnetDataType.setProperties(subnetProp);
-
- return subnetDataType;
- }
-
- private static List<Constraint> createPrefixlenConstraint() {
- List<Constraint> constraints = new ArrayList<>();
- Constraint constraint = new Constraint();
- constraint.setGreater_or_equal(0);
- constraints.add(constraint);
- return constraints;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailAbstractSubstituteGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailAbstractSubstituteGlobalType.java
deleted file mode 100644
index 7b0b810b61..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailAbstractSubstituteGlobalType.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.HashMap;
-import java.util.Map;
-
-
-public class ContrailAbstractSubstituteGlobalType {
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate serviceTemplate = new ServiceTemplate();
- serviceTemplate.setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- serviceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants
- .CONTRAIL_ABSTRACT_SUBSTITUTE_TEMPLATE_NAME, "1.0.0", null));
- serviceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- serviceTemplate.setDescription("Contrail Abstract Substitute Global Types");
- serviceTemplate.setData_types(createGlobalDataTypes());
- serviceTemplate.setNode_types(createGlobalNodeTypes());
- return serviceTemplate;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE.getDisplayName(),
- createContrailAbstractSubstituteNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createContrailAbstractSubstituteNodeType() {
- NodeType nodeType = new NodeType();
- nodeType.setDerived_from(ToscaNodeType.ABSTRACT_SUBSTITUTE.getDisplayName());
- nodeType.setProperties(createContrailAbstractSubstituteProperties());
- nodeType.setAttributes(createContrailAbstractSubstituteAttributes());
-
- return nodeType;
- }
-
- private static Map<String, AttributeDefinition> createContrailAbstractSubstituteAttributes() {
- Map<String, AttributeDefinition> attributesDefMap = new HashMap<>();
- attributesDefMap.put("service_instance_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The name of the service instance", null, null, null));
- attributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The FQ name of the service instance", null, null, null));
- attributesDefMap.put("status", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Status of the service instance", null, null, null));
- attributesDefMap.put("service_template_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Service Template of the Service Instance", null, null, null));
- attributesDefMap.put("virtual_machines", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Service VMs for the Service Instance", null, null, null));
- attributesDefMap.put("active_vms", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Number of service VMs active for this Service Instance", null, null, null));
- attributesDefMap.put("tenant_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Tenant id of the Service Instance", null, null, null));
- attributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "All attributes", null,
- null, null));
-
- return attributesDefMap;
- }
-
- private static Map<String, PropertyDefinition> createContrailAbstractSubstituteProperties() {
- Map<String, PropertyDefinition> props = new HashMap<>();
- props.put("service_template_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service template name",
- false, null, null, null, null));
- props.put("service_mode", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service mode", true,
- DataModelUtil
- .createValidValuesConstraintsList("transparent", "in-network", "in-network-nat"),
- null, null, null));
- props.put("service_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service type", true,
- DataModelUtil.createValidValuesConstraintsList("firewall", "analyzer", "source-nat",
- "loadbalancer"), null, null, null));
- props.put("image_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Image name", true, null,
- null, null, null));
- props.put("flavor", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "flavor", false, null, null,
- null, null));
- props.put("service_interface_type_list", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "List of interface types",
- true, null, null, DataModelUtil
- .createEntrySchema(PropertyType.STRING.getDisplayName(), null, DataModelUtil
- .createValidValuesConstraintsList("management", "left", "right", "other")),
- null));
- props.put("shared_ip_list", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Shared ips enabled", false,
- null, null,
- DataModelUtil.createEntrySchema(PropertyType.BOOLEAN.getDisplayName(), null, null),
- null));
- props.put("static_routes_list", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Static routes enabled",
- false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.BOOLEAN.getDisplayName(), null, null),
- null));
- props.put("ordered_interfaces", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Indicates if service interface are ordered", false, null, null, null, false));
- props.put("availability_zone_enable", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Indicates availability zone is enabled", false, null, null, null, false));
- props.put("availability_zone", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Availability zone to create servers in", false, null, null, null, null));
- props.put("service_instance_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service instance name",
- true, null, null, null, null));
- props.put("interface_list", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "List of interfaces", false,
- null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_INTERFACE_DATA.getDisplayName(), null,
- null), null));
- return props;
- }
-
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes
- .put(ToscaDataType.CONTRAIL_INTERFACE_DATA.getDisplayName(), createInterfaceDataType());
- return globalDataTypes;
- }
-
- private static DataType createInterfaceDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Interface Data");
- Map<String, PropertyDefinition> propertyDefMap = new HashMap<>();
- propertyDefMap.put("virtual_network", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Virtual Network for this interface", true, null, null, null, null));
- propertyDefMap.put("ip_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "IP for this interface",
- false, null, null, null, null));
- propertyDefMap.put("static_routes", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "An ordered list of static routes to be added to this interface", false, null, null,
- DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_STATIC_ROUTE.getDisplayName(), null,
- null), null));
- propertyDefMap.put("allowed_address_pairs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "List of allowed address pair for this interface", false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_ADDRESS_PAIR.getDisplayName(), null,
- null), null));
- dataType.setProperties(propertyDefMap);
- return dataType;
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailComputeGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailComputeGlobalType.java
deleted file mode 100644
index 50faec0c69..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailComputeGlobalType.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class ContrailComputeGlobalType {
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate serviceTemplate = new ServiceTemplate();
- serviceTemplate.setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- serviceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.CONTRAIL_COMPUTE_TEMPLATE_NAME, "1.0.0", null));
- serviceTemplate.setDescription("Contrail Compute TOSCA Global Types");
- serviceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- serviceTemplate.setNode_types(createGlobalNodeTypes());
- return serviceTemplate;
- }
-
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes
- .put(ToscaNodeType.CONTRAIL_COMPUTE.getDisplayName(), createContrailComputeNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createContrailComputeNodeType() {
- NodeType nodeType = new NodeType();
- nodeType.setDerived_from(ToscaNodeType.COMPUTE.getDisplayName());
- nodeType.setProperties(createContrailComputeProperties());
- nodeType.setAttributes(createContrailComputeAttributes());
- return nodeType;
- }
-
-
- private static Map<String, PropertyDefinition> createContrailComputeProperties() {
- Map<String, PropertyDefinition> propertyDefMap = new HashMap<>();
- propertyDefMap.put("service_instance_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service instance name",
- true, null, null, null, null));
- propertyDefMap.put("service_template_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service template name",
- false, null, null, null, null));
- propertyDefMap.put("image_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Image name", true, null,
- null, null, null));
- propertyDefMap.put("service_mode", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service mode", true,
- DataModelUtil
- .createValidValuesConstraintsList("transparent", "in-network", "in-network-nat"),
- null, null, null));
- propertyDefMap.put("service_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service type", true,
- DataModelUtil.createValidValuesConstraintsList("firewall", "analyzer", "source-nat",
- "loadbalancer"), null, null, null));
- propertyDefMap.put("image_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Image name", true, null,
- null, null, null));
- propertyDefMap.put("flavor", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "flavor", false, null, null,
- null, null));
- propertyDefMap.put("availability_zone_enable", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Indicates availability zone is enabled", false, null, null, null, false));
- propertyDefMap.put("availability_zone", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Availability zone to create servers in", false, null, null, null, null));
- return propertyDefMap;
- }
-
- private static Map<String, AttributeDefinition> createContrailComputeAttributes() {
- Map<String, AttributeDefinition> attributesDefMap = new HashMap<>();
- attributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "fq_name", null, null,
- null));
- attributesDefMap.put("status", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "status of the compute",
- null, null, null));
- attributesDefMap.put("virtual_machines", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "VMs of this compute",
- null, null, null));
- attributesDefMap.put("active_vms", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "Number of active VMs",
- null, null, null));
- attributesDefMap.put("tenant_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "Tenant id of the VM",
- null, null, null));
- attributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "All attributes", null,
- null, null));
- return attributesDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailNetworkRuleGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailNetworkRuleGlobalType.java
deleted file mode 100644
index 0081ad5a78..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailNetworkRuleGlobalType.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class ContrailNetworkRuleGlobalType {
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate contrailNetworkRuleServiceTemplate = new ServiceTemplate();
- contrailNetworkRuleServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- contrailNetworkRuleServiceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.CONTRAIL_NETWORK_RULE_TEMPLATE_NAME, "1.0.0", null));
- contrailNetworkRuleServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- contrailNetworkRuleServiceTemplate.setDescription("Contrail Network Rule Global Types");
- contrailNetworkRuleServiceTemplate.setData_types(createGlobalDataTypes());
- contrailNetworkRuleServiceTemplate.setNode_types(createGlobalNodeTypes());
- return contrailNetworkRuleServiceTemplate;
- }
-
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes.put(ToscaDataType.CONTRAIL_NETWORK_RULE_PORT_PAIRS.getDisplayName(),
- createRulePortPairsDataType());
- globalDataTypes.put(ToscaDataType.CONTRAIL_NETWORK_RULE.getDisplayName(), createRuleDataType());
- globalDataTypes.put(ToscaDataType.CONTRAIL_NETWORK_RULE_VIRTUAL_NETWORK.getDisplayName(),
- createRuleVirtualNetworkDataType());
- globalDataTypes.put(ToscaDataType.CONTRAIL_NETWORK_RULE_LIST.getDisplayName(),
- createPolicyRulesListDataType());
- return globalDataTypes;
- }
-
- private static DataType createRuleDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("policy rule");
- Map<String, PropertyDefinition> properties = new HashMap<>();
- properties.put("direction", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Direction", false, null,
- null, null, null));
- properties.put("protocol", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Protocol", false, null,
- null, null, null));
- properties.put("src_ports", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Source ports", false, null,
- null, DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_NETWORK_RULE_PORT_PAIRS.getDisplayName(),
- null, null), null));
- properties.put("dst_ports", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Destination ports", false,
- null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_NETWORK_RULE_PORT_PAIRS.getDisplayName(),
- null, null), null));
- properties.put("dst_addresses", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Destination addresses",
- false, null, null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAIL_NETWORK_RULE_VIRTUAL_NETWORK.getDisplayName(), null, null),
- null));
- properties.put("apply_service", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service to apply", false,
- null, null, null, null));
- properties.put("src_addresses", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Source addresses", false,
- null, null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAIL_NETWORK_RULE_VIRTUAL_NETWORK.getDisplayName(), null, null),
- null));
-
- dataType.setProperties(properties);
- return dataType;
-
- }
-
-
- private static DataType createRuleVirtualNetworkDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("source and destination addresses");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("virtual_network", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Virtual network", false,
- null, null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createPolicyRulesListDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("list of policy rules");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("policy_rule", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Contrail network rule",
- false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_NETWORK_RULE.getDisplayName(), null,
- null), null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
-
- private static DataType createRulePortPairsDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("source and destination port pairs");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("start_port", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Start port", false, null,
- null, null, null));
- properties.put("end_port", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "End port", false, null,
- null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CONTRAIL_NETWORK_RULE.getDisplayName(),
- createContrailNetworkRuleNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createContrailNetworkRuleNodeType() {
- NodeType contrailNetworkRuleNodeType = new NodeType();
- contrailNetworkRuleNodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- contrailNetworkRuleNodeType.setProperties(createContrailNetworkRuleProperties());
- contrailNetworkRuleNodeType.setAttributes(createContrailNetworkRuleAttributes());
- contrailNetworkRuleNodeType.setRequirements(createContrailNetworkRuleRequirements());
- return contrailNetworkRuleNodeType;
- }
-
-
- private static Map<String, PropertyDefinition> createContrailNetworkRuleProperties() {
- Map<String, PropertyDefinition> contrailNetworkRulePropertyDefMap = new HashMap<>();
- contrailNetworkRulePropertyDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "A symbolic name for this contrail network rule", false, null, null, null, null));
- contrailNetworkRulePropertyDefMap.put("entries", DataModelUtil
- .createPropertyDefinition(ToscaDataType.CONTRAIL_NETWORK_RULE_LIST.getDisplayName(),
- "A symbolic name for this contrail network rule", false, null, null, null, null));
-
- return contrailNetworkRulePropertyDefMap;
- }
-
-
- private static Map<String, AttributeDefinition> createContrailNetworkRuleAttributes() {
- Map<String, AttributeDefinition> contrailNetworkRuleAttributesDefMap = new HashMap<>();
- contrailNetworkRuleAttributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "fq_name", null, null,
- null));
- contrailNetworkRuleAttributesDefMap.put("tenant_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "tenant_id", null, null,
- null));
- contrailNetworkRuleAttributesDefMap.put("rules", DataModelUtil
- .createAttributeDefinition(PropertyType.LIST.getDisplayName(), "List of rules", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailNetworkRuleAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "All attributes.", null,
- null, null));
-
- return contrailNetworkRuleAttributesDefMap;
- }
-
- private static List<Map<String, RequirementDefinition>> createContrailNetworkRuleRequirements() {
- final List<Map<String, RequirementDefinition>> requirements = new ArrayList<>();
- final Map<String, RequirementDefinition>
- contrailNetworkRuleRequirementsDefMap = new HashMap<>();
- RequirementDefinition req = new RequirementDefinition();
- req.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
- req.setOccurrences(new Object[]{0, ToscaConstants.UNBOUNDED});
- req.setNode(ToscaNodeType.NETWORK.getDisplayName());
- req.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
- contrailNetworkRuleRequirementsDefMap.put("network", req);
- requirements.add(contrailNetworkRuleRequirementsDefMap);
-
- return requirements;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailPortGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailPortGlobalType.java
deleted file mode 100644
index 1590372813..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailPortGlobalType.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class ContrailPortGlobalType {
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate serviceTemplate = new ServiceTemplate();
- serviceTemplate.setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- serviceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.CONTRAIL_PORT_TEMPLATE_NAME, "1.0.0", null));
- serviceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- serviceTemplate.setDescription("Contrail Port TOSCA Global Types");
- serviceTemplate.setNode_types(createGlobalNodeTypes());
- return serviceTemplate;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CONTRAIL_PORT.getDisplayName(), createContrailPortNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createContrailPortNodeType() {
- NodeType nodeType = new NodeType();
- nodeType.setDerived_from(ToscaNodeType.NETWORK_PORT.getDisplayName());
- nodeType.setProperties(createContrailPortProperties());
- nodeType.setAttributes(createContrailPortAttributes());
- return nodeType;
- }
-
- private static Map<String, PropertyDefinition> createContrailPortProperties() {
- Map<String, PropertyDefinition> propertyDefMap = new HashMap<>();
- propertyDefMap.put("interface_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Interface type", true,
- DataModelUtil.createValidValuesConstraintsList("management", "left", "right", "other"),
- null, null, null));
- propertyDefMap.put("shared_ip", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(), "Shared ip enabled", false,
- null, null, null, false));
- propertyDefMap.put("static_route", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(), "Static route enabled",
- false, null, null, null, false));
- propertyDefMap.put("virtual_network", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Virtual Network for this interface", true, null, null, null, null));
- propertyDefMap.put("static_routes", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "An ordered list of static routes to be added to this interface", false, null, null,
- DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_STATIC_ROUTE.getDisplayName(), null,
- null), null));
- propertyDefMap.put("allowed_address_pairs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "List of allowed address pair for this interface", false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAIL_ADDRESS_PAIR.getDisplayName(), null,
- null), null));
- propertyDefMap.put("ip_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "IP for this interface",
- false, null, null, null, null));
- return propertyDefMap;
- }
-
- private static Map<String, AttributeDefinition> createContrailPortAttributes() {
- Map<String, AttributeDefinition> attributesDefMap = new HashMap<>();
- attributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "fq_name", null, null,
- null));
- return attributesDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2NetworkRuleGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2NetworkRuleGlobalType.java
deleted file mode 100644
index 4141aa7f0a..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2NetworkRuleGlobalType.java
+++ /dev/null
@@ -1,274 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class ContrailV2NetworkRuleGlobalType {
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate contrailNetworkRuleServiceTemplate = new ServiceTemplate();
- contrailNetworkRuleServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- contrailNetworkRuleServiceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants
- .CONTRAILV2_NETWORK_RULE_TEMPLATE_NAME, "1.0.0", null));
- contrailNetworkRuleServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- contrailNetworkRuleServiceTemplate.setDescription("Contrail V2 Network Rule Global Types");
- contrailNetworkRuleServiceTemplate.setData_types(createGlobalDataTypes());
- contrailNetworkRuleServiceTemplate.setNode_types(createGlobalNodeTypes());
- return contrailNetworkRuleServiceTemplate;
- }
-
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes.put(ToscaDataType.CONTRAILV2_NETWORK_RULE_SRC_PORT_PAIRS.getDisplayName(),
- createRuleSrcPortPairsDataType());
- globalDataTypes.put(ToscaDataType.CONTRAILV2_NETWORK_RULE_DST_PORT_PAIRS.getDisplayName(),
- createRuleDstPortPairsDataType());
- globalDataTypes
- .put(ToscaDataType.CONTRAILV2_NETWORK_RULE.getDisplayName(), createRuleDataType());
- globalDataTypes.put(ToscaDataType.CONTRAILV2_NETWORK_RULE_DST_VIRTUAL_NETWORK.getDisplayName(),
- createRuleDstVirtualNetworkDataType());
- globalDataTypes.put(ToscaDataType.CONTRAILV2_NETWORK_RULE_SRC_VIRTUAL_NETWORK.getDisplayName(),
- createRuleSrcVirtualNetworkDataType());
- globalDataTypes.put(ToscaDataType.CONTRAILV2_NETWORK_RULE_LIST.getDisplayName(),
- createPolicyRulesListDataType());
- globalDataTypes.put(ToscaDataType.CONTRAILV2_NETWORK_RULE_ACTION_LIST.getDisplayName(),
- createRuleActionListDataType());
- return globalDataTypes;
- }
-
- private static DataType createRuleDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("policy rule");
- Map<String, PropertyDefinition> properties = new HashMap<>();
- properties.put("network_policy_entries_policy_rule_direction", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Direction", false, null,
- null, null, null));
- properties.put("network_policy_entries_policy_rule_protocol", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Protocol", false, null,
- null, null, null));
- properties.put("network_policy_entries_policy_rule_src_ports", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Source ports", false, null,
- null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAILV2_NETWORK_RULE_SRC_PORT_PAIRS.getDisplayName(), null, null),
- null));
- properties.put("network_policy_entries_policy_rule_dst_ports", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Destination ports", false,
- null, null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAILV2_NETWORK_RULE_DST_PORT_PAIRS.getDisplayName(), null, null),
- null));
- properties.put("network_policy_entries_policy_rule_dst_addresses", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Destination addresses",
- false, null, null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAILV2_NETWORK_RULE_DST_VIRTUAL_NETWORK.getDisplayName(), null,
- null), null));
- properties.put("network_policy_entries_policy_rule_src_addresses", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Source addresses", false,
- null, null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAILV2_NETWORK_RULE_SRC_VIRTUAL_NETWORK.getDisplayName(), null,
- null), null));
- properties.put("network_policy_entries_policy_rule_action_list", DataModelUtil
- .createPropertyDefinition(
- ToscaDataType.CONTRAILV2_NETWORK_RULE_ACTION_LIST.getDisplayName(), "Action list",
- false, null, null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
-
- }
-
-
- private static DataType createRuleDstVirtualNetworkDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("destination addresses");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_entries_policy_rule_dst_addresses_virtual_network", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Destination addresses Virtual network", false, null, null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createRuleSrcVirtualNetworkDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("source addresses");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_entries_policy_rule_src_addresses_virtual_network", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Source addresses Virtual network", false, null, null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createPolicyRulesListDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("list of policy rules");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_entries_policy_rule", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Contrail network rule",
- false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.CONTRAILV2_NETWORK_RULE.getDisplayName(), null,
- null), null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createRuleActionListDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Action List");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_entries_policy_rule_action_list_simple_action", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Simple Action", false,
- null, null, null, null));
- properties.put("network_policy_entries_policy_rule_action_list_apply_service", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Apply Service", false, null,
- null, DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createRuleDstPortPairsDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("destination port pairs");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_entries_policy_rule_dst_ports_start_port", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Start port", false, null,
- null, null, null));
- properties.put("network_policy_entries_policy_rule_dst_ports_end_port", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "End port", false, null,
- null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createRuleSrcPortPairsDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("source port pairs");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_entries_policy_rule_src_ports_start_port", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Start port", false, null,
- null, null, null));
- properties.put("network_policy_entries_policy_rule_src_ports_end_port", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "End port", false, null,
- null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CONTRAILV2_NETWORK_RULE.getDisplayName(),
- createContrailV2NetworkRuleNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createContrailV2NetworkRuleNodeType() {
- NodeType contrailNetworkRuleNodeType = new NodeType();
- contrailNetworkRuleNodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- contrailNetworkRuleNodeType.setProperties(createContrailNetworkRuleProperties());
- contrailNetworkRuleNodeType.setAttributes(createContrailNetworkRuleAttributes());
- contrailNetworkRuleNodeType.setRequirements(createContrailNetworkRuleRequirements());
- return contrailNetworkRuleNodeType;
- }
-
-
- private static Map<String, PropertyDefinition> createContrailNetworkRuleProperties() {
- Map<String, PropertyDefinition> contrailNetworkRulePropertyDefMap = new HashMap<>();
- contrailNetworkRulePropertyDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "A symbolic name for this contrail v2 network rule", false, null, null, null, null));
- contrailNetworkRulePropertyDefMap.put("network_policy_entries", DataModelUtil
- .createPropertyDefinition(ToscaDataType.CONTRAILV2_NETWORK_RULE_LIST.getDisplayName(),
- "A symbolic name for this contrail v2 network rule", false, null, null, null, null));
-
- return contrailNetworkRulePropertyDefMap;
- }
-
-
- private static Map<String, AttributeDefinition> createContrailNetworkRuleAttributes() {
- Map<String, AttributeDefinition> contrailNetworkRuleAttributesDefMap = new HashMap<>();
- contrailNetworkRuleAttributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "fq_name", null, null,
- null));
-
- return contrailNetworkRuleAttributesDefMap;
- }
-
- private static List<Map<String, RequirementDefinition>> createContrailNetworkRuleRequirements() {
- final List<Map<String, RequirementDefinition>> requirements = new ArrayList<>();
- final Map<String, RequirementDefinition>
- contrailNetworkRuleRequirementsDefMap = new HashMap<>();
- RequirementDefinition req = new RequirementDefinition();
- req.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
- req.setOccurrences(new Object[]{0, ToscaConstants.UNBOUNDED});
- req.setNode(ToscaNodeType.NETWORK.getDisplayName());
- req.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
- contrailNetworkRuleRequirementsDefMap.put("network", req);
- requirements.add(contrailNetworkRuleRequirementsDefMap);
-
- return requirements;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualMachineInterfaceGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualMachineInterfaceGlobalType.java
deleted file mode 100644
index 75501cb8d4..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualMachineInterfaceGlobalType.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.HashMap;
-import java.util.Map;
-
-class ContrailV2VirtualMachineInterfaceGlobalType {
- private ContrailV2VirtualMachineInterfaceGlobalType() {
- }
-
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate contrailVirtualMachineInterface = new ServiceTemplate();
- contrailVirtualMachineInterface
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- contrailVirtualMachineInterface.setMetadata(DataModelUtil
- .createMetadata(Constants.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE_TEMPLATE_NAME, "1.0.0",
- null));
- contrailVirtualMachineInterface.setImports(GlobalTypesUtil.createCommonImportList());
- contrailVirtualMachineInterface
- .setDescription("Contrail Virtual Machine Interface TOSCA Global Types");
- contrailVirtualMachineInterface.setNode_types(createGlobalNodeTypes());
- contrailVirtualMachineInterface.setData_types(createGlobalDataTypes());
- return contrailVirtualMachineInterface;
- }
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes
- .put(ToscaDataType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE_PROPERTIES.getDisplayName(),
- createVmiPropertiesDataType());
- return globalDataTypes;
- }
-
- private static DataType createVmiPropertiesDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Virtual Machine Interface Properties.");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("virtual_machine_interface_properties_service_interface_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Service Interface Type.",
- false, null, null, null, null));
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE.getDisplayName(),
- createVmiNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createVmiNodeType() {
- NodeType nodeType = new NodeType();
- nodeType.setDerived_from(ToscaNodeType.NETWORK_PORT.getDisplayName());
- nodeType.setProperties(createVmiProperties());
- nodeType.setAttributes(createVmiAttributes());
- return nodeType;
- }
-
- private static Map<String, AttributeDefinition> createVmiAttributes() {
- Map<String, AttributeDefinition> vmiAttributesDefMap = new HashMap<>();
- vmiAttributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The FQ name of the Virtual Network.", null, null, null));
- vmiAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "All attributes.", null,
- null, null));
- return vmiAttributesDefMap;
- }
-
- private static Map<String, PropertyDefinition> createVmiProperties() {
- Map<String, PropertyDefinition> virtualMachineInterfacePropertyDefMap = new HashMap<>();
- virtualMachineInterfacePropertyDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Virtual Machine Interface name", false, null, null, null, null));
- virtualMachineInterfacePropertyDefMap.put("virtual_machine_intefrace_mac_addresses",
- DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "List of mac addresses.",
- false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- virtualMachineInterfacePropertyDefMap.put("virtual_network_refs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "List of virtual networks.",
- false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- virtualMachineInterfacePropertyDefMap.put("port_tuple_refs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "List of port tuples.", false,
- null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- virtualMachineInterfacePropertyDefMap.put("security_group_refs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "List of security groups.",
- false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- virtualMachineInterfacePropertyDefMap.put("virtual_machine_interface_properties", DataModelUtil
- .createPropertyDefinition(
- ToscaDataType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE_PROPERTIES.getDisplayName(),
- "virtual machine interface properties.", false, null, null, null, null));
- return virtualMachineInterfacePropertyDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualNetworkGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualNetworkGlobalType.java
deleted file mode 100644
index 728b9f6149..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailV2VirtualNetworkGlobalType.java
+++ /dev/null
@@ -1,239 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class ContrailV2VirtualNetworkGlobalType {
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate contrailVirtualNetworkServiceTemplate = new ServiceTemplate();
- contrailVirtualNetworkServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- contrailVirtualNetworkServiceTemplate.setMetadata(DataModelUtil
- .createMetadata(Constants.CONTRAILV2_VIRTUAL_NETWORK_TEMPLATE_NAME, "1.0.0", null));
- contrailVirtualNetworkServiceTemplate
- .setDescription("Contrail V2 Virtual Network Global Types");
- contrailVirtualNetworkServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- contrailVirtualNetworkServiceTemplate.setNode_types(createGlobalNodeTypes());
- contrailVirtualNetworkServiceTemplate.setData_types(createGlobalDataTypes());
- return contrailVirtualNetworkServiceTemplate;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CONTRAILV2_VIRTUAL_NETWORK.getDisplayName(),
- createContrailVirtualNetworkNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createContrailVirtualNetworkNodeType() {
- NodeType contrailV2VirtualNetworkNodeType = new NodeType();
- contrailV2VirtualNetworkNodeType.setDerived_from(ToscaNodeType.NETWORK.getDisplayName());
- contrailV2VirtualNetworkNodeType.setProperties(createContrailVirtualNetworkProperties());
- contrailV2VirtualNetworkNodeType.setAttributes(createContrailVirtualNetworkAttributes());
- contrailV2VirtualNetworkNodeType.setCapabilities(createContrailVirtualNetworkCapabilities());
- return contrailV2VirtualNetworkNodeType;
- }
-
- private static Map<String, CapabilityDefinition> createContrailVirtualNetworkCapabilities() {
- Map<String, CapabilityDefinition> capabilities = new HashMap<>();
- capabilities.put("attachment", GlobalTypesUtil.createAttachmentCapability());
- return capabilities;
- }
-
- private static Map<String, PropertyDefinition> createContrailVirtualNetworkProperties() {
- Map<String, PropertyDefinition> contrailVirtualNetworkPropertyDefMap = new HashMap<>();
- //contrailVirtualNetworkPropertyDefMap.put("name", DataModelUtil.
- // createPropertyDefinition(PropertyType.STRING.getDisplayName()
- // , "Name", false, null, null, null, null));
- contrailVirtualNetworkPropertyDefMap.put("network_ipam_refs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "IPAM references", false,
- null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkPropertyDefMap.put("network_ipam_refs_data", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "IPAM references Data", false,
- null, null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA.getDisplayName(), null,
- null), null));
- contrailVirtualNetworkPropertyDefMap.put("network_policy_refs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Policy references", false,
- null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkPropertyDefMap.put("network_policy_refs_data", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Policy references data",
- false, null, null, DataModelUtil.createEntrySchema(
- ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA.getDisplayName(), null,
- null), null));
- contrailVirtualNetworkPropertyDefMap.put("subnets", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(), "Network related subnets",
- false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_SUBNET.getDisplayName(), null, null),
- null));
- return contrailVirtualNetworkPropertyDefMap;
- }
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes.put(ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA.getDisplayName(),
- createVirtualNetworkIpamRefDataDataType());
- globalDataTypes.put(
- ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET_LIST.getDisplayName(),
- createVirtualNetworkIpamRefDataIpanSubnetListDataType());
- globalDataTypes
- .put(ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET.getDisplayName(),
- createVirtualNetworkIpamRefDataIpanSubnetDataType());
- globalDataTypes.put(ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA.getDisplayName(),
- createVirtualNetworkPolicyRefDataDataType());
- globalDataTypes
- .put(ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA_SEQUENCE.getDisplayName(),
- createVirtualNetworkPolicyRefSequenceDataDataType());
- return globalDataTypes;
- }
-
- private static DataType createVirtualNetworkIpamRefDataDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Network Ipam Ref Data");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_ipam_refs_data_ipam_subnets", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "Network ipam refs data ipam subnets", false, null, null, DataModelUtil
- .createEntrySchema(
- ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET_LIST
- .getDisplayName(), null, null), null));
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createVirtualNetworkIpamRefDataIpanSubnetListDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Network Ipam Ref Data Subnet List");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_ipam_refs_data_ipam_subnets_subnet", DataModelUtil
- .createPropertyDefinition(
- ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET.getDisplayName(),
- "Network ipam refs data ipam subnets", false, null, null, null, null));
- properties.put("network_ipam_refs_data_ipam_subnets_addr_from_start", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Network ipam refs data ipam subnets addr from start", false, null, null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static DataType createVirtualNetworkIpamRefDataIpanSubnetDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("Network Ipam Ref Data Subnet");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_ipam_refs_data_ipam_subnets_subnet_ip_prefix", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Network ipam refs data ipam subnets ip prefix", false, null, null, null, null));
- properties.put("network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Network ipam refs data ipam subnets ip prefix len", false, null, null, null, null));
- dataType.setProperties(properties);
- return dataType;
- }
-
-
- private static DataType createVirtualNetworkPolicyRefDataDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("network policy refs data");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_refs_data_sequence", DataModelUtil.createPropertyDefinition(
- ToscaDataType.CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA_SEQUENCE.getDisplayName(),
- "Network Policy ref data sequence", false, null, null, null, null));
-
-
- dataType.setProperties(properties);
- return dataType;
- }
-
-
- private static DataType createVirtualNetworkPolicyRefSequenceDataDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("network policy refs data sequence");
- Map<String, PropertyDefinition> properties = new HashMap<>();
-
- properties.put("network_policy_refs_data_sequence_major", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(),
- "Network Policy ref data sequence Major", false, null, null, null, null));
- properties.put("network_policy_refs_data_sequence_minor", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(),
- "Network Policy ref data sequence Minor", false, null, null, null, null));
-
- dataType.setProperties(properties);
- return dataType;
- }
-
- private static Map<String, AttributeDefinition> createContrailVirtualNetworkAttributes() {
- Map<String, AttributeDefinition> contrailVirtualNetworkAttributesDefMap = new HashMap<>();
- contrailVirtualNetworkAttributesDefMap.put("subnets_name", DataModelUtil
- .createAttributeDefinition(PropertyType.LIST.getDisplayName(),
- "Subnets name of this network", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkAttributesDefMap.put("subnets", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(), "Network related subnets",
- null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_SUBNET.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkAttributesDefMap.put("subnets_show", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(),
- "Detailed information about each subnet", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkAttributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "fq_name", null, null,
- null));
- return contrailVirtualNetworkAttributesDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailVirtualNetworkGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailVirtualNetworkGlobalType.java
deleted file mode 100644
index 1014757a2c..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/ContrailVirtualNetworkGlobalType.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class ContrailVirtualNetworkGlobalType {
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate contrailVirtualNetworkServiceTemplate = new ServiceTemplate();
- contrailVirtualNetworkServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- contrailVirtualNetworkServiceTemplate.setMetadata(DataModelUtil
- .createMetadata(Constants.CONTRAIL_VIRTUAL_NETWORK_TEMPLATE_NAME, "1.0.0", null));
- contrailVirtualNetworkServiceTemplate.setDescription("Contrail Virtual Network Global Types");
- contrailVirtualNetworkServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- contrailVirtualNetworkServiceTemplate.setNode_types(createGlobalNodeTypes());
- return contrailVirtualNetworkServiceTemplate;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.CONTRAIL_VIRTUAL_NETWORK.getDisplayName(),
- createContrailVirtualNetworkNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createContrailVirtualNetworkNodeType() {
- NodeType contrailVirtualNetworkNodeType = new NodeType();
- contrailVirtualNetworkNodeType.setDerived_from(ToscaNodeType.NETWORK.getDisplayName());
- contrailVirtualNetworkNodeType.setProperties(createContrailVirtualNetworkProperties());
- contrailVirtualNetworkNodeType.setAttributes(createContrailVirtualNetworkAttributes());
- contrailVirtualNetworkNodeType.setCapabilities(createContrailVirtualNetworkCapabilities());
- return contrailVirtualNetworkNodeType;
- }
-
- private static Map<String, CapabilityDefinition> createContrailVirtualNetworkCapabilities() {
- Map<String, CapabilityDefinition> capabilities = new HashMap<>();
- capabilities.put("attachment", GlobalTypesUtil.createAttachmentCapability());
- return capabilities;
- }
-
- private static Map<String, PropertyDefinition> createContrailVirtualNetworkProperties() {
- Map<String, PropertyDefinition> contrailVirtualNetworkPropertyDefMap = new HashMap<>();
- contrailVirtualNetworkPropertyDefMap.put("shared", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Is virtual network shared",
- false, null, null, null, null));
- contrailVirtualNetworkPropertyDefMap.put("external", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Is virtual network external", false, null, null, null, null));
- contrailVirtualNetworkPropertyDefMap.put("allow_transit", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Whether this network should be transitive.", false, null, null, null, null));
- contrailVirtualNetworkPropertyDefMap.put("route_targets", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "route targets associated with the virtual network", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkPropertyDefMap.put("forwarding_mode", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "forwarding mode of the virtual network", false, null, null, null, null));
- contrailVirtualNetworkPropertyDefMap.put("flood_unknown_unicast", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "flood L2 packets on network", false, null, null, null, null));
- contrailVirtualNetworkPropertyDefMap.put("subnets", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(), "Network related subnets",
- false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_SUBNET.getDisplayName(), null, null),
- null));
- return contrailVirtualNetworkPropertyDefMap;
- }
-
- private static Map<String, AttributeDefinition> createContrailVirtualNetworkAttributes() {
- Map<String, AttributeDefinition> contrailVirtualNetworkAttributesDefMap = new HashMap<>();
- contrailVirtualNetworkAttributesDefMap.put("subnets_name", DataModelUtil
- .createAttributeDefinition(PropertyType.LIST.getDisplayName(),
- "Subnets name of this network", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkAttributesDefMap.put("subnets", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(), "Network related subnets",
- null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_SUBNET.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkAttributesDefMap.put("subnets_show", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(),
- "Detailed information about each subnet", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- contrailVirtualNetworkAttributesDefMap.put("fq_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "fq_name", null, null,
- null));
- contrailVirtualNetworkAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "All attributes.", null,
- null, null));
- return contrailVirtualNetworkAttributesDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesGenerator.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesGenerator.java
index a4ec764e14..6dada6ab84 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesGenerator.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesGenerator.java
@@ -22,13 +22,14 @@ package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
import org.openecomp.sdc.tosca.datatypes.model.Import;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.ToscaNativeTypesServiceTemplate;
-import org.openecomp.sdc.tosca.services.ToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
+
public class GlobalTypesGenerator {
private GlobalTypesGenerator() {
@@ -40,51 +41,7 @@ public class GlobalTypesGenerator {
* @return the global types service template
*/
public static Map<String, ServiceTemplate> getGlobalTypesServiceTemplate() {
- Map<String, ServiceTemplate> serviceTemplates = new HashMap<>();
-
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- CommonGlobalTypes.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- NovaServerGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- CinderVolumeGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailVirtualNetworkGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailV2VirtualNetworkGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailV2VirtualMachineInterfaceGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- NeutronNetGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- NeutronPortGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailNetworkRuleGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailV2NetworkRuleGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- NeutronSecurityRulesGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- AbstractSubstituteGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ToscaNativeTypesServiceTemplate.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailComputeGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailPortGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailV2NetworkRuleGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailV2VirtualNetworkGlobalType.createServiceTemplate());
- ToscaUtil.addServiceTemplateToMapWithKeyFileName(serviceTemplates,
- ContrailAbstractSubstituteGlobalType.createServiceTemplate());
- return serviceTemplates;
- }
-
- private static void addGlobalServiceTemplate(Map<String, ServiceTemplate> serviceTemplates,
- ServiceTemplate commonServiceTemplate) {
- serviceTemplates
- .put(ToscaUtil.getServiceTemplateFileName(commonServiceTemplate), commonServiceTemplate);
+ return GlobalTypesServiceTemplates.getGlobalTypesServiceTemplates();
}
/**
@@ -92,37 +49,15 @@ public class GlobalTypesGenerator {
*
* @return the global types import list
*/
- public static Map<String, Import> getGlobalTypesImportList() {
+ public static List<Map<String, Import>> getGlobalTypesImportList() {
+ List<Map<String, Import>> globalImports = new ArrayList<>();
Map<String, Import> globalImportMap = new HashMap<>();
- globalImportMap.put(Constants.COMMON_GLOBAL_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.COMMON_GLOBAL_TEMPLATE_NAME));
- globalImportMap.put(Constants.NOVA_SERVER_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.NOVA_SERVER_TEMPLATE_NAME));
- globalImportMap.put(Constants.NEUTRON_PORT_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.NEUTRON_PORT_TEMPLATE_NAME));
- globalImportMap.put(Constants.NEUTRON_SECURITY_RULES_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(Constants.NEUTRON_SECURITY_RULES_TEMPLATE_NAME));
- globalImportMap.put(Constants.NEUTRON_NET_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.NEUTRON_NET_TEMPLATE_NAME));
- globalImportMap.put(Constants.CINDER_VOLUME_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.CINDER_VOLUME_TEMPLATE_NAME));
- globalImportMap.put(Constants.CONTRAIL_VIRTUAL_NETWORK_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(Constants.CONTRAIL_VIRTUAL_NETWORK_TEMPLATE_NAME));
- globalImportMap.put(Constants.CONTRAIL_NETWORK_RULE_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.CONTRAIL_NETWORK_RULE_TEMPLATE_NAME));
- globalImportMap.put(Constants.ABSTRACT_SUBSTITUTE_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.ABSTRACT_SUBSTITUTE_TEMPLATE_NAME));
- globalImportMap.put(Constants.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(
- Constants.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE_TEMPLATE_NAME));
- globalImportMap.put(Constants.CONTRAIL_COMPUTE_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.CONTRAIL_COMPUTE_TEMPLATE_NAME));
- globalImportMap.put(Constants.CONTRAIL_PORT_TEMPLATE_NAME,
- GlobalTypesUtil.createServiceTemplateImport(Constants.CONTRAIL_PORT_TEMPLATE_NAME));
- globalImportMap.put(Constants.CONTRAIL_ABSTRACT_SUBSTITUTE_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(Constants.CONTRAIL_ABSTRACT_SUBSTITUTE_TEMPLATE_NAME));
- return globalImportMap;
+ Map<String, ServiceTemplate> globalTypesServiceTemplate =
+ GlobalTypesGenerator.getGlobalTypesServiceTemplate();
+ globalImportMap.put("openecomp_heat_index",
+ HeatToToscaUtil.createServiceTemplateImport(globalTypesServiceTemplate.get
+ ("openecomp-heat/_index.yml")));
+ globalImports.add(globalImportMap);
+ return globalImports;
}
-
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesServiceTemplates.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesServiceTemplates.java
new file mode 100644
index 0000000000..cbc56d7773
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesServiceTemplates.java
@@ -0,0 +1,61 @@
+package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
+
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaUtil;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.translator.utils.ResourceWalker;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author Avrahamg
+ * @since April 03, 2017
+ */
+public class GlobalTypesServiceTemplates {
+ private static Map<String, ServiceTemplate> globalTypesServiceTemplates;
+
+
+ public static Map<String, ServiceTemplate> getGlobalTypesServiceTemplates() {
+ if (globalTypesServiceTemplates == null) {
+ synchronized (GlobalTypesServiceTemplates.class) {
+ if (globalTypesServiceTemplates == null) {
+ init();
+ }
+ }
+ }
+ return globalTypesServiceTemplates;
+ }
+
+ private static void init() {
+ globalTypesServiceTemplates = new HashMap<>();
+ Map<String, String> globalTypes = null;
+ try {
+ globalTypes = ResourceWalker.readResourcesFromDirectory("globalTypes");
+ } catch (CoreException coreException) {
+ throw coreException;
+ } catch (Exception exception) {
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage(LoggerErrorDescription.FAILED_TO_GENERATE_GLOBAL_TYPES)
+ .withId("GlobalTypes Read Error").withCategory(ErrorCategory.APPLICATION).build(),
+ exception);
+ }
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ for (Map.Entry<String, String> globalTypeContent : globalTypes.entrySet()) {
+ if (globalTypeContent.getKey().contains("openecomp-inventory")) { // this global types folder
+ // should not be
+ // processed to the CSAR
+ continue;
+ }
+ ToscaUtil.addServiceTemplateToMapWithKeyFileName(globalTypesServiceTemplates,
+ toscaExtensionYamlUtil.yamlToObject(globalTypeContent.getValue(), ServiceTemplate.class));
+ }
+ }
+
+ private GlobalTypesServiceTemplates() {
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesUtil.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesUtil.java
deleted file mode 100644
index 9566dec581..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/GlobalTypesUtil.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Import;
-import org.openecomp.sdc.tosca.services.ToscaUtil;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class GlobalTypesUtil {
-
-
- /**
- * Create common import list map.
- *
- * @return the map
- */
- public static Map<String, Import> createCommonImportList() {
- Map<String, Import> importsMap = new HashMap<>();
- importsMap.put("common_definitions", CommonGlobalTypes.createCommonServiceTemplateImport());
- return importsMap;
- }
-
- /**
- * Create attachment capability capability definition.
- *
- * @return the capability definition
- */
- public static CapabilityDefinition createAttachmentCapability() {
- CapabilityDefinition capability = new CapabilityDefinition();
- capability.setType(ToscaCapabilityType.ATTACHMENT.getDisplayName());
-
- return capability;
- }
-
- /**
- * Create service template import import.
- *
- * @param serviceTemplateName the service template name
- * @return the import
- */
- public static Import createServiceTemplateImport(String serviceTemplateName) {
- Import serviceTemplateImport = new Import();
- serviceTemplateImport.setFile(ToscaUtil.getServiceTemplateFileName(serviceTemplateName));
- return serviceTemplateImport;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronNetGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronNetGlobalType.java
deleted file mode 100644
index 2532f87cf5..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronNetGlobalType.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class NeutronNetGlobalType {
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate neutronNetServiceTemplate = new ServiceTemplate();
- neutronNetServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- neutronNetServiceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.NEUTRON_NET_TEMPLATE_NAME, "1.0.0", null));
- neutronNetServiceTemplate.setDescription("Neutron Network TOSCA Global Types");
- neutronNetServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- neutronNetServiceTemplate.setNode_types(createGlobalNodeTypes());
- return neutronNetServiceTemplate;
- }
-
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.NEUTRON_NET.getDisplayName(), createNeutronNetworkNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createNeutronNetworkNodeType() {
- NodeType neutronNetworkNode = new NodeType();
- neutronNetworkNode.setDerived_from(ToscaNodeType.NETWORK.getDisplayName());
- neutronNetworkNode.setProperties(createNeutronNetworkProperties());
- neutronNetworkNode.setAttributes(createNeutronNetworkAttributes());
- neutronNetworkNode.setCapabilities(createNeutronNetworkCapabilities());
-
- return neutronNetworkNode;
- }
-
- private static Map<String, CapabilityDefinition> createNeutronNetworkCapabilities() {
- Map<String, CapabilityDefinition> capabilities = new HashMap<>();
- capabilities.put("attachment", GlobalTypesUtil.createAttachmentCapability());
- return capabilities;
- }
-
- private static Map<String, PropertyDefinition> createNeutronNetworkProperties() {
- Map<String, PropertyDefinition> neutronNetworkPropertyDefMap = new HashMap<>();
- neutronNetworkPropertyDefMap.put("admin_state_up", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "A boolean value specifying the administrative status of the network", false, null,
- null, null, true));
- neutronNetworkPropertyDefMap.put("dhcp_agent_ids", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "The IDs of the DHCP agent to schedule the network", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- neutronNetworkPropertyDefMap.put("port_security_enabled", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Flag to enable/disable port security on the network", false, null, null, null, null));
- neutronNetworkPropertyDefMap.put("qos_policy", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The name or ID of QoS policy to attach to this network", false, null, null, null,
- null));
- neutronNetworkPropertyDefMap.put("shared", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Whether this network should be shared across all tenants", false, null, null, null,
- false));
- neutronNetworkPropertyDefMap.put("tenant_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The ID of the tenant which will own the network", false, null, null, null, null));
- neutronNetworkPropertyDefMap.put("value_specs", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "Extra parameters to include in the request", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- new HashMap<String, String>()));
- neutronNetworkPropertyDefMap.put("subnets", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(), "Network related subnets",
- false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_SUBNET.getDisplayName(), null, null),
- null));
- return neutronNetworkPropertyDefMap;
- }
-
- private static Map<String, AttributeDefinition> createNeutronNetworkAttributes() {
- Map<String, AttributeDefinition> neutronNetworkAttributesDefMap = new HashMap<>();
- neutronNetworkAttributesDefMap.put("mtu", DataModelUtil
- .createAttributeDefinition(PropertyType.SCALAR_UNIT_SIZE.getDisplayName(),
- "The maximum transmission unit size(in bytes) for the network", null, null, null));
- neutronNetworkAttributesDefMap.put("qos_policy_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The QoS policy ID attached to this network", null, null, null));
- neutronNetworkAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Detailed information about resource", null, null, null));
- neutronNetworkAttributesDefMap.put("status", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The status of the network", null, null, null));
- neutronNetworkAttributesDefMap.put("subnets_name", DataModelUtil
- .createAttributeDefinition(PropertyType.LIST.getDisplayName(),
- "Subnets name of this network", null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- neutronNetworkAttributesDefMap.put("subnets", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(), "Network related subnets",
- null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_SUBNET.getDisplayName(), null, null),
- null));
- return neutronNetworkAttributesDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronPortGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronPortGlobalType.java
deleted file mode 100644
index 2106b9b3bc..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronPortGlobalType.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Constraint;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class NeutronPortGlobalType {
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate neutronPortServiceTemplate = new ServiceTemplate();
- neutronPortServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- neutronPortServiceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.NEUTRON_PORT_TEMPLATE_NAME, "1.0.0", null));
- neutronPortServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- neutronPortServiceTemplate.setDescription("Neutron Port TOSCA Global Types");
- neutronPortServiceTemplate.setData_types(createGlobalDataTypes());
- neutronPortServiceTemplate.setNode_types(createGlobalNodeTypes());
- return neutronPortServiceTemplate;
- }
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes
- .put(ToscaDataType.NEUTRON_PORT_FIXED_IPS.getDisplayName(), createFixedIpsDataType());
- return globalDataTypes;
- }
-
- private static DataType createFixedIpsDataType() {
- DataType dataType = new DataType();
- dataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- dataType.setDescription("subnet/ip_address");
- Map<String, PropertyDefinition> prop = new HashMap<>();
-
- prop.put("subnet", DataModelUtil.createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Subnet in which to allocate the IP address for this port", false, null, null, null, null));
- prop.put("ip_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "IP address desired in the subnet for this port", false, null, null, null, null));
-
- dataType.setProperties(prop);
- return dataType;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.NEUTRON_PORT.getDisplayName(), createNeutronPortNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createNeutronPortNodeType() {
- NodeType nodeType = new NodeType();
- nodeType.setDerived_from(ToscaNodeType.NETWORK_PORT.getDisplayName());
- nodeType.setProperties(createNeutronPortProperties());
- nodeType.setAttributes(createNeutronPortAttributes());
- nodeType.setCapabilities(createNeutronPortCapabilities());
- return nodeType;
- }
-
- private static Map<String, CapabilityDefinition> createNeutronPortCapabilities() {
- Map<String, CapabilityDefinition> capabilities = new HashMap<>();
- capabilities.put("attachment", GlobalTypesUtil.createAttachmentCapability());
- return capabilities;
- }
-
- private static Map<String, PropertyDefinition> createNeutronPortProperties() {
- Map<String, PropertyDefinition> neutronPortPropertyDefMap = new HashMap<>();
- neutronPortPropertyDefMap.put("admin_state_up", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "A boolean value specifying the administrative status of the network", false, null,
- null, null, true));
- neutronPortPropertyDefMap.put("allowed_address_pairs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "Additional MAC/IP address pairs allowed to pass through the port", false, null, null,
- DataModelUtil
- .createEntrySchema(ToscaDataType.NETWORK_ADDRESS_PAIR.getDisplayName(), null, null),
- null));
- neutronPortPropertyDefMap.put("binding:vnic_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The vnic type to be bound on the neutron port", false, createBindingConstraint(), null,
- null, null));
- neutronPortPropertyDefMap.put("device_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Device ID of this port",
- false, null, null, null, null));
- neutronPortPropertyDefMap.put("device_owner", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Name of the network owning the port", false, null, null, null, null));
- neutronPortPropertyDefMap.put("fixed_ips", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(), "Desired IPs for this port",
- false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_PORT_FIXED_IPS.getDisplayName(), null,
- null), null));
- neutronPortPropertyDefMap.put("mac_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "MAC address to give to this port", false, null, null, null, null));
- neutronPortPropertyDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "A symbolic name for this port", false, null, null, null, null));
- neutronPortPropertyDefMap.put("port_security_enabled", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Flag to enable/disable port security on the network", false, null, null, null, null));
- neutronPortPropertyDefMap.put("qos_policy", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The name or ID of QoS policy to attach to this network", false, null, null, null,
- null));
- neutronPortPropertyDefMap.put(Constants.SECURITY_GROUPS_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "List of security group names or IDs", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- neutronPortPropertyDefMap.put("value_specs", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "Extra parameters to include in the request", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- new HashMap<String, String>()));
- neutronPortPropertyDefMap.put("replacement_policy", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Policy on how to respond to a stack-update for this resource", false,
- createReplacementPolicyConstrain(), null, null, "AUTO"));
- neutronPortPropertyDefMap.put("network", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Network this port belongs to", false, null, null, null, null));
- return neutronPortPropertyDefMap;
- }
-
- private static List<Constraint> createBindingConstraint() {
- List<Constraint> constraints = new ArrayList<>();
- Constraint validValues =
- DataModelUtil.createValidValuesConstraint("macvtap", "direct", "normal");
- constraints.add(validValues);
- return constraints;
- }
-
- private static List<Constraint> createReplacementPolicyConstrain() {
- List<Constraint> constraints = new ArrayList<>();
- Constraint validValues = DataModelUtil.createValidValuesConstraint("REPLACE_ALWAYS", "AUTO");
- constraints.add(validValues);
- return constraints;
- }
-
- private static Map<String, AttributeDefinition> createNeutronPortAttributes() {
- Map<String, AttributeDefinition> neutronPortAttributesDefMap = new HashMap<>();
- neutronPortAttributesDefMap.put("network_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Unique identifier for the network owning the port", null, null, null));
- neutronPortAttributesDefMap.put("qos_policy_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The QoS policy ID attached to this network", null, null, null));
- neutronPortAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Detailed information about resource", null, null, null));
- neutronPortAttributesDefMap.put("status", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The status of the network", null, null, null));
- neutronPortAttributesDefMap.put("subnets", DataModelUtil
- .createAttributeDefinition(PropertyType.LIST.getDisplayName(), "Subnets of this network",
- null, DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- neutronPortAttributesDefMap.put("tenant_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "Tenant owning the port",
- null, null, null));
- return neutronPortAttributesDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronSecurityRulesGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronSecurityRulesGlobalType.java
deleted file mode 100644
index 4c5b033e0e..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NeutronSecurityRulesGlobalType.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Constraint;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class NeutronSecurityRulesGlobalType {
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate neutronSecurityRulesServiceTemplate = new ServiceTemplate();
- neutronSecurityRulesServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- neutronSecurityRulesServiceTemplate.setMetadata(DataModelUtil
- .createMetadata(Constants.NEUTRON_SECURITY_RULES_TEMPLATE_NAME, "1.0.0", null));
- neutronSecurityRulesServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- neutronSecurityRulesServiceTemplate.setDescription("Neutron Security Rules TOSCA Global Types");
- neutronSecurityRulesServiceTemplate.setData_types(createGlobalDataTypes());
- neutronSecurityRulesServiceTemplate.setNode_types(createGlobalNodeTypes());
- return neutronSecurityRulesServiceTemplate;
- }
-
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes.put(ToscaDataType.NEUTRON_SECURITY_RULES_RULE.getDisplayName(),
- createSecurityRulesDataType());
- return globalDataTypes;
- }
-
- private static DataType createSecurityRulesDataType() {
- DataType addressPairDataType = new DataType();
- addressPairDataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- addressPairDataType.setDescription("Rules Pairs");
- Map<String, PropertyDefinition> addressPairProp = new HashMap<>();
-
- addressPairProp.put("direction", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The direction in which the security group rule is applied", false,
- DataModelUtil.createValidValuesConstraintsList("egress", "ingress"), null, null,
- "ingress"));
- addressPairProp.put("ethertype", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Ethertype of the traffic",
- false, DataModelUtil.createValidValuesConstraintsList("IPv4", "IPv6"), null, null,
- "IPv4"));
- Constraint portRangeMaxConstraint = new Constraint();
- portRangeMaxConstraint.setIn_range(new Integer[]{0, 65535});
- addressPairProp.put("port_range_max", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(),
- "The maximum port number in the range that is matched by the security group rule. ",
- false, DataModelUtil.getConstrainList(portRangeMaxConstraint), null, null, null));
- Constraint portRangeMinConstraint = new Constraint();
- portRangeMinConstraint.setIn_range(new Integer[]{0, 65535});
- addressPairProp.put("port_range_min", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(),
- "The minimum port number in the range that is matched by the security group rule.",
- false, DataModelUtil.getConstrainList(portRangeMinConstraint), null, null, null));
- addressPairProp.put("protocol", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The protocol that is matched by the security group rule", false,
- DataModelUtil.createValidValuesConstraintsList("tcp", "udp", "icmp"), null, null,
- null));
- addressPairProp.put("remote_group_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The remote group ID to be associated with this security group rule", false, null, null,
- null, null));
- addressPairProp.put("remote_ip_prefix", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The remote IP prefix (CIDR) to be associated with this security group rule", false,
- null, null, null, null));
- addressPairProp.put("remote_mode", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Whether to specify a remote group or a remote IP prefix", false,
- DataModelUtil.createValidValuesConstraintsList("remote_ip_prefix", "remote_group_id"),
- null, null, "remote_ip_prefix"));
- addressPairDataType.setProperties(addressPairProp);
-
- return addressPairDataType;
- }
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.NEUTRON_SECURITY_RULES.getDisplayName(),
- createNeutronSecurityRulesNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createNeutronSecurityRulesNodeType() {
- NodeType novaServerNodeType = new NodeType();
- novaServerNodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- novaServerNodeType.setProperties(createNeutronSecurityRulesProperties());
- novaServerNodeType.setAttributes(createNeutronSecurityRulesAttributes());
- novaServerNodeType.setRequirements(createNeutronSecurityRequirements());
- return novaServerNodeType;
- }
-
- private static List<Map<String, RequirementDefinition>> createNeutronSecurityRequirements() {
- final List<Map<String, RequirementDefinition>> requirements = new ArrayList<>();
- final Map<String, RequirementDefinition> portRequirement = new HashMap<>();
- RequirementDefinition requirementDefinition = new RequirementDefinition();
- requirementDefinition.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
- requirementDefinition.setNode(ToscaNodeType.NEUTRON_PORT.getDisplayName());
- requirementDefinition.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
- requirementDefinition.setOccurrences(new Object[]{0, ToscaConstants.UNBOUNDED});
- portRequirement.put(ToscaConstants.PORT_REQUIREMENT_ID, requirementDefinition);
- requirements.add(portRequirement);
-
- return requirements;
- }
-
- private static Map<String, PropertyDefinition> createNeutronSecurityRulesProperties() {
- Map<String, PropertyDefinition> neutronSecurityRulesPropertyDefMap = new HashMap<>();
- neutronSecurityRulesPropertyDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "A symbolic name for this security group, which is not required to be unique.", false,
- null, null, null, null));
- neutronSecurityRulesPropertyDefMap.put(Constants.DESCRIPTION_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Description of the security group", false, null, null, null, null));
- neutronSecurityRulesPropertyDefMap.put(Constants.RULES_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "List of security group rules", false, null, null, DataModelUtil
- .createEntrySchema(ToscaDataType.NEUTRON_SECURITY_RULES_RULE.getDisplayName(), null,
- null), null));
- return neutronSecurityRulesPropertyDefMap;
- }
-
- private static Map<String, AttributeDefinition> createNeutronSecurityRulesAttributes() {
- Map<String, AttributeDefinition> neutronSecurityRulesAttributesDefMap = new HashMap<>();
- neutronSecurityRulesAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Detailed information about resource", null, null, null));
- return neutronSecurityRulesAttributesDefMap;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NovaServerGlobalType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NovaServerGlobalType.java
deleted file mode 100644
index d38d70a4f7..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/globaltypes/NovaServerGlobalType.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.globaltypes;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Constraint;
-import org.openecomp.sdc.tosca.datatypes.model.DataType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.heatextend.PropertyTypeExt;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class NovaServerGlobalType {
-
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate novaeServerServiceTemplate = new ServiceTemplate();
- novaeServerServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- novaeServerServiceTemplate.setMetadata(
- DataModelUtil.createMetadata(Constants.NOVA_SERVER_TEMPLATE_NAME, "1.0.0", null));
- novaeServerServiceTemplate.setDescription("Nova Server TOSCA Global Types");
- novaeServerServiceTemplate.setImports(GlobalTypesUtil.createCommonImportList());
- novaeServerServiceTemplate.setData_types(createGlobalDataTypes());
- novaeServerServiceTemplate.setNode_types(createGlobalNodeTypes());
- return novaeServerServiceTemplate;
- }
-
-
- private static Map<String, NodeType> createGlobalNodeTypes() {
- Map<String, NodeType> globalNodeTypes = new HashMap<>();
- globalNodeTypes.put(ToscaNodeType.NOVA_SERVER.getDisplayName(), createNovaServerNodeType());
- return globalNodeTypes;
- }
-
- private static NodeType createNovaServerNodeType() {
- NodeType novaServerNodeType = new NodeType();
- novaServerNodeType.setDerived_from(ToscaNodeType.COMPUTE.getDisplayName());
- novaServerNodeType.setProperties(createNovaServerProperties());
- novaServerNodeType.setAttributes(createNovaServerAttributes());
- return novaServerNodeType;
- }
-
-
- private static Map<String, PropertyDefinition> createNovaServerProperties() {
- Map<String, PropertyDefinition> novaServerPropertyDefMap = new HashMap<>();
- novaServerPropertyDefMap.put("flavor", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The ID or name of the flavor to boot onto", true, null, null, null, null));
- novaServerPropertyDefMap.put("admin_pass", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The administrator password for the server", false, null, null, null, null));
- novaServerPropertyDefMap.put("availability_zone", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Availability zone to create servers in", false, null, null, null, null));
- novaServerPropertyDefMap.put("config_drive", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "enable config drive on the server", false, null, null, null, null));
- novaServerPropertyDefMap.put("contrail_service_instance_ind", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Nova server related to service instance indicator", false, null, null, null, false));
- novaServerPropertyDefMap.put("diskConfig", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Control how the disk is partitioned when the server is created", false,
- getDiskConfigConstraints(), null, null, null));
- novaServerPropertyDefMap.put("flavor_update_policy", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Policy on how to apply a flavor update", false, getFlavorUpdatePolicyConstraints(),
- null, null, "RESIZE"));
- novaServerPropertyDefMap.put("image", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The ID or name of the image to boot with", false, null, null, null, null));
- novaServerPropertyDefMap.put("image_update_policy", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Policy on how to apply an image-id update", false, getImageUpdatePolicyConstraints(),
- null, null, "REBUILD"));
- novaServerPropertyDefMap.put("key_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Name of keypair to inject into the server", false, null, null, null, null));
- novaServerPropertyDefMap.put("metadata", DataModelUtil
- .createPropertyDefinition(PropertyTypeExt.JSON.getDisplayName(),
- "Arbitrary JSON metadata to store for this server", false, null, null, null, null));
- novaServerPropertyDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Server name", false, null,
- null, null, null));
- novaServerPropertyDefMap.put("personality", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "A map of files to create/overwrite on the server upon boot", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- new HashMap<String, String>()));
- novaServerPropertyDefMap.put("reservation_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "A UUID for the set of servers being requested", false, null, null, null, null));
- novaServerPropertyDefMap.put("scheduler_hints", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "Arbitrary key-value pairs specified by the client to help boot a server", false, null,
- null, DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- null));
- novaServerPropertyDefMap.put(Constants.SECURITY_GROUPS_PROPERTY_NAME, DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "List of security group names or IDs", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- new ArrayList<>()));
- novaServerPropertyDefMap.put("software_config_transport", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "How the server should receive the metadata required for software configuration", false,
- getSoftwareConfigTransportConstraints(), null, null, "POLL_SERVER_CFN"));
- novaServerPropertyDefMap.put("user_data", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "User data script to be executed by cloud-init", false, null, null, null, ""));
- novaServerPropertyDefMap.put("user_data_format", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "How the user_data should be formatted for the server", false,
- getUserDataFormatConstraint(), null, null, "HEAT_CFNTOOLS"));
- novaServerPropertyDefMap.put("user_data_update_policy", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "Policy on how to apply a user_data update", false,
- getUserDataUpdatePolicyConstraints(), null, null, "REPLACE"));
- return novaServerPropertyDefMap;
- }
-
- private static Map<String, AttributeDefinition> createNovaServerAttributes() {
- Map<String, AttributeDefinition> novaServerAttributesDefMap = new HashMap<>();
- novaServerAttributesDefMap.put("accessIPv4", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The manually assigned alternative public IPv4 address of the server", null, null,
- null));
- novaServerAttributesDefMap.put("accessIPv6", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "The manually assigned alternative public IPv6 address of the server", null, null,
- null));
- novaServerAttributesDefMap.put("addresses", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(),
- "A dict of all network addresses with corresponding port_id", null, DataModelUtil
- .createEntrySchema(ToscaDataType.NOVA_SERVER_NETWORK_ADDRESS_INFO.getDisplayName(),
- null, null), null));
- novaServerAttributesDefMap.put("console_urls", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "URLs of servers consoles",
- null, null, null));
- novaServerAttributesDefMap.put("instance_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "AWS compatible instance name", null, null, null));
- novaServerAttributesDefMap.put(Constants.NAME_PROPERTY_NAME, DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "Name of the server", null,
- null, null));
- novaServerAttributesDefMap.put("show", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(),
- "Detailed information about resource", null, null, null));
- return novaServerAttributesDefMap;
- }
-
- private static List<Constraint> getUserDataFormatConstraint() {
- List<Constraint> constraints;
- Constraint validValues;
- constraints = new ArrayList<>();
- validValues =
- DataModelUtil.createValidValuesConstraint("SOFTWARE_CONFIG", "RAW", "HEAT_CFNTOOLS");
- constraints.add(validValues);
- return constraints;
- }
-
- private static List<Constraint> getUserDataUpdatePolicyConstraints() {
- List<Constraint> constraints;
- Constraint validValues;
- constraints = new ArrayList<>();
- validValues = DataModelUtil.createValidValuesConstraint("REPLACE", "IGNORE");
- constraints.add(validValues);
- return constraints;
- }
-
- private static List<Constraint> getSoftwareConfigTransportConstraints() {
- List<Constraint> constraints;
- Constraint validValues;
- constraints = new ArrayList<>();
- validValues = DataModelUtil
- .createValidValuesConstraint("POLL_SERVER_CFN", "POLL_SERVER_HEAT", "POLL_TEMP_URL",
- "ZAQAR_MESSAGE");
- constraints.add(validValues);
- return constraints;
- }
-
- private static List<Constraint> getImageUpdatePolicyConstraints() {
- List<Constraint> constraints;
- Constraint validValues;
- constraints = new ArrayList<>();
- validValues = DataModelUtil
- .createValidValuesConstraint("REBUILD_PRESERVE_EPHEMERAL", "REPLACE", "REBUILD");
- constraints.add(validValues);
- return constraints;
- }
-
- private static List<Constraint> getFlavorUpdatePolicyConstraints() {
- Constraint validValues;
- List<Constraint> constraints = new ArrayList<>();
- validValues = DataModelUtil.createValidValuesConstraint("RESIZE", "REPLACE");
- constraints.add(validValues);
- return constraints;
- }
-
- private static List<Constraint> getDiskConfigConstraints() {
- List<Constraint> constraints = new ArrayList<>();
- Constraint validValues = DataModelUtil.createValidValuesConstraint("AUTO", "MANUAL");
- constraints.add(validValues);
- return constraints;
- }
-
- private static Map<String, DataType> createGlobalDataTypes() {
- Map<String, DataType> globalDataTypes = new HashMap<>();
- globalDataTypes.put(ToscaDataType.NOVA_SERVER_PORT_EXTRA_PROPERTIES.getDisplayName(),
- createPortExtraDataDataType());
- globalDataTypes.put(ToscaDataType.NOVA_SERVER_NETWORK_ADDRESS_INFO.getDisplayName(),
- createAddressInfoDataType());
- return globalDataTypes;
- }
-
- private static DataType createAddressInfoDataType() {
- DataType addressInfoDataType = new DataType();
- addressInfoDataType.setDerived_from(ToscaDataType.NETWORK_NETWORK_INFO.getDisplayName());
- addressInfoDataType.setDescription("Network addresses with corresponding port id");
-
- Map<String, PropertyDefinition> addressInfoProp = new HashMap<>();
- addressInfoProp.put("port_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), "Port id", false, null,
- null, null, null));
- addressInfoDataType.setProperties(addressInfoProp);
-
- return addressInfoDataType;
- }
-
-
- private static DataType createPortExtraDataDataType() {
- DataType portExtraDataType = new DataType();
- portExtraDataType.setDerived_from(ToscaDataType.ROOT.getDisplayName());
- portExtraDataType.setDescription("Nova server network expand properties for port");
- Map<String, PropertyDefinition> portExtraPropMap = new HashMap<>();
-
- portExtraPropMap.put("admin_state_up", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "The administrative state of this port", false, null, null, null, true));
- portExtraPropMap.put("allowed_address_pairs", DataModelUtil
- .createPropertyDefinition(PropertyType.LIST.getDisplayName(),
- "Additional MAC/IP address pairs allowed to pass through the port", false, null, null,
- DataModelUtil
- .createEntrySchema(ToscaDataType.NETWORK_ADDRESS_PAIR.getDisplayName(), null, null),
- null));
-
- List<Constraint> bindingVnicConstraints = new ArrayList<>();
- Constraint validValues =
- DataModelUtil.createValidValuesConstraint("macvtap", "direct", "normal");
- bindingVnicConstraints.add(validValues);
- portExtraPropMap.put("binding:vnic_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The vnic type to be bound on the neutron port", false, bindingVnicConstraints, null,
- null, null));
-
- portExtraPropMap.put("mac_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "MAC address to give to this port", false, null, null, null, null));
- portExtraPropMap.put("port_security_enabled", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(),
- "Flag to enable/disable port security on the port", false, null, null, null, null));
- portExtraPropMap.put("qos_policy", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(),
- "The name or ID of QoS policy to attach to this port", false, null, null, null, null));
- portExtraPropMap.put("value_specs", DataModelUtil
- .createPropertyDefinition(PropertyType.MAP.getDisplayName(),
- "Extra parameters to include in the request", false, null, null,
- DataModelUtil.createEntrySchema(PropertyType.STRING.getDisplayName(), null, null),
- new HashMap<String, String>()));
- portExtraDataType.setProperties(portExtraPropMap);
- return portExtraDataType;
- }
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelper.java
index 2e1aa9e372..a86f584bf0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelper.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelper.java
@@ -20,46 +20,138 @@
package org.openecomp.sdc.translator.services.heattotosca.helper;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.heat.datatypes.HeatBoolean;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.services.heattotosca.helper.impl.NameExtractorServiceImpl;
+import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
+import org.openecomp.sdc.translator.datatypes.heattotosca.PropertyRegexMatcher;
+import org.openecomp.sdc.translator.services.heattotosca.ConfigConstants;
+import org.openecomp.sdc.translator.services.heattotosca.NameExtractor;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.Optional;
public class ContrailTranslationHelper {
+
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
/**
* Gets compute node type id.
*
- * @param serviceTemplateTranslatedId the service template translated id
- * @param serviceTemplateResource the service template resource
+ * @param contrailServiceTemplateResource contrail service teamplte resource
+ * @param contrailServiceTemplateResourceId contrailservice template resource id
+ * @param contrailServiceTemplateTranslatedId contrail service tempalte resource translated id
* @return the compute node type id
*/
- public String getComputeNodeTypeId(String serviceTemplateTranslatedId,
- Resource serviceTemplateResource) {
- NameExtractorService nodeTypeNameExtractor = new NameExtractorServiceImpl();
- List<PropertyRegexMatcher> propertyRegexMatchers =
- getPropertiesAndRegexMatchers(nodeTypeNameExtractor);
- Optional<String> extractedNodeTypeName = nodeTypeNameExtractor
- .extractNodeTypeNameByPropertiesPriority(serviceTemplateResource.getProperties(),
- propertyRegexMatchers);
-
- return ToscaConstants.NODES_PREFIX
- + (extractedNodeTypeName.isPresent() ? extractedNodeTypeName.get()
- : "compute_" + serviceTemplateTranslatedId);
+ public String getComputeNodeTypeId(Resource contrailServiceTemplateResource,
+ String contrailServiceTemplateResourceId,
+ String contrailServiceTemplateTranslatedId,
+ TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ NameExtractor nodeTypeNameExtractor =
+ context.getNameExtractorImpl(ConfigConstants.CONTRAIL_COMPUTE_NODE_TYPE_IMPL_KEY);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return nodeTypeNameExtractor
+ .extractNodeTypeName(contrailServiceTemplateResource, contrailServiceTemplateResourceId,
+ contrailServiceTemplateTranslatedId);
}
- private List<PropertyRegexMatcher> getPropertiesAndRegexMatchers(
- NameExtractorService nodeTypeNameExtractor) {
+ /**
+ * Get property Regx matcher list.
+ *
+ * @return Regex exprission per contrail service template resource property, while contail compute
+ * type name is consider when setting the name value
+ */
+ public List<PropertyRegexMatcher> getPropertyRegexMatchersForComputeNodeType() {
List<PropertyRegexMatcher> propertyRegexMatchers = new ArrayList<>();
- propertyRegexMatchers.add(nodeTypeNameExtractor
- .getPropertyRegexMatcher("image_name", Collections.singletonList(".+_image_name$"),
+ propertyRegexMatchers
+ .add(new PropertyRegexMatcher("image_name", Collections.singletonList(".+_image_name$"),
"_image_name"));
- propertyRegexMatchers.add(nodeTypeNameExtractor
- .getPropertyRegexMatcher("flavor", Collections.singletonList(".+_flavor_name$"),
+ propertyRegexMatchers
+ .add(new PropertyRegexMatcher("flavor", Collections.singletonList(".+_flavor_name$"),
"_flavor_name"));
return propertyRegexMatchers;
}
+
+ public String getSubstitutionContrailServiceTemplateMetadata(String heatFileName,
+ String serviceInstanceTranslatedId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return FileUtils.getFileWithoutExtention(heatFileName) + "_" + serviceInstanceTranslatedId;
+ }
+
+ /**
+ * Translate fn split function optional.
+ *
+ * @param propertyValue the property value
+ * @param listSize the list size
+ * @param includeBooleanValue the include boolean value
+ * @return the optional
+ */
+ public Optional<List<Map<String, List>>> translateFnSplitFunction(Object propertyValue,
+ int listSize,
+ boolean
+ includeBooleanValue) {
+ List<Map<String, List>> tokenPropertyValueList = new ArrayList<>();
+
+ if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
+ Map<String, Object> propMap = (Map) propertyValue;
+ Map.Entry<String, Object> entry = propMap.entrySet().iterator().next();
+ Object entity = entry.getValue();
+ String key = entry.getKey();
+ String tokenChar;
+
+ if (key.equals("Fn::Split") && entity instanceof List) {
+ tokenChar = (String) ((List) entity).get(0);
+ Object refParameter = ((List) entity).get(1);
+
+ for (int substringIndex = 0; substringIndex < listSize; substringIndex++) {
+ Map<String, List> tokenPropertyValue = new HashMap<>();
+ tokenPropertyValue.put("token", new ArrayList<>());
+
+ if (refParameter instanceof Map && ((Map) refParameter).get("Ref") != null) {
+ Map<String, String> stringWithToken = new HashMap<>();
+ ((Map) stringWithToken)
+ .put(ToscaFunctions.GET_INPUT.getDisplayName(), ((Map) refParameter).get("Ref"));
+ tokenPropertyValue.get("token").add(stringWithToken);
+ } else if (refParameter instanceof String) {
+ if (includeBooleanValue) {
+ StringBuffer booleanBuffer = new StringBuffer();
+ String[] booleanValueList = ((String) refParameter).split(tokenChar);
+ for (int i = 0; i < booleanValueList.length; i++) {
+ if (i == 0) {
+ booleanBuffer.append(HeatBoolean.eval(booleanValueList[i]));
+ } else {
+ booleanBuffer.append(tokenChar);
+ booleanBuffer.append(HeatBoolean.eval(booleanValueList[i]));
+ }
+ }
+ tokenPropertyValue.get("token").add(booleanBuffer.toString());
+ } else {
+ tokenPropertyValue.get("token").add(refParameter);
+ }
+ }
+ tokenPropertyValue.get("token").add(tokenChar);
+ tokenPropertyValue.get("token").add(substringIndex);
+ tokenPropertyValueList.add(tokenPropertyValue);
+ }
+
+ return Optional.of(tokenPropertyValueList);
+
+ }
+ }
+
+ return Optional.empty();
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailV2VirtualMachineInterfaceHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailV2VirtualMachineInterfaceHelper.java
new file mode 100644
index 0000000000..402db74a9b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailV2VirtualMachineInterfaceHelper.java
@@ -0,0 +1,184 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.helper;
+
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationEntityType;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationBase;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+public class ContrailV2VirtualMachineInterfaceHelper {
+ static Logger logger =
+ (Logger) LoggerFactory.getLogger(ContrailV2VirtualMachineInterfaceHelper.class);
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ /**
+ * Connect Virtual Machine Interface node template to network node template in TOSCA.
+ *
+ * @param resourceTranslationImpl resource translation implemetation
+ * @param translateTo translated ro object
+ * @param vmiNodeTemplate Virtual Machine Interface node template
+ */
+ public void connectVmiToNetwork(ResourceTranslationBase resourceTranslationImpl,
+ TranslateTo translateTo, NodeTemplate vmiNodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Object virtualNetworkRefs =
+ translateTo.getResource().getProperties()
+ .get(HeatConstants.VIRTUAL_NETWORK_REFS_PROPERTY_NAME);
+ if (Objects.isNull(virtualNetworkRefs) || !(virtualNetworkRefs instanceof List)
+ || ((List) virtualNetworkRefs).size() == 0) {
+ return;
+ }
+ List<String> acceptableResourceTypes = Arrays
+ .asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
+ HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource());
+
+ if (((List) virtualNetworkRefs).size() > 1) {
+ logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ + translateTo.getResource().getType()
+ + "' include '"
+ + HeatConstants.VIRTUAL_NETWORK_REFS_PROPERTY_NAME
+ + "' property with more than one network values, only "
+ + "the first network will be connected, "
+ + "all rest will be ignored in TOSCA translation.");
+ }
+ Object virtualNetworkRef = ((List) virtualNetworkRefs).get(0);
+
+ Optional<String> networkResourceId =
+ HeatToToscaUtil.extractContrailGetResourceAttachedHeatResourceId(virtualNetworkRef);
+ if (networkResourceId.isPresent()) { // get_resource
+ Resource networkResource = HeatToToscaUtil
+ .getResource(translateTo.getHeatOrchestrationTemplate(), networkResourceId.get(),
+ translateTo.getHeatFileName());
+ if (acceptableResourceTypes.contains(networkResource.getType())) {
+ Optional<String> resourceTranslatedId =
+ resourceTranslationImpl.getResourceTranslatedId(translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), networkResourceId.get(),
+ translateTo.getContext());
+
+ if (resourceTranslatedId.isPresent()) {
+ RequirementAssignment requirementAssignment = HeatToToscaUtil.addLinkReqFromPortToNetwork(
+ vmiNodeTemplate, resourceTranslatedId.get());
+
+ if (ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE
+ .equals(vmiNodeTemplate.getType())) {
+ ConsolidationDataUtil
+ .updateNodesConnectedOut(translateTo, resourceTranslatedId.get(),
+ ConsolidationEntityType.PORT,
+ ToscaConstants.LINK_REQUIREMENT_ID, requirementAssignment);
+ }
+ }
+ } else {
+ logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ + translateTo.getResource().getType()
+ + "' include '" + HeatConstants.VIRTUAL_NETWORK_REFS_PROPERTY_NAME
+ + "' property which is connect to "
+ + "unsupported/incorrect resource with type '"
+ + networkResource.getType()
+ + "', therefore, this connection will be ignored in TOSCA translation.");
+ }
+ } else {
+ Optional<AttachedResourceId> attachedResourceId = HeatToToscaUtil
+ .extractAttachedResourceId(translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), translateTo.getContext(),
+ virtualNetworkRef);
+ if (attachedResourceId.isPresent() && attachedResourceId.get().isGetParam()
+ && attachedResourceId.get().getEntityId() instanceof String) {
+ TranslatedHeatResource translatedSharedResourceId =
+ translateTo.getContext().getHeatSharedResourcesByParam()
+ .get(attachedResourceId.get().getEntityId());
+ if (Objects.nonNull(translatedSharedResourceId)
+ && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
+ RequirementAssignment requirementAssignment = HeatToToscaUtil.addLinkReqFromPortToNetwork(
+ vmiNodeTemplate, translatedSharedResourceId.getTranslatedId());
+
+ if (ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE
+ .equals(vmiNodeTemplate.getType())) {
+ ConsolidationDataUtil.updateNodesConnectedOut(translateTo, translatedSharedResourceId
+ .getTranslatedId(), ConsolidationEntityType.PORT,
+ ToscaConstants.LINK_REQUIREMENT_ID,
+ requirementAssignment);
+ }
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ /**
+ * Check if the input heat resource is Vlan sub interface resource
+ *
+ * @param resource heat resource to be checked
+ * @return true - if input resource is valn sub interface resource flase - otherwise.
+ */
+ public boolean isVlanSubInterfaceResource(Resource resource) {
+
+ if (resource.getType().equals(HeatResourcesTypes
+ .CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE.getHeatResource())
+ && getVlanTagPropertyValue(resource).isPresent()) {
+ return true;
+ }
+
+ return false;
+ }
+
+ private Optional<Object> getVlanTagPropertyValue(Resource resource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Object vmiProperties = resource.getProperties()
+ .get(HeatConstants.VMI_PROPERTIES_PROPERTY_NAME);
+ if (vmiProperties != null && vmiProperties instanceof Map) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.ofNullable(((Map) vmiProperties)
+ .get(HeatConstants.VMI_SUB_INTERFACE_VLAN_TAG_PROPERTY_NAME));
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/FunctionTranslationHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/FunctionTranslationHelper.java
new file mode 100644
index 0000000000..c06892046f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/FunctionTranslationHelper.java
@@ -0,0 +1,47 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.helper;
+
+/**
+ * @author SHIRIA
+ * @since December 15, 2016.
+ */
+public class FunctionTranslationHelper {
+
+ private static final String UNSUPPORTED_RESOURCE = "UNSUPPORTED_RESOURCE_";
+ private static final String UNSUPPORTED_ATTRIBUTE = "UNSUPPORTED_ATTRIBUTE_";
+
+ public static boolean isResourceSupported(String translatedResourceId) {
+ return !translatedResourceId.startsWith(UNSUPPORTED_RESOURCE);
+ }
+
+ public static boolean isAttributeSupported(String translatedAttName) {
+ return !translatedAttName.startsWith(UNSUPPORTED_ATTRIBUTE);
+ }
+
+ public static String getUnsupportedResourcePrefix() {
+ return UNSUPPORTED_RESOURCE;
+ }
+
+ public static String getUnsupportedAttributePrefix() {
+ return UNSUPPORTED_ATTRIBUTE;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ResourceTranslationNeutronPortHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ResourceTranslationNeutronPortHelper.java
new file mode 100644
index 0000000000..a99c95c148
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/ResourceTranslationNeutronPortHelper.java
@@ -0,0 +1,202 @@
+package org.openecomp.sdc.translator.services.heattotosca.helper;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+public class ResourceTranslationNeutronPortHelper {
+
+ public static final String IP_COUNT_REQUIRED = "ip_count_required";
+ public static final String FLOATING_IP_COUNT_REQUIRED = "floating_ip_count_required";
+ public static final String NETWORK = "network";
+ public static final String NETWORK_ROLE_TAG = "network_role_tag";
+ public static final String FIXED_IPS = "fixed_ips";
+ public static final String IP_VERSION = "ip_version";
+ public static final String IP_ADDRESS = "ip_address";
+ public static final String GET_INPUT = "get_input";
+ public static final String ALLOWED_ADDRESS_PAIRS = "allowed_address_pairs";
+ public static final String FLOATING_IP = "_floating_ip";
+ public static final String FLOATING_V6_IP = "_floating_v6_ip";
+ public static final String IPS = "_ips";
+ public static final String V6_IPS = "_v6_ips";
+ public static final String NET_NAME = "_net_name";
+ public static final String NET_ID = "_net_id";
+ public static final String NET_FQDN = "_net_fqdn";
+ public static final String IPV4_REGEX = "\\w*_ip_\\d+";
+ public static final String IPV6_REGEX = "\\w*_v6_ip_\\d+";
+ public static final String MAC_COUNT_REQUIRED = "mac_count_required";
+ public static final String MAC_ADDRESS = "mac_address";
+ public static final String IS_REQUIRED = "is_required";
+ public static final String IP_REQUIREMENTS = "ip_requirements";
+ public static final String MAC_REQUIREMENTS = "mac_requirements";
+
+ public void setAdditionalProperties(Map<String, Object> properties) {
+ setNetworkRoleTag(properties);
+ Map<String, Object> ipRequirements = new HashMap();
+ Map<String, Object> macRequirements = new HashMap();
+ Map<String, Object> isRequired = new HashMap();
+ Map<String, Object> floatingIsRequired = new HashMap();
+ Map<String, Object> macIsRequired = new HashMap();
+
+ isRequired.put(IS_REQUIRED, Boolean.FALSE);
+ floatingIsRequired.put(IS_REQUIRED, Boolean.FALSE);
+ macIsRequired.put(IS_REQUIRED, Boolean.FALSE);
+
+ ipRequirements.put(IP_COUNT_REQUIRED, isRequired);
+ ipRequirements.put(FLOATING_IP_COUNT_REQUIRED, floatingIsRequired);
+ ipRequirements.put(IP_VERSION, 4);
+ macRequirements.put(MAC_COUNT_REQUIRED, macIsRequired);
+
+ List<Map<String, Object>> ipRequirementsList = new ArrayList<>();
+ ipRequirementsList.add(ipRequirements);
+ properties.put(IP_REQUIREMENTS , ipRequirementsList);
+
+ properties.put(MAC_REQUIREMENTS , macRequirements);
+
+ setIpVersion(properties);
+ setFloatingIpVersion(properties);
+
+ setMacCount(properties);
+ }
+
+ private void setMacCount(Map<String, Object> properties) {
+ if(properties.containsKey(MAC_ADDRESS)) {
+ Map<String, Object> macRequirements = (Map<String, Object>) properties.get(MAC_REQUIREMENTS);
+ Map<String, Object> macIsRequired = new HashMap();
+ macIsRequired.put(IS_REQUIRED, Boolean.TRUE);
+ macRequirements.put(MAC_COUNT_REQUIRED, macIsRequired);
+ properties.put(MAC_REQUIREMENTS, macRequirements);
+ }
+ }
+
+ private void setFloatingIpVersion(Map<String, Object> properties) {
+ List<Map<String, Object>> ipRequirementsList =
+ (List<Map<String, Object>>) properties.get(IP_REQUIREMENTS);
+ Map<String, Object> ipRequirements = ipRequirementsList.get(0);
+ Object propertyValue;
+ Map<String, Object> isRequired = new HashMap();
+ isRequired.put(IS_REQUIRED, Boolean.TRUE);
+
+ propertyValue = properties.get(ALLOWED_ADDRESS_PAIRS);
+ if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
+ Map.Entry<String, Object> mapEntry =
+ (Map.Entry<String, Object>) ((Map) propertyValue).entrySet().iterator().next();
+ if (getFloatingIpVersion(mapEntry.getValue()) != null) {
+ ipRequirements.put(IP_VERSION, getFloatingIpVersion(mapEntry.getValue()));
+ ipRequirements.put(FLOATING_IP_COUNT_REQUIRED, isRequired);
+ }
+ }
+ else if (propertyValue instanceof List && !((List) propertyValue).isEmpty()) {
+ for (int i = 0; i < ((List) propertyValue).size(); i++) {
+ Object ipMap = ((List) propertyValue).get(i);
+ if(ipMap instanceof Map && !((Map) ipMap).isEmpty()) {
+ Object ipAddressMap = ((Map) ipMap).get(IP_ADDRESS);
+ if (ipAddressMap instanceof Map && !((Map) ipAddressMap).isEmpty()) {
+ Object ipList = ((Map) ipAddressMap).get(GET_INPUT);
+ if (ipList instanceof String && !((String) ipList).isEmpty()) {
+ if (getFloatingIpVersion(ipList) != null) {
+ ipRequirements.put(IP_VERSION, getFloatingIpVersion(ipList));
+ ipRequirements.put(FLOATING_IP_COUNT_REQUIRED, isRequired);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ private void setIpVersion(Map<String, Object> properties) {
+ List<Map<String, Object>> ipRequirementsList =
+ (List<Map<String, Object>>) properties.get(IP_REQUIREMENTS);
+ Map<String, Object> ipRequirements = ipRequirementsList.get(0);
+ Object propertyValue;
+ Map<String, Object> isRequired = new HashMap();
+ isRequired.put(IS_REQUIRED, Boolean.TRUE);
+
+ propertyValue = properties.get(FIXED_IPS);
+ if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
+ Map.Entry<String, Object> mapEntry =
+ (Map.Entry<String, Object>) ((Map) propertyValue).entrySet().iterator().next();
+ if (getIpVersion(mapEntry.getValue()) != null) {
+ ipRequirements.put(IP_VERSION, getIpVersion(mapEntry.getValue()));
+ ipRequirements.put(IP_COUNT_REQUIRED, isRequired);
+ }
+ }
+ else if (propertyValue instanceof List && !((List) propertyValue).isEmpty()) {
+ for (int i = 0; i < ((List) propertyValue).size(); i++) {
+ Object ipMap = ((List) propertyValue).get(i);
+ if(ipMap instanceof Map && !((Map) ipMap).isEmpty()) {
+ Object ipAddressMap = ((Map) ipMap).get(IP_ADDRESS);
+ if (ipAddressMap instanceof Map && !((Map) ipAddressMap).isEmpty()) {
+ Object ipList = ((Map) ipAddressMap).get(GET_INPUT);
+ if (ipList instanceof List && !((List) ipList).isEmpty()) {
+ if (getIpVersion(((List) ipList).get(0)) != null) {
+ ipRequirements.put(IP_VERSION, getIpVersion(((List) ipList).get(0)));
+ ipRequirements.put(IP_COUNT_REQUIRED, isRequired);
+ }
+ }
+ else if (ipList instanceof String && !((String) ipList).isEmpty()) {
+ if (getIpVersion(ipList) != null) {
+ ipRequirements.put(IP_VERSION, getIpVersion(ipList));
+ ipRequirements.put(IP_COUNT_REQUIRED, isRequired);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+
+ private void setNetworkRoleTag(Map<String, Object> properties) {
+ Object propertyValue = properties.get(NETWORK);
+ if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
+ Map.Entry<String, String> mapEntry =
+ (Map.Entry<String, String>) ((Map) propertyValue).entrySet().iterator().next();
+ if (mapEntry.getValue() instanceof String && getNetworkRole(mapEntry.getValue())!=null) {
+ properties.put(NETWORK_ROLE_TAG, getNetworkRole(mapEntry.getValue()));
+ }
+ }
+ }
+
+ private Object getFloatingIpVersion(Object value) {
+ Object ipVersion = null;
+ if(value instanceof String) {
+ if (((String) value).endsWith(FLOATING_V6_IP)) {
+ ipVersion = 6;
+ }
+ else {
+ ipVersion = 4;
+ }
+ }
+ return ipVersion;
+ }
+
+ private Object getIpVersion(Object value) {
+ Object ipVersion = null;
+ if(value instanceof String) {
+ if (((String) value).endsWith(V6_IPS) || ((String) value).matches(IPV6_REGEX)) {
+ ipVersion = 6;
+ }
+ else {
+ ipVersion = 4;
+ }
+ }
+ return ipVersion;
+ }
+
+ private Object getNetworkRole(String value) {
+ Object networkRole = null;
+ if(value.endsWith(NET_NAME)) {
+ networkRole = (Object) value.substring(0, value.length() - NET_NAME.length());
+ }
+ else if(value.endsWith(NET_ID)) {
+ networkRole = (Object) value.substring(0, value.length() - NET_ID.length());
+ }
+ else if(value.endsWith(NET_FQDN)) {
+ networkRole = (Object) value.substring(0, value.length() - NET_FQDN.length());
+ }
+ return networkRole;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/VolumeTranslationHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/VolumeTranslationHelper.java
index ebd38c89d2..5f4e40a4b2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/VolumeTranslationHelper.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/VolumeTranslationHelper.java
@@ -20,20 +20,23 @@
package org.openecomp.sdc.translator.services.heattotosca.helper;
+import static org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE;
+
import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.api.Logger;
import org.openecomp.core.utilities.yaml.YamlUtil;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Output;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.ResourceFileDataAndIDs;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationBase;
-import org.slf4j.Logger;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationBase;
import java.util.ArrayList;
import java.util.List;
@@ -45,6 +48,7 @@ import java.util.stream.Collectors;
public class VolumeTranslationHelper {
private final Logger logger;
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
public VolumeTranslationHelper(Logger logger) {
this.logger = logger;
@@ -63,22 +67,34 @@ public class VolumeTranslationHelper {
String resourceId,
TranslateTo translateTo,
FileData.Type... types) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (CollectionUtils.isEmpty(filesToSearch)) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.empty();
}
- List<FileData> fileDatas = Objects.isNull(types) ? filesToSearch
- : HeatToToscaUtil.getFilteredListOfFileDataByTypes(filesToSearch, types);
+ List<FileData> fileDatas = Objects.isNull(types) ? filesToSearch : HeatToToscaUtil
+ .getFilteredListOfFileDataByTypes(filesToSearch, types);
Optional<ResourceFileDataAndIDs> fileDataAndIDs =
getResourceFileDataAndIDsForVolumeConnection(resourceId, translateTo, fileDatas);
if (fileDataAndIDs.isPresent()) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return fileDataAndIDs;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.empty();
}
private Optional<ResourceFileDataAndIDs> getResourceFileDataAndIDsForVolumeConnection(
String resourceId, TranslateTo translateTo, List<FileData> fileDatas) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
for (FileData data : fileDatas) {
HeatOrchestrationTemplate heatOrchestrationTemplate = new YamlUtil()
.yamlToObject(translateTo.getContext().getFiles().getFileContent(data.getFile()),
@@ -108,13 +124,15 @@ public class VolumeTranslationHelper {
} else {
logger.warn(
"output: '" + resourceId + "' in file '" + data.getFile() + "' is not of type '"
- + HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource() + "'");
+ + CINDER_VOLUME_RESOURCE_TYPE.getHeatResource() + "'");
}
}
} else {
logger.warn("output: '" + resourceId + "' in file '" + data.getFile() + "' is not found");
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.empty();
}
@@ -122,14 +140,16 @@ public class VolumeTranslationHelper {
HeatOrchestrationTemplate heatOrchestrationTemplate,
String translatedId) {
return getResourceByTranslatedResourceId(data.getFile(), heatOrchestrationTemplate,
- translatedId, translateTo,
- HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource())
- .isPresent();
+ translatedId, translateTo, CINDER_VOLUME_RESOURCE_TYPE.getHeatResource()).isPresent();
}
private Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(
String fileName, HeatOrchestrationTemplate heatOrchestrationTemplate,
String translatedResourceId, TranslateTo translateTo, String heatResourceType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
List<Map.Entry<String, Resource>> list = heatOrchestrationTemplate.getResources().entrySet()
.stream()
.filter(
@@ -139,8 +159,10 @@ public class VolumeTranslationHelper {
.allMatch(p -> p.test(entry)))
.collect(Collectors.toList());
if (CollectionUtils.isEmpty(list)) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
return Optional.empty();
} else {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
return Optional.of(list);
}
}
@@ -165,7 +187,7 @@ public class VolumeTranslationHelper {
return true;
} else {
logger.warn("output: '" + resourceId + "' in file '" + data.getFile()
- + "' is not defined as get_resource and therefor not supported.");
+ + "' is not defined as get_resource and therefore not supported as shared resource.");
return false;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImpl.java
index 9bd3494698..3867dadaeb 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImpl.java
@@ -17,79 +17,3 @@
* limitations under the License.
* ============LICENSE_END=========================================================
*/
-
-package org.openecomp.sdc.translator.services.heattotosca.helper.impl;
-
-import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.helper.NameExtractorService;
-import org.openecomp.sdc.translator.services.heattotosca.helper.PropertyRegexMatcher;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.regex.Pattern;
-
-public class NameExtractorServiceImpl implements NameExtractorService {
-
- @Override
- public Optional<String> extractNodeTypeNameByPropertiesPriority(
- Map<String, Object> properties,List<PropertyRegexMatcher> propertiesRegexMatchers) {
- for (PropertyRegexMatcher propertyRegexMatcher : propertiesRegexMatchers) {
- Optional<String> parameterNameValue =
- getPropertyParameterNameValue(properties, propertyRegexMatcher.getPropertyName());
- if (parameterNameValue.isPresent()) {
- if (isPropertyValueMatchNamingConvention(propertyRegexMatcher, parameterNameValue.get())) {
- return Optional.of(parameterNameValue.get().substring(0, parameterNameValue.get()
- .lastIndexOf(propertyRegexMatcher.getStringToSearchForPropertyValue())));
- }
- }
- }
-
- return Optional.empty();
- }
-
- private boolean isPropertyValueMatchNamingConvention(PropertyRegexMatcher propertyRegexMatcher,
- String propertyValue) {
- for (Pattern pattern : propertyRegexMatcher.getRegexPatterns()) {
- if (pattern.matcher(propertyValue).matches()) {
- return true;
- }
- }
- return false;
- }
-
- private Optional<String> getPropertyParameterNameValue(Map<String, Object> properties,
- String prop) {
- Object propObj = properties.get(prop);
- Optional<AttachedResourceId> property = HeatToToscaUtil.extractProperty(propObj);
- if (property.isPresent()) {
- AttachedResourceId extractedProperty = property.get();
- return getParameterName(extractedProperty);
- }
- return Optional.empty();
- }
-
- private Optional<String> getParameterName(AttachedResourceId extractedProperty) {
- if (!extractedProperty.isGetParam()) {
- return Optional.empty();
- }
- Object entityId = extractedProperty.getEntityId();
- if (entityId instanceof String) {
- return Optional.of((String) entityId);
- } else {
- return Optional.of((String) ((List) entityId).get(0));
- }
- }
-
- @Override
- public PropertyRegexMatcher getPropertyRegexMatcher(String propertyName,
- List<String> regexMatchers,
- String propertyValueSearchTerm) {
- PropertyRegexMatcher propertyRegexMatcher = new PropertyRegexMatcher();
- propertyRegexMatcher.setPropertyName(propertyName);
- propertyRegexMatcher.setRegex(regexMatchers);
- propertyRegexMatcher.setStringToSearchForPropertyValue(propertyValueSearchTerm);
- return propertyRegexMatcher;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/BaseResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/BaseResourceConnection.java
deleted file mode 100644
index d901ae9c98..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/BaseResourceConnection.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.apache.commons.collections4.MapUtils;
-import org.openecomp.core.utilities.yaml.YamlUtil;
-import org.openecomp.sdc.common.errors.CoreException;
-import org.openecomp.sdc.common.errors.ErrorCategory;
-import org.openecomp.sdc.common.errors.ErrorCode;
-import org.openecomp.sdc.heat.datatypes.manifest.FileData;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.services.heattotosca.errors.TranslatorErrorCodes;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.function.Predicate;
-
-abstract class BaseResourceConnection<T> {
- protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationCinderVolumeAttachmentImpl.class);
- protected TranslateTo translateTo;
- FileData nestedFileData;
- NodeTemplate substitutionNodeTemplate;
- NodeType nodeType;
- ResourceTranslationBase resourceTranslationBase;
-
- BaseResourceConnection(ResourceTranslationBase resourceTranslationBase, TranslateTo translateTo,
- FileData nestedFileData, NodeTemplate substitutionNodeTemplate,
- NodeType nodeType) {
- this.translateTo = translateTo;
- this.nestedFileData = nestedFileData;
- this.substitutionNodeTemplate = substitutionNodeTemplate;
- this.nodeType = nodeType;
- this.resourceTranslationBase = resourceTranslationBase;
- }
-
- abstract boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate);
-
- abstract List<Predicate<T>> getPredicatesListForConnectionPoints();
-
- abstract Optional<List<String>> getConnectorParamName(String heatResourceId,
- Resource heatResource,
- HeatOrchestrationTemplate
- nestedHeatOrchestrationTemplate);
-
- abstract String getDesiredResourceType();
-
- abstract String getTranslatedResourceIdFromSubstitutionMapping(
- ServiceTemplate nestedServiceTemplate, Map.Entry<String, T> entry);
-
- abstract void addRequirementToConnectResources(Map.Entry<String, T> entry,
- List<String> paramNames);
-
- abstract List<Map<String, T>> getAllConnectionPoints();
-
- void connect() {
- ServiceTemplate nestedServiceTemplate = translateTo.getContext().getTranslatedServiceTemplates()
- .get(translateTo.getResource().getType());
- List<String> paramNames = null;
- HeatOrchestrationTemplate nestedHeatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(translateTo.getContext().getFileContent(nestedFileData.getFile()),
- HeatOrchestrationTemplate.class);
- List<Map<String, T>> exposedConnectionPoints = getAllConnectionPoints();
- for (Map<String, T> connectionPointsMap : exposedConnectionPoints) {
- for (Map.Entry<String, T> entry : connectionPointsMap.entrySet()) {
- String translatedResourceId =
- getTranslatedResourceIdFromSubstitutionMapping(nestedServiceTemplate, entry);
- NodeTemplate nodeTemplate = nestedServiceTemplate.getTopology_template().getNode_templates()
- .get(translatedResourceId);
- if (!isDesiredNodeTemplateType(nodeTemplate)) {
- continue;
- }
- paramNames = createResourcesConnection(translatedResourceId, paramNames,
- nestedHeatOrchestrationTemplate, entry);
- }
- }
- }
-
- private List<String> createResourcesConnection(String translatedResourceId,
- List<String> paramNames,
- HeatOrchestrationTemplate
- nestedHeatOrchestrationTemplate,
- Map.Entry<String, T> entry) {
- List<String> params = paramNames;
- Optional<List<Map.Entry<String, Resource>>> heatResources =
- getResourceByTranslatedResourceId(translatedResourceId, nestedHeatOrchestrationTemplate);
- if (heatResources.isPresent()) {
- params =
- addRequirementAndGetConnectorParamsFromResourceProperties(nestedHeatOrchestrationTemplate,
- entry, params, heatResources.get());
- }
- return params;
- }
-
- private List<String> addRequirementAndGetConnectorParamsFromResourceProperties(
- HeatOrchestrationTemplate nestedHeatOrchestrationTemplate, Map.Entry<String, T> entry,
- List<String> params, List<Map.Entry<String, Resource>> heatResources) {
- Resource heatResource;
- for (Map.Entry<String, Resource> resourceEntry : heatResources) {
- heatResource = resourceEntry.getValue();
- if (!MapUtils.isEmpty(heatResource.getProperties())) {
- Optional<List<String>> connectorParamName =
- getConnectorParamName(resourceEntry.getKey(), heatResource,
- nestedHeatOrchestrationTemplate);
- if (!connectorParamName.isPresent()) {
- break;
- } else {
- params = connectorParamName.get();
- }
- }
- Objects.requireNonNull(params);
- addRequirementToConnectResources(entry, params);
- }
- return params;
- }
-
- protected Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(
- String translatedResourceId, HeatOrchestrationTemplate nestedHeatOrchestrationTemplate) {
- Optional<List<Map.Entry<String, Resource>>> resourceByTranslatedResourceId =
- resourceTranslationBase.getResourceByTranslatedResourceId(nestedFileData.getFile(),
- nestedHeatOrchestrationTemplate, translatedResourceId, translateTo,
- getDesiredResourceType());
- if (!resourceByTranslatedResourceId.isPresent()) {
- throw new CoreException((new ErrorCode.ErrorCodeBuilder()).withMessage(
- "Failed to get original resource from heat for translate resource id '"
- + translatedResourceId + "'")
- .withId(TranslatorErrorCodes.HEAT_TO_TOSCA_MAPPING_COLLISION)
- .withCategory(ErrorCategory.APPLICATION).build());
- }
- return resourceByTranslatedResourceId;
- }
-
- void createRequirementAssignment(Map.Entry<String, RequirementDefinition> entry, String node,
- NodeTemplate nodeTemplate) {
- if (Objects.nonNull(node)) {
- RequirementAssignment requirementAssignment;
- requirementAssignment = new RequirementAssignment();
- requirementAssignment.setRelationship(entry.getValue().getRelationship());
- requirementAssignment.setCapability(entry.getValue().getCapability());
- requirementAssignment.setNode(node);
- DataModelUtil.addRequirementAssignment(nodeTemplate, entry.getKey(), requirementAssignment);
- }
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaAndPortResourceConnectionHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaAndPortResourceConnectionHelper.java
deleted file mode 100644
index bc60a24223..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaAndPortResourceConnectionHelper.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.openecomp.sdc.heat.datatypes.manifest.FileData;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.function.Predicate;
-
-public class NovaAndPortResourceConnectionHelper
- extends BaseResourceConnection<RequirementDefinition> {
- public NovaAndPortResourceConnectionHelper(ResourceTranslationBase resourceTranslationBase,
- TranslateTo translateTo, FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate,
- NodeType nodeType) {
- super(resourceTranslationBase, translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
- }
-
- @Override
- boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
- return false;
- }
-
- @Override
- List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
- return null;
- }
-
- @Override
- Optional<List<String>> getConnectorParamName(String heatResourceId,
- Resource heatResource,
- HeatOrchestrationTemplate
- nestedHeatOrchestrationTemplate) {
- return null;
- }
-
- @Override
- String getDesiredResourceType() {
- return null;
- }
-
- @Override
- String getTranslatedResourceIdFromSubstitutionMapping(
- ServiceTemplate nestedServiceTemplate,Map.Entry<String,
- RequirementDefinition> entry) {
- return null;
- }
-
- @Override
- void addRequirementToConnectResources(Map.Entry<String, RequirementDefinition> entry,
- List<String> paramNames) {
-
- }
-
- @Override
- List<Map<String, RequirementDefinition>> getAllConnectionPoints() {
- List<Map<String, RequirementDefinition>> exposedRequirementsList = new ArrayList<>();
- List<Predicate<RequirementDefinition>> predicates = getPredicatesListForConnectionPoints();
- List<Map<String, RequirementDefinition>> requirements = this.nodeType.getRequirements();
- if (requirements == null) {
- return exposedRequirementsList;
- }
- requirements.stream()
- .map(Map::entrySet)
- .forEach(x -> x.stream()
- .filter(entry -> predicates
- .stream()
- .anyMatch(p -> p.test(entry.getValue())))
- .forEach(entry -> {
- Map<String, RequirementDefinition> exposedRequirementsMap = new HashMap<>();
- exposedRequirementsMap.put(entry.getKey(), entry.getValue());
- exposedRequirementsList.add(exposedRequirementsMap);
- }));
-
- return exposedRequirementsList;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnection.java
deleted file mode 100644
index 8adfca305e..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnection.java
+++ /dev/null
@@ -1,200 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.openecomp.sdc.heat.datatypes.manifest.FileData;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.function.Predicate;
-
-public class PortToNetResourceConnection extends NovaAndPortResourceConnectionHelper {
-
- public PortToNetResourceConnection(ResourceTranslationBase resourceTranslationBase,
- TranslateTo translateTo, FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate, NodeType nodeType) {
- super(resourceTranslationBase, translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
- }
-
- @Override
- protected boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
- return nodeTemplate.getType().equals(ToscaNodeType.NEUTRON_PORT.getDisplayName());
- }
-
- @Override
- protected List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
- ArrayList<Predicate<RequirementDefinition>> predicates = new ArrayList<>();
- predicates.add(
- req -> req.getCapability().equals(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName())
- && req.getNode().equals(ToscaNodeType.ROOT.getDisplayName())
- && req.getRelationship().equals(
- ToscaRelationshipType.NETWORK_LINK_TO.getDisplayName()));
- return predicates;
- }
-
- @Override
- protected Optional<List<String>> getConnectorParamName(String heatResourceId,
- Resource heatResource,
- HeatOrchestrationTemplate
- nestedHeatOrchestrationTemplate) {
- Optional<AttachedResourceId> network = HeatToToscaUtil
- .extractAttachedResourceId(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
- translateTo.getContext(), heatResource.getProperties().get("network"));
- if (network.isPresent() && network.get().isGetParam()) {
- return Optional.of(Collections.singletonList((String) network.get().getEntityId()));
- } else {
- network = HeatToToscaUtil
- .extractAttachedResourceId(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
- translateTo.getContext(), heatResource.getProperties().get("network_id"));
- if (network.isPresent() && network.get().isGetParam()) {
- return Optional.of(Collections.singletonList((String) network.get().getEntityId()));
- } else {
- return Optional.empty();
- }
- }
- }
-
- @Override
- protected String getDesiredResourceType() {
- return HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource();
- }
-
- @Override
- protected String getTranslatedResourceIdFromSubstitutionMapping(
- ServiceTemplate nestedServiceTemplate, Map.Entry<String, RequirementDefinition> entry) {
- List<String> substitutionMapping =
- nestedServiceTemplate.getTopology_template().getSubstitution_mappings().getRequirements()
- .get(entry.getKey());
- return substitutionMapping.get(0);
- }
-
- @Override
- protected void addRequirementToConnectResources(Map.Entry<String, RequirementDefinition> entry,
- List<String> paramNames) {
- String paramName = paramNames.get(
- 0); // port can connect to one network only and
- // we are expecting to have only one param(unlike security rules to port)
- Object paramValue = translateTo.getResource().getProperties().get(paramName);
- if (paramValue == null) {
- logger.warn(
- "Nested resource '" + translateTo.getResourceId() + "' is not including property '"
- + paramName + "' with value for the nested heat file, therefore, '" + entry.getKey()
- + "' TOSCA requirement will not be connected.");
- return;
- }
- List<String> supportedNetworkTypes =
- Arrays.asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
- HeatResourcesTypes.CONTRAIL_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource(),
- HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource());
-
- Optional<String> targetTranslatedNodeId =
- getConnectionTargetNodeUsingGetResourceFunc(entry, paramName, paramValue,
- supportedNetworkTypes);
- if (targetTranslatedNodeId.isPresent()) {
- createRequirementAssignment(entry, targetTranslatedNodeId.get(), substitutionNodeTemplate);
- } else {
- targetTranslatedNodeId =
- getConnectionTargetNodeUsingGetParam(entry, paramName, supportedNetworkTypes);
- if (targetTranslatedNodeId.isPresent()) {
- createRequirementAssignment(entry, targetTranslatedNodeId.get(), substitutionNodeTemplate);
- }
- }
- }
-
- private boolean validateResourceTypeSupportedForReqCreation(String sourceResourceId,
- final String sourcePropertyName,
- String sourceReqId,
- Resource targetResource,
- List<String> supportedTypes) {
- if (!resourceTranslationBase.isResourceTypeSupported(targetResource, supportedTypes)) {
- logger.warn("Nested resource '" + sourceResourceId + "' property '" + sourcePropertyName
- + "' is pointing to a resource with type '" + targetResource.getType()
- + "' which is not supported for requirement '" + sourceReqId
- + "' that connect port to network. \nSupported types are: '" + supportedTypes.toString()
- + "', therefore, this TOSCA requirement will not be connected.");
- return false;
- }
- return true;
- }
-
- private Optional<String> getConnectionTargetNodeUsingGetParam(
- Map.Entry<String, RequirementDefinition> requirementDefinitionEntry, String paramName,
- List<String> supportedTargetNodeTypes) {
- Optional<AttachedResourceId> attachedResourceId =
- HeatToToscaUtil.extractAttachedResourceId(translateTo, paramName);
- if (!attachedResourceId.isPresent()) {
- return Optional.empty();
- }
- AttachedResourceId resourceId = attachedResourceId.get();
- if (resourceId.isGetParam()) {
- TranslatedHeatResource shareResource =
- translateTo.getContext().getHeatSharedResourcesByParam().get(resourceId.getEntityId());
- if (Objects.nonNull(shareResource)
- && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
- if (validateResourceTypeSupportedForReqCreation(translateTo.getResourceId(), paramName,
- requirementDefinitionEntry.getKey(), shareResource.getHeatResource(),
- supportedTargetNodeTypes)) {
- return Optional.of(shareResource.getTranslatedId());
- }
- }
- }
-
- return Optional.empty();
- }
-
- private Optional<String> getConnectionTargetNodeUsingGetResourceFunc(
- Map.Entry<String, RequirementDefinition> requirementDefinitionEntry, String paramName,
- Object paramValue, List<String> supportedTargetNodeTypes) {
- String getResourceAttachedResourceId =
- HeatToToscaUtil.extractContrailGetResourceAttachedHeatResourceId(paramValue);
- if (getResourceAttachedResourceId != null) { // get resource
- Resource resource = translateTo.getHeatOrchestrationTemplate().getResources()
- .get(getResourceAttachedResourceId);
- if (validateResourceTypeSupportedForReqCreation(translateTo.getResourceId(), paramName,
- requirementDefinitionEntry.getKey(), resource, supportedTargetNodeTypes)) {
- return ResourceTranslationBase.getResourceTranslatedId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), getResourceAttachedResourceId,
- translateTo.getContext());
- }
- }
-
- return Optional.empty();
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationBase.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationBase.java
deleted file mode 100644
index 45e3830f6f..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationBase.java
+++ /dev/null
@@ -1,456 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.collections4.MapUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.openecomp.core.utilities.yaml.YamlUtil;
-import org.openecomp.sdc.common.errors.CoreException;
-import org.openecomp.sdc.heat.datatypes.manifest.FileData;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.Output;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.ArtifactDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Import;
-import org.openecomp.sdc.tosca.datatypes.model.InterfaceDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.tosca.services.ToscaNativeTypesServiceTemplate;
-import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.ResourceFileDataAndIDs;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslation;
-import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationService;
-import org.openecomp.sdc.translator.services.heattotosca.errors.ResourceNotFoundInHeatFileErrorBuilder;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.function.Predicate;
-import java.util.stream.Collectors;
-
-public abstract class ResourceTranslationBase implements ResourceTranslation {
-
- protected static Logger logger = LoggerFactory.getLogger(ResourceTranslationBase.class);
-
- static Optional<ResourceFileDataAndIDs> getFileDataContainingResource(
- List<FileData> filesToSearch, String resourceId, TranslationContext context,
- FileData.Type... types) {
- if (CollectionUtils.isEmpty(filesToSearch)) {
- return Optional.empty();
- }
-
- List<FileData> fileDatas = Objects.isNull(types) ? filesToSearch
- : HeatToToscaUtil.getFilteredListOfFileDataByTypes(filesToSearch, types);
- for (FileData data : fileDatas) {
- HeatOrchestrationTemplate heatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(context.getFiles().getFileContent(data.getFile()),
- HeatOrchestrationTemplate.class);
- Map<String, Output> outputs = heatOrchestrationTemplate.getOutputs();
- if (Objects.isNull(outputs)) {
- continue;
- }
- Output output = outputs.get(resourceId);
- if (Objects.nonNull(output)) {
- Optional<AttachedResourceId> attachedOutputId = HeatToToscaUtil
- .extractAttachedResourceId(data.getFile(), heatOrchestrationTemplate, context,
- output.getValue());
- if (attachedOutputId.isPresent()) {
- AttachedResourceId attachedResourceId = attachedOutputId.get();
- if (!attachedResourceId.isGetResource()) {
- logger.warn("output: '" + resourceId + "' in file '" + data.getFile()
- + "' is not defined as get_resource and therefor not supported.");
- continue;
- }
- ResourceFileDataAndIDs fileDataAndIDs =
- new ResourceFileDataAndIDs((String) attachedResourceId.getEntityId(),
- (String) attachedResourceId.getTranslatedId(),
- data);
- return Optional.of(fileDataAndIDs);
- }
- }
- }
- return Optional.empty();
- }
-
- /**
- * Gets resource translated id.
- *
- * @param heatFileName the heat file name
- * @param heatOrchestrationTemplate the heat orchestration template
- * @param resourceId the resource id
- * @param context the context
- * @return the resource translated id
- */
- public static Optional<String> getResourceTranslatedId(String heatFileName,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- String resourceId,
- TranslationContext context) {
- if (!context.getTranslatedIds().containsKey(heatFileName)) {
- context.getTranslatedIds().put(heatFileName, new HashMap<>());
- }
-
- Map<String, String> translatedIdsPerFile = context.getTranslatedIds().get(heatFileName);
- String translatedId = translatedIdsPerFile.get(resourceId);
- if (translatedId != null) {
- return Optional.of(translatedId);
- }
-
- Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
- if (resource == null) {
- throw new CoreException(
- new ResourceNotFoundInHeatFileErrorBuilder(resourceId, heatFileName).build());
- }
- TranslateTo translateTo =
- generateTranslationTo(heatFileName, null, heatOrchestrationTemplate, resource, resourceId,
- null, context);
- translatedId =
- ResourceTranslationFactory.getInstance(resource).generateTranslatedId(translateTo);
- if (translatedId != null) {
- context.getTranslatedIds().get(heatFileName).put(resourceId, translatedId);
- }
- return Optional.ofNullable(translatedId);
- }
-
- private static TranslateTo generateTranslationTo(String heatFileName,
- ServiceTemplate serviceTemplate,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- Resource resource, String resourceId,
- String translatedId,
- TranslationContext context) {
- TranslateTo to = new TranslateTo();
- to.setHeatFileName(heatFileName);
- to.setServiceTemplate(serviceTemplate);
- to.setHeatOrchestrationTemplate(heatOrchestrationTemplate);
- to.setResource(resource);
- to.setResourceId(resourceId);
- to.setTranslatedId(translatedId);
- to.setContext(context);
- return to;
- }
-
- protected abstract void translate(TranslateTo translateTo);
-
- protected String generateTranslatedId(TranslateTo translateTo) {
- isEssentialRequirementsValid(translateTo);
- return translateTo.getResourceId();
- }
-
- protected boolean isEssentialRequirementsValid(TranslateTo translateTo) {
- return true;
- }
-
- @Override
- public Optional<String> translateResource(String heatFileName, ServiceTemplate serviceTemplate,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- Resource resource, String resourceId,
- TranslationContext context) {
- Optional<String> translatedId =
- getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, resourceId, context);
- context.getTranslatedResources().putIfAbsent(heatFileName, new HashSet<>());
- if (context.getTranslatedResources().get(heatFileName).contains(resourceId)) {
- return translatedId;
- }
- if (!translatedId.isPresent()) {
- return Optional.empty();
- }
- logger.debug("Translate- file:" + heatFileName + " resource Id:" + resourceId
- + " translated resource id:" + translatedId.get());
- translate(new TranslateTo(heatFileName, serviceTemplate, heatOrchestrationTemplate, resource,
- resourceId, translatedId.get(), context));
- context.getTranslatedResources().get(heatFileName).add(resourceId);
-
- if (isNodeTemplate(translatedId.get(), serviceTemplate)) {
- if (!context.getHeatStackGroupMembers().containsKey(heatFileName)) {
- context.getHeatStackGroupMembers().put(heatFileName, new HashSet<>());
- }
- context.getHeatStackGroupMembers().get(heatFileName).add(translatedId.get());
- updateResourceDependency(heatFileName, resource, heatOrchestrationTemplate,
- translatedId.get(), serviceTemplate, context);
- }
-
- return translatedId;
- }
-
- private void updateResourceDependency(String heatFileName, Resource resource,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- String translatedId, ServiceTemplate serviceTemplate,
- TranslationContext context) {
- if (resource.getDepends_on() == null) {
- return;
- }
-
- if (resource.getDepends_on() instanceof List) {
- List<String> dependsOnList = (List<String>) resource.getDepends_on();
- for (String dependsOnResourceId : dependsOnList) {
- addDependOnRequirement(dependsOnResourceId, translatedId, serviceTemplate, heatFileName,
- heatOrchestrationTemplate, context);
- }
- } else {
- String dependsOnResourceId = (String) resource.getDepends_on();
- addDependOnRequirement(dependsOnResourceId, translatedId, serviceTemplate, heatFileName,
- heatOrchestrationTemplate, context);
- }
-
- }
-
- private void addDependOnRequirement(String dependsOnResourceId, String nodeTemplateId,
- ServiceTemplate serviceTemplate, String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- TranslationContext context) {
- RequirementAssignment requirementAssignment = new RequirementAssignment();
- Optional<String> resourceTranslatedId =
- getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, dependsOnResourceId,
- context);
-
- if (resourceTranslatedId.isPresent()
- && isNodeTemplate(resourceTranslatedId.get(), serviceTemplate)) {
- requirementAssignment.setNode(resourceTranslatedId.get());
- requirementAssignment.setCapability(ToscaCapabilityType.NODE.getDisplayName());
- requirementAssignment.setRelationship(ToscaRelationshipType.DEPENDS_ON.getDisplayName());
- DataModelUtil.addRequirementAssignment(
- serviceTemplate.getTopology_template().getNode_templates().get(nodeTemplateId),
- ToscaConstants.DEPENDS_ON_REQUIREMENT_ID, requirementAssignment);
- }
- }
-
- private boolean isNodeTemplate(String entryId, ServiceTemplate serviceTemplate) {
- return serviceTemplate.getTopology_template().getNode_templates() != null
- && serviceTemplate.getTopology_template().getNode_templates().get(entryId) != null;
- }
-
- FileData getFileData(String fileName, TranslationContext context) {
-
- List<FileData> fileDataList = context.getManifest().getContent().getData();
- for (FileData fileData : fileDataList) {
- if (TranslationService.getTypesToProcessByTranslator().contains(fileData.getType())
- && fileData.getFile().equals(fileName)) {
- return fileData;
- }
- }
- return null;
- }
-
- NodeType getNodeTypeWithFlatHierarchy(String nodeTypeId, ServiceTemplate serviceTemplate,
- TranslationContext context) {
- NodeType nodeType;
- if (serviceTemplate != null && serviceTemplate.getNode_types() != null) {
- nodeType = serviceTemplate.getNode_types().get(nodeTypeId);
-
- if (nodeType != null) {
- return enrichNodeType(nodeType, serviceTemplate, context);
- }
- }
- Map<String, Map<String, NodeType>> globalNodeTypesMap = new HashMap<>();
- Collection<ServiceTemplate> globalNodeTypes =
- GlobalTypesGenerator.getGlobalTypesServiceTemplate().values();
- ServiceTemplate nativeNodeTypeServiceTemplate =
- ToscaNativeTypesServiceTemplate.createServiceTemplate();
- for (ServiceTemplate globalNodeType : globalNodeTypes) {
- globalNodeTypesMap
- .put(globalNodeType.getMetadata().getTemplate_name(), globalNodeType.getNode_types());
- }
- if (Objects.nonNull(serviceTemplate) && MapUtils.isNotEmpty(serviceTemplate.getImports())) {
- for (Map.Entry<String, Import> entry : serviceTemplate.getImports().entrySet()) {
- if (globalNodeTypesMap.containsKey(entry.getKey())) {
- Map<String, NodeType> nodeTypes = globalNodeTypesMap.get(entry.getKey());
- if (nodeTypes != null && nodeTypes.containsKey(nodeTypeId)) {
- return enrichNodeType(nodeTypes.get(nodeTypeId), serviceTemplate, context);
- }
- }
- if (context.getGlobalSubstitutionServiceTemplate() != null
- && context.getGlobalSubstitutionServiceTemplate().getNode_types() != null
- && context.getGlobalSubstitutionServiceTemplate().getNode_types()
- .containsKey(nodeTypeId)) {
- return enrichNodeType(
- context.getGlobalSubstitutionServiceTemplate().getNode_types().get(nodeTypeId),
- serviceTemplate, context);
- }
- if (nativeNodeTypeServiceTemplate.getNode_types().containsKey(nodeTypeId)) {
- return enrichNodeType(nativeNodeTypeServiceTemplate.getNode_types().get(nodeTypeId),
- serviceTemplate, context);
- }
- }
- }
- return new NodeType();
-
- }
-
- private NodeType enrichNodeType(NodeType nodeType, ServiceTemplate serviceTemplate,
- TranslationContext context) {
- NodeType clonedNodeType;
-
- if (StringUtils.isEmpty(nodeType.getDerived_from())) {
- return nodeType.clone();
- }
-
- clonedNodeType = enrichNodeType(
- getNodeTypeWithFlatHierarchy(nodeType.getDerived_from(), serviceTemplate, context),
- serviceTemplate, context);
- mergeNodeTypes(clonedNodeType, nodeType);
- return clonedNodeType;
-
- }
-
- private void mergeNodeTypes(NodeType target, NodeType source) {
- target.setDerived_from(source.getDerived_from());
- target.setDescription(source.getDescription());
- target.setVersion(source.getVersion());
- target.setProperties(
- mergeMaps(target.getProperties(), source.getProperties(), PropertyDefinition.class));
- target.setInterfaces(
- mergeMaps(target.getInterfaces(), source.getInterfaces(), InterfaceDefinition.class));
- target.setArtifacts(
- mergeMaps(target.getArtifacts(), source.getArtifacts(), ArtifactDefinition.class));
- target.setAttributes(
- mergeMaps(target.getAttributes(), source.getAttributes(), AttributeDefinition.class));
- target.setCapabilities(
- mergeMaps(target.getCapabilities(), source.getCapabilities(), CapabilityDefinition.class));
- target.setRequirements(mergeLists(target.getRequirements(), source.getRequirements(),
- RequirementDefinition.class));
- }
-
- private <T, S> List<Map<T, S>> mergeLists(List<Map<T, S>> target, List<Map<T, S>> source,
- Class<S> value) {
- List<Map<T, S>> retList = new ArrayList<>();
- if (Objects.nonNull(target)) {
- retList.addAll(target);
- }
-
- if (Objects.nonNull(source)) {
- for (Map<T, S> sourceMap : source) {
- for (Map.Entry<T, S> entry : sourceMap.entrySet()) {
- mergeEntryInList(entry.getKey(), entry.getValue(), retList);
- }
- }
- }
- return retList;
- }
-
- <T, S> void mergeEntryInList(T key, S value, List<Map<T, S>> target) {
- boolean found = false;
- for (Map<T, S> map : target) {
- if (map.containsKey(key)) {
- map.put(key, value);
- found = true;
- }
- }
-
- if (!found) {
- Map<T, S> newMap = new HashMap<>();
- newMap.put(key, value);
- target.add(newMap);
- }
- }
-
-
- private <T, S> Map<T, S> mergeMaps(Map<T, S> target, Map<T, S> source, Class<S> value) {
- Map<T, S> retMap = new HashMap<>();
- if (MapUtils.isNotEmpty(target)) {
- retMap.putAll(target);
- }
-
- if (MapUtils.isNotEmpty(source)) {
- retMap.putAll(source);
- }
- return retMap;
- }
-
- Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(
- String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- String translatedResourceId,TranslateTo translateTo,String heatResourceType) {
- List<Map.Entry<String, Resource>> list = heatOrchestrationTemplate.getResources().entrySet()
- .stream()
- .filter(
- entry -> getPredicatesForTranslatedIdToResourceId(fileName, heatOrchestrationTemplate,
- translatedResourceId, translateTo.getContext(), heatResourceType)
- .stream()
- .allMatch(p -> p.test(entry)))
- .collect(Collectors.toList());
- if (CollectionUtils.isEmpty(list)) {
- return Optional.empty();
- } else {
- return Optional.of(list);
- }
- }
-
- private List<Predicate<Map.Entry<String, Resource>>> getPredicatesForTranslatedIdToResourceId(
- String fileName, HeatOrchestrationTemplate heatOrchestrationTemplate,
- String translatedResourceId, TranslationContext context, String heatResourceType) {
- List<Predicate<Map.Entry<String, Resource>>> list = new ArrayList<>();
- list.add(entry ->
- entry.getValue().getType().equals(heatResourceType));
- list.add(entry -> {
- Optional<String> resourceTranslatedId =
- getResourceTranslatedId(fileName, heatOrchestrationTemplate, entry.getKey(), context);
- return resourceTranslatedId.isPresent()
- && resourceTranslatedId.get().equals(translatedResourceId);
- });
- return list;
- }
-
- void addBindingReqFromPortToCompute(String computeNodeTemplateId, NodeTemplate portNodeTemplate) {
- RequirementAssignment requirementAssignment = new RequirementAssignment();
- requirementAssignment.setCapability(ToscaCapabilityType.NETWORK_BINDABLE.getDisplayName());
- requirementAssignment.setRelationship(ToscaRelationshipType.NETWORK_BINDS_TO.getDisplayName());
- requirementAssignment.setNode(computeNodeTemplateId);
- DataModelUtil.addRequirementAssignment(portNodeTemplate, ToscaConstants.BINDING_REQUIREMENT_ID,
- requirementAssignment);
- }
-
- void addLinkReqFromPortToNetwork(NodeTemplate nodeTemplate, String translatedId) {
- RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName());
- requirement.setRelationship(ToscaRelationshipType.NETWORK_LINK_TO.getDisplayName());
- requirement.setNode(translatedId);
- DataModelUtil
- .addRequirementAssignment(nodeTemplate, ToscaConstants.LINK_REQUIREMENT_ID, requirement);
- }
-
- boolean isResourceTypeSupported(Resource resource, List<String> supportedTypes) {
- return Objects.nonNull(resource) && supportedTypes.contains(resource.getType());
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VmInterfaceImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VmInterfaceImpl.java
deleted file mode 100644
index 14403df002..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VmInterfaceImpl.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-import java.util.Optional;
-
-
-public class ResourceTranslationContrailV2VmInterfaceImpl extends ResourceTranslationBase {
- protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationContrailV2VmInterfaceImpl.class);
-
- @Override
- protected void translate(TranslateTo translateTo) {
- NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE.getDisplayName());
-
- nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
- nodeTemplate.getProperties(), translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
- nodeTemplate, translateTo.getContext()));
- handleNetworkRequirement(translateTo, nodeTemplate);
- Optional<String> resourceTranslatedId = getResourceTranslatedId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), translateTo.getResourceId(),
- translateTo.getContext());
- if (resourceTranslatedId.isPresent()) {
- DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), resourceTranslatedId.get(),
- nodeTemplate);
- }
- }
-
- private void handleNetworkRequirement(TranslateTo translateTo, NodeTemplate nodeTemplate) {
- Object virtualNetworkRefs =
- translateTo.getResource().getProperties().get("virtual_network_refs");
- if (Objects.isNull(virtualNetworkRefs) || !(virtualNetworkRefs instanceof List)
- || ((List) virtualNetworkRefs).size() == 0) {
- return;
- }
- List<String> acceptableResourceTypes = Arrays
- .asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
- HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource());
- List virtualNetworkRefList = (List) virtualNetworkRefs;
- if (virtualNetworkRefList.size() > 1) {
- logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
- + translateTo.getResource().getType()
- + "' include 'virtual_network_refs' property with more than one network values,"
- + " only the first network will be translated, "
- + "all rest will be ignored in TOSCA translation.");
- }
- Object virtualNetworkRef = virtualNetworkRefList.get(0);
- String networkResourceId =
- HeatToToscaUtil.extractContrailGetResourceAttachedHeatResourceId(virtualNetworkRef);
- if (Objects.nonNull(networkResourceId)) { // get_resource
- Resource networkResource = HeatToToscaUtil
- .getResource(translateTo.getHeatOrchestrationTemplate(), networkResourceId,
- translateTo.getHeatFileName());
- if (acceptableResourceTypes.contains(networkResource.getType())) {
- Optional<String> resourceTranslatedId =
- getResourceTranslatedId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), networkResourceId,
- translateTo.getContext());
- if (resourceTranslatedId.isPresent()) {
- addLinkReqFromPortToNetwork(nodeTemplate, resourceTranslatedId.get());
- }
- } else {
- logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
- + translateTo.getResource().getType()
- + "' include 'virtual_network_refs' property which is connect"
- + " to unsupported/incorrect resource with type '"
- + networkResource.getType()
- + "', therefore, this connection will be ignored in TOSCA translation.");
- }
- } else {
- Optional<AttachedResourceId> attachedResourceId = HeatToToscaUtil
- .extractAttachedResourceId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), translateTo.getContext(),
- virtualNetworkRef);
- if (attachedResourceId.isPresent() && attachedResourceId.get().isGetParam()) {
- TranslatedHeatResource translatedSharedResourceId =
- translateTo.getContext().getHeatSharedResourcesByParam()
- .get(attachedResourceId.get().getEntityId());
- if (Objects.nonNull(translatedSharedResourceId)
- && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
- addLinkReqFromPortToNetwork(nodeTemplate, translatedSharedResourceId.getTranslatedId());
- }
- }
- }
-
-
- }
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNestedImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNestedImpl.java
deleted file mode 100644
index 2573b6849d..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNestedImpl.java
+++ /dev/null
@@ -1,781 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.apache.commons.collections4.CollectionUtils;
-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.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.heat.services.HeatConstants;
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Metadata;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.SubstitutionMapping;
-import org.openecomp.sdc.tosca.datatypes.model.Template;
-import org.openecomp.sdc.tosca.datatypes.model.TopologyTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.tosca.services.ToscaUtil;
-import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.ResourceFileDataAndIDs;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationService;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesUtil;
-import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-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 ResourceTranslationNestedImpl extends ResourceTranslationBase {
-
- protected static Logger logger = LoggerFactory.getLogger(ResourceTranslationNestedImpl.class);
-
- @Override
- public void translate(TranslateTo translateTo) {
- FileData nestedFileData =
- getFileData(translateTo.getResource().getType(), translateTo.getContext());
- String templateName = FileUtils.getFileWithoutExtention(translateTo.getResource().getType());
- String substitutionNodeTypeKey = ToscaConstants.NODES_SUBSTITUTION_PREFIX + templateName;
-
- if (!translateTo.getContext().getTranslatedServiceTemplates()
- .containsKey(translateTo.getResource().getType())) {
-
- //substitution template
- ServiceTemplate nestedSubstitutionServiceTemplate = new ServiceTemplate();
- Metadata templateMetadata = new Metadata();
- templateMetadata.setTemplate_name(templateName);
- nestedSubstitutionServiceTemplate.setMetadata(templateMetadata);
- nestedSubstitutionServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- nestedSubstitutionServiceTemplate.setTopology_template(new TopologyTemplate());
- nestedSubstitutionServiceTemplate.setImports(GlobalTypesGenerator.getGlobalTypesImportList());
- nestedSubstitutionServiceTemplate.getImports()
- .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
-
- TranslationService translationService = new TranslationService();
-
- translationService.translateHeatFile(nestedSubstitutionServiceTemplate, nestedFileData,
- translateTo.getContext());
-
- //global substitution template
- ServiceTemplate globalSubstitutionServiceTemplate;
- globalSubstitutionServiceTemplate = translateTo.getContext().getTranslatedServiceTemplates()
- .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
- if (globalSubstitutionServiceTemplate == null) {
- globalSubstitutionServiceTemplate = new ServiceTemplate();
- templateMetadata = new Metadata();
- templateMetadata.setTemplate_name(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
- globalSubstitutionServiceTemplate.setMetadata(templateMetadata);
- globalSubstitutionServiceTemplate
- .setImports(GlobalTypesGenerator.getGlobalTypesImportList());
- globalSubstitutionServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- }
- translateTo.getServiceTemplate().getImports()
- .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
-
-
- //substitution node type
- NodeType substitutionNodeType = new NodeType();
- substitutionNodeType.setDerived_from(ToscaNodeType.ABSTRACT_SUBSTITUTE.getDisplayName());
- substitutionNodeType.setDescription(nestedSubstitutionServiceTemplate.getDescription());
- substitutionNodeType
- .setProperties(manageSubstitutionNodeTypeProperties(nestedSubstitutionServiceTemplate));
- substitutionNodeType
- .setAttributes(manageSubstitutionNodeTypeAttributes(nestedSubstitutionServiceTemplate));
- DataModelUtil.addNodeType(globalSubstitutionServiceTemplate, substitutionNodeTypeKey,
- substitutionNodeType);
- Map<String, Map<String, List<String>>> substitutionMapping =
- manageSubstitutionNodeTypeCapabilitiesAndRequirements(substitutionNodeType,
- nestedSubstitutionServiceTemplate, translateTo);
- //calculate substitution mapping after capability and requirement expose calculation
- nestedSubstitutionServiceTemplate.getTopology_template().setSubstitution_mappings(
- manageSubstitutionTemplateSubstitutionMapping(substitutionNodeTypeKey,
- substitutionNodeType, substitutionMapping));
-
- //add new service template
- translateTo.getContext().getTranslatedServiceTemplates()
- .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
- globalSubstitutionServiceTemplate);
- translateTo.getContext().getTranslatedServiceTemplates()
- .put(translateTo.getResource().getType(), nestedSubstitutionServiceTemplate);
- }
-
- NodeTemplate substitutionNodeTemplate = new NodeTemplate();
- List<String> directiveList = new ArrayList<>();
- directiveList.add(ToscaConstants.NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE);
- substitutionNodeTemplate.setDirectives(directiveList);
- substitutionNodeTemplate.setType(substitutionNodeTypeKey);
- substitutionNodeTemplate.setProperties(
- managerSubstitutionNodeTemplateProperties(translateTo, substitutionNodeTemplate,
- templateName));
- manageSubstitutionNodeTemplateConnectionPoint(translateTo, nestedFileData,
- substitutionNodeTemplate);
- DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
- substitutionNodeTemplate);
- }
-
- private void manageSubstitutionNodeTemplateConnectionPoint(TranslateTo translateTo,
- FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate) {
- ServiceTemplate globalSubstitutionTemplate =
- translateTo.getContext().getTranslatedServiceTemplates()
- .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
- NodeType nodeType = globalSubstitutionTemplate.getNode_types().get(
- ToscaConstants.NODES_SUBSTITUTION_PREFIX
- + FileUtils.getFileWithoutExtention(translateTo.getResource().getType()));
- handlePortToNetConnections(translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
- handleSecurityRulesToPortConnections(translateTo, nestedFileData, substitutionNodeTemplate,
- nodeType);
- handleNovaToVolConnection(translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
- handleContrailV2VmInterfaceToNetworkConnection(translateTo, nestedFileData,
- substitutionNodeTemplate, nodeType);
- }
-
- private void handleContrailV2VmInterfaceToNetworkConnection(TranslateTo translateTo,
- FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate,
- NodeType nodeType) {
- ContrailV2VmInterfaceToNetResourceConnection linker =
- new ContrailV2VmInterfaceToNetResourceConnection(this, translateTo, nestedFileData,
- substitutionNodeTemplate, nodeType);
- linker.connect();
- }
-
- private void handleNovaToVolConnection(TranslateTo translateTo, FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate, NodeType nodeType) {
- NovaToVolResourceConnection linker =
- new NovaToVolResourceConnection(this, translateTo, nestedFileData, substitutionNodeTemplate,
- nodeType);
- linker.connect();
- }
-
- private void handleSecurityRulesToPortConnections(TranslateTo translateTo,
- FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate,
- NodeType nodeType) {
- SecurityRulesToPortResourceConnection linker =
- new SecurityRulesToPortResourceConnection(this, translateTo, nestedFileData,
- substitutionNodeTemplate, nodeType);
- linker.connect();
- }
-
- private void handlePortToNetConnections(TranslateTo translateTo, FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate,
- NodeType nodeType) {
- PortToNetResourceConnection linker =
- new PortToNetResourceConnection(this, translateTo, nestedFileData, substitutionNodeTemplate,
- nodeType);
- linker.connect();
- }
-
- private List<Map<String, RequirementDefinition>> getVolumeRequirements(NodeType nodeType) {
- List<Map<String, RequirementDefinition>> volumeRequirementsList = new ArrayList<>();
- List<Map<String, RequirementDefinition>> requirementsList = nodeType.getRequirements();
-
- for (int i = 0; requirementsList != null && i < requirementsList.size(); i++) {
- RequirementDefinition req;
- for (Map.Entry<String, RequirementDefinition> entry : requirementsList.get(i).entrySet()) {
- req = entry.getValue();
- if (isVolumeRequirement(req, ToscaCapabilityType.ATTACHMENT.getDisplayName(),
- ToscaNodeType.BLOCK_STORAGE.getDisplayName(),
- ToscaRelationshipType.NATIVE_ATTACHES_TO.getDisplayName())) {
- Map<String, RequirementDefinition> volumeRequirementsMap = new HashMap<>();
- volumeRequirementsMap.put(entry.getKey(), entry.getValue());
- volumeRequirementsList.add(volumeRequirementsMap);
- }
-
- }
- }
- return volumeRequirementsList;
- }
-
- private boolean isVolumeRequirement(RequirementDefinition req, String capability, String node,
- String relationship) {
- return req.getCapability().equals(capability) && req.getRelationship().equals(relationship)
- && req.getNode().equals(node);
- }
-
- private String getVolumeIdProperty(HeatOrchestrationTemplate heatOrchestrationTemplate,
- String resourceId) {
-
- String novaResourceId;
- String volumeId = null;
- for (Resource resource : heatOrchestrationTemplate.getResources().values()) {
- if (resource.getType()
- .equals(HeatResourcesTypes.CINDER_VOLUME_ATTACHMENT_RESOURCE_TYPE.getHeatResource())) {
- Optional<String> optNovaResourceId =
- getToscaPropertyValueSource(HeatConstants.INSTANCE_UUID_PROPERTY_NAME, resource,
- "get_resource");
- if (optNovaResourceId.isPresent()) {
- novaResourceId = optNovaResourceId.get();
- if (novaResourceId.equals(resourceId)) {
- Optional<String> optVolumeId =
- getToscaPropertyValueSource(HeatConstants.VOLUME_ID_PROPERTY_NAME, resource,
- "get_param");
- if (optVolumeId.isPresent()) {
- volumeId = optVolumeId.get();
- }
- } else {
- logger.warn("property:" + HeatConstants.VOLUME_ID_PROPERTY_NAME + " of resource type:"
- + resource.getType() + " should contain 'get_param' function");
- }
- }
- }
- }
- return volumeId;
- }
-
- private String getTranslatedVolumeIdByVolumeIdProperty(String volumeId, TranslateTo translateTo) {
- Optional<AttachedResourceId> volumeIdInfo =
- HeatToToscaUtil.extractAttachedResourceId(translateTo, volumeId);
- if (volumeIdInfo.isPresent()) {
- if (volumeIdInfo.get().isGetResource()) {
- return null;//(String) volumeIdInfo.get().getTranslatedId();
- } else if (volumeIdInfo.get().isGetParam()) {
- List<FileData> allFilesData = translateTo.getContext().getManifest().getContent().getData();
- Optional<List<FileData>> fileDataList = HeatToToscaUtil
- .buildListOfFilesToSearch(translateTo.getHeatFileName(), allFilesData,
- FileData.Type.HEAT_VOL);
- if (fileDataList.isPresent()) {
- Optional<ResourceFileDataAndIDs> resourceFileDataAndIDs =
- getFileDataContainingResource(fileDataList.get(),
- (String) volumeIdInfo.get().getEntityId(), translateTo.getContext(),
- FileData.Type.HEAT_VOL);
- if (resourceFileDataAndIDs.isPresent()) {
- return resourceFileDataAndIDs.get().getTranslatedResourceId();
- } else {
- logger.warn("The attached volume based on volume_id property: " + volumeId + " in "
- + translateTo.getResourceId()
- + " can't be found, searching for volume resource id - "
- + volumeIdInfo.get().getEntityId());
- return null;
- }
- } else {
- return null;
- }
- } else {
- logger.warn("property:" + volumeId + " of resource :" + volumeIdInfo.get().getEntityId()
- + " should contain 'get_param' or 'get_resource' function");
- return null;
- }
- } else {
- logger.warn("property:" + volumeId + " of resource :" + translateTo.getResource().toString()
- + " is not exist");
- return null;
- }
- }
-
- private Optional<String> getToscaPropertyValueSource(String propertyName, Resource resource,
- String key) {
- Object propertyInstanceUuIdValue;
- propertyInstanceUuIdValue = resource.getProperties().get(propertyName);
- if (propertyInstanceUuIdValue instanceof Map) {
- return Optional.ofNullable((String) ((Map) propertyInstanceUuIdValue).get(key));
- } else {
- logger.warn("property:" + propertyName + " of resource type:" + resource.getType()
- + " should have a value in key value format");
-
- }
- return Optional.empty();
-
- }
-
- private Map<String, Map<String, List<String>>>
- manageSubstitutionNodeTypeCapabilitiesAndRequirements(
- NodeType substitutionNodeType, ServiceTemplate substitutionServiceTemplate,
- TranslateTo translateTo) {
-
- Map<String, NodeTemplate> nodeTemplates =
- substitutionServiceTemplate.getTopology_template().getNode_templates();
- String templateName;
- NodeTemplate template;
- String type;
- Map<String, Map<String, List<String>>> substitutionMapping = new HashMap<>();
- if (nodeTemplates == null) {
- return substitutionMapping;
- }
-
- Map<String, List<String>> capabilitySubstitutionMapping = new HashMap<>();
- Map<String, List<String>> requirementSubstitutionMapping = new HashMap<>();
- substitutionMapping.put("capability", capabilitySubstitutionMapping);
- substitutionMapping.put("requirement", requirementSubstitutionMapping);
- List<Map<String, RequirementDefinition>> nodeTypeRequirementsDefinition;
- Map<String, RequirementAssignment> nodeTemplateRequirementsAssignment;
- List<Map<String, RequirementDefinition>> exposedRequirementsDefinition;
- Map<String, Map<String, RequirementAssignment>> fullFilledRequirementsDefinition =
- new HashMap<>();
- Map<String, CapabilityDefinition> nodeTypeCapabilitiesDefinition = new HashMap<>();
- Map<String, CapabilityDefinition> exposedCapabilitiesDefinition;
-
- for (Map.Entry<String, NodeTemplate> entry : nodeTemplates.entrySet()) {
- templateName = entry.getKey();
- template = entry.getValue();
- type = template.getType();
-
- // get requirements
- nodeTypeRequirementsDefinition =
- getNodeTypeRequirements(type, templateName, substitutionServiceTemplate,
- requirementSubstitutionMapping, translateTo.getContext());
- nodeTemplateRequirementsAssignment = getNodeTemplateRequirements(template);
- fullFilledRequirementsDefinition.put(templateName, nodeTemplateRequirementsAssignment);
- //set substitution node type requirements
- exposedRequirementsDefinition = calculateExposedRequirements(nodeTypeRequirementsDefinition,
- nodeTemplateRequirementsAssignment);
- addSubstitutionNodeTypeRequirements(substitutionNodeType, exposedRequirementsDefinition,
- templateName);
-
- //get capabilities
- getNodeTypeCapabilities(nodeTypeCapabilitiesDefinition, capabilitySubstitutionMapping, type,
- templateName, substitutionServiceTemplate, translateTo.getContext());
-
- }
-
- exposedCapabilitiesDefinition = calculateExposedCapabilities(nodeTypeCapabilitiesDefinition,
- fullFilledRequirementsDefinition);
- addSubstitutionNodeTypeCapabilities(substitutionNodeType, exposedCapabilitiesDefinition);
- return substitutionMapping;
- }
-
- private Map<String, CapabilityDefinition> calculateExposedCapabilities(
- Map<String, CapabilityDefinition> nodeTypeCapabilitiesDefinition,
- Map<String, Map<String, RequirementAssignment>> fullFilledRequirementsDefinitionMap) {
-
- String capabilityKey;
- String capability;
- String node;
- CapabilityDefinition capabilityDefinition;
- CapabilityDefinition clonedCapabilityDefinition;
- for (Map.Entry<String, Map<String, RequirementAssignment>> entry
- : fullFilledRequirementsDefinitionMap.entrySet()) {
- for (Map.Entry<String, RequirementAssignment> fullFilledEntry : entry.getValue().entrySet()) {
-
- capability = fullFilledEntry.getValue().getCapability();
- fullFilledEntry.getValue().getOccurrences();
- node = fullFilledEntry.getValue().getNode();
- capabilityKey = capability + "_" + node;
- capabilityDefinition = nodeTypeCapabilitiesDefinition.get(capabilityKey);
- if (capabilityDefinition != null) {
- clonedCapabilityDefinition = capabilityDefinition.clone();
- nodeTypeCapabilitiesDefinition.put(capabilityKey, capabilityDefinition.clone());
- if (evaluateCapabilityFullFilament(clonedCapabilityDefinition)) {
- nodeTypeCapabilitiesDefinition.remove(capabilityKey);
- } else {
- nodeTypeCapabilitiesDefinition.put(capabilityKey, clonedCapabilityDefinition);
- }
- }
- }
- }
-
- Map<String, CapabilityDefinition> exposedCapabilitiesDefinition = new HashMap<>();
- for (Map.Entry<String, CapabilityDefinition> entry : nodeTypeCapabilitiesDefinition
- .entrySet()) {
- exposedCapabilitiesDefinition.put(entry.getKey(), entry.getValue());
- }
- return exposedCapabilitiesDefinition;
- }
-
- private boolean evaluateCapabilityFullFilament(CapabilityDefinition capabilityDefinition) {
- Object[] occurrences = capabilityDefinition.getOccurrences();
- if (occurrences == null) {
- capabilityDefinition.setOccurrences(new Object[]{"0", ToscaConstants.UNBOUNDED});
- return false;
- }
- if (occurrences[1].equals(ToscaConstants.UNBOUNDED)) {
- return false;
- }
-
- if (occurrences[1].equals(1)) {
- return true;
- }
- occurrences[1] = (Integer) occurrences[1] - 1;
- return false;
- }
-
- private boolean evaluateRequirementFullFilament(RequirementDefinition requirementDefinition) {
- Object[] occurrences = requirementDefinition.getOccurrences();
- if (occurrences == null) {
- requirementDefinition.setOccurrences(new Object[]{"0", ToscaConstants.UNBOUNDED});
- return false;
- }
- if (occurrences[1].equals(ToscaConstants.UNBOUNDED)) {
- return false;
- }
-
- if (occurrences[1].equals(1)) {
- return true;
- }
- occurrences[1] = (Integer) occurrences[1] - 1;
- return false;
- }
-
- private void getNodeTypeCapabilities(
- Map<String, CapabilityDefinition> nodeTypeCapabilitiesDefinition,
- Map<String, List<String>> capabilitySubstitutionMapping, String type, String templateName,
- ServiceTemplate serviceTemplate, TranslationContext context) {
- NodeType nodeType = getNodeTypeWithFlatHierarchy(type, serviceTemplate, context);
- String capabilityKey;
- List<String> capabilityMapping;
- if (nodeType.getCapabilities() != null) {
- for (Map.Entry<String, CapabilityDefinition> capabilityNodeEntry : nodeType.getCapabilities()
- .entrySet()) {
- capabilityKey = capabilityNodeEntry.getKey() + "_" + templateName;
- nodeTypeCapabilitiesDefinition.put(capabilityKey, capabilityNodeEntry.getValue().clone());
- capabilityMapping = new ArrayList<>();
- capabilityMapping.add(templateName);
- capabilityMapping.add(capabilityNodeEntry.getKey());
- capabilitySubstitutionMapping.put(capabilityKey, capabilityMapping);
- }
- }
-
- String derivedFrom = nodeType.getDerived_from();
- if (derivedFrom != null) {
- getNodeTypeCapabilities(nodeTypeCapabilitiesDefinition, capabilitySubstitutionMapping,
- derivedFrom, templateName, serviceTemplate, context);
- }
- }
-
- private List<Map<String, RequirementDefinition>> calculateExposedRequirements(
- List<Map<String, RequirementDefinition>> nodeTypeRequirementsDefinitionList,
- Map<String, RequirementAssignment> nodeTemplateRequirementsAssignment) {
- if (nodeTypeRequirementsDefinitionList == null) {
- return null;
- }
- for (Map.Entry<String, RequirementAssignment> entry : nodeTemplateRequirementsAssignment
- .entrySet()) {
- if (entry.getValue().getNode() != null) {
- RequirementDefinition requirementDefinition =
- getRequirementDefinition(nodeTypeRequirementsDefinitionList, entry.getKey());
- RequirementDefinition cloneRequirementDefinition;
- if (requirementDefinition != null) {
- cloneRequirementDefinition = requirementDefinition.clone();
- if (!evaluateRequirementFullFilament(cloneRequirementDefinition)) {
- this.mergeEntryInList(entry.getKey(), cloneRequirementDefinition,
- nodeTypeRequirementsDefinitionList);
- } else {
- removeRequirementsDefinition(nodeTypeRequirementsDefinitionList, entry.getKey());
- }
- }
- } else {
- for (Map<String, RequirementDefinition> nodeTypeRequirementsMap
- : nodeTypeRequirementsDefinitionList) {
- Object max = nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences() != null
- && nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences().length > 0
- ? nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences()[1] : 1;
- Object min = nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences() != null
- && nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences().length > 0
- ? nodeTypeRequirementsMap.get(entry.getKey()).getOccurrences()[0] : 1;
- nodeTypeRequirementsMap.get(entry.getKey()).setOccurrences(new Object[]{min, max});
- }
- }
- }
- return nodeTypeRequirementsDefinitionList;
- }
-
- private void removeRequirementsDefinition(
- List<Map<String, RequirementDefinition>> nodeTypeRequirementsDefinitionList,
- String requirementKey) {
- for (Map<String, RequirementDefinition> reqMap : nodeTypeRequirementsDefinitionList) {
- reqMap.remove(requirementKey);
- }
- }
-
- private RequirementDefinition getRequirementDefinition(
- List<Map<String, RequirementDefinition>> nodeTypeRequirementsDefinitionList,
- String requirementKey) {
- for (Map<String, RequirementDefinition> requirementMap : nodeTypeRequirementsDefinitionList) {
- if (requirementMap.containsKey(requirementKey)) {
- return requirementMap.get(requirementKey);
- }
- }
- return null;
- }
-
- private Map<String, RequirementAssignment> getNodeTemplateRequirements(NodeTemplate template) {
- List<Map<String, RequirementAssignment>> templateRequirements = template.getRequirements();
-
- Map<String, RequirementAssignment> nodeTemplateRequirementsDefinition = new HashMap<>();
- if (CollectionUtils.isEmpty(templateRequirements)) {
- return nodeTemplateRequirementsDefinition;
- }
- for (Map<String, RequirementAssignment> requirementAssignmentMap : templateRequirements) {
- for (Map.Entry<String, RequirementAssignment> requirementEntry : requirementAssignmentMap
- .entrySet()) {
- nodeTemplateRequirementsDefinition
- .put(requirementEntry.getKey(), requirementEntry.getValue());
- }
- }
- return nodeTemplateRequirementsDefinition;
- }
-
- private List<Map<String, RequirementDefinition>> getNodeTypeRequirements(String type,
- String templateName,
- ServiceTemplate serviceTemplate,
- Map<String, List<String>> requirementSubstitutionMapping,
- TranslationContext context) {
- List<Map<String, RequirementDefinition>> requirementList = null;
- NodeType nodeType = getNodeTypeWithFlatHierarchy(type, serviceTemplate, context);
- String derivedFrom = nodeType.getDerived_from();
- List<String> requirementMapping;
- if (derivedFrom != null) {
- requirementList = getNodeTypeRequirements(derivedFrom, templateName, serviceTemplate,
- requirementSubstitutionMapping, context);
- }
- if (requirementList == null) {
- requirementList = new ArrayList<>();
- }
-
- if (nodeType.getRequirements() != null) {
- for (Map<String, RequirementDefinition> requirementMap : nodeType.getRequirements()) {
- for (Map.Entry<String, RequirementDefinition> requirementNodeEntry : requirementMap
- .entrySet()) {
- if (requirementNodeEntry.getValue().getOccurrences() == null) {
- requirementNodeEntry.getValue().setOccurrences(new Object[]{1, 1});
- }
- Map<String, RequirementDefinition> requirementDef = new HashMap<>();
- requirementDef.put(requirementNodeEntry.getKey(), requirementNodeEntry.getValue());
- addRequirementToList(requirementList, requirementDef);
- requirementMapping = new ArrayList<>();
- requirementMapping.add(templateName);
- requirementMapping.add(requirementNodeEntry.getKey());
- requirementSubstitutionMapping
- .put(requirementNodeEntry.getKey() + "_" + templateName, requirementMapping);
- if (requirementNodeEntry.getValue().getNode() == null) {
- requirementNodeEntry.getValue().setOccurrences(new Object[]{1, 1});
- }
- }
- }
- }
-
- return requirementList;
- }
-
- private void addRequirementToList(List<Map<String, RequirementDefinition>> requirementList,
- Map<String, RequirementDefinition> requirementDef) {
- for (Map.Entry<String, RequirementDefinition> entry : requirementDef.entrySet()) {
- this.mergeEntryInList(entry.getKey(), entry.getValue(), requirementList);
- }
- }
-
- private void addSubstitutionNodeTypeCapabilities(NodeType substitutionNodeType,
- Map<String, CapabilityDefinition> capabilities) {
- if (capabilities == null || capabilities.entrySet().size() == 0) {
- return;
- }
-
- if (MapUtils.isEmpty(substitutionNodeType.getCapabilities())) {
- substitutionNodeType.setCapabilities(new HashMap<>());
- }
- if (capabilities.size() > 0) {
- substitutionNodeType.setCapabilities(new HashMap<>());
- }
- for (Map.Entry<String, CapabilityDefinition> entry : capabilities.entrySet()) {
- substitutionNodeType.getCapabilities().put(entry.getKey(), entry.getValue());
- }
- }
-
- private void addSubstitutionNodeTypeRequirements(NodeType substitutionNodeType,
- List<Map<String, RequirementDefinition>> requirementsList,
- String templateName) {
- if (requirementsList == null || requirementsList.size() == 0) {
- return;
- }
-
- if (substitutionNodeType.getRequirements() == null) {
- substitutionNodeType.setRequirements(new ArrayList<>());
- }
-
- for (Map<String, RequirementDefinition> requirementDef : requirementsList) {
- for (Map.Entry<String, RequirementDefinition> entry : requirementDef.entrySet()) {
- Map<String, RequirementDefinition> requirementMap = new HashMap<>();
- requirementMap.put(entry.getKey() + "_" + templateName, entry.getValue().clone());
- substitutionNodeType.getRequirements().add(requirementMap);
- }
- }
- }
-
-
- private SubstitutionMapping manageSubstitutionTemplateSubstitutionMapping(String nodeTypeKey,
- NodeType substitutionNodeType,
- Map<String, Map<String, List<String>>> mapping) {
- SubstitutionMapping substitutionMapping = new SubstitutionMapping();
- substitutionMapping.setNode_type(nodeTypeKey);
- substitutionMapping.setCapabilities(
- manageCapabilityMapping(substitutionNodeType.getCapabilities(), mapping.get("capability")));
- substitutionMapping.setRequirements(
- manageRequirementMapping(substitutionNodeType.getRequirements(),
- mapping.get("requirement")));
- return substitutionMapping;
- }
-
- private Map<String, List<String>> manageCapabilityMapping(
- Map<String, CapabilityDefinition> capabilities,
- Map<String, List<String>> capabilitySubstitutionMapping) {
- if (capabilities == null) {
- return null;
- }
-
- Map<String, List<String>> capabilityMapping = new HashMap<>();
- String capabilityKey;
- List<String> capabilityMap;
- for (Map.Entry<String, CapabilityDefinition> entry : capabilities.entrySet()) {
- capabilityKey = entry.getKey();
- capabilityMap = capabilitySubstitutionMapping.get(capabilityKey);
- capabilityMapping.put(capabilityKey, capabilityMap);
- }
- return capabilityMapping;
- }
-
- private Map<String, List<String>> manageRequirementMapping(
- List<Map<String, RequirementDefinition>> requirementList,
- Map<String, List<String>> requirementSubstitutionMapping) {
- if (requirementList == null) {
- return null;
- }
- Map<String, List<String>> requirementMapping = new HashMap<>();
- String requirementKey;
- List<String> requirementMap;
- for (Map<String, RequirementDefinition> requirementDefMap : requirementList) {
- for (Map.Entry<String, RequirementDefinition> entry : requirementDefMap.entrySet()) {
- requirementKey = entry.getKey();
- requirementMap = requirementSubstitutionMapping.get(requirementKey);
- requirementMapping.put(requirementKey, requirementMap);
- }
- }
- return requirementMapping;
- }
-
-
- private Map<String, AttributeDefinition> manageSubstitutionNodeTypeAttributes(
- ServiceTemplate substitutionServiceTemplate) {
-
- Map<String, AttributeDefinition> substitutionNodeTypeAttributes = new HashMap<>();
- Map<String, ParameterDefinition> attributes =
- substitutionServiceTemplate.getTopology_template().getOutputs();
- if (attributes == null) {
- return null;
- }
- AttributeDefinition attributeDefinition;
- String toscaAttributeName;
-
- for (Map.Entry<String, ParameterDefinition> entry : attributes.entrySet()) {
- attributeDefinition = new AttributeDefinition();
- toscaAttributeName = entry.getKey();
- ParameterDefinition parameterDefinition =
- substitutionServiceTemplate.getTopology_template().getOutputs().get(toscaAttributeName);
- if (parameterDefinition.getType() != null && !parameterDefinition.getType().isEmpty()) {
- attributeDefinition.setType(parameterDefinition.getType());
- } else {
- attributeDefinition.setType(PropertyType.STRING.getDisplayName());
- }
- attributeDefinition.setDescription(parameterDefinition.getDescription());
- attributeDefinition.set_default(parameterDefinition.get_default());
- attributeDefinition.setEntry_schema(parameterDefinition.getEntry_schema());
- attributeDefinition.setStatus(parameterDefinition.getStatus());
- substitutionNodeTypeAttributes.put(toscaAttributeName, attributeDefinition);
- }
- return substitutionNodeTypeAttributes;
- }
-
- private Map<String, PropertyDefinition> manageSubstitutionNodeTypeProperties(
- ServiceTemplate substitutionServiceTemplate) {
- Map<String, PropertyDefinition> substitutionNodeTypeProperties = new HashMap<>();
- Map<String, ParameterDefinition> properties =
- substitutionServiceTemplate.getTopology_template().getInputs();
- if (properties == null) {
- return null;
- }
-
- PropertyDefinition propertyDefinition;
- String toscaPropertyName;
- for (Map.Entry<String, ParameterDefinition> entry : properties.entrySet()) {
- toscaPropertyName = entry.getKey();
- propertyDefinition = new PropertyDefinition();
- ParameterDefinition parameterDefinition =
- substitutionServiceTemplate.getTopology_template().getInputs().get(toscaPropertyName);
- propertyDefinition.setType(parameterDefinition.getType());
- propertyDefinition.setDescription(parameterDefinition.getDescription());
- propertyDefinition.setRequired(parameterDefinition.getRequired());
- propertyDefinition.set_default(parameterDefinition.get_default());
- propertyDefinition.setConstraints(parameterDefinition.getConstraints());
- propertyDefinition.setEntry_schema(parameterDefinition.getEntry_schema());
- propertyDefinition.setStatus(parameterDefinition.getStatus());
- substitutionNodeTypeProperties.put(toscaPropertyName, propertyDefinition);
- }
- return substitutionNodeTypeProperties;
- }
-
- private Map<String, Object> managerSubstitutionNodeTemplateProperties(TranslateTo translateTo,
- Template template,
- String templateName) {
- Map<String, Object> substitutionProperties = new HashMap<>();
- Map<String, Object> heatProperties = translateTo.getResource().getProperties();
- if (Objects.nonNull(heatProperties)) {
- for (Map.Entry<String, Object> entry : heatProperties.entrySet()) {
-
- Object property = TranslatorHeatToToscaPropertyConverter
- .getToscaPropertyValue(entry.getKey(), entry.getValue(), null,
- translateTo.getHeatFileName(), translateTo.getHeatOrchestrationTemplate(), template,
- translateTo.getContext());
- substitutionProperties.put(entry.getKey(), property);
- }
- }
-
- return addAbstractSubstitutionProperty(templateName, substitutionProperties);
- }
-
- private Map<String, Object> addAbstractSubstitutionProperty(String templateName,
- Map<String, Object> substitutionProperties) {
- Map<String, Object> innerProps = new HashMap<>();
- innerProps.put(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME,
- ToscaUtil.getServiceTemplateFileName(templateName));
- substitutionProperties.put(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME, innerProps);
- return substitutionProperties;
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImpl.java
deleted file mode 100644
index 7bc0a10957..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImpl.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.apache.commons.collections4.CollectionUtils;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.ToscaGroupType;
-import org.openecomp.sdc.tosca.datatypes.ToscaPolicyType;
-import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PolicyDefinition;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-
-public class ResourceTranslationNovaServerGroupsImpl extends ResourceTranslationBase {
- private static final String AFFINITY = "affinity";
- private static final String ANTI_AFFINITY = "anti-affinity";
- private static List<String> supportedPolicies = Arrays.asList(AFFINITY, ANTI_AFFINITY);
-
- @Override
- protected void translate(TranslateTo translateTo) {
- String resourceId = translateTo.getResourceId();
- List<String> toscaPolicyTypes = getToscaPolicies(translateTo.getResource(), resourceId);
- if (!CollectionUtils.isEmpty(toscaPolicyTypes)) {
- addGroupToTopology(translateTo, resourceId);
- addPoliciesToTopology(translateTo, resourceId, toscaPolicyTypes);
- }
- }
-
- private void addPoliciesToTopology(TranslateTo translateTo, String resourceId,
- List<String> toscaPolicyTypes) {
- logger.info("******** Start creating policies for resource '%s' ********", resourceId);
- for (int i = 0; i < toscaPolicyTypes.size(); i++) {
- String policy = toscaPolicyTypes.get(i);
- logger.info("******** Creating policy '%s' ********", policy);
- PolicyDefinition policyDefinition = new PolicyDefinition();
- policyDefinition.setType(policy);
- policyDefinition.setTargets(Arrays.asList(resourceId));
- policyDefinition.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
- policyDefinition.getProperties(), translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
- policyDefinition, translateTo.getContext()));
- policyDefinition.getProperties().put(
- policy.equals(ToscaPolicyType.PLACEMENT_ANTILOCATE.getDisplayName()) ? "container_type"
- : AFFINITY, "host");
- String policyId = resourceId + (toscaPolicyTypes.size() > 1 ? i : "");
- DataModelUtil
- .addPolicyDefinition(translateTo.getServiceTemplate(), policyId, policyDefinition);
- logger.info("******** Policy '%s' created ********", policy);
- }
-
- logger
- .info("******** All policies for resource '%s' created successfully ********", resourceId);
- }
-
- private void addGroupToTopology(TranslateTo translateTo, String resourceId) {
- logger.info("******** Start creating group for resource '%s' ********", resourceId);
- GroupDefinition group = new GroupDefinition();
- group.setMembers(new ArrayList<>());
- group.setType(ToscaGroupType.ROOT.getDisplayName());
- DataModelUtil
- .addGroupDefinitionToTopologyTemplate(translateTo.getServiceTemplate(), resourceId, group);
- logger.info("******** Creating group '%s' for resource '%s' ********", resourceId, resourceId);
- }
-
- private List<String> getToscaPolicies(Resource resource, String resourceId) {
-
- Map<String, Object> properties = resource.getProperties();
- if (Objects.isNull(properties) || Objects.isNull(properties.get("policies"))) {
- return Arrays.asList(ToscaPolicyType.PLACEMENT_ANTILOCATE.getDisplayName());
- }
-
- List policies = (List) properties.get("policies");
- List<String> retList = new ArrayList<>();
- policies.forEach(policy -> {
- if (!supportedPolicies.contains(policy)) {
- logger.warn("Resource '" + resourceId + "'(" + resource.getType()
- + ") contains unsupported policy '" + policy.toString()
- + "'. This resource is been ignored during the translation");
- } else {
- retList.add(getToscaPolicyByHotPolicy((String) policy));
- }
- });
- return retList;
- }
-
- private String getToscaPolicyByHotPolicy(String name) {
- if (Objects.equals(name, AFFINITY)) {
- return ToscaPolicyType.PLACEMENT_COLOCATE.getDisplayName();
- } else {
- return ToscaPolicyType.PLACEMENT_ANTILOCATE.getDisplayName();
- }
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnection.java
deleted file mode 100644
index 3c6fef7ffb..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnection.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-
-import org.openecomp.sdc.heat.datatypes.manifest.FileData;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Optional;
-import java.util.function.Predicate;
-
-
-class SecurityRulesToPortResourceConnection extends BaseResourceConnection<CapabilityDefinition> {
- SecurityRulesToPortResourceConnection(ResourceTranslationNestedImpl resourceTranslationNested,
- TranslateTo translateTo, FileData nestedFileData,
- NodeTemplate substitutionNodeTemplate, NodeType nodeType) {
- super(resourceTranslationNested, translateTo, nestedFileData, substitutionNodeTemplate,
- nodeType);
- }
-
- @Override
- protected boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
- return nodeTemplate.getType().equals(ToscaNodeType.NEUTRON_PORT.getDisplayName());
- }
-
- @Override
- protected List<Predicate<CapabilityDefinition>> getPredicatesListForConnectionPoints() {
- ArrayList<Predicate<CapabilityDefinition>> predicates = new ArrayList<>();
- predicates.add(cap -> cap.getType().equals(ToscaCapabilityType.ATTACHMENT.getDisplayName()));
- return predicates;
- }
-
- @Override
- protected Optional<List<String>> getConnectorParamName(
- String heatResourceId,Resource heatResource,
- HeatOrchestrationTemplate nestedHeatOrchestrationTemplate) {
- Object securityGroups =
- heatResource.getProperties().get(Constants.SECURITY_GROUPS_PROPERTY_NAME);
- List<String> paramsList = new ArrayList<>();
- if (securityGroups instanceof List) {
- ((List) securityGroups).forEach(group -> {
- Optional<AttachedResourceId> attachedResourceId = HeatToToscaUtil
- .extractAttachedResourceId(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
- translateTo.getContext(), group);
- if (attachedResourceId.isPresent()) {
- paramsList.add((String) attachedResourceId.get().getEntityId());
- }
- });
- return Optional.of(paramsList);
- }
- return Optional.empty();
- }
-
- @Override
- protected String getDesiredResourceType() {
- return HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource();
- }
-
- @Override
- protected List<Map<String, CapabilityDefinition>> getAllConnectionPoints() {
- List<Map<String, CapabilityDefinition>> exposedRequirementsList = new ArrayList<>();
- List<Predicate<CapabilityDefinition>> predicates = getPredicatesListForConnectionPoints();
- Map<String, CapabilityDefinition> capabilities = this.nodeType.getCapabilities();
- if (capabilities == null) {
- return exposedRequirementsList;
- }
- capabilities.entrySet()
- .stream()
- .filter(entry -> predicates
- .stream()
- .anyMatch(p -> p.test(entry.getValue())))
- .forEach(entry -> {
- Map<String, CapabilityDefinition> exposedRequirementsMap = new HashMap<>();
- exposedRequirementsMap.put(entry.getKey(), entry.getValue());
- exposedRequirementsList.add(exposedRequirementsMap);
- });
-
- return exposedRequirementsList;
- }
-
- @Override
- void addRequirementToConnectResources(Map.Entry<String, CapabilityDefinition> entry,
- List<String> paramNames) {
- paramNames.forEach(p -> {
- Optional<AttachedResourceId> attachedResourceId =
- HeatToToscaUtil.extractAttachedResourceId(translateTo, p);
- String securityRulesNodeId;
- if (!attachedResourceId.isPresent()) {
- return;
- }
- Map.Entry<String, RequirementDefinition> requirementDefinition =
- createRequirementDefinition(entry.getKey());
- AttachedResourceId securityGroupAttachedId = attachedResourceId.get();
- if (securityGroupAttachedId.isGetResource()) {
- String securityGroupResourceId = (String) attachedResourceId.get().getEntityId();
- Resource securityGroupResource = HeatToToscaUtil
- .getResource(translateTo.getHeatOrchestrationTemplate(), securityGroupResourceId,
- translateTo.getHeatFileName());
- Optional<String> translatedSecurityRuleId =
- ResourceTranslationFactory.getInstance(securityGroupResource)
- .translateResource(translateTo.getHeatFileName(), translateTo.getServiceTemplate(),
- translateTo.getHeatOrchestrationTemplate(), securityGroupResource,
- securityGroupResourceId, translateTo.getContext());
- if (translatedSecurityRuleId.isPresent()) {
- NodeTemplate securityRuleNodeTemplate = DataModelUtil
- .getNodeTemplate(translateTo.getServiceTemplate(), translatedSecurityRuleId.get());
- createRequirementAssignment(requirementDefinition, translateTo.getTranslatedId(),
- securityRuleNodeTemplate);
- } else {
- logger.warn(
- securityGroupResource.getType() + "connection to " + securityGroupResource.getType()
- + " is not supported/invalid, therefore this connection "
- + "will be ignored in the TOSCA translation");
- }
- } else if (securityGroupAttachedId.isGetParam()) {
- TranslatedHeatResource shareResource =
- translateTo.getContext().getHeatSharedResourcesByParam()
- .get(securityGroupAttachedId.getEntityId());
- if (Objects.nonNull(shareResource)
- && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
- NodeTemplate sharedNodeTemplate = DataModelUtil
- .getNodeTemplate(translateTo.getServiceTemplate(), shareResource.getTranslatedId());
- createRequirementAssignment(requirementDefinition, translateTo.getTranslatedId(),
- sharedNodeTemplate);
- }
- }
- });
- }
-
- @Override
- protected String getTranslatedResourceIdFromSubstitutionMapping(
- ServiceTemplate nestedServiceTemplate, Map.Entry<String, CapabilityDefinition> entry) {
- List<String> substitutionMapping =
- nestedServiceTemplate.getTopology_template().getSubstitution_mappings().getCapabilities()
- .get(entry.getKey());
- return substitutionMapping.get(0);
- }
-
- private Map.Entry<String, RequirementDefinition> createRequirementDefinition(String key) {
- RequirementDefinition definition = new RequirementDefinition();
- definition.setCapability(key);
- definition.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
- return new Map.Entry<String, RequirementDefinition>() {
- @Override
- public String getKey() {
- return ToscaConstants.PORT_REQUIREMENT_ID;
- }
-
- @Override
- public RequirementDefinition getValue() {
- return definition;
- }
-
- @Override
- public RequirementDefinition setValue(RequirementDefinition value) {
- return null;
- }
- };
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImpl.java
new file mode 100644
index 0000000000..cc188d71a6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImpl.java
@@ -0,0 +1,491 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation;
+
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.EntityConsolidationData;
+import org.openecomp.sdc.translator.services.heattotosca.ConfigConstants;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
+import org.openecomp.sdc.translator.services.heattotosca.Constants;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslation;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslationFactory;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.NameExtractor;
+import org.openecomp.sdc.translator.services.heattotosca.helper.FunctionTranslationHelper;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationBase;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+public class FunctionTranslationGetAttrImpl implements FunctionTranslation {
+
+
+ @Override
+ public Object translateFunction(ServiceTemplate serviceTemplate,
+ String resourceId, String propertyName, String functionKey,
+ Object functionValue, String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Template toscaTemplate, TranslationContext context) {
+ Object returnValue = new HashMap<>();
+ List<Object> attributeFunctionExpression =
+ translateGetAttributeFunctionExpression(serviceTemplate, resourceId, functionValue,
+ propertyName, heatFileName, heatOrchestrationTemplate, (NodeTemplate) toscaTemplate,
+ context);
+ if (FunctionTranslationHelper.isResourceSupported(attributeFunctionExpression.get(0).toString())
+ && FunctionTranslationHelper.isAttributeSupported(attributeFunctionExpression.get(0)
+ .toString())) {
+ ((Map) returnValue)
+ .put(ToscaFunctions.GET_ATTRIBUTE.getDisplayName(), attributeFunctionExpression);
+ } else {
+ returnValue = attributeFunctionExpression;
+ }
+
+ return returnValue;
+ }
+
+ private static List<Object> translateGetAttributeFunctionExpression(
+ ServiceTemplate serviceTemplate,
+ String resourceId,
+ Object functionValue,
+ String propertyName,
+ String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ NodeTemplate nodeTemplate,
+ TranslationContext context) {
+
+ List<Object> attributeParamList = (List) functionValue;
+ List<Object> toscaAttributeParamList = new ArrayList<>();
+
+ Optional<String> targetResourceTranslatedId = Optional.empty();
+ String targetResourceId = null;
+ if( attributeParamList.get(0) instanceof String) {
+ targetResourceId = (String) attributeParamList.get(0);
+ targetResourceTranslatedId =
+ handleResourceName(targetResourceId, heatFileName, heatOrchestrationTemplate,
+ context);
+ }
+ if (!targetResourceTranslatedId.isPresent()) {
+ //unsupported resource
+ toscaAttributeParamList
+ .add(
+ FunctionTranslationHelper.getUnsupportedResourcePrefix() + attributeParamList.get(0));
+ return toscaAttributeParamList;
+ } else {
+ toscaAttributeParamList.add(targetResourceTranslatedId.get());
+ }
+
+ Optional<List<Object>> toscaAttList =
+ handleAttributeName(attributeParamList, heatOrchestrationTemplate, propertyName,
+ heatFileName, serviceTemplate,
+ context);
+ if (!toscaAttList.isPresent()) {
+ //Unsupported attribute
+ toscaAttributeParamList.clear();
+ toscaAttributeParamList
+ .add(FunctionTranslationHelper.getUnsupportedAttributePrefix() + attributeParamList.get(0)
+ + "." + attributeParamList.get(1));
+ return toscaAttributeParamList;
+ } else {
+ toscaAttributeParamList.addAll(toscaAttList.get());
+
+ handleGetAttrConsolidationData(serviceTemplate, resourceId, propertyName, heatFileName,
+ heatOrchestrationTemplate, context, targetResourceId,
+ targetResourceTranslatedId,
+ toscaAttList.get());
+ }
+
+ Optional<List<Object>> toscaIndexOrKey = handleAttributeIndexOrKey(serviceTemplate,
+ resourceId, propertyName, HeatToToscaUtil
+ .getResourceType((String) attributeParamList.get(0), heatOrchestrationTemplate,
+ heatFileName), attributeParamList, context, heatFileName,
+ heatOrchestrationTemplate);
+ toscaIndexOrKey.ifPresent(toscaAttributeParamList::addAll);
+
+ return toscaAttributeParamList;
+ }
+
+ private static void handleGetAttrConsolidationData(
+ ServiceTemplate serviceTemplate,
+ String resourceId, String propertyName,
+ String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context,
+ String targetResourceId,
+ Optional<String> targetResourceTranslatedId,
+ List<Object> toscaAttList) {
+
+ Optional<String> resourceTranslatedId = Optional.empty();
+ if (resourceId != null) {
+ resourceTranslatedId =
+ handleResourceName(resourceId, heatFileName, heatOrchestrationTemplate,
+ context);
+ resourceTranslatedId
+ .ifPresent(resourceTranslatedIdValue -> handleGetAttrOutConsolidationData(serviceTemplate,
+ propertyName,
+ heatOrchestrationTemplate, context, resourceId, targetResourceTranslatedId.get(),
+ resourceTranslatedIdValue, toscaAttList, heatFileName));
+ }
+
+ if (targetResourceTranslatedId.isPresent()) {
+ handleGetAttrInConsolidationData(serviceTemplate, resourceId, resourceTranslatedId,
+ propertyName, heatOrchestrationTemplate, context, targetResourceId,
+ targetResourceTranslatedId.get(), toscaAttList, heatFileName);
+ }
+ }
+
+ private static void handleGetAttrOutConsolidationData(
+ ServiceTemplate serviceTemplate,
+ String propertyName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context,
+ String resourceId,
+ String targetTranslatedResourceId,
+ String resourceTranslatedId,
+ List<Object> toscaAttList,
+ String heatFileName) {
+ if (serviceTemplate != null) {
+ Optional<EntityConsolidationData> entityConsolidationData =
+ getEntityConsolidationData(serviceTemplate, heatOrchestrationTemplate, context,
+ resourceId, resourceTranslatedId, heatFileName);
+ if (entityConsolidationData.isPresent()) {
+ String attName = (String) toscaAttList.get(0);
+ handleNodeGetAttrOut(targetTranslatedResourceId, propertyName, heatOrchestrationTemplate,
+ context, resourceId, entityConsolidationData.get(), attName);
+ }
+ }
+ }
+
+ private static void handleGetAttrInConsolidationData(
+ ServiceTemplate serviceTemplate,
+ String resourceId,
+ Optional<String> resourceTranslatedId,
+ String propertyName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context,
+ String targetResourceId,
+ String targetResourceTranslatedId,
+ List<Object> toscaAttList,
+ String heatFileName) {
+
+ if (serviceTemplate != null) {
+ Optional<EntityConsolidationData> entityConsolidationData =
+ getEntityConsolidationData(serviceTemplate, heatOrchestrationTemplate, context,
+ targetResourceId, targetResourceTranslatedId, heatFileName);
+ if (entityConsolidationData.isPresent()) {
+ String attName = (String) toscaAttList.get(0);
+ if (resourceTranslatedId.isPresent()) {
+ handleNodeGetAttrIn(resourceTranslatedId.get(), propertyName, heatOrchestrationTemplate,
+ context,
+ resourceId, entityConsolidationData.get(), attName);
+ } else {
+ ConsolidationDataUtil
+ .updateOutputGetAttributeInConsolidationData(entityConsolidationData.get(),
+ propertyName, attName);
+ }
+ }
+ }
+ }
+
+ private static void handleNodeGetAttrOut(String nodeTemplateId, String propertyName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context, String resourceId,
+ EntityConsolidationData entityConsolidationData,
+ String attName) {
+ Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
+ boolean isNestedResource = HeatToToscaUtil.isNestedResource(resource);
+ String toscaPropertyName = propertyName;
+ if (!isNestedResource) {
+ toscaPropertyName = HeatToToscaUtil.getToscaPropertyName(context, resource
+ .getType(), propertyName);
+ }
+ ConsolidationDataUtil
+ .updateNodeGetAttributeOut(entityConsolidationData,
+ nodeTemplateId, toscaPropertyName, attName);
+ }
+
+ private static void handleNodeGetAttrIn(String nodeTemplateId, String propertyName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context, String resourceId,
+ EntityConsolidationData entityConsolidationData,
+ String attName) {
+ Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
+ boolean isNestedResource = HeatToToscaUtil.isNestedResource(resource);
+ String toscaPropertyName = propertyName;
+ if (!isNestedResource) {
+ toscaPropertyName = HeatToToscaUtil.getToscaPropertyName(context, resource
+ .getType(), propertyName);
+ }
+ ConsolidationDataUtil
+ .updateNodeGetAttributeIn(entityConsolidationData,
+ nodeTemplateId, toscaPropertyName, attName);
+ }
+
+ private static Optional<EntityConsolidationData> getEntityConsolidationData(
+ ServiceTemplate serviceTemplate,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context,
+ String resourceId,
+ String resourceTranslatedId,
+ String heatFileName) {
+ Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
+ if (ConsolidationDataUtil.isComputeResource(heatOrchestrationTemplate, resourceId)) {
+ String resourceType = heatOrchestrationTemplate.getResources().get(resourceId).getType();
+ NameExtractor nodeTypeNameExtractor =
+ context.getNameExtractorImpl(resourceType);
+ String computeType =
+ nodeTypeNameExtractor.extractNodeTypeName(
+ resource, resourceId, context.getTranslatedIds().get(heatFileName).get(resourceId));
+
+ return Optional.of(
+ ConsolidationDataUtil.getComputeTemplateConsolidationData(context, serviceTemplate,
+ computeType, resourceId));
+ } else if (ConsolidationDataUtil.isPortResource(heatOrchestrationTemplate, resourceId)) {
+ return Optional.of(ConsolidationDataUtil
+ .getPortTemplateConsolidationData(context, serviceTemplate, resourceId));
+ } else if (HeatToToscaUtil.isNestedResource(resource)) {
+ return Optional.of(ConsolidationDataUtil
+ .getNestedTemplateConsolidationData(context, serviceTemplate, resourceId));
+ }
+ return Optional.empty();
+ }
+
+ private static Optional<List<Object>> handleAttributeIndexOrKey(
+ ServiceTemplate serviceTemplate,
+ String resourceId, String propertyName,
+ String resourceType,
+ List<Object> attributeParamList,
+ TranslationContext context,
+ String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate) {
+
+ List<Object> attributeIndexOrKey = new ArrayList<>();
+ if (attributeParamList.size() < 3) {
+ return Optional.empty();
+ }
+
+ Object attributeName = attributeParamList.get(1);
+ for (int i = 2; i < attributeParamList.size(); i++) {
+
+ if (isInteger(attributeParamList.get(i))) {
+ attributeIndexOrKey.add(attributeParamList.get(i));
+ } else if (attributeParamList.get(i) instanceof Map) {
+ attributeIndexOrKey.add(getToscaAttributeValue(serviceTemplate, resourceId,
+ propertyName, attributeParamList.get(i), resourceType, heatFileName,
+ heatOrchestrationTemplate, null, context));
+
+ } else {
+ Object toscaAttributeName = resourceType == null ? null : context
+ .getElementMapping(resourceType, Constants.ATTR,
+ getAttributeFullPath(attributeParamList, i));
+ if (toscaAttributeName == null) {
+ toscaAttributeName = attributeParamList.get(i);
+ }
+ attributeIndexOrKey.add(toscaAttributeName);
+ }
+ }
+
+ return Optional.of(attributeIndexOrKey);
+ }
+
+ private static String getAttributeFullPath(List<Object> attributeParamList, int attributeIndex) {
+ if (attributeParamList.size() < 3) {
+ return null;
+ }
+ StringBuffer attributeFullPath = new StringBuffer();
+ attributeFullPath.append(attributeParamList.get(1));
+ for (int j = 2; j <= attributeIndex; j++) {
+ if (isInteger(attributeParamList.get(j))) {
+ continue;
+ }
+ attributeFullPath.append(ConfigConstants.TRANS_MAPPING_DELIMITER_CHAR);
+ attributeFullPath.append(attributeParamList.get(j));
+ }
+ return attributeFullPath.toString();
+ }
+
+ private static boolean isInteger(Object inputNumber) {
+ if (inputNumber == null) {
+ return false;
+ }
+
+ try {
+ Integer.parseInt(String.valueOf(inputNumber));
+ return true;
+ } catch (NumberFormatException exception) {
+ return false;
+ }
+ }
+
+ private static Optional<String> handleResourceName(String resourceId, String heatFileName,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ TranslationContext context) {
+ return ResourceTranslationBase
+ .getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, resourceId, context);
+ }
+
+ private static Optional<List<Object>> handleAttributeName(List<Object> attributeParamList,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ String propertyName,
+ String heatFileName,
+ ServiceTemplate serviceTemplate,
+ TranslationContext context) {
+ String resourceId = (String) attributeParamList.get(0);
+ Resource resource =
+ HeatToToscaUtil.getResource(heatOrchestrationTemplate, resourceId, heatFileName);
+
+ if (attributeParamList.size() == 1) {
+ return getResourceTranslatedAttributesList(resource, context);
+ }
+
+ if(!(attributeParamList.get(1) instanceof String)){
+ //todo - once dynamic attr name will be supported the commented line will be support it in
+ // the first translation phase.
+// Object toscaAttributeValue = getToscaAttributeValue(serviceTemplate, resourceId, propertyName,
+// attributeParamList.get(1), resource
+// .getType(), heatFileName, heatOrchestrationTemplate, null, context);
+// List<Object> dynamicAttrValue = new ArrayList<>();
+// dynamicAttrValue.add(toscaAttributeValue);
+// return Optional.of(dynamicAttrValue);
+ return Optional.empty();
+ }
+
+ if (HeatToToscaUtil.isNestedResource(resource)) {
+ return getNestedResourceTranslatedAttribute((String) attributeParamList.get(1));
+ } else {
+ return getResourceTranslatedAttribute(resource, (String) attributeParamList.get(1), context);
+ }
+ }
+
+ private static Optional<List<Object>> getNestedResourceTranslatedAttribute(String attributeName) {
+ List<Object> translatedAttributesList = new ArrayList<>();
+
+ if (attributeName.startsWith(HeatConstants.GET_ATTR_FROM_RESOURCE_GROUP_PREFIX)) {
+ String[] attributeSplit = attributeName.split("\\.");
+ if (attributeSplit.length == 2) {
+ translatedAttributesList.add(attributeSplit[1]);
+ } else if (attributeSplit.length == 3) {
+ translatedAttributesList.add(attributeSplit[2]);
+ translatedAttributesList.add(Integer.valueOf(attributeSplit[1]));
+ } else {
+ return Optional.empty();
+ }
+ } else {
+ translatedAttributesList.add(attributeName);
+ }
+ return Optional.of(translatedAttributesList);
+ }
+
+ private static Optional<List<Object>> getResourceTranslatedAttributesList(Resource resource,
+ TranslationContext
+ context) {
+ List<Object> translatedAttributes = new ArrayList<>();
+ if (HeatToToscaUtil.isNestedResource(resource)) {
+ Optional<String> nestedFile = HeatToToscaUtil.getNestedFile(resource);
+ if (!nestedFile.isPresent()) {
+ return Optional.empty();
+ }
+ HeatOrchestrationTemplate nestedHeatOrchestrationTemplate = new YamlUtil()
+ .yamlToObject(context.getFiles().getFileContent(nestedFile.get()),
+ HeatOrchestrationTemplate.class);
+ translatedAttributes.addAll(nestedHeatOrchestrationTemplate.getOutputs().keySet());
+ return Optional.of(translatedAttributes);
+
+ } else {
+ Map<String, String> resourceMappingAttributes =
+ context.getElementMapping(resource.getType(), Constants.ATTR);
+ if (resourceMappingAttributes == null) {
+ return Optional.empty();
+ }
+ Set<String> mappingAttributes = new HashSet<>();
+ mappingAttributes
+ .addAll(resourceMappingAttributes.values().stream().collect(Collectors.toList()));
+ translatedAttributes.addAll(mappingAttributes);
+ return Optional.of(translatedAttributes);
+ }
+ }
+
+ private static Optional<List<Object>> getResourceTranslatedAttribute(Resource resource,
+ String attributeName,
+ TranslationContext context) {
+ List<Object> translatedAttributesList = new ArrayList<>();
+ String translatedAttribute =
+ context.getElementMapping(resource.getType(), Constants.ATTR, attributeName);
+ if (translatedAttribute != null) {
+ translatedAttributesList.add(translatedAttribute);
+ return Optional.of(translatedAttributesList);
+ } else { //unsupported attribute
+ return Optional.empty();
+ }
+ }
+
+ private static Object getToscaAttributeValue(ServiceTemplate serviceTemplate,
+ String resourceId, String propertyName,
+ Object attributeVal, String resourceType,
+ String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Template template, TranslationContext context) {
+ if (attributeVal instanceof Map && !((Map) attributeVal).isEmpty()) {
+ Map.Entry<String, Object> functionMapEntry =
+ (Map.Entry<String, Object>) ((Map) attributeVal).entrySet().iterator().next();
+ if (FunctionTranslationFactory.getInstance(functionMapEntry.getKey()).isPresent()) {
+ return FunctionTranslationFactory.getInstance(functionMapEntry.getKey()).get()
+ .translateFunction(serviceTemplate, resourceId, propertyName,
+ functionMapEntry.getKey(), functionMapEntry
+ .getValue(), heatFileName, heatOrchestrationTemplate, template, context);
+ }
+ Map<String, Object> attrValueMap = new HashMap<>();
+ for (Map.Entry<String, Object> entry : ((Map<String, Object>) attributeVal).entrySet()) {
+ attrValueMap.put(entry.getKey(),
+ getToscaAttributeValue(serviceTemplate, resourceId, propertyName, entry.getValue(),
+ resourceType, heatFileName, heatOrchestrationTemplate, template, context));
+ }
+ return attrValueMap;
+ } else if (attributeVal instanceof List && !((List) attributeVal).isEmpty()) {
+ List propertyValueArray = new ArrayList<>();
+ for (int i = 0; i < ((List) attributeVal).size(); i++) {
+ propertyValueArray.add(
+ getToscaAttributeValue(serviceTemplate, resourceId, propertyName,
+ ((List) attributeVal).get(i), resourceType, heatFileName,
+ heatOrchestrationTemplate, template, context));
+ }
+ return propertyValueArray;
+ }
+ return attributeVal;
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImpl.java
new file mode 100644
index 0000000000..bc0926c9d0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImpl.java
@@ -0,0 +1,87 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation;
+
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.tosca.datatypes.ToscaArtifactType;
+import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
+import org.openecomp.sdc.tosca.datatypes.model.ArtifactDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
+import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslation;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author SHIRIA
+ * @since December 15, 2016.
+ */
+public class FunctionTranslationGetFileImpl implements FunctionTranslation {
+ @Override
+ public Object translateFunction(ServiceTemplate serviceTemplate,
+ String resourceId, String propertyName, String functionKey,
+ Object functionValue, String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Template toscaTemplate, TranslationContext context) {
+ String file = ((String) functionValue).replace("file:///", "");
+ Object returnValue;
+ final String artifactId = file.split("\\.")[0];
+
+ returnValue = new HashMap<>();
+ List artifactParameters = new ArrayList();
+ artifactParameters.add(0, ToscaConstants.MODELABLE_ENTITY_NAME_SELF);
+ ((Map) returnValue).put(ToscaFunctions.GET_ARTIFACT.getDisplayName(), artifactParameters);
+ artifactParameters.add(1, artifactId);
+
+ ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
+ if (toscaTemplate != null) {
+ if (toscaTemplate instanceof NodeTemplate) {
+ NodeTemplate nodeTemplate = (NodeTemplate) toscaTemplate;
+ ArtifactDefinition artifactDefinition =
+ createArtifactDefinition(file, toscaFileOutputService);
+ if (nodeTemplate.getArtifacts() == null) {
+ nodeTemplate.setArtifacts(new HashMap<>());
+ }
+ nodeTemplate.getArtifacts().put(artifactId, artifactDefinition);
+ }
+ }
+ return returnValue;
+ }
+
+ private static ArtifactDefinition createArtifactDefinition(Object function,
+ ToscaFileOutputService
+ toscaFileOutputService) {
+ ArtifactDefinition artifactDefinition = new ArtifactDefinition();
+ artifactDefinition.setType(ToscaArtifactType.NATIVE_DEPLOYMENT);
+ artifactDefinition
+ .setFile("../" + toscaFileOutputService.getArtifactsFolderName() + "/" + function);
+ return artifactDefinition;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImpl.java
new file mode 100644
index 0000000000..877659ee10
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImpl.java
@@ -0,0 +1,128 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation;
+
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatPseudoParameters;
+import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslation;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslationFactory;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author SHIRIA
+ * @since December 15, 2016.
+ */
+public class FunctionTranslationGetParamImpl implements FunctionTranslation {
+ @Override
+ public Object translateFunction(ServiceTemplate serviceTemplate, String resourceId,
+ String propertyName, String functionKey,
+ Object functionValue, String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Template toscaTemplate, TranslationContext context) {
+ Map returnValue = new HashMap<>();
+ returnValue.put(ToscaFunctions.GET_INPUT.getDisplayName(),
+ translateGetParamFunctionExpression(serviceTemplate, resourceId, propertyName,
+ functionValue, heatFileName, heatOrchestrationTemplate, context));
+ return returnValue;
+ }
+
+ private static Object translateGetParamFunctionExpression(ServiceTemplate serviceTemplate,
+ String resourceId,
+ String propertyName,Object functionValue,
+ String heatFileName,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ TranslationContext context) {
+ Object returnValue = null;
+ if (functionValue instanceof String) {
+ returnValue = functionValue;
+ if (HeatPseudoParameters.getPseudoParameterNames().contains(functionValue)) {
+ context
+ .addUsedHeatPseudoParams(heatFileName, (String) functionValue, (String) functionValue);
+ }
+ } else if (functionValue instanceof List) {
+ returnValue = new ArrayList<>();
+ for (int i = 0; i < ((List) functionValue).size(); i++) {
+ Object paramValue = ((List) functionValue).get(i);
+ if ((paramValue instanceof Map && !((Map) paramValue).isEmpty())) {
+ Map<String, Object> paramMap = (Map) paramValue;
+ ((List) returnValue).add(translatedInnerMap(serviceTemplate, resourceId,
+ propertyName, paramMap, heatFileName, heatOrchestrationTemplate, context));
+ } else {
+ ((List) returnValue).add(paramValue);
+ }
+ }
+ }
+
+ return returnValue;
+ }
+
+ private static Object translatedInnerMap(ServiceTemplate serviceTemplate, String resourceId,
+ String propertyName, Map<String, Object> paramMap,
+ String heatFileName,HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ TranslationContext context) {
+
+ Map<String, Object> translatedInnerMapValue = new HashMap<>();
+ for (Map.Entry<String, Object> entry : paramMap.entrySet()) {
+ if (FunctionTranslationFactory.getInstance(entry.getKey()).isPresent()) {
+ return FunctionTranslationFactory.getInstance(entry.getKey()).get()
+ .translateFunction(serviceTemplate, resourceId, propertyName, entry.getKey(),
+ entry.getValue(), heatFileName, heatOrchestrationTemplate, null, context);
+ } else {
+ translatedInnerMapValue.put(entry.getKey(),
+ translatedInnerValue(serviceTemplate, resourceId, propertyName,entry.getValue(),
+ heatFileName, heatOrchestrationTemplate, context));
+
+ }
+ }
+ return translatedInnerMapValue;
+ }
+
+ private static Object translatedInnerValue(ServiceTemplate serviceTemplate, String resourceId,
+ String propertyName,Object value, String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ TranslationContext context) {
+ if (value instanceof String) {
+ return value;
+ } else if (value instanceof Map) {
+ return translatedInnerMap(serviceTemplate, resourceId, propertyName,(Map<String, Object>)
+ value, heatFileName, heatOrchestrationTemplate, context);
+ } else if (value instanceof List) {
+ List returnedList = new ArrayList();
+ for (int i = 0; i < ((List) value).size(); i++) {
+ returnedList.add(translatedInnerValue(serviceTemplate, resourceId, propertyName,
+ ((List) value).get(i), heatFileName, heatOrchestrationTemplate, context));
+ }
+ return returnedList;
+ }
+
+ return value;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetResourceImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetResourceImpl.java
new file mode 100644
index 0000000000..b2d11e3804
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetResourceImpl.java
@@ -0,0 +1,52 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation;
+
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslation;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.services.heattotosca.helper.FunctionTranslationHelper;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationBase;
+
+import java.util.Optional;
+
+/**
+ * @author SHIRIA
+ * @since December 15, 2016.
+ */
+public class FunctionTranslationGetResourceImpl implements FunctionTranslation {
+ @Override
+ public Object translateFunction(ServiceTemplate serviceTemplate, String resourceId,
+ String propertyName, String functionKey,
+ Object functionValue, String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Template toscaTemplate, TranslationContext context) {
+ Object returnValue;
+ Optional<String> resourceTranslatedId = ResourceTranslationBase
+ .getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, (String) functionValue,
+ context);
+ returnValue = resourceTranslatedId
+ .orElseGet(() -> FunctionTranslationHelper.getUnsupportedResourcePrefix() + functionValue);
+ return returnValue;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImpl.java
new file mode 100644
index 0000000000..637aff9406
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImpl.java
@@ -0,0 +1,49 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor;
+
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.translator.datatypes.heattotosca.PropertyRegexMatcher;
+import org.openecomp.sdc.translator.services.heattotosca.NameExtractor;
+import org.openecomp.sdc.translator.services.heattotosca.NameExtractorUtil;
+import org.openecomp.sdc.translator.services.heattotosca.helper.ContrailTranslationHelper;
+
+import java.util.List;
+import java.util.Optional;
+
+public class NameExtractorContrailComputeImpl implements NameExtractor {
+
+ @Override
+ public String extractNodeTypeName(Resource resource, String resourceId, String translatedId) {
+ ContrailTranslationHelper contrailTranslationHelper = new ContrailTranslationHelper();
+ List<PropertyRegexMatcher> propertyRegexMatchers =
+ contrailTranslationHelper.getPropertyRegexMatchersForComputeNodeType();
+ Optional<String> extractedNodeTypeName =
+ NameExtractorUtil.extractNodeTypeNameByPropertiesPriority(resource.getProperties(),
+ propertyRegexMatchers);
+
+ return ToscaNodeType.VFC_NODE_TYPE_PREFIX + "heat."
+ + (extractedNodeTypeName.isPresent() ? extractedNodeTypeName.get()
+ : "compute_" + translatedId);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorNovaServerImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorNovaServerImpl.java
new file mode 100644
index 0000000000..52ceafa454
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorNovaServerImpl.java
@@ -0,0 +1,50 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor;
+
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.translator.datatypes.heattotosca.PropertyRegexMatcher;
+import org.openecomp.sdc.translator.services.heattotosca.NameExtractor;
+import org.openecomp.sdc.translator.services.heattotosca.NameExtractorUtil;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNovaServerImpl;
+
+import java.util.List;
+import java.util.Optional;
+
+public class NameExtractorNovaServerImpl implements NameExtractor {
+
+ @Override
+ public String extractNodeTypeName(Resource resource, String resourceId, String translatedId) {
+ ResourceTranslationNovaServerImpl novaServerTranslator =
+ new ResourceTranslationNovaServerImpl();
+ List<PropertyRegexMatcher> propertyRegexMatchers =
+ novaServerTranslator.getPropertyRegexMatchersForNovaNodeType();
+
+ Optional<String> extractedNodeTypeName = NameExtractorUtil
+ .extractNodeTypeNameByPropertiesPriority(resource.getProperties(), propertyRegexMatchers);
+
+ return ToscaNodeType.VFC_NODE_TYPE_PREFIX + "heat."
+ + (extractedNodeTypeName.isPresent() ? extractedNodeTypeName.get()
+ : translatedId.replace(".", "_"));
+ }
+
+}
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/BaseResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceConnection.java
new file mode 100644
index 0000000000..b9fed89133
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceConnection.java
@@ -0,0 +1,338 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.errors.TranslatorErrorCodes;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.function.Predicate;
+
+abstract class BaseResourceConnection<T> {
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(BaseResourceConnection.class);
+ protected static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ protected TranslateTo translateTo;
+ FileData nestedFileData;
+ NodeTemplate substitutionNodeTemplate;
+ NodeType nodeType;
+ ResourceTranslationBase resourceTranslationBase;
+
+ BaseResourceConnection(ResourceTranslationBase resourceTranslationBase, TranslateTo translateTo,
+ FileData nestedFileData, NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+ this.translateTo = translateTo;
+ this.nestedFileData = nestedFileData;
+ this.substitutionNodeTemplate = substitutionNodeTemplate;
+ this.nodeType = nodeType;
+ this.resourceTranslationBase = resourceTranslationBase;
+ }
+
+ abstract boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate);
+
+ abstract List<Predicate<T>> getPredicatesListForConnectionPoints();
+
+ abstract Optional<List<String>> getConnectorPropertyParamName(String heatResourceId,
+ Resource heatResource,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName);
+
+ abstract String getDesiredResourceType();
+
+ abstract String getMappedNodeTranslatedResourceId(ServiceTemplate nestedServiceTemplate,
+ Map.Entry<String, T> connectionPointEntry);
+
+ abstract Map.Entry<String, T> getMappedConnectionPointEntry(ServiceTemplate nestedServiceTemplate,
+ Map.Entry<String, T>
+ connectionPointEntry);
+
+ abstract void addRequirementToConnectResources(Map.Entry<String, T> connectionPointEntry,
+ List<String> paramNames);
+
+ abstract List<Map<String, T>> getAllConnectionPoints();
+
+ abstract boolean validateResourceTypeSupportedForReqCreation(String nestedResourceId,
+ final String nestedPropertyName,
+ String connectionPointId,
+ Resource connectedResource,
+ List<String> supportedTypes);
+
+ void connect() {
+ ServiceTemplate nestedServiceTemplate = translateTo.getContext().getTranslatedServiceTemplates()
+ .get(translateTo.getResource().getType());
+ List<String> paramNames;
+ HeatOrchestrationTemplate nestedHeatOrchestrationTemplate = new YamlUtil()
+ .yamlToObject(translateTo.getContext().getFileContent(nestedFileData.getFile()),
+ HeatOrchestrationTemplate.class);
+ List<Map<String, T>> exposedConnectionPoints = getAllConnectionPoints();
+ for (Map<String, T> connectionPointsMap : exposedConnectionPoints) {
+ for (Map.Entry<String, T> connectionPointEntry : connectionPointsMap.entrySet()) {
+ paramNames =
+ getConnectionParameterName(nestedServiceTemplate, nestedHeatOrchestrationTemplate,
+ nestedFileData.getFile(), connectionPointEntry);
+ if (paramNames != null && !paramNames.isEmpty()) {
+ addRequirementToConnectResources(connectionPointEntry, paramNames);
+ }
+ }
+ }
+ }
+
+ private List<String> getConnectionParameterName(ServiceTemplate nestedServiceTemplate,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName,
+ Map.Entry<String, T> connectionPointEntry) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<String> connectionParameterNameList = new ArrayList<>();
+ String mappedTranslatedResourceId =
+ getMappedNodeTranslatedResourceId(nestedServiceTemplate, connectionPointEntry);
+ NodeTemplate mappedNodeTemplate =
+ nestedServiceTemplate.getTopology_template().getNode_templates()
+ .get(mappedTranslatedResourceId);
+ if (isDesiredNodeTemplateType(mappedNodeTemplate)) {
+ return getResourcesConnectionParameterName(mappedTranslatedResourceId,
+ nestedHeatOrchestrationTemplate, nestedHeatFileName);
+ }
+
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ if (toscaAnalyzerService.isSubstitutableNodeTemplate(mappedNodeTemplate)) {
+ Optional<String> mappedSubstituteServiceTemplateName = toscaAnalyzerService
+ .getSubstituteServiceTemplateName(mappedTranslatedResourceId, mappedNodeTemplate);
+ if (mappedSubstituteServiceTemplateName.isPresent()) {
+ String mappedNestedHeatFileName = translateTo.getContext().getNestedHeatFileName()
+ .get(mappedSubstituteServiceTemplateName.get());
+ if (Objects.isNull(mappedNestedHeatFileName)) {
+ return null;
+ }
+ HeatOrchestrationTemplate mappedNestedHeatOrchestrationTemplate = new YamlUtil()
+ .yamlToObject(translateTo.getContext().getFileContent(mappedNestedHeatFileName),
+ HeatOrchestrationTemplate.class);
+ ServiceTemplate mappedNestedServiceTemplate =
+ translateTo.getContext().getTranslatedServiceTemplates().get(mappedNestedHeatFileName);
+ List<String> nestedPropertyNames = getConnectionParameterName(mappedNestedServiceTemplate,
+ mappedNestedHeatOrchestrationTemplate, mappedNestedHeatFileName,
+ getMappedConnectionPointEntry(nestedServiceTemplate, connectionPointEntry));
+
+ if (nestedPropertyNames != null && !nestedPropertyNames.isEmpty()) {
+ for (String propertyName : nestedPropertyNames) {
+ Object propertyValue = mappedNodeTemplate.getProperties().get(propertyName);
+ if (propertyValue instanceof Map && ((Map) propertyValue).containsKey("get_input")) {
+ Object paramName = ((Map) propertyValue).get("get_input");
+ if (paramName instanceof String) {
+ connectionParameterNameList.add((String) paramName);
+ }
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return connectionParameterNameList;
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return null;
+ }
+
+ private List<String> getResourcesConnectionParameterName(String translatedResourceId,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<String> params = new ArrayList<>();
+ Optional<List<Map.Entry<String, Resource>>> heatResources =
+ getResourceByTranslatedResourceId(translatedResourceId, nestedHeatOrchestrationTemplate);
+ if (heatResources.isPresent()) {
+ for (Map.Entry<String, Resource> resourceEntry : heatResources.get()) {
+ Resource heatResource = resourceEntry.getValue();
+ if (!MapUtils.isEmpty(heatResource.getProperties())) {
+ Optional<List<String>> connectorParamName =
+ getConnectorPropertyParamName(resourceEntry.getKey(), heatResource,
+ nestedHeatOrchestrationTemplate, nestedHeatFileName);
+ connectorParamName.ifPresent(params::addAll);
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return params;
+ }
+
+ protected Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(
+ String translatedResourceId, HeatOrchestrationTemplate nestedHeatOrchestrationTemplate) {
+ Optional<List<Map.Entry<String, Resource>>> resourceByTranslatedResourceId =
+ resourceTranslationBase.getResourceByTranslatedResourceId(nestedFileData.getFile(),
+ nestedHeatOrchestrationTemplate, translatedResourceId, translateTo,
+ getDesiredResourceType());
+ if (!resourceByTranslatedResourceId.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.TRANSLATE_HEAT);
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder()).withMessage(
+ "Failed to get original resource from heat for translate resource id '"
+ + translatedResourceId + "'")
+ .withId(TranslatorErrorCodes.HEAT_TO_TOSCA_MAPPING_COLLISION)
+ .withCategory(ErrorCategory.APPLICATION).build());
+ }
+ return resourceByTranslatedResourceId;
+ }
+
+ RequirementAssignment createRequirementAssignment(Map.Entry<String, RequirementDefinition>
+ requirementEntry, String node,
+ NodeTemplate nodeTemplate) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ RequirementAssignment requirementAssignment = null;
+ if (Objects.nonNull(node)) {
+ requirementAssignment = new RequirementAssignment();
+ requirementAssignment.setRelationship(requirementEntry.getValue().getRelationship());
+ requirementAssignment.setCapability(requirementEntry.getValue().getCapability());
+ requirementAssignment.setNode(node);
+ DataModelUtil
+ .addRequirementAssignment(nodeTemplate, requirementEntry.getKey(), requirementAssignment);
+ }
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return requirementAssignment;
+ }
+
+
+ Optional<String> getConnectionTranslatedNodeUsingGetParamFunc(
+ Map.Entry<String, T> connectionPointEntry, String paramName,
+ List<String> supportedNodeTypes) {
+
+ Optional<AttachedResourceId> attachedResourceId =
+ HeatToToscaUtil.extractAttachedResourceId(translateTo, paramName);
+ if (!attachedResourceId.isPresent()) {
+ return Optional.empty();
+ }
+ AttachedResourceId resourceId = attachedResourceId.get();
+ if (resourceId.isGetParam() && resourceId.getEntityId() instanceof String) {
+ TranslatedHeatResource shareResource =
+ translateTo.getContext().getHeatSharedResourcesByParam().get(resourceId.getEntityId());
+ if (Objects.nonNull(shareResource)
+ && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
+ if (validateResourceTypeSupportedForReqCreation(translateTo.getResourceId(), paramName,
+ connectionPointEntry.getKey(), shareResource.getHeatResource(), supportedNodeTypes)) {
+ return Optional.of(shareResource.getTranslatedId());
+ }
+ }
+ }
+ return Optional.empty();
+ }
+
+ Optional<TranslatedHeatResource> getConnectionTranslatedHeatResourceUsingGetParamFunc(
+ Map.Entry<String, T> connectionPointEntry, String paramName,
+ List<String> supportedNodeTypes) {
+
+ Optional<AttachedResourceId> attachedResourceId =
+ HeatToToscaUtil.extractAttachedResourceId(translateTo, paramName);
+ if (!attachedResourceId.isPresent()) {
+ return Optional.empty();
+ }
+ AttachedResourceId resourceId = attachedResourceId.get();
+ if (resourceId.isGetParam() && resourceId.getEntityId() instanceof String) {
+ TranslatedHeatResource shareResource =
+ translateTo.getContext().getHeatSharedResourcesByParam().get(resourceId.getEntityId());
+ if (Objects.nonNull(shareResource)
+ && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
+ if (validateResourceTypeSupportedForReqCreation(translateTo.getResourceId(), paramName,
+ connectionPointEntry.getKey(), shareResource.getHeatResource(), supportedNodeTypes)) {
+ return Optional.of(shareResource);
+ }
+ }
+ }
+ return Optional.empty();
+ }
+
+
+ Optional<String> getConnectionTranslatedNodeUsingGetResourceFunc(
+ Map.Entry<String, T> connectionPointEntry, String paramName, Object paramValue,
+ List<String> supportedNodeTypes) {
+ Optional<String> getResourceAttachedResourceId =
+ HeatToToscaUtil.extractContrailGetResourceAttachedHeatResourceId(paramValue);
+ if (getResourceAttachedResourceId.isPresent()) { // get resource
+ Resource resource = translateTo.getHeatOrchestrationTemplate().getResources()
+ .get(getResourceAttachedResourceId.get());
+ if (validateResourceTypeSupportedForReqCreation(translateTo.getResourceId(), paramName,
+ connectionPointEntry.getKey(), resource, supportedNodeTypes)) {
+ return ResourceTranslationBase.getResourceTranslatedId(translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), getResourceAttachedResourceId.get(),
+ translateTo.getContext());
+ }
+ }
+
+ return Optional.empty();
+ }
+
+ Optional<String> getConnectionResourceUsingGetResourceFunc(
+ Map.Entry<String, T> connectionPointEntry, String paramName, Object paramValue,
+ List<String> supportedNodeTypes) {
+ Optional<String> getResourceAttachedResourceId =
+ HeatToToscaUtil.extractContrailGetResourceAttachedHeatResourceId(paramValue);
+ if (getResourceAttachedResourceId.isPresent()) { // get resource
+ Resource resource = translateTo.getHeatOrchestrationTemplate().getResources()
+ .get(getResourceAttachedResourceId.get());
+ if (validateResourceTypeSupportedForReqCreation(translateTo.getResourceId(), paramName,
+ connectionPointEntry.getKey(), resource, supportedNodeTypes)) {
+ return getResourceAttachedResourceId;
+ }
+ }
+ return Optional.empty();
+ }
+}
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/ContrailPortToNetResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailPortToNetResourceConnection.java
new file mode 100644
index 0000000000..efa0ddd8a9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailPortToNetResourceConnection.java
@@ -0,0 +1,191 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.function.Predicate;
+
+public class ContrailPortToNetResourceConnection extends ResourceConnectionUsingRequirementHelper {
+ private MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public ContrailPortToNetResourceConnection(ResourceTranslationBase resourceTranslationBase,
+ TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+ super(resourceTranslationBase, translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
+ }
+
+ @Override
+ protected boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ ToscaServiceModel toscaServiceModel =
+ HeatToToscaUtil.getToscaServiceModel(translateTo.getContext());
+ return toscaAnalyzerService
+ .isTypeOf(nodeTemplate, ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE,
+ translateTo.getContext().getTranslatedServiceTemplates()
+ .get(translateTo.getResource().getType()), toscaServiceModel);
+ }
+
+ @Override
+ protected List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
+ ArrayList<Predicate<RequirementDefinition>> predicates = new ArrayList<>();
+ predicates.add(
+ req -> req.getCapability().equals(ToscaCapabilityType.NATIVE_NETWORK_LINKABLE)
+ && (req.getNode() == null || req.getNode().equals(ToscaNodeType.NATIVE_ROOT))
+ && req.getRelationship()
+ .equals(ToscaRelationshipType.NATIVE_NETWORK_LINK_TO));
+ return predicates;
+ }
+
+ @Override
+ protected Optional<List<String>> getConnectorPropertyParamName(String heatResourceId,
+ Resource heatResource,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Object interfaceListProperty =
+ heatResource.getProperties().get(HeatConstants.INTERFACE_LIST_PROPERTY_NAME);
+ if (interfaceListProperty == null) {
+ return Optional.empty();
+ }
+ List<String> paramsList = new ArrayList<>();
+ if (interfaceListProperty instanceof List) {
+ for (int index = 0; index < ((List) interfaceListProperty).size(); index++) {
+ Object interfaceEntry = ((List) interfaceListProperty).get(index);
+ if (interfaceEntry instanceof Map) {
+ Optional<AttachedResourceId> attachedVirtualNetwork = HeatToToscaUtil
+ .extractAttachedResourceId(nestedHeatFileName, nestedHeatOrchestrationTemplate,
+ translateTo.getContext(),
+ ((Map) interfaceEntry).get(HeatConstants.VIRTUAL_NETWORK_PROPERTY_NAME));
+ if (attachedVirtualNetwork.isPresent() && attachedVirtualNetwork.get().isGetParam()
+ && attachedVirtualNetwork.get().getEntityId() instanceof String) {
+ paramsList.add((String) attachedVirtualNetwork.get().getEntityId());
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(paramsList);
+ } else if (interfaceListProperty instanceof Map) {
+ Optional<AttachedResourceId> attachedVirtualNetwork = HeatToToscaUtil
+ .extractAttachedResourceId(nestedHeatFileName, nestedHeatOrchestrationTemplate,
+ translateTo.getContext(),
+ ((Map) interfaceListProperty).get(HeatConstants.VIRTUAL_NETWORK_PROPERTY_NAME));
+ if (attachedVirtualNetwork.isPresent() && attachedVirtualNetwork.get().isGetParam()
+ && attachedVirtualNetwork.get().getEntityId() instanceof String) {
+ paramsList.add((String) attachedVirtualNetwork.get().getEntityId());
+ return Optional.of(paramsList);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+
+ @Override
+ protected String getDesiredResourceType() {
+ return HeatResourcesTypes.CONTRAIL_SERVICE_INSTANCE.getHeatResource();
+ }
+
+ @Override
+ protected void addRequirementToConnectResources(
+ Map.Entry<String, RequirementDefinition> requirementDefinitionEntry,
+ List<String> paramNames) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (paramNames == null || paramNames.isEmpty()) {
+ return;
+ }
+ Integer index = Integer.valueOf(
+ requirementDefinitionEntry.getKey().substring("link_port_".length()).substring(0, 1));
+
+ String paramName = paramNames.get(
+ index); // port can connect to one network only and we are
+ // expecting to get only one param(unlike security rules to port)
+ Object paramValue = translateTo.getResource().getProperties().get(paramName);
+ List<String> supportedNetworkTypes =
+ Arrays.asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
+ HeatResourcesTypes.CONTRAIL_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource());
+
+ addRequirementToConnectResource(requirementDefinitionEntry, paramName, paramValue,
+ supportedNetworkTypes);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ boolean validateResourceTypeSupportedForReqCreation(String nestedResourceId,
+ final String nestedPropertyName,
+ String connectionPointId,
+ Resource connectedResource,
+ List<String> supportedTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!resourceTranslationBase.isResourceTypeSupported(connectedResource, supportedTypes)) {
+ logger.warn("Nested resource '" + nestedResourceId + "' property '" + nestedPropertyName
+ + "' is pointing to a resource with type '" + connectedResource.getType()
+ + "' which is not supported for requirement '" + connectionPointId
+ + "' that connect contrail port to network. Supported types are: '"
+ + supportedTypes.toString()
+ + "', therefore, this TOSCA requirement will not be connected.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return false;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return true;
+ }
+
+
+}
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/ContrailV2VlanToInterfaceResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VlanToInterfaceResourceConnection.java
new file mode 100644
index 0000000000..a757730cb1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VlanToInterfaceResourceConnection.java
@@ -0,0 +1,172 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.helper.ContrailV2VirtualMachineInterfaceHelper;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.function.Predicate;
+
+public class ContrailV2VlanToInterfaceResourceConnection
+ extends ResourceConnectionUsingRequirementHelper {
+
+ public ContrailV2VlanToInterfaceResourceConnection(
+ ResourceTranslationBase resourceTranslationBase, TranslateTo translateTo,
+ FileData nestedFileData, NodeTemplate substitutionNodeTemplate, NodeType nodeType) {
+ super(resourceTranslationBase, translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
+ }
+
+ @Override
+ protected boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
+ return nodeTemplate.getType()
+ .equals(ToscaNodeType.CONTRAILV2_VLAN_SUB_INTERFACE);
+ }
+
+ @Override
+ protected List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
+ ArrayList<Predicate<RequirementDefinition>> predicates = new ArrayList<>();
+ predicates.add(
+ req -> req.getCapability().equals(ToscaCapabilityType.NATIVE_NETWORK_BINDABLE)
+ && (req.getNode() == null || req.getNode().equals(ToscaNodeType.NETWORK_PORT))
+ && req.getRelationship()
+ .equals(ToscaRelationshipType.NATIVE_NETWORK_BINDS_TO));
+ return predicates;
+ }
+
+ @Override
+ protected Optional<List<String>> getConnectorPropertyParamName(String heatResourceId,
+ Resource heatResource,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<String> interfaces = new ArrayList<>();
+ Object interfaceRefs = heatResource.getProperties().get(HeatConstants.VMI_REFS_PROPERTY_NAME);
+ if (Objects.isNull(interfaceRefs) || !(interfaceRefs instanceof List)
+ || ((List) interfaceRefs).size() == 0) {
+ return Optional.empty();
+ }
+ if (((List) interfaceRefs).size() > 1) {
+ logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with nested heat file: '"
+ + translateTo.getResource().getType()
+ + "' has resource '" + heatResourceId + "' with type '"
+ + HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE.getHeatResource()
+ + "' which include '" + HeatConstants.VMI_REFS_PROPERTY_NAME
+ + "' property with more than one interface values, "
+ + "only the first interface will be connected, all rest will be ignored in TOSCA "
+ + "translation.");
+ }
+ Object interfaceRef = ((List) interfaceRefs).get(0);
+ Optional<AttachedResourceId> attachedInterfaceResource = HeatToToscaUtil
+ .extractAttachedResourceId(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
+ translateTo.getContext(), interfaceRef);
+ if (attachedInterfaceResource.isPresent() && attachedInterfaceResource.get().isGetParam()
+ && attachedInterfaceResource.get().getEntityId() instanceof String) {
+ interfaces.add((String) attachedInterfaceResource.get().getEntityId());
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(interfaces);
+ }
+
+ @Override
+ protected String getDesiredResourceType() {
+ return HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE.getHeatResource();
+ }
+
+ @Override
+ protected void addRequirementToConnectResources(
+ Map.Entry<String, RequirementDefinition> requirementDefinitionEntry,
+ List<String> paramNames) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (paramNames == null || paramNames.isEmpty()) {
+ return;
+ }
+ for (String paramName : paramNames) {
+ Object paramValue = translateTo.getResource().getProperties().get(paramName);
+ List<String> supportedInterfaceTypes =
+ Arrays.asList(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
+ HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE
+ .getHeatResource());
+
+ addRequirementToConnectResource(requirementDefinitionEntry, paramName, paramValue,
+ supportedInterfaceTypes);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ boolean validateResourceTypeSupportedForReqCreation(String nestedResourceId,
+ final String nestedPropertyName,
+ String connectionPointId,
+ Resource connectedResource,
+ List<String> supportedTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!resourceTranslationBase.isResourceTypeSupported(connectedResource, supportedTypes)
+ || (new ContrailV2VirtualMachineInterfaceHelper()
+ .isVlanSubInterfaceResource(connectedResource))) {
+ logger.warn("Nested resource '" + nestedResourceId + "' property '" + nestedPropertyName
+ + "' is pointing to a " + (true == (new ContrailV2VirtualMachineInterfaceHelper()
+ .isVlanSubInterfaceResource(connectedResource)) ? "Vlan Sub interface " : "")
+ + "resource with type '" + connectedResource.getType() + "' which"
+ + " is not supported for requirement '" + connectionPointId
+ + "' that connect vmi vlan sub interface to interface. Supported types are: '"
+ + supportedTypes.toString() + "' (excluding Vlan), therefore, this TOSCA requirement will"
+ + " not be connected.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return false;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return true;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ContrailV2VmInterfaceToNetResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VmInterfaceToNetResourceConnection.java
index 890d2a76af..944afb0fc3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ContrailV2VmInterfaceToNetResourceConnection.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VmInterfaceToNetResourceConnection.java
@@ -18,8 +18,9 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.common.utils.CommonUtil;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
@@ -32,17 +33,18 @@ import org.openecomp.sdc.tosca.datatypes.model.NodeType;
import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import java.util.function.Predicate;
-public class ContrailV2VmInterfaceToNetResourceConnection extends PortToNetResourceConnection {
+public class ContrailV2VmInterfaceToNetResourceConnection
+ extends ResourceConnectionUsingRequirementHelper {
public ContrailV2VmInterfaceToNetResourceConnection(
ResourceTranslationBase resourceTranslationBase, TranslateTo translateTo,
@@ -52,14 +54,33 @@ public class ContrailV2VmInterfaceToNetResourceConnection extends PortToNetResou
@Override
protected boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
- return nodeTemplate.getType()
- .equals(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE.getDisplayName());
+ return (nodeTemplate.getType()
+ .equals(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE)
+ || nodeTemplate.getType()
+ .equals(ToscaNodeType.CONTRAILV2_VLAN_SUB_INTERFACE));
}
@Override
- protected Optional<List<String>> getConnectorParamName(String heatResourceId,
- Resource heatResource,
- HeatOrchestrationTemplate nestedHeatOrchestrationTemplate) {
+ protected List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
+ ArrayList<Predicate<RequirementDefinition>> predicates = new ArrayList<>();
+ predicates.add(
+ req -> req.getCapability().equals(ToscaCapabilityType.NATIVE_NETWORK_LINKABLE)
+ && (req.getNode() == null || req.getNode().equals(ToscaNodeType.NATIVE_ROOT))
+ && req.getRelationship()
+ .equals(ToscaRelationshipType.NATIVE_NETWORK_LINK_TO));
+ return predicates;
+ }
+
+ @Override
+ protected Optional<List<String>> getConnectorPropertyParamName(String heatResourceId,
+ Resource heatResource,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<String> networks = new ArrayList<>();
Object virtualNetworkRefs = heatResource.getProperties().get("virtual_network_refs");
if (Objects.isNull(virtualNetworkRefs) || !(virtualNetworkRefs instanceof List)
@@ -79,9 +100,12 @@ public class ContrailV2VmInterfaceToNetResourceConnection extends PortToNetResou
Optional<AttachedResourceId> network = HeatToToscaUtil
.extractAttachedResourceId(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
translateTo.getContext(), virtualNetworkRef);
- if (network.isPresent() && network.get().isGetParam()) {
+ if (network.isPresent() && network.get().isGetParam()
+ && network.get().getEntityId() instanceof String) {
networks.add((String) network.get().getEntityId());
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.of(networks);
}
@@ -91,49 +115,52 @@ public class ContrailV2VmInterfaceToNetResourceConnection extends PortToNetResou
}
@Override
- protected void addRequirementToConnectResources(Map.Entry<String, RequirementDefinition> entry,
- List<String> paramNames) {
+ protected void addRequirementToConnectResources(
+ Map.Entry<String, RequirementDefinition> requirementDefinitionEntry,
+ List<String> paramNames) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (paramNames == null || paramNames.isEmpty()) {
+ return;
+ }
for (String paramName : paramNames) {
Object paramValue = translateTo.getResource().getProperties().get(paramName);
- String contrailAttachedResourceId =
- HeatToToscaUtil.extractContrailGetResourceAttachedHeatResourceId(paramValue);
- Optional<String> node;
- if (contrailAttachedResourceId != null) { // contrail get resource
- node = ResourceTranslationBase.getResourceTranslatedId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), contrailAttachedResourceId,
- translateTo.getContext());
- if (node.isPresent()) {
- createRequirementAssignment(entry, node.get(), substitutionNodeTemplate);
- }
- } else {
- Optional<AttachedResourceId> attachedResourceId =
- HeatToToscaUtil.extractAttachedResourceId(translateTo, paramName);
- if (!attachedResourceId.isPresent()) {
- return;
- }
- AttachedResourceId resourceId = attachedResourceId.get();
- if (resourceId.isGetParam()) {
- TranslatedHeatResource shareResource =
- translateTo.getContext().getHeatSharedResourcesByParam()
- .get(resourceId.getEntityId());
- if (Objects.nonNull(shareResource)
- && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
- createRequirementAssignment(entry, shareResource.getTranslatedId(),
- substitutionNodeTemplate);
- }
- }
- }
+ List<String> supportedNetworkTypes =
+ Arrays.asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
+ HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource());
+
+ addRequirementToConnectResource(requirementDefinitionEntry, paramName, paramValue,
+ supportedNetworkTypes);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
@Override
- protected List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
- ArrayList<Predicate<RequirementDefinition>> predicates = new ArrayList<>();
- predicates.add(
- req -> req.getCapability().equals(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName())
- && req.getNode().equals(ToscaNodeType.ROOT.getDisplayName())
- && req.getRelationship().equals(ToscaRelationshipType.NETWORK_LINK_TO.getDisplayName())
- );
- return predicates;
+ boolean validateResourceTypeSupportedForReqCreation(String nestedResourceId,
+ final String nestedPropertyName,
+ String connectionPointId,
+ Resource connectedResource,
+ List<String> supportedTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!resourceTranslationBase.isResourceTypeSupported(connectedResource, supportedTypes)) {
+ logger.warn("Nested resource '" + nestedResourceId + "' property '" + nestedPropertyName
+ + "' is pointing to a resource with type '" + connectedResource.getType()
+ + "' which is not supported for requirement '" + connectionPointId
+ + "' that connect virtual machine interface to network. Supported types are: '"
+ + supportedTypes.toString()
+ + "', therefore, this TOSCA requirement will not be connected.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return false;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return true;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaToVolResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/NovaToVolResourceConnection.java
index 8bab0dbc50..496341e11f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaToVolResourceConnection.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/NovaToVolResourceConnection.java
@@ -18,15 +18,20 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
@@ -34,15 +39,14 @@ import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.ResourceFileDataAndIDs;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
import org.openecomp.sdc.translator.services.heattotosca.errors.MissingMandatoryPropertyErrorBuilder;
import org.openecomp.sdc.translator.services.heattotosca.helper.VolumeTranslationHelper;
@@ -55,7 +59,7 @@ import java.util.Optional;
import java.util.function.Predicate;
import java.util.stream.Collectors;
-class NovaToVolResourceConnection extends NovaAndPortResourceConnectionHelper {
+class NovaToVolResourceConnection extends ResourceConnectionUsingRequirementHelper {
public NovaToVolResourceConnection(ResourceTranslationBase resourceTranslationBase,
TranslateTo translateTo, FileData nestedFileData,
@@ -66,8 +70,9 @@ class NovaToVolResourceConnection extends NovaAndPortResourceConnectionHelper {
@Override
boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
- ToscaServiceModel toscaServiceModel = HeatToToscaUtil.getToscaServiceModel(translateTo);
- return toscaAnalyzerService.isTypeOf(nodeTemplate, ToscaNodeType.NOVA_SERVER.getDisplayName(),
+ ToscaServiceModel toscaServiceModel =
+ HeatToToscaUtil.getToscaServiceModel(translateTo.getContext());
+ return toscaAnalyzerService.isTypeOf(nodeTemplate, ToscaNodeType.NOVA_SERVER,
translateTo.getContext().getTranslatedServiceTemplates()
.get(translateTo.getResource().getType()), toscaServiceModel);
}
@@ -76,23 +81,31 @@ class NovaToVolResourceConnection extends NovaAndPortResourceConnectionHelper {
List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
ArrayList<Predicate<RequirementDefinition>> predicates = new ArrayList<>();
predicates
- .add(req -> req.getCapability().equals(ToscaCapabilityType.ATTACHMENT.getDisplayName())
- && req.getNode().equals(ToscaNodeType.BLOCK_STORAGE.getDisplayName())
+ .add(req -> req.getCapability().equals(ToscaCapabilityType.NATIVE_ATTACHMENT)
+ && req.getNode().equals(ToscaNodeType.NATIVE_BLOCK_STORAGE)
&& req.getRelationship()
- .equals(ToscaRelationshipType.NATIVE_ATTACHES_TO.getDisplayName()));
+ .equals(ToscaRelationshipType.NATIVE_ATTACHES_TO));
return predicates;
}
@Override
- Optional<List<String>> getConnectorParamName(
- String heatResourceId, Resource heatResource,
- HeatOrchestrationTemplate nestedHeatOrchestrationTemplate) {
+ Optional<List<String>> getConnectorPropertyParamName(String heatResourceId, Resource heatResource,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<AttachedResourceId> volumeId = HeatToToscaUtil
.extractAttachedResourceId(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
translateTo.getContext(), heatResource.getProperties().get("volume_id"));
- if (volumeId.isPresent() && volumeId.get().isGetParam()) {
+ if (volumeId.isPresent() && volumeId.get().isGetParam()
+ && volumeId.get().getEntityId() instanceof String) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.of(Collections.singletonList((String) volumeId.get().getEntityId()));
} else {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.empty();
}
}
@@ -103,9 +116,62 @@ class NovaToVolResourceConnection extends NovaAndPortResourceConnectionHelper {
}
@Override
+ void addRequirementToConnectResources(
+ Map.Entry<String, RequirementDefinition> requirementDefinitionEntry,
+ List<String> paramNames) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (paramNames == null || paramNames.isEmpty()) {
+ return;
+ }
+
+ List<String> supportedVolumeTypes =
+ Collections.singletonList(HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource());
+
+ for (String paramName : paramNames) {
+ Object paramValue = translateTo.getResource().getProperties().get(paramName);
+ addRequirementToConnectResource(requirementDefinitionEntry, paramName, paramValue,
+ supportedVolumeTypes);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ boolean validateResourceTypeSupportedForReqCreation(String nestedResourceId,
+ String nestedPropertyName,
+ String connectionPointId,
+ Resource connectedResource,
+ List<String> supportedTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!resourceTranslationBase.isResourceTypeSupported(connectedResource, supportedTypes)) {
+ logger.warn("Nested resource '" + nestedResourceId + "' property '" + nestedPropertyName
+ + "' is pointing to a resource with type '" + connectedResource.getType()
+ + "' which is not supported for requirement '" + connectionPointId
+ + "' that connect VolumeAttachment to Volume. Supported types are: '"
+ + supportedTypes.toString()
+ + "', therefore, this TOSCA requirement will not be connected.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return false;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return true;
+ }
+
+ @Override
protected Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(
String translatedResourceId, HeatOrchestrationTemplate nestedHeatOrchestrationTemplate) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<Predicate<Map.Entry<String, Resource>>> predicates =
buildPredicates(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
translatedResourceId);
@@ -117,17 +183,64 @@ class NovaToVolResourceConnection extends NovaAndPortResourceConnectionHelper {
.allMatch(p -> p.test(entry)))
.collect(Collectors.toList());
if (CollectionUtils.isEmpty(list)) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.empty();
} else {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return Optional.of(list);
}
}
- private List<Predicate<Map.Entry<String, Resource>>> buildPredicates(String fileName,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- String
- novaTranslatedResourceId) {
+ @Override
+ Optional<String> getConnectionTranslatedNodeUsingGetParamFunc(
+ Map.Entry<String, RequirementDefinition> requirementDefinitionEntry, String paramName,
+ List<String> supportedTargetNodeTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Optional<String> targetTranslatedNodeId = super
+ .getConnectionTranslatedNodeUsingGetParamFunc(requirementDefinitionEntry, paramName,
+ supportedTargetNodeTypes);
+ if (targetTranslatedNodeId.isPresent()) {
+ return targetTranslatedNodeId;
+ } else {
+ Optional<AttachedResourceId> attachedResourceId =
+ HeatToToscaUtil.extractAttachedResourceId(translateTo, paramName);
+ if (!attachedResourceId.isPresent()) {
+ return Optional.empty();
+ }
+ AttachedResourceId resourceId = attachedResourceId.get();
+ if (resourceId.isGetParam() && resourceId.getEntityId() instanceof String) {
+ TranslatedHeatResource shareResource =
+ translateTo.getContext().getHeatSharedResourcesByParam().get(resourceId.getEntityId());
+ if (Objects.isNull(shareResource)) {
+ List<FileData> allFilesData =
+ translateTo.getContext().getManifest().getContent().getData();
+ Optional<FileData> fileData =
+ HeatToToscaUtil.getFileData(translateTo.getHeatFileName(), allFilesData);
+ if (fileData.isPresent()) {
+ Optional<ResourceFileDataAndIDs> fileDataContainingResource =
+ new VolumeTranslationHelper(logger)
+ .getFileDataContainingVolume(fileData.get().getData(),
+ (String) resourceId.getEntityId(), translateTo, FileData.Type.HEAT_VOL);
+ if (fileDataContainingResource.isPresent()) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(fileDataContainingResource.get().getTranslatedResourceId());
+ }
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+ }
+
+ private List<Predicate<Map.Entry<String, Resource>>> buildPredicates(
+ String fileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String novaTranslatedResourceId) {
List<Predicate<Map.Entry<String, Resource>>> list = new ArrayList<>();
list.add(entry -> entry.getValue().getType().equals(getDesiredResourceType()));
list.add(entry -> {
@@ -137,92 +250,20 @@ class NovaToVolResourceConnection extends NovaAndPortResourceConnectionHelper {
.extractAttachedResourceId(fileName, heatOrchestrationTemplate, context,
instanceUuidProp);
if (instanceUuid.isPresent()) {
- Optional<String> resourceTranslatedId = ResourceTranslationBase
- .getResourceTranslatedId(fileName, heatOrchestrationTemplate,
+ Optional<String> resourceTranslatedId =
+ ResourceTranslationBase.getResourceTranslatedId(fileName, heatOrchestrationTemplate,
(String) instanceUuid.get().getTranslatedId(), context);
return resourceTranslatedId.isPresent()
&& resourceTranslatedId.get().equals(novaTranslatedResourceId);
} else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.MISSING_MANDATORY_PROPERTY);
throw new CoreException(new MissingMandatoryPropertyErrorBuilder("instance_uuid").build());
}
});
return list;
}
-
- @Override
- String getTranslatedResourceIdFromSubstitutionMapping(ServiceTemplate nestedServiceTemplate,
- Map.Entry<String,
- RequirementDefinition> entry) {
- List<String> substitutionMapping =
- nestedServiceTemplate.getTopology_template().getSubstitution_mappings().getRequirements()
- .get(entry.getKey());
- return substitutionMapping.get(0);
- }
-
- @Override
- void addRequirementToConnectResources(Map.Entry<String, RequirementDefinition> entry,
- List<String> paramNames) {
- String paramName = paramNames.get(0);
- Optional<AttachedResourceId> attachedResourceId =
- HeatToToscaUtil.extractAttachedResourceId(translateTo, paramName);
- String node;
- if (!attachedResourceId.isPresent()) {
- return;
- }
- AttachedResourceId attachedResource = attachedResourceId.get();
- if (attachedResource.isGetResource()) {
- String volTranslatedId = (String) attachedResource.getTranslatedId();
- Resource volServerResource = HeatToToscaUtil
- .getResource(translateTo.getHeatOrchestrationTemplate(), volTranslatedId,
- translateTo.getHeatFileName());
- if (!StringUtils.equals(HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource(),
- volServerResource.getType())) {
- logger.warn("Volume attachment used from nested resource " + translateTo.getResourceId()
- + " is pointing to incorrect resource type(" + volServerResource.getType()
- + ") for relation through the parameter '" + paramName + "."
- + " The connection to the volume is ignored. "
- + "Supported types are: "
- + HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource());
- return;
- }
- node = volTranslatedId;
- createRequirementAssignment(entry, node, substitutionNodeTemplate);
- } else if (attachedResource.isGetParam()) {
- TranslatedHeatResource shareResource =
- translateTo.getContext().getHeatSharedResourcesByParam()
- .get(attachedResource.getEntityId());
- if (Objects.nonNull(shareResource)
- && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
- if (!StringUtils.equals(HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource(),
- shareResource.getHeatResource().getType())) {
- logger.warn("Volume attachment used from nested resource " + translateTo.getResourceId()
- + " is pointing to incorrect resource type("
- + shareResource.getHeatResource().getType() + ") for relation through the parameter '"
- + paramName + "."
- + " The connection to the volume is ignored. "
- + "Supported types are: "
- + HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource());
- return;
- }
- node = shareResource.getTranslatedId();
- createRequirementAssignment(entry, node, substitutionNodeTemplate);
- } else if (Objects.isNull(shareResource)) {
- List<FileData> allFilesData = translateTo.getContext().getManifest().getContent().getData();
- Optional<FileData> fileData =
- HeatToToscaUtil.getFileData(translateTo.getHeatFileName(), allFilesData);
- if (fileData.isPresent()) {
- Optional<ResourceFileDataAndIDs> fileDataContainingResource =
- new VolumeTranslationHelper(logger)
- .getFileDataContainingVolume(fileData.get().getData(),
- (String) attachedResource.getEntityId(), translateTo, FileData.Type.HEAT_VOL);
- if (fileDataContainingResource.isPresent()) {
- createRequirementAssignment(entry,
- fileDataContainingResource.get().getTranslatedResourceId(),
- substitutionNodeTemplate);
- }
- }
- }
- }
- }
}
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/PortToNetResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToNetResourceConnection.java
new file mode 100644
index 0000000000..d3e8676ca1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToNetResourceConnection.java
@@ -0,0 +1,159 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.function.Predicate;
+
+public class PortToNetResourceConnection extends ResourceConnectionUsingRequirementHelper {
+
+ public PortToNetResourceConnection(ResourceTranslationBase resourceTranslationBase,
+ TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate, NodeType nodeType) {
+ super(resourceTranslationBase, translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
+ }
+
+ @Override
+ protected boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
+ return nodeTemplate.getType().equals(ToscaNodeType.NEUTRON_PORT);
+ }
+
+ @Override
+ protected List<Predicate<RequirementDefinition>> getPredicatesListForConnectionPoints() {
+ ArrayList<Predicate<RequirementDefinition>> predicates = new ArrayList<>();
+ predicates.add(
+ req -> req.getCapability().equals(ToscaCapabilityType.NATIVE_NETWORK_LINKABLE)
+ && (req.getNode() == null || req.getNode().equals(ToscaNodeType.NATIVE_ROOT))
+ && req.getRelationship().equals(
+ ToscaRelationshipType.NATIVE_NETWORK_LINK_TO));
+ return predicates;
+ }
+
+ @Override
+ protected Optional<List<String>> getConnectorPropertyParamName(String heatResourceId,
+ Resource heatResource,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Optional<AttachedResourceId> network = HeatToToscaUtil
+ .extractAttachedResourceId(nestedHeatFileName, nestedHeatOrchestrationTemplate,
+ translateTo.getContext(), heatResource.getProperties().get("network"));
+ if (network.isPresent() && network.get().isGetParam()
+ && network.get().getEntityId() instanceof String) {
+ return Optional.of(Collections.singletonList((String) network.get().getEntityId()));
+ } else {
+ network = HeatToToscaUtil
+ .extractAttachedResourceId(nestedHeatFileName, nestedHeatOrchestrationTemplate,
+ translateTo.getContext(), heatResource.getProperties().get("network_id"));
+ if (network.isPresent()
+ && network.get().isGetParam()
+ && network.get().getEntityId() instanceof String) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(Collections.singletonList((String) network.get().getEntityId()));
+ } else {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+ }
+ }
+
+ @Override
+ protected String getDesiredResourceType() {
+ return HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource();
+ }
+
+ @Override
+ protected void addRequirementToConnectResources(
+ Map.Entry<String, RequirementDefinition> requirementDefinitionEntry,
+ List<String> paramNames) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (paramNames == null || paramNames.isEmpty()) {
+ return;
+ }
+ String paramName = paramNames.get(
+ 0); // port can connect to one network only and we are
+ // expecting to have only one param(unlike security rules to port)
+ Object paramValue = translateTo.getResource().getProperties().get(paramName);
+ List<String> supportedNetworkTypes =
+ Arrays.asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
+ HeatResourcesTypes.CONTRAIL_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource(),
+ HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource());
+
+ addRequirementToConnectResource(requirementDefinitionEntry, paramName, paramValue,
+ supportedNetworkTypes);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ boolean validateResourceTypeSupportedForReqCreation(String nestedResourceId,
+ final String nestedPropertyName,
+ String connectionPointId,
+ Resource connectedResource,
+ List<String> supportedTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!resourceTranslationBase.isResourceTypeSupported(connectedResource, supportedTypes)) {
+ logger.warn("Nested resource '" + nestedResourceId + "' property '" + nestedPropertyName
+ + "' is pointing to a resource with type '" + connectedResource.getType()
+ + "' which is not supported for requirement '" + connectionPointId
+ + "' that connect port to network. Supported types are: '" + supportedTypes.toString()
+ + "', therefore, this TOSCA requirement will not be connected.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return false;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return true;
+ }
+
+
+}
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/ResourceConnectionUsingCapabilityHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceConnectionUsingCapabilityHelper.java
new file mode 100644
index 0000000000..231190a16f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceConnectionUsingCapabilityHelper.java
@@ -0,0 +1,210 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.function.Predicate;
+
+public abstract class ResourceConnectionUsingCapabilityHelper
+ extends BaseResourceConnection<CapabilityDefinition> {
+ public ResourceConnectionUsingCapabilityHelper(ResourceTranslationBase resourceTranslationBase,
+ TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+ super(resourceTranslationBase, translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
+ }
+
+ abstract Map.Entry<String, RequirementDefinition> createRequirementDefinition(
+ String capabilityKey);
+
+ @Override
+ String getMappedNodeTranslatedResourceId(ServiceTemplate nestedServiceTemplate,
+ Map.Entry<String,
+ CapabilityDefinition> connectionPointEntry) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<String> substitutionMapping =
+ nestedServiceTemplate.getTopology_template().getSubstitution_mappings().getCapabilities()
+ .get(connectionPointEntry.getKey());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return substitutionMapping.get(0);
+ }
+
+ @Override
+ Map.Entry<String, CapabilityDefinition> getMappedConnectionPointEntry(
+ ServiceTemplate nestedServiceTemplate,
+ Map.Entry<String, CapabilityDefinition> connectionPointEntry) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<String> substitutionMapping =
+ nestedServiceTemplate.getTopology_template().getSubstitution_mappings().getCapabilities()
+ .get(connectionPointEntry.getKey());
+ String mappedNodeTranslatedId = substitutionMapping.get(0);
+ String mappedCapabilityId = substitutionMapping.get(1);
+ NodeTemplate mappedNodeTemplate =
+ nestedServiceTemplate.getTopology_template().getNode_templates()
+ .get(mappedNodeTranslatedId);
+ NodeType substituteNodeType =
+ translateTo.getContext().getGlobalSubstitutionServiceTemplate().getNode_types()
+ .get(mappedNodeTemplate.getType());
+ Optional<CapabilityDefinition> capabilityDefinition =
+ DataModelUtil.getCapabilityDefinition(substituteNodeType, mappedCapabilityId);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return new Map.Entry<String, CapabilityDefinition>() {
+ @Override
+ public String getKey() {
+ return mappedCapabilityId;
+ }
+
+ @Override
+ public CapabilityDefinition getValue() {
+ return capabilityDefinition.get();
+ }
+
+ @Override
+ public CapabilityDefinition setValue(CapabilityDefinition value) {
+ return null;
+ }
+ };
+ }
+
+ @Override
+ protected List<Map<String, CapabilityDefinition>> getAllConnectionPoints() {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<Map<String, CapabilityDefinition>> exposedRequirementsList = new ArrayList<>();
+ List<Predicate<CapabilityDefinition>> predicates = getPredicatesListForConnectionPoints();
+ Map<String, CapabilityDefinition> capabilities = this.nodeType.getCapabilities();
+ if (capabilities == null) {
+ return exposedRequirementsList;
+ }
+ capabilities.entrySet()
+ .stream()
+ .filter(entry -> predicates
+ .stream()
+ .anyMatch(p -> p.test(entry.getValue())))
+ .forEach(entry -> {
+ Map<String, CapabilityDefinition> exposedRequirementsMap = new HashMap<>();
+ exposedRequirementsMap.put(entry.getKey(), entry.getValue());
+ exposedRequirementsList.add(exposedRequirementsMap);
+ });
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return exposedRequirementsList;
+ }
+
+ void addRequirementToConnectResource(Map.Entry<String, CapabilityDefinition> connectionPointEntry,
+ List<String> supportedSourceNodeTypes, String paramName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Object paramValue = translateTo.getResource().getProperties().get(paramName);
+ if (paramValue == null) {
+ logger.warn("'" + paramName + "' property is not define in nested resource '"
+ + translateTo.getResourceId() + "' for the nested heat file, therefore, '"
+ + connectionPointEntry.getKey() + "' TOSCA capability will not be connected.");
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return;
+ }
+
+ Map.Entry<String, RequirementDefinition> requirementDefinition =
+ createRequirementDefinition(connectionPointEntry.getKey());
+
+ Optional<String> sourceResourceId =
+ getConnectionResourceUsingGetResourceFunc(connectionPointEntry, paramName, paramValue,
+ supportedSourceNodeTypes);
+ if (sourceResourceId.isPresent()) {
+ Resource sourceResource = HeatToToscaUtil
+ .getResource(translateTo.getHeatOrchestrationTemplate(), sourceResourceId.get(),
+ translateTo.getHeatFileName());
+ Optional<String> translatedSourceNodeId =
+ ResourceTranslationFactory.getInstance(sourceResource)
+ .translateResource(translateTo.getHeatFileName(), translateTo.getServiceTemplate(),
+ translateTo.getHeatOrchestrationTemplate(), sourceResource,
+ sourceResourceId.get(), translateTo.getContext());
+ if (translatedSourceNodeId.isPresent()) {
+ NodeTemplate sourceNodeTemplate = DataModelUtil
+ .getNodeTemplate(translateTo.getServiceTemplate(), translatedSourceNodeId.get());
+ RequirementAssignment requirementAssignment = createRequirementAssignment(
+ requirementDefinition, translateTo.getTranslatedId(), sourceNodeTemplate);
+ ConsolidationDataUtil.updateNodesConnectedData(translateTo, translateTo.getResourceId(),
+ translateTo.getResource(), sourceResource, translatedSourceNodeId.get(),
+ requirementDefinition.getKey(), requirementAssignment);
+ } else {
+ logger.warn(
+ "'" + sourceResource.getType() + "' connection to '" + connectionPointEntry.getKey()
+ + "' capability of type '" + connectionPointEntry.getValue().getType()
+ + "' is not supported/invalid, therefore this connection will be ignored in the "
+ + "TOSCA translation");
+ }
+ } else {
+ Optional<TranslatedHeatResource> sharedSourceTranslatedHeatResource =
+ getConnectionTranslatedHeatResourceUsingGetParamFunc(connectionPointEntry, paramName,
+ supportedSourceNodeTypes);
+ if (sharedSourceTranslatedHeatResource.isPresent()) {
+ NodeTemplate sharedSourceNodeTemplate = DataModelUtil
+ .getNodeTemplate(translateTo.getServiceTemplate(),
+ sharedSourceTranslatedHeatResource.get().getTranslatedId());
+ RequirementAssignment requirementAssignment = createRequirementAssignment(
+ requirementDefinition, translateTo.getTranslatedId(), sharedSourceNodeTemplate);
+
+ ConsolidationDataUtil.updateNodesConnectedData(translateTo, translateTo.getResourceId(),
+ translateTo.getResource(), sharedSourceTranslatedHeatResource.get().getHeatResource(),
+ sharedSourceTranslatedHeatResource.get().getTranslatedId(),
+ requirementDefinition.getKey(),
+ requirementAssignment);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+}
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/ResourceConnectionUsingRequirementHelper.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceConnectionUsingRequirementHelper.java
new file mode 100644
index 0000000000..6ddd0c7334
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceConnectionUsingRequirementHelper.java
@@ -0,0 +1,163 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.function.Predicate;
+
+public abstract class ResourceConnectionUsingRequirementHelper
+ extends BaseResourceConnection<RequirementDefinition> {
+ public ResourceConnectionUsingRequirementHelper(ResourceTranslationBase resourceTranslationBase,
+ TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+ super(resourceTranslationBase, translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
+ }
+
+ @Override
+ String getMappedNodeTranslatedResourceId(ServiceTemplate nestedServiceTemplate,
+ Map.Entry<String,
+ RequirementDefinition> connectionPointEntry) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<String> substitutionMapping =
+ nestedServiceTemplate.getTopology_template().getSubstitution_mappings().getRequirements()
+ .get(connectionPointEntry.getKey());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return substitutionMapping.get(0);
+ }
+
+ @Override
+ Map.Entry<String, RequirementDefinition> getMappedConnectionPointEntry(
+ ServiceTemplate nestedServiceTemplate,
+ Map.Entry<String, RequirementDefinition> connectionPointEntry) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<String> substitutionMapping =
+ nestedServiceTemplate.getTopology_template().getSubstitution_mappings().getRequirements()
+ .get(connectionPointEntry.getKey());
+ String mappedNodeTranslatedId = substitutionMapping.get(0);
+ String mappedReqId = substitutionMapping.get(1);
+ NodeTemplate mappedNodeTemplate =
+ nestedServiceTemplate.getTopology_template().getNode_templates()
+ .get(mappedNodeTranslatedId);
+ NodeType substituteNodeType =
+ translateTo.getContext().getGlobalSubstitutionServiceTemplate().getNode_types()
+ .get(mappedNodeTemplate.getType());
+ Optional<RequirementDefinition> requirementDefinition =
+ DataModelUtil.getRequirementDefinition(substituteNodeType, mappedReqId);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return new Map.Entry<String, RequirementDefinition>() {
+ @Override
+ public String getKey() {
+ return mappedReqId;
+ }
+
+ @Override
+ public RequirementDefinition getValue() {
+ return requirementDefinition.get();
+ }
+
+ @Override
+ public RequirementDefinition setValue(RequirementDefinition value) {
+ return null;
+ }
+ };
+ }
+
+ @Override
+ List<Map<String, RequirementDefinition>> getAllConnectionPoints() {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ List<Map<String, RequirementDefinition>> exposedRequirementsList = new ArrayList<>();
+ List<Predicate<RequirementDefinition>> predicates = getPredicatesListForConnectionPoints();
+ List<Map<String, RequirementDefinition>> requirements = this.nodeType.getRequirements();
+ if (requirements == null) {
+ return exposedRequirementsList;
+ }
+ requirements.stream()
+ .map(Map::entrySet)
+ .forEach(x -> x.stream()
+ .filter(entry -> predicates
+ .stream()
+ .anyMatch(p -> p.test(entry.getValue())))
+ .forEach(entry -> {
+ Map<String, RequirementDefinition> exposedRequirementsMap = new HashMap<>();
+ exposedRequirementsMap.put(entry.getKey(), entry.getValue());
+ exposedRequirementsList.add(exposedRequirementsMap);
+ }));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return exposedRequirementsList;
+ }
+
+ void addRequirementToConnectResource(
+ Map.Entry<String, RequirementDefinition> requirementDefinitionEntry, String paramName,
+ Object paramValue, List<String> supportedNetworkTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (paramValue == null) {
+ logger.warn("'" + paramName + "' property is not define in nested resource '"
+ + translateTo.getResourceId() + "' for the nested heat file, therefore, '"
+ + requirementDefinitionEntry.getKey() + "' TOSCA requirement will not be connected.");
+ return;
+ }
+ Optional<String> targetTranslatedNodeId =
+ getConnectionTranslatedNodeUsingGetResourceFunc(requirementDefinitionEntry, paramName,
+ paramValue, supportedNetworkTypes);
+ if (targetTranslatedNodeId.isPresent()) {
+ createRequirementAssignment(requirementDefinitionEntry, targetTranslatedNodeId.get(),
+ substitutionNodeTemplate);
+ } else {
+ targetTranslatedNodeId =
+ getConnectionTranslatedNodeUsingGetParamFunc(requirementDefinitionEntry, paramName,
+ supportedNetworkTypes);
+ targetTranslatedNodeId
+ .ifPresent(targetTranslatedId -> createRequirementAssignment(requirementDefinitionEntry,
+ targetTranslatedId, substitutionNodeTemplate));
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+}
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/ResourceTranslationBase.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationBase.java
new file mode 100644
index 0000000000..385a0fb0f5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationBase.java
@@ -0,0 +1,354 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+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.ConsolidationEntityType;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
+import org.openecomp.sdc.translator.services.heattotosca.errors.ResourceNotFoundInHeatFileErrorBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
+
+public abstract class ResourceTranslationBase {
+
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(ResourceTranslationBase.class);
+ protected static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ protected abstract void translate(TranslateTo translateTo);
+
+ /**
+ * Translate resource.
+ *
+ * @param heatFileName the heat file name
+ * @param serviceTemplate the service template
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param resource the resource
+ * @param resourceId the resource id
+ * @param context the context
+ * @return the translated id if this resource is supported, or empty value if not supported
+ */
+ public Optional<String> translateResource(String heatFileName, ServiceTemplate serviceTemplate,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Resource resource, String resourceId,
+ TranslationContext context) {
+
+ mdcDataDebugMessage.debugEntryMessage("file, resource", heatFileName, resourceId);
+ Optional<String> translatedId =
+ getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, resourceId, context);
+ context.getTranslatedResources().putIfAbsent(heatFileName, new HashSet<>());
+ if (context.getTranslatedResources().get(heatFileName).contains(resourceId)) {
+ return translatedId;
+ }
+ if (!translatedId.isPresent()) {
+ return Optional.empty();
+ }
+ logger.debug("Translate- file:" + heatFileName + " resource Id:" + resourceId
+ + " translated resource id:" + translatedId.get());
+ TranslateTo translateTo = new TranslateTo(heatFileName, serviceTemplate,
+ heatOrchestrationTemplate, resource, resourceId, translatedId.get(), context);
+ translate(translateTo);
+ context.getTranslatedResources().get(heatFileName).add(resourceId);
+
+ if (DataModelUtil.isNodeTemplate(translatedId.get(), serviceTemplate)) {
+ if (!context.getHeatStackGroupMembers().containsKey(heatFileName)) {
+ context.getHeatStackGroupMembers().put(heatFileName, new HashSet<>());
+ }
+ context.getHeatStackGroupMembers().get(heatFileName).add(translatedId.get());
+ updateResourceDependency(translateTo);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file, resource", heatFileName, resourceId);
+ return translatedId;
+ }
+
+ /**
+ * Gets resource translated id.
+ *
+ * @param heatFileName the heat file name
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param resourceId the resource id
+ * @param context the context
+ * @return the resource translated id
+ */
+ public static Optional<String> getResourceTranslatedId(String heatFileName,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ String resourceId,
+ TranslationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!context.getTranslatedIds().containsKey(heatFileName)) {
+ context.getTranslatedIds().put(heatFileName, new HashMap<>());
+ }
+
+ Map<String, String> translatedIdsPerFile = context.getTranslatedIds().get(heatFileName);
+ String translatedId = translatedIdsPerFile.get(resourceId);
+ if (translatedId != null) {
+ return Optional.of(translatedId);
+ }
+
+ Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
+ if (resource == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.TRANSLATE_HEAT);
+ throw new CoreException(
+ new ResourceNotFoundInHeatFileErrorBuilder(resourceId, heatFileName).build());
+ }
+ TranslateTo translateTo =
+ generateTranslationTo(heatFileName, null, heatOrchestrationTemplate, resource, resourceId,
+ null, context);
+ translatedId =
+ ResourceTranslationFactory.getInstance(resource).generateTranslatedId(translateTo);
+ if (translatedId != null) {
+ context.getTranslatedIds().get(heatFileName).put(resourceId, translatedId);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.ofNullable(translatedId);
+ }
+
+
+ /**
+ * Gets resource translated element template.
+ *
+ * @param heatFileName the heat file name
+ * @param heatOrchestrationTemplate the heat orchestration template
+ * @param resourceId the resource id
+ * @param context the context
+ * @return the resource translated element template
+ */
+ public static Optional<ToscaTopologyTemplateElements> getResourceTranslatedElementTemplate(
+ String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String resourceId, TranslationContext context) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Resource resource = heatOrchestrationTemplate.getResources().get(resourceId);
+ if (resource == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.TRANSLATE_HEAT);
+ throw new CoreException(
+ new ResourceNotFoundInHeatFileErrorBuilder(resourceId, heatFileName).build());
+ }
+ TranslateTo translateTo =
+ generateTranslationTo(heatFileName, null, heatOrchestrationTemplate, resource, resourceId,
+ null, context);
+
+ Optional<ToscaTopologyTemplateElements> translatedElementTemplate =
+ ResourceTranslationFactory.getInstance(resource)
+ .getTranslatedToscaTopologyElement(translateTo);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return translatedElementTemplate;
+ }
+
+ protected String generateTranslatedId(TranslateTo translateTo) {
+ if (isEssentialRequirementsValid(translateTo)) {
+ return translateTo.getResourceId();
+ } else {
+ return null;
+ }
+
+ }
+
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ if (isEssentialRequirementsValid(translateTo)) {
+ return Optional.of(ToscaTopologyTemplateElements.NODE_TEMPLATE);
+ } else {
+ return Optional.empty();
+ }
+ }
+
+ protected boolean isEssentialRequirementsValid(TranslateTo translateTo) {
+ return true;
+ }
+
+ private static TranslateTo generateTranslationTo(String heatFileName,
+ ServiceTemplate serviceTemplate,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ Resource resource, String resourceId,
+ String translatedId,
+ TranslationContext context) {
+ TranslateTo to = new TranslateTo();
+ to.setHeatFileName(heatFileName);
+ to.setServiceTemplate(serviceTemplate);
+ to.setHeatOrchestrationTemplate(heatOrchestrationTemplate);
+ to.setResource(resource);
+ to.setResourceId(resourceId);
+ to.setTranslatedId(translatedId);
+ to.setContext(context);
+ return to;
+ }
+
+ private void updateResourceDependency(TranslateTo translateTo) {
+
+ String heatFileName = translateTo.getHeatFileName();
+ mdcDataDebugMessage.debugEntryMessage("file", heatFileName);
+
+ Resource resource = translateTo.getResource();
+ HeatOrchestrationTemplate heatOrchestrationTemplate = translateTo
+ .getHeatOrchestrationTemplate();
+ String translatedId = translateTo.getTranslatedId();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ TranslationContext context = translateTo.getContext();
+ if (resource.getDepends_on() == null) {
+ return;
+ }
+
+ if (resource.getDepends_on() instanceof List) {
+ List<String> dependsOnList = (List<String>) resource.getDepends_on();
+ for (String dependsOnResourceId : dependsOnList) {
+ addDependOnRequirement(dependsOnResourceId, translateTo);
+ }
+ } else {
+ String dependsOnResourceId = (String) resource.getDepends_on();
+ addDependOnRequirement(dependsOnResourceId, translateTo);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", heatFileName);
+ }
+
+ private void addDependOnRequirement(String dependsOnResourceId, TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ String nodeTemplateId = translateTo.getTranslatedId();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ String heatFileName = translateTo.getHeatFileName();
+ HeatOrchestrationTemplate heatOrchestrationTemplate = translateTo
+ .getHeatOrchestrationTemplate();
+ TranslationContext context = translateTo.getContext();
+ RequirementAssignment requirementAssignment = new RequirementAssignment();
+ Optional<String> resourceTranslatedId =
+ getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, dependsOnResourceId,
+ context);
+
+ Optional<ToscaTopologyTemplateElements> resourceTranslatedElementTemplate =
+ getResourceTranslatedElementTemplate(heatFileName, heatOrchestrationTemplate,
+ dependsOnResourceId, context);
+
+ if (resourceTranslatedId.isPresent()
+ && (resourceTranslatedElementTemplate.isPresent() && resourceTranslatedElementTemplate
+ .get() == ToscaTopologyTemplateElements.NODE_TEMPLATE)) {
+ Resource sourceResource = translateTo.getResource();
+ Resource targetResource = HeatToToscaUtil
+ .getResource(heatOrchestrationTemplate, dependsOnResourceId,
+ translateTo.getHeatFileName());
+ if (HeatToToscaUtil
+ .isValidDependsOnCandidate(heatOrchestrationTemplate, sourceResource, targetResource,
+ ConsolidationEntityType.OTHER, translateTo.getContext())) {
+ requirementAssignment.setNode(resourceTranslatedId.get());
+ requirementAssignment.setCapability(ToscaCapabilityType.NATIVE_NODE);
+ requirementAssignment.setRelationship(ToscaRelationshipType.NATIVE_DEPENDS_ON);
+ DataModelUtil.addRequirementAssignment(
+ serviceTemplate.getTopology_template().getNode_templates().get(nodeTemplateId),
+ ToscaConstants.DEPENDS_ON_REQUIREMENT_ID, requirementAssignment);
+ Resource dependsOnResource = targetResource;
+ ConsolidationDataUtil
+ .updateNodesConnectedData(translateTo, dependsOnResourceId, dependsOnResource,
+ sourceResource, nodeTemplateId, ToscaConstants.DEPENDS_ON_REQUIREMENT_ID,
+ requirementAssignment);
+ }
+ }
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(
+ String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String translatedResourceId,
+ TranslateTo translateTo,
+ String heatResourceType) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ List<Map.Entry<String, Resource>> list = heatOrchestrationTemplate.getResources().entrySet()
+ .stream()
+ .filter(entry -> getPredicatesForTranslatedIdToResourceId(heatFileName,
+ heatOrchestrationTemplate, translatedResourceId, translateTo.getContext(),
+ heatResourceType)
+ .stream()
+ .allMatch(p -> p.test(entry)))
+ .collect(Collectors.toList());
+ if (CollectionUtils.isEmpty(list)) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ } else {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(list);
+ }
+ }
+
+ private List<Predicate<Map.Entry<String, Resource>>> getPredicatesForTranslatedIdToResourceId(
+ String heatFileName, HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String translatedResourceId, TranslationContext context, String heatResourceType) {
+ List<Predicate<Map.Entry<String, Resource>>> list = new ArrayList<>();
+ list.add(entry ->
+ entry.getValue().getType().equals(heatResourceType));
+ list.add(entry -> {
+ Optional<String> resourceTranslatedId =
+ getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, entry.getKey(), context);
+ return resourceTranslatedId.isPresent()
+ && resourceTranslatedId.get().equals(translatedResourceId);
+ });
+ return list;
+ }
+
+ boolean isResourceTypeSupported(Resource resource, List<String> supporteTypes) {
+ return Objects.nonNull(resource) && supporteTypes.contains(resource.getType());
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeAttachmentImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeAttachmentImpl.java
index cbad52a95d..4cf817bcae 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeAttachmentImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeAttachmentImpl.java
@@ -18,53 +18,69 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import static org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil.getResource;
import org.apache.commons.lang3.StringUtils;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.RelationshipTemplate;
import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.ResourceFileDataAndIDs;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
import org.openecomp.sdc.translator.services.heattotosca.errors.MissingMandatoryPropertyErrorBuilder;
import org.openecomp.sdc.translator.services.heattotosca.helper.VolumeTranslationHelper;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.List;
import java.util.Optional;
public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTranslationBase {
protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationCinderVolumeAttachmentImpl.class);
+ (Logger) LoggerFactory.getLogger(ResourceTranslationCinderVolumeAttachmentImpl.class);
+ private String volumeIdPropertyName = "volume_id";
+ private String toscaCapabilityAttachment = "tosca.capabilities.Attachment";
@Override
protected void translate(TranslateTo translateTo) {
- String volumeIdPropertyName = "volume_id";
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
RelationshipTemplate relationTemplate = new RelationshipTemplate();
- relationTemplate.setType(ToscaRelationshipType.CINDER_VOLUME_ATTACHES_TO.getDisplayName());
+ relationTemplate.setType(ToscaRelationshipType.CINDER_VOLUME_ATTACHES_TO);
String relationshipTemplateId = translateTo.getTranslatedId();
String heatFileName = translateTo.getHeatFileName();
relationTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo
+ .getResourceId(),translateTo.getResource().getProperties(),
relationTemplate.getProperties(), heatFileName,
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
relationTemplate, translateTo.getContext()));
AttachedResourceId attachedVolumeId = getAttachedResourceId(translateTo, volumeIdPropertyName);
- String instanceUuid = "instance_uuid";
+ String instanceUuid = HeatConstants.INSTANCE_UUID_PROPERTY_NAME;
AttachedResourceId attachedNovaServerId = getAttachedResourceId(translateTo, instanceUuid);
if (attachedNovaServerId.isGetResource()) {
@@ -76,22 +92,46 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
+ "' include 'instance_uuid' property without 'get_resource' function, therefore this "
+ "resource will be ignored in TOSCA translation.");
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ if (isEssentialRequirementsValid(translateTo)) {
+ return Optional.of(ToscaTopologyTemplateElements.RELATIONSHIP_TEMPLATE);
+ } else {
+ return Optional.empty();
+ }
}
private AttachedResourceId getAttachedResourceId(TranslateTo translateTo, String propertyName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<AttachedResourceId> attachedResourceId =
HeatToToscaUtil.extractAttachedResourceId(translateTo, propertyName);
if (!attachedResourceId.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.MISSING_MANDATORY_PROPERTY);
throw new CoreException(new MissingMandatoryPropertyErrorBuilder(propertyName).build());
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
return attachedResourceId.get();
}
private void handleNovaGetResource(TranslateTo translateTo, RelationshipTemplate relationTemplate,
String relationshipTemplateId, String heatFileName,
AttachedResourceId volResourceId, String novaResourceId) {
- String toscaCapabilityAttachment = "tosca.capabilities.Attachment";
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
RequirementAssignment requirement = new RequirementAssignment();
requirement.setCapability(toscaCapabilityAttachment);
if (volResourceId.isGetResource()) {
@@ -105,6 +145,8 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
+ " The connection to the volume is ignored. "
+ "Supported types are: "
+ HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
requirement.setNode((String) volResourceId.getTranslatedId());
@@ -112,7 +154,7 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
DataModelUtil
.addRelationshipTemplate(translateTo.getServiceTemplate(), relationshipTemplateId,
relationTemplate);
- } else if (volResourceId.isGetParam()) {
+ } else if (volResourceId.isGetParam() && volResourceId.getEntityId() instanceof String) {
String volumeResourceIdParamName = (String) volResourceId.getEntityId();
if (translateTo.getContext().getHeatSharedResourcesByParam()
.containsKey(volumeResourceIdParamName) && !isHeatFileNested(translateTo, heatFileName)) {
@@ -127,6 +169,8 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
+ " The connection to the volume is ignored. "
+ "Supported types are: "
+ HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
requirement.setNode(
@@ -149,8 +193,10 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
+ "' is pointing to unsupported resource type(" + novaServerResource.getType()
+ ") through the property 'instance_uuid'."
+ " The connection to the nova server is ignored. "
- + "Supported types are: " + HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE
- .getHeatResource());
+ + "Supported types are: "
+ + HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
Optional<String> translatedNovaServerId =
@@ -162,13 +208,24 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
if (translatedNovaServerId.isPresent() && StringUtils.isNotEmpty(requirement.getNode())) {
NodeTemplate novaServerNodeTemplate = DataModelUtil
.getNodeTemplate(translateTo.getServiceTemplate(), translatedNovaServerId.get());
- DataModelUtil.addRequirementAssignment(novaServerNodeTemplate, "local_storage", requirement);
+ DataModelUtil.addRequirementAssignment(novaServerNodeTemplate, ToscaConstants
+ .LOCAL_STORAGE_REQUIREMENT_ID, requirement);
+ //Add volume information to consolidation data
+ ConsolidationDataUtil.updateComputeConsolidationDataVolumes(translateTo,
+ novaServerNodeTemplate.getType(), translatedNovaServerId.get(), ToscaConstants
+ .LOCAL_STORAGE_REQUIREMENT_ID, requirement);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void handleUnsharedVolume(TranslateTo translateTo, RelationshipTemplate relationTemplate,
String relationshipTemplateId, String heatFileName,
RequirementAssignment requirement, String volumeResourceId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<FileData> allFilesData = translateTo.getContext().getManifest().getContent().getData();
Optional<FileData> fileData = HeatToToscaUtil.getFileData(heatFileName, allFilesData);
if (fileData.isPresent()) {
@@ -176,11 +233,12 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
new VolumeTranslationHelper(logger)
.getFileDataContainingVolume(fileData.get().getData(), volumeResourceId, translateTo,
FileData.Type.HEAT_VOL);
- if (fileDataContainingResource.isPresent()) {
- addRelationshipToServiceTemplate(translateTo, relationTemplate, relationshipTemplateId,
- requirement, fileDataContainingResource.get());
- }
+ fileDataContainingResource.ifPresent(
+ resourceFileDataAndIDs -> addRelationshipToServiceTemplate(translateTo, relationTemplate,
+ relationshipTemplateId, requirement, resourceFileDataAndIDs));
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private boolean isHeatFileNested(TranslateTo translateTo, String heatFileName) {
@@ -192,11 +250,19 @@ public class ResourceTranslationCinderVolumeAttachmentImpl extends ResourceTrans
String relationshipTemplateId,
RequirementAssignment requirement,
ResourceFileDataAndIDs resourceFileDataAndIDs) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String translatedId = resourceFileDataAndIDs.getTranslatedResourceId();
- relationTemplate.getProperties().put("volume_id", translatedId);
+ String toscaVolIdPropName =
+ HeatToToscaUtil.getToscaPropertyName(translateTo, HeatConstants.VOL_ID_PROPERTY_NAME);
+ relationTemplate.getProperties().put(toscaVolIdPropName, translatedId);
requirement.setNode(translatedId);
requirement.setRelationship(relationshipTemplateId);
DataModelUtil.addRelationshipTemplate(translateTo.getServiceTemplate(), relationshipTemplateId,
relationTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeImpl.java
index c1e5fe3900..04e71cc2c7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeImpl.java
@@ -18,45 +18,57 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.common.utils.CommonUtil;
import org.openecomp.sdc.heat.datatypes.HeatBoolean;
+import org.openecomp.sdc.heat.services.HeatConstants;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.Constants;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
import java.util.Map;
-import java.util.Optional;
+
public class ResourceTranslationCinderVolumeImpl extends ResourceTranslationBase {
@Override
public void translate(TranslateTo translateTo) {
- NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.CINDER_VOLUME.getDisplayName());
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ NodeTemplate nodeTemplate = new NodeTemplate();
+ nodeTemplate.setType(ToscaNodeType.CINDER_VOLUME);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
handleSizeProperty(nodeTemplate.getProperties());
- Object readOnly = nodeTemplate.getProperties().get("read_only");
- if (readOnly != null && !(readOnly instanceof Map)) {
- nodeTemplate.getProperties().put("read_only", HeatBoolean.eval(readOnly));
- }
- Optional<String> resourceTranslatedId = getResourceTranslatedId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), translateTo.getResourceId(),
- translateTo.getContext());
- if (resourceTranslatedId.isPresent()) {
- DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), resourceTranslatedId.get(),
- nodeTemplate);
+ String toscaReadOnlyPropName =
+ HeatToToscaUtil.getToscaPropertyName(translateTo, HeatConstants.READ_ONLY_PROPERTY_NAME);
+ Object readOnlyPropVal = nodeTemplate.getProperties().get(toscaReadOnlyPropName);
+ if (readOnlyPropVal != null && !(readOnlyPropVal instanceof Map)) {
+ nodeTemplate.getProperties().put(toscaReadOnlyPropName, HeatBoolean.eval(readOnlyPropVal));
}
+ DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
+
private void handleSizeProperty(Map<String, Object> nodeTemplateProperties) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object size = nodeTemplateProperties.get("size");
if (size == null) {
return;
@@ -64,14 +76,17 @@ public class ResourceTranslationCinderVolumeImpl extends ResourceTranslationBase
if (size instanceof Map) {
Map<String, Object> propMap = (Map) size;
- if (propMap.entrySet().iterator().hasNext()) {
- Map.Entry entry = propMap.entrySet().iterator().next();
+ for (Map.Entry entry : propMap.entrySet()) {
String val = "(" + entry.getKey() + " : " + entry.getValue() + ") * 1024";
nodeTemplateProperties.put("size", val);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
} else {
nodeTemplateProperties.put("size", size + "*1024");
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailAttachPolicyImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java
index 307e407119..d729c04cca 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailAttachPolicyImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailAttachPolicyImpl.java
@@ -18,14 +18,23 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
@@ -33,20 +42,23 @@ import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
import org.openecomp.sdc.translator.services.heattotosca.errors.MissingMandatoryPropertyErrorBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.Optional;
public class ResourceTranslationContrailAttachPolicyImpl extends ResourceTranslationBase {
protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationContrailAttachPolicyImpl.class);
+ (Logger) LoggerFactory.getLogger(ResourceTranslationContrailAttachPolicyImpl.class);
@Override
protected void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String heatFileName = translateTo.getHeatFileName();
String translatedNetworkResourceId = getTranslatedNetworkResourceId(translateTo);
if (translatedNetworkResourceId == null) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
@@ -56,28 +68,52 @@ public class ResourceTranslationContrailAttachPolicyImpl extends ResourceTransla
.addRequirementAssignment(policyNodeTemplate, ToscaConstants.NETWORK_REQUIREMENT_ID,
createRequirementAssignment(translatedNetworkResourceId));
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ protected String generateTranslatedId(TranslateTo translateTo) {
+ return extractAttachedResourceIdHandleMissing(translateTo, "network").getEntityId()
+ .toString();
+ }
+
+ @Override
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ return Optional.empty();
}
private NodeTemplate getTranslatedPolicyNodeTemplate(TranslateTo translateTo,
String heatFileName) {
- Optional<AttachedResourceId> attachedPolicyResourceId =
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ AttachedResourceId attachedPolicyResourceId =
extractAttachedResourceIdHandleMissing(translateTo, "policy");
NodeTemplate policyNodeTemplate = new NodeTemplate();
Optional<String> policyResourceId =
- HeatToToscaUtil.getContrailAttachedHeatResourceId(attachedPolicyResourceId.get());
+ HeatToToscaUtil.getContrailAttachedHeatResourceId(attachedPolicyResourceId);
if (policyResourceId.isPresent()) {
policyNodeTemplate = getPolicyNodeTemplate(translateTo, heatFileName, policyResourceId.get());
} else {
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' include 'policy' property without 'get_attr' of 'fq_name'/'get_resource'"
- + " function, therefore this resource will be ignored in TOSCA translation.");
+ + "' include 'policy' property without 'get_attr' of 'fq_name'/'get_resource' function,"
+ + " therefore this resource will be ignored in TOSCA translation.");
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return policyNodeTemplate;
}
private NodeTemplate getPolicyNodeTemplate(TranslateTo translateTo, String heatFileName,
String policyResourceId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Resource policyResource = HeatToToscaUtil
.getResource(translateTo.getHeatOrchestrationTemplate(), policyResourceId, heatFileName);
Optional<String> translatedPolicyResourceId =
@@ -88,54 +124,71 @@ public class ResourceTranslationContrailAttachPolicyImpl extends ResourceTransla
if (!translatedPolicyResourceId.isPresent()) {
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' include unsupported policy resource, therefore this "
- + "resource will be ignored in TOSCA translation. ");
+ + "' include unsupported policy resource, therefore this resource will be ignored in "
+ + "TOSCA translation. ");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return null;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return DataModelUtil
- .getNodeTemplate(translateTo.getServiceTemplate(),
- translatedPolicyResourceId.get());
+ .getNodeTemplate(translateTo.getServiceTemplate(), translatedPolicyResourceId.get());
}
private String getTranslatedNetworkResourceId(TranslateTo translateTo) {
- Optional<AttachedResourceId> attachedNetworkResourceId =
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ AttachedResourceId attachedNetworkResourceId =
extractAttachedResourceIdHandleMissing(translateTo, "network");
String translatedNetworkResourceId = null;
- if (attachedNetworkResourceId.get().isGetResource()) {
- translatedNetworkResourceId = (String) attachedNetworkResourceId.get().getTranslatedId();
+ if (attachedNetworkResourceId.isGetResource()) {
+ translatedNetworkResourceId = (String) attachedNetworkResourceId.getTranslatedId();
} else {
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' include 'network' property without 'get_resource' function, "
- + "therefore this resource will be ignored in TOSCA translation.");
+ + "' include 'network' property without 'get_resource' function, therefore this "
+ + "resource will be ignored in TOSCA translation.");
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return translatedNetworkResourceId;
}
private RequirementAssignment createRequirementAssignment(String translatedNetworkResourceId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
+ requirement.setCapability(ToscaCapabilityType.NATIVE_ATTACHMENT);
requirement.setNode(translatedNetworkResourceId);
- requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
+ requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return requirement;
}
- private Optional<AttachedResourceId> extractAttachedResourceIdHandleMissing(
+ private AttachedResourceId extractAttachedResourceIdHandleMissing(
TranslateTo translateTo, String propertyName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<AttachedResourceId> attachedResourceId =
HeatToToscaUtil.extractAttachedResourceId(translateTo, propertyName);
if (!attachedResourceId.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_REQUIREMENT_ASSIGNMENT, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.MISSING_MANDATORY_PROPERTY);
throw new CoreException(new MissingMandatoryPropertyErrorBuilder(propertyName).build());
}
- return attachedResourceId;
- }
-
- @Override
- protected String generateTranslatedId(TranslateTo translateTo) {
- return extractAttachedResourceIdHandleMissing(translateTo, "network").get().getEntityId()
- .toString();
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return attachedResourceId.get();
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailNetworkPolicyImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailNetworkPolicyImpl.java
index 8084433fd5..374858be0c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailNetworkPolicyImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailNetworkPolicyImpl.java
@@ -18,29 +18,34 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
public class ResourceTranslationContrailNetworkPolicyImpl extends ResourceTranslationBase {
protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationContrailNetworkPolicyImpl.class);
+ (Logger) LoggerFactory.getLogger(ResourceTranslationContrailNetworkPolicyImpl.class);
@Override
protected void translate(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.CONTRAIL_NETWORK_RULE.getDisplayName());
+ nodeTemplate.setType(ToscaNodeType.CONTRAIL_NETWORK_RULE);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
@@ -48,6 +53,6 @@ public class ResourceTranslationContrailNetworkPolicyImpl extends ResourceTransl
DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
nodeTemplate);
-
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceInstanceImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceInstanceImpl.java
index b2475f28a9..eed7953cda 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceInstanceImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceInstanceImpl.java
@@ -18,13 +18,21 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.HeatBoolean;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
import org.openecomp.sdc.tosca.datatypes.ToscaGroupType;
@@ -32,7 +40,7 @@ import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Metadata;
+import org.openecomp.sdc.tosca.datatypes.model.Import;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
@@ -43,8 +51,10 @@ import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.datatypes.model.SubstitutionMapping;
import org.openecomp.sdc.tosca.datatypes.model.TopologyTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.tosca.services.ToscaUtil;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
@@ -53,15 +63,9 @@ import org.openecomp.sdc.translator.services.heattotosca.Constants;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
import org.openecomp.sdc.translator.services.heattotosca.errors.MissingMandatoryPropertyErrorBuilder;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.ContrailAbstractSubstituteGlobalType;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.ContrailComputeGlobalType;
import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
-import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesUtil;
import org.openecomp.sdc.translator.services.heattotosca.helper.ContrailTranslationHelper;
-import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaFunctionConverter;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.Arrays;
@@ -73,10 +77,14 @@ import java.util.Optional;
public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTranslationBase {
protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationContrailServiceInstanceImpl.class);
+ (Logger) LoggerFactory.getLogger(ResourceTranslationContrailServiceInstanceImpl.class);
@Override
public void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Resource serviceInstanceResource = translateTo.getResource();
AttachedResourceId contrailServiceTemplateAttached =
getServiceTemplateAttachedId(translateTo, serviceInstanceResource);
@@ -90,12 +98,13 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
.equals(HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource())) {
logger.warn("resource id '" + translateTo.getResourceId() + "' with type '"
+ translateTo.getResource().getType()
- + "+ has reference to resource '" + contrailServiceTemplateResourceId + "' with type "
- + "'"
+ + "+ has reference to resource '" + contrailServiceTemplateResourceId + "' with type '"
+ contrailServiceTemplateResource.getType()
+ "' in property service_template. Invalid type, resource type should be type of '"
+ HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource()
+ "', therefore this resource will be ignored in TOSCA translation.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
Optional<String> contrailServiceTemplateTranslatedId =
@@ -110,12 +119,18 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
+ "' with type '" + contrailServiceTemplateResource.getType()
+ "' in property 'service_template'"
+ ", therefore this resource will be ignored in TOSCA translation.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
+ /*throw new CoreException(new ReferenceToUnsupportedResourceErrorBuilder
+ (translateTo.getResourceId(), translateTo.getResource().getType(),
+ contrailServiceTemplateResourceId, contrailServiceTemplateResource
+ .getType(), "service_template").build());*/
}
ServiceTemplate globalSubstitutionServiceTemplate =
- translateTo.getContext().getTranslatedServiceTemplates()
- .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ translateTo.getContext().getTranslatedServiceTemplates().get(
+ Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
String contrailStId = ResourceTranslationContrailServiceTemplateImpl
.getContrailSubstitutedNodeTypeId(contrailServiceTemplateTranslatedId.get());
NodeType substitutedNodeType =
@@ -127,6 +142,8 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
logger.warn("More than one ServiceInstance pointing to the same ServiceTemplate '"
+ contrailServiceTemplateResourceId + " ' with different number of interfaces."
+ ", therefore this resource will be ignored in TOSCA translation.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
@@ -136,30 +153,36 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
numberOfPorts);
String computeNodeTypeId = new ContrailTranslationHelper()
- .getComputeNodeTypeId(contrailServiceTemplateTranslatedId.get(),
- contrailServiceTemplateResource);
+ .getComputeNodeTypeId(contrailServiceTemplateResource, contrailServiceTemplateResourceId,
+ contrailServiceTemplateTranslatedId.get(), translateTo.getContext());
boolean orderedInterfaces = getOrderedInterfaces(contrailServiceTemplateResource);
ServiceTemplate nestedServiceTemplate =
createNestedServiceTemplate(translateTo, computeNodeTypeId, contrailStId,
substitutedNodeTemplate, orderedInterfaces);
addAbstractSubstitutionProperty(translateTo, substitutedNodeTemplate.getProperties(),
nestedServiceTemplate, contrailServiceTemplateResource);
- translateTo.getContext().getTranslatedServiceTemplates()
- .put(translateTo.getTranslatedId(), nestedServiceTemplate);
+ translateTo.getContext().getTranslatedServiceTemplates().put(new ContrailTranslationHelper()
+ .getSubstitutionContrailServiceTemplateMetadata(translateTo.getHeatFileName(),
+ translateTo.getTranslatedId()), nestedServiceTemplate);
} else {
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' include 'service_template' property without 'get_resource' function, currently not "
- + "supported, therefore this resource will be ignored in TOSCA translation.");
+ + "' include 'service_template' property without 'get_resource' function, currently not"
+ + " supported, therefore this resource will be ignored in TOSCA translation.");
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void addAbstractSubstitutionProperty(TranslateTo translateTo,
Map<String, Object> substitutionProperties,
ServiceTemplate nestedServiceTemplate,
Resource contrailServiceTemplateResource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Map<String, Object> innerProps = new HashMap<>();
innerProps.put(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME,
ToscaUtil.getServiceTemplateFileName(nestedServiceTemplate));
@@ -176,15 +199,22 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
}
innerProps.put("mandatory", mandatory);
substitutionProperties.put(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME, innerProps);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private Object handleScaleOutProperty(TranslateTo translateTo, Map<String, Object> innerProps) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object scaleOutPropertyValue =
translateTo.getResource().getProperties().get(HeatConstants.SCALE_OUT_PROPERTY_NAME);
Object countValue = null;
if (scaleOutPropertyValue != null && scaleOutPropertyValue instanceof Map) {
countValue = TranslatorHeatToToscaPropertyConverter
- .getToscaPropertyValue(Constants.MAX_INSTANCES_PROPERTY_NAME,
+ .getToscaPropertyValue(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ Constants.MAX_INSTANCES_PROPERTY_NAME,
((Map) scaleOutPropertyValue).get(Constants.MAX_INSTANCES_PROPERTY_NAME), null,
translateTo.getHeatFileName(), translateTo.getHeatOrchestrationTemplate(), null,
translateTo.getContext());
@@ -196,36 +226,52 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
} else {
innerProps.put(ToscaConstants.COUNT_PROPERTY_NAME, 1);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return countValue;
}
private void handleServiceScalingProperty(TranslateTo translateTo, Map<String, Object> innerProps,
Resource contrailServiceTemplateResource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object serviceScalingPropertyValue = contrailServiceTemplateResource.getProperties()
.get(HeatConstants.SERVICE_SCALING_PROPERTY_NAME);
Object serviceScalingValue = null;
if (serviceScalingPropertyValue != null) {
serviceScalingValue = TranslatorHeatToToscaPropertyConverter
- .getToscaPropertyValue(HeatConstants.SERVICE_SCALING_PROPERTY_NAME,
- serviceScalingPropertyValue, null, translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), null, translateTo.getContext());
+ .getToscaPropertyValue(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ HeatConstants.SERVICE_SCALING_PROPERTY_NAME, serviceScalingPropertyValue, null,
+ translateTo.getHeatFileName(), translateTo.getHeatOrchestrationTemplate(), null,
+ translateTo.getContext());
if (serviceScalingValue != null) {
innerProps.put(ToscaConstants.SCALING_ENABLED_PROPERTY_NAME,
(HeatBoolean.isValueBoolean(serviceScalingValue)) ? HeatBoolean
.eval(serviceScalingValue) : serviceScalingValue);
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private boolean getOrderedInterfaces(Resource contrailServiceTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object orderedInterfaces = contrailServiceTemplate.getProperties().get("ordered_interfaces");
if (orderedInterfaces == null) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return false;
}
if (orderedInterfaces instanceof String) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return HeatBoolean.eval(orderedInterfaces);
}
//if get_param, set default value to true
+ mdcDataDebugMessage.debugExitMessage(null, null);
return true;
}
@@ -234,32 +280,47 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
String substitutedNodeTypeId,
NodeTemplate substitutedNodeTemplate,
boolean orderedInterfaces) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
ServiceTemplate nestedSubstitutionServiceTemplate = new ServiceTemplate();
setNestedServiceTemplateGeneralDetails(translateTo, nestedSubstitutionServiceTemplate);
String heatStackGroupKey = addHeatStackGroup(translateTo, nestedSubstitutionServiceTemplate);
addSubstitutionMappingEntry(nestedSubstitutionServiceTemplate, substitutedNodeTypeId);
- handleInputParameters(nestedSubstitutionServiceTemplate);
+ handleInputParameters(nestedSubstitutionServiceTemplate, translateTo);
String computeNodeTemplateId =
handleComputeNodeTemplate(translateTo, computeNodeTypeId, nestedSubstitutionServiceTemplate,
heatStackGroupKey);
- handleOutputParameters(nestedSubstitutionServiceTemplate, computeNodeTemplateId);
+ handleOutputParameters(nestedSubstitutionServiceTemplate, computeNodeTemplateId, translateTo);
handleServiceInstanceInterfaces(translateTo, nestedSubstitutionServiceTemplate,
substitutedNodeTemplate, heatStackGroupKey, orderedInterfaces, computeNodeTemplateId);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return nestedSubstitutionServiceTemplate;
}
private void handleOutputParameters(ServiceTemplate nestedSubstitutionServiceTemplate,
- String nodeTemplateId) {
+ String nodeTemplateId, TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (nodeTemplateId == null) {
return;
}
- NodeType contrailAbstractNodeType =
- ContrailAbstractSubstituteGlobalType.createServiceTemplate().getNode_types()
- .get(ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE.getDisplayName());
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+
+ Optional<NodeType> contrailAbstractNodeType =
+ toscaAnalyzerService.fetchNodeType(ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE, translateTo
+ .getContext().getGlobalServiceTemplates().values());
+
+ if (!contrailAbstractNodeType.isPresent()) {
+ return;
+ }
Map<String, AttributeDefinition> contrailAbstractAttributes =
- contrailAbstractNodeType.getAttributes();
+ contrailAbstractNodeType.get().getAttributes();
Map<String, ParameterDefinition> nestedSubstitutionServiceTemplateOutputs = new HashMap<>();
if (contrailAbstractAttributes == null) {
@@ -282,6 +343,8 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
nestedSubstitutionServiceTemplate.getTopology_template()
.setOutputs(nestedSubstitutionServiceTemplateOutputs);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void handleServiceInstanceInterfaces(TranslateTo translateTo,
@@ -289,8 +352,13 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
NodeTemplate substitutedNodeTemplate,
String heatStackGroupKey, boolean orderedInterfaces,
String computeNodeTemplateId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Resource serviceInstanceResource = translateTo.getResource();
- Object interfaceListProperty = serviceInstanceResource.getProperties().get("interface_list");
+ Object interfaceListProperty =
+ serviceInstanceResource.getProperties().get(HeatConstants.INTERFACE_LIST_PROPERTY_NAME);
if (interfaceListProperty == null) {
return;
}
@@ -304,6 +372,8 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
handleInterface(translateTo, interfaceListProperty, null, nestedSubstitutionServiceTemplate,
heatStackGroupKey, substitutedNodeTemplate, orderedInterfaces, computeNodeTemplateId);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void handleInterface(TranslateTo translateTo, Object interfacePropertyValue,
@@ -311,13 +381,17 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
ServiceTemplate nestedSubstitutionServiceTemplate,
String heatStackGroupKey, NodeTemplate substitutedNodeTemplate,
boolean orderedInterfaces, String computeNodeTemplateId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (index == null) {
index = new Integer(0);
}
NodeTemplate portNodeTemplate =
createPortNodeTemplate(index, orderedInterfaces, computeNodeTemplateId);
- String portNodeTemplateId = "port_" + index;
- String portReqMappingKey = "link_" + portNodeTemplateId;
+ String portNodeTemplateId = Constants.SERVICE_INSTANCE_PORT_PREFIX + index;
+ String portReqMappingKey = Constants.SERVICE_INSTANCE_LINK_PREFIX + portNodeTemplateId;
DataModelUtil
.addNodeTemplate(nestedSubstitutionServiceTemplate, portNodeTemplateId, portNodeTemplate);
@@ -326,17 +400,24 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
updateHeatStackGroup(nestedSubstitutionServiceTemplate, heatStackGroupKey, portNodeTemplateId);
connectPortToNetwork(translateTo, interfacePropertyValue, substitutedNodeTemplate,
portReqMappingKey);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void connectPortToNetwork(TranslateTo translateTo, Object interfacePropertyValue,
NodeTemplate substitutedNodeTemplate,
String portReqMappingKey) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<String> validNetworksForConnections = Arrays
.asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
HeatResourcesTypes.CONTRAIL_VIRTUAL_NETWORK_RESOURCE_TYPE.getHeatResource());
if (interfacePropertyValue instanceof Map) {
- Object virtualNetworkValue = ((Map) interfacePropertyValue).get("virtual_network");
+ Object virtualNetworkValue =
+ ((Map) interfacePropertyValue).get(HeatConstants.VIRTUAL_NETWORK_PROPERTY_NAME);
if (virtualNetworkValue != null) {
Optional<AttachedResourceId> networkAttachedResourceId = HeatToToscaUtil
.extractAttachedResourceId(translateTo.getHeatFileName(),
@@ -354,18 +435,21 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
getResourceTranslatedId(translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), networkResourceId.get(),
translateTo.getContext());
- if (networkTranslatedId.isPresent()) {
- addLinkToNetworkRequirementAssignment(substitutedNodeTemplate,
- networkTranslatedId.get(), portReqMappingKey);
- }
+ networkTranslatedId
+ .ifPresent(
+ translatedId -> addLinkToNetworkRequirementAssignment(substitutedNodeTemplate,
+ translatedId, portReqMappingKey));
+
} else {
logger.warn("Heat resource " + translateTo.getResourceId() + " with type "
+ translateTo.getResource().getType()
+ " has connection to invalid/not supported network resource, therefore, this "
+ "connection will be ignored in the translation.");
}
- } else if (networkAttachedResourceId.get().isGetParam()) {
- TranslatedHeatResource translatedSharedResourceId =
+ } else if (networkAttachedResourceId.get().isGetParam()
+ && networkAttachedResourceId.get().getEntityId() instanceof String) {
+ TranslatedHeatResource
+ translatedSharedResourceId =
translateTo.getContext().getHeatSharedResourcesByParam()
.get(networkAttachedResourceId.get().getEntityId());
if (Objects.nonNull(translatedSharedResourceId)
@@ -387,14 +471,22 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
+ translateTo.getResource().getType()
+ "' missing 'virtual_network' property in 'interface_list' entry, therefore, no "
+ "network connection is define for this entry.");
+ //throw new CoreException(new
+ // MissingMandatoryPropertyErrorBuilder("virtual_network").build());
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private NodeTemplate createPortNodeTemplate(Integer index, boolean orderedInterfaces,
String computeNodeTemplateId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate portNodeTemplate = new NodeTemplate();
- portNodeTemplate.setType(ToscaNodeType.CONTRAIL_PORT.getDisplayName());
+ portNodeTemplate.setType(ToscaNodeType.CONTRAIL_PORT);
Map<String, Object> portProperties = new HashMap<>();
portProperties.put("static_routes", DataModelUtil
.createGetInputPropertyValueFromListParameter("interface_list", index, "static_routes"));
@@ -415,7 +507,9 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
portProperties.put("order", index);
}
portNodeTemplate.setProperties(portProperties);
- addBindingReqFromPortToCompute(computeNodeTemplateId, portNodeTemplate);
+ HeatToToscaUtil.addBindingReqFromPortToCompute(computeNodeTemplateId, portNodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return portNodeTemplate;
}
@@ -423,77 +517,122 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
private void addLinkToNetworkRequirementAssignment(NodeTemplate nodeTemplate,
String connectedNodeTranslatedId,
String requirementId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (nodeTemplate == null || connectedNodeTranslatedId == null) {
return;
}
RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName());
- requirement.setRelationship(ToscaRelationshipType.NETWORK_LINK_TO.getDisplayName());
+ requirement.setCapability(ToscaCapabilityType.NATIVE_NETWORK_LINKABLE);
+ requirement.setRelationship(ToscaRelationshipType.NATIVE_NETWORK_LINK_TO);
requirement.setNode(connectedNodeTranslatedId);
DataModelUtil.addRequirementAssignment(nodeTemplate, requirementId, requirement);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void updateHeatStackGroup(ServiceTemplate serviceTemplate, String heatStackGroupKey,
String memberId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
serviceTemplate.getTopology_template().getGroups().get(heatStackGroupKey).getMembers()
.add(memberId);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void updateSubstitutionMappingRequirement(ServiceTemplate serviceTemplate,
String portReqMappingKey,
String portNodeTemplateId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<String> portReqMappingValue = new ArrayList<>();
portReqMappingValue.add(portNodeTemplateId);
portReqMappingValue.add(ToscaConstants.LINK_REQUIREMENT_ID);
DataModelUtil
.addSubstitutionMappingReq(serviceTemplate, portReqMappingKey, portReqMappingValue);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void addSubstitutionMappingEntry(ServiceTemplate nestedSubstitutionServiceTemplate,
String substitutedNodeTypeId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
SubstitutionMapping substitutionMappings = new SubstitutionMapping();
substitutionMappings.setNode_type(substitutedNodeTypeId);
DataModelUtil.addSubstitutionMapping(nestedSubstitutionServiceTemplate, substitutionMappings);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
- private void handleInputParameters(ServiceTemplate nestedSubstitutionServiceTemplate) {
- NodeType contrailAbstractNodeType =
- ContrailAbstractSubstituteGlobalType.createServiceTemplate().getNode_types()
- .get(ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE.getDisplayName());
- Map<String, PropertyDefinition> contrailAbstractProperties =
- contrailAbstractNodeType.getProperties();
+ private void handleInputParameters(ServiceTemplate nestedSubstitutionServiceTemplate,
+ TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+
+ Optional<NodeType> contrailAbstractNodeType =
+ toscaAnalyzerService.fetchNodeType(ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE, translateTo
+ .getContext().getGlobalServiceTemplates().values());
Map<String, ParameterDefinition> nestedSubstitutionServiceTemplateInputs = new HashMap<>();
+ if (contrailAbstractNodeType.isPresent()) {
+ Map<String, PropertyDefinition> contrailAbstractProperties =
+ contrailAbstractNodeType.get().getProperties();
- for (String propertyKey : contrailAbstractProperties.keySet()) {
- PropertyDefinition abstractPropertyDef = contrailAbstractProperties.get(propertyKey);
- if (abstractPropertyDef != null) {
- nestedSubstitutionServiceTemplateInputs
- .put(propertyKey, DataModelUtil.convertPropertyDefToParameterDef(abstractPropertyDef));
+ for (String propertyKey : contrailAbstractProperties.keySet()) {
+ PropertyDefinition abstractPropertyDef = contrailAbstractProperties.get(propertyKey);
+ if (abstractPropertyDef != null) {
+ nestedSubstitutionServiceTemplateInputs
+ .put(propertyKey,
+ DataModelUtil.convertPropertyDefToParameterDef(abstractPropertyDef));
+ }
}
}
if (!nestedSubstitutionServiceTemplateInputs.isEmpty()) {
nestedSubstitutionServiceTemplate.getTopology_template()
.setInputs(nestedSubstitutionServiceTemplateInputs);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private String handleComputeNodeTemplate(TranslateTo translateTo, String computeNodeTypeId,
ServiceTemplate nestedSubstitutionServiceTemplate,
String heatStackGroupKey) {
- NodeType contrailComputeNodeType =
- ContrailComputeGlobalType.createServiceTemplate().getNode_types()
- .get(ToscaNodeType.CONTRAIL_COMPUTE.getDisplayName());
- Map<String, PropertyDefinition> contrailComputeProperties =
- contrailComputeNodeType.getProperties();
- Map<String, Object> computeNodeTemplateProperties = new HashMap<>();
-
- if (contrailComputeProperties != null) {
- for (String computePropertyKey : contrailComputeProperties.keySet()) {
- Map getInputProperty = new HashMap<>();
- getInputProperty.put(ToscaFunctions.GET_INPUT.getDisplayName(), computePropertyKey);
- computeNodeTemplateProperties.put(computePropertyKey, getInputProperty);
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ Optional<NodeType> contrailComputeNodeType = toscaAnalyzerService
+ .fetchNodeType(ToscaNodeType.CONTRAIL_COMPUTE,
+ translateTo.getContext().getGlobalServiceTemplates().values());
+
+ Map<String, Object> computeNodeTemplateProperties = null;
+ if (contrailComputeNodeType.isPresent()) {
+ Map<String, PropertyDefinition> contrailComputeProperties =
+ contrailComputeNodeType.get().getProperties();
+ computeNodeTemplateProperties = new HashMap<>();
+
+ if (contrailComputeProperties != null) {
+ for (String computePropertyKey : contrailComputeProperties.keySet()) {
+ Map getInputProperty = new HashMap<>();
+ getInputProperty.put(ToscaFunctions.GET_INPUT.getDisplayName(), computePropertyKey);
+ computeNodeTemplateProperties.put(computePropertyKey, getInputProperty);
+ }
}
}
@@ -508,39 +647,52 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
nestedSubstitutionServiceTemplate.getTopology_template().getGroups().get(heatStackGroupKey)
.getMembers().add(computeNodeTemplateId);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return computeNodeTemplateId;
}
private String addHeatStackGroup(TranslateTo translateTo, ServiceTemplate serviceTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
GroupDefinition serviceInstanceGroupDefinition = new GroupDefinition();
- serviceInstanceGroupDefinition.setType(ToscaGroupType.HEAT_STACK.getDisplayName());
+ serviceInstanceGroupDefinition.setType(ToscaGroupType.HEAT_STACK);
Map<String, Object> groupProperties = new HashMap<>();
groupProperties.put("heat_file",
"../" + (new ToscaFileOutputServiceCsarImpl()).getArtifactsFolderName() + "/"
+ translateTo.getHeatFileName());
serviceInstanceGroupDefinition.setProperties(groupProperties);
serviceInstanceGroupDefinition.setMembers(new ArrayList<>());
- String heatStackGroupKey = translateTo.getTranslatedId();
+ String heatStackGroupKey = translateTo.getTranslatedId() + "_group";
DataModelUtil.addGroupDefinitionToTopologyTemplate(serviceTemplate, heatStackGroupKey,
serviceInstanceGroupDefinition);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return heatStackGroupKey;
}
private void setNestedServiceTemplateGeneralDetails(TranslateTo translateTo,
- ServiceTemplate nestedSubstitutionServiceTemplate) {
- Metadata nestedTemplateMetadata = new Metadata();
- String nestedTemplateName = translateTo.getResourceId();
- nestedTemplateMetadata.setTemplate_name(nestedTemplateName);
+ ServiceTemplate
+ nestedSubstitutionServiceTemplate) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, String> nestedTemplateMetadata = new HashMap<>();
+ String nestedTemplateName = new ContrailTranslationHelper()
+ .getSubstitutionContrailServiceTemplateMetadata(translateTo.getHeatFileName(),
+ translateTo.getResourceId());
+ nestedTemplateMetadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, nestedTemplateName);
nestedSubstitutionServiceTemplate.setMetadata(nestedTemplateMetadata);
nestedSubstitutionServiceTemplate
.setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
nestedSubstitutionServiceTemplate.setTopology_template(new TopologyTemplate());
- nestedSubstitutionServiceTemplate.setImports(GlobalTypesGenerator.getGlobalTypesImportList());
- nestedSubstitutionServiceTemplate.getImports()
- .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
+ List<Map<String, Import>> globalTypesImportList =
+ GlobalTypesGenerator.getGlobalTypesImportList();
+ globalTypesImportList.addAll(
+ HeatToToscaUtil.createImportList(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
+ nestedSubstitutionServiceTemplate.setImports(globalTypesImportList);
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private NodeTemplate createSubstitutedNodeTemplate(TranslateTo translateTo,
@@ -548,89 +700,127 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
String contrailServiceTemplateTranslatedId,
int numberOfPorts) {
- translateTo.getServiceTemplate().getImports()
- .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME, GlobalTypesUtil
- .createServiceTemplateImport(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ boolean isImportAddedToServiceTemplate =
+ DataModelUtil
+ .isImportAddedToServiceTemplate(translateTo.getServiceTemplate().getImports(), Constants
+ .GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ if (!isImportAddedToServiceTemplate) {
+ translateTo.getServiceTemplate().getImports()
+ .addAll(HeatToToscaUtil
+ .createImportList(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME));
+ }
NodeTemplate substitutesNodeTemplate = new NodeTemplate();
substitutesNodeTemplate.setType(contrailServiceTemplateTranslatedId);
List<String> directiveList = new ArrayList<>();
directiveList.add(ToscaConstants.NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE);
substitutesNodeTemplate.setDirectives(directiveList);
substitutesNodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(), translateTo.
+ getResourceId(), translateTo.getResource().getProperties(),
substitutesNodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(),
HeatResourcesTypes.CONTRAIL_SERVICE_INSTANCE.getHeatResource(), substitutesNodeTemplate,
translateTo.getContext()));
substitutesNodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(contrailServiceTemplateResource.getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(), translateTo.
+ getResourceId(), contrailServiceTemplateResource.getProperties(),
substitutesNodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(),
HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(), substitutesNodeTemplate,
translateTo.getContext()));
- HeatToToscaUtil.mapBoolean(substitutesNodeTemplate, "availability_zone_enable");
- HeatToToscaUtil.mapBoolean(substitutesNodeTemplate, "ordered_interfaces");
+ HeatToToscaUtil.mapBoolean(substitutesNodeTemplate, HeatToToscaUtil
+ .getToscaPropertyName(translateTo.getContext(), contrailServiceTemplateResource.getType(),
+ HeatConstants.AVAILABILITY_ZONE_ENABLE_PROPERTY_NAME));
+ HeatToToscaUtil.mapBoolean(substitutesNodeTemplate, HeatToToscaUtil
+ .getToscaPropertyName(translateTo.getContext(), contrailServiceTemplateResource.getType(),
+ HeatConstants.ORDERED_INTERFACES_PROPERTY_NAME));
Object sharedIpListPropertyValue =
- contrailServiceTemplateResource.getProperties().get("shared_ip_list");
+ contrailServiceTemplateResource.getProperties()
+ .get(HeatConstants.SHARED_IP_LIST_PROPERTY_NAME);
+ String toscaSharedIpListPropertyName = HeatToToscaUtil
+ .getToscaPropertyName(translateTo.getContext(), contrailServiceTemplateResource.getType(),
+ HeatConstants.SHARED_IP_LIST_PROPERTY_NAME);
Optional<List<Map<String, List>>> sharedIpTranslatedSplitFun =
- TranslatorHeatToToscaFunctionConverter
+ new ContrailTranslationHelper()
.translateFnSplitFunction(sharedIpListPropertyValue, numberOfPorts, true);
if (sharedIpTranslatedSplitFun.isPresent()) {
substitutesNodeTemplate.getProperties()
- .put("shared_ip_list", sharedIpTranslatedSplitFun.get());
+ .put(toscaSharedIpListPropertyName, sharedIpTranslatedSplitFun.get());
} else {
- HeatToToscaUtil.mapBooleanList(substitutesNodeTemplate, "shared_ip_list");
+ HeatToToscaUtil.mapBooleanList(substitutesNodeTemplate, toscaSharedIpListPropertyName);
}
Object staticRouteListPropertyValue =
- contrailServiceTemplateResource.getProperties().get("static_routes_list");
+ contrailServiceTemplateResource.getProperties()
+ .get(HeatConstants.STATIC_ROUTES_LIST_PROPERTY_NAME);
+ String toscaStaticRoutesListPropertyName = HeatToToscaUtil
+ .getToscaPropertyName(translateTo.getContext(), contrailServiceTemplateResource.getType(),
+ HeatConstants.STATIC_ROUTES_LIST_PROPERTY_NAME);
Optional<List<Map<String, List>>> staticRouteTranslatedSplitFun =
- TranslatorHeatToToscaFunctionConverter
+ new ContrailTranslationHelper()
.translateFnSplitFunction(staticRouteListPropertyValue, numberOfPorts, true);
if (staticRouteTranslatedSplitFun.isPresent()) {
substitutesNodeTemplate.getProperties()
- .put("static_routes_list", staticRouteTranslatedSplitFun.get());
+ .put(toscaStaticRoutesListPropertyName, staticRouteTranslatedSplitFun.get());
} else {
- HeatToToscaUtil.mapBooleanList(substitutesNodeTemplate, "static_routes_list");
+ HeatToToscaUtil.mapBooleanList(substitutesNodeTemplate, toscaStaticRoutesListPropertyName);
}
Object serviceInterfaceTypeListPropertyValue =
- contrailServiceTemplateResource.getProperties().get("service_interface_type_list");
+ contrailServiceTemplateResource.getProperties()
+ .get(HeatConstants.SERVICE_INTERFCAE_TYPE_LIST_PROPERTY_NAME);
+ String toscaServiceInterfaceTypeListPropertyName = HeatToToscaUtil
+ .getToscaPropertyName(translateTo.getContext(), contrailServiceTemplateResource.getType(),
+ HeatConstants.SERVICE_INTERFCAE_TYPE_LIST_PROPERTY_NAME);
Optional<List<Map<String, List>>> serviceInterfaceTypeTranslatedSplitFun =
- TranslatorHeatToToscaFunctionConverter
+ new ContrailTranslationHelper()
.translateFnSplitFunction(serviceInterfaceTypeListPropertyValue, numberOfPorts, false);
- if (serviceInterfaceTypeTranslatedSplitFun.isPresent()) {
- substitutesNodeTemplate.getProperties()
- .put("service_interface_type_list", serviceInterfaceTypeTranslatedSplitFun.get());
- }
+ serviceInterfaceTypeTranslatedSplitFun
+ .ifPresent(translatedSplitFun -> substitutesNodeTemplate.getProperties()
+ .put(toscaServiceInterfaceTypeListPropertyName, translatedSplitFun));
String substitutedNodeTemplateId = translateTo.getTranslatedId();
DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), substitutedNodeTemplateId,
substitutesNodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return substitutesNodeTemplate;
}
private void addNetworkLinkRequirements(NodeType nodeType, int numberOfPorts) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (nodeType.getRequirements() == null) {
List<Map<String, RequirementDefinition>> requirementList = new ArrayList<>();
for (int i = 0; i < numberOfPorts; i++) {
Map<String, RequirementDefinition> requirementDefinitionMap = new HashMap<>();
requirementDefinitionMap.put(ToscaConstants.LINK_REQUIREMENT_ID + "_port_" + i,
- DataModelUtil.createRequirement(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName(),
- ToscaNodeType.ROOT.getDisplayName(),
- ToscaRelationshipType.NETWORK_LINK_TO.getDisplayName(), null));
+ DataModelUtil.createRequirement(ToscaCapabilityType.NATIVE_NETWORK_LINKABLE,
+ ToscaNodeType.NATIVE_ROOT,
+ ToscaRelationshipType.NATIVE_NETWORK_LINK_TO, null));
requirementList.add(requirementDefinitionMap);
}
if (numberOfPorts > 0) {
nodeType.setRequirements(requirementList);
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private int getServiceInstanceNumberOfPorts(Resource serviceInstanceResource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
int numberOfPorts;
- Object interfaceTypeProperty = serviceInstanceResource.getProperties().get("interface_list");
+ Object interfaceTypeProperty =
+ serviceInstanceResource.getProperties().get(HeatConstants.INTERFACE_LIST_PROPERTY_NAME);
if (interfaceTypeProperty == null) {
numberOfPorts = 0;
} else if (interfaceTypeProperty instanceof List) {
@@ -641,11 +831,16 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
numberOfPorts = 0;
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
return numberOfPorts;
}
private AttachedResourceId getServiceTemplateAttachedId(TranslateTo translateTo,
Resource serviceInstanceResource) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object serviceTemplateProperty =
serviceInstanceResource.getProperties().get("service_template");
Optional<AttachedResourceId> serviceTemplateId = HeatToToscaUtil
@@ -653,8 +848,13 @@ public class ResourceTranslationContrailServiceInstanceImpl extends ResourceTran
translateTo.getHeatOrchestrationTemplate(), translateTo.getContext(),
serviceTemplateProperty);
if (serviceTemplateId.isPresent()) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return serviceTemplateId.get();
} else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_SERVICE_TEMPLATE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.MISSING_MANDATORY_PROPERTY);
throw new CoreException(new MissingMandatoryPropertyErrorBuilder("service_template").build());
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceTemplateImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceTemplateImpl.java
index e0a3ed422f..8b862e585f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceTemplateImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceTemplateImpl.java
@@ -18,75 +18,113 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.model.Metadata;
+import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.Constants;
import org.openecomp.sdc.translator.services.heattotosca.errors.MissingMandatoryPropertyErrorBuilder;
import org.openecomp.sdc.translator.services.heattotosca.globaltypes.GlobalTypesGenerator;
import org.openecomp.sdc.translator.services.heattotosca.helper.ContrailTranslationHelper;
+import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
+import java.util.Optional;
public class ResourceTranslationContrailServiceTemplateImpl extends ResourceTranslationBase {
static String getContrailSubstitutedNodeTypeId(String serviceTemplateTranslatedId) {
- return ToscaConstants.NODES_SUBSTITUTION_PREFIX + serviceTemplateTranslatedId;
+ return ToscaNodeType.ABSTRACT_NODE_TYPE_PREFIX + "heat." + serviceTemplateTranslatedId;
+ }
+
+ @Override
+ public void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ServiceTemplate globalSubstitutionServiceTemplate =
+ getGlobalSubstitutionTypesServiceTemplate(translateTo);
+ addSubstitutedNodeType(translateTo, globalSubstitutionServiceTemplate);
+ addComputeNodeType(translateTo, globalSubstitutionServiceTemplate, translateTo.getContext());
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
@Override
protected boolean isEssentialRequirementsValid(TranslateTo translateTo) {
Map<String, Object> properties = translateTo.getResource().getProperties();
if (Objects.isNull(properties) || Objects.isNull(properties.get("image_name"))) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GENERATE_TRANSLATED_ID, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.MISSING_MANDATORY_PROPERTY);
throw new CoreException(new MissingMandatoryPropertyErrorBuilder("image_name").build());
}
return true;
}
- @Override
- public void translate(TranslateTo translateTo) {
-
- ServiceTemplate globalSubstitutionServiceTemplate =
- getGlobalSubstitutionTypesServiceTemplate(translateTo);
- addSubstitutedNodeType(translateTo, globalSubstitutionServiceTemplate);
- addComputeNodeType(translateTo, globalSubstitutionServiceTemplate);
- }
-
private void addComputeNodeType(TranslateTo translateTo,
- ServiceTemplate globalSubstitutionServiceTemplate) {
+ ServiceTemplate globalSubstitutionServiceTemplate,
+ TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
NodeType computeNodeType = new NodeType();
- computeNodeType.setDerived_from(ToscaNodeType.CONTRAIL_COMPUTE.getDisplayName());
+ computeNodeType.setDerived_from(ToscaNodeType.CONTRAIL_COMPUTE);
String computeNodeTypeId = new ContrailTranslationHelper()
- .getComputeNodeTypeId(translateTo.getTranslatedId(), translateTo.getResource());
+ .getComputeNodeTypeId(translateTo.getResource(), translateTo.getResourceId(),
+ translateTo.getTranslatedId(), context);
DataModelUtil
.addNodeType(globalSubstitutionServiceTemplate, computeNodeTypeId, computeNodeType);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void addSubstitutedNodeType(TranslateTo translateTo,
ServiceTemplate globalSubstitutionServiceTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeType substitutedNodeType = new NodeType();
substitutedNodeType
- .setDerived_from(ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE.getDisplayName());
+ .setDerived_from(ToscaNodeType.CONTRAIL_ABSTRACT_SUBSTITUTE);
DataModelUtil.addNodeType(globalSubstitutionServiceTemplate,
getContrailSubstitutedNodeTypeId(translateTo.getTranslatedId()), substitutedNodeType);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ return Optional.empty();
}
private ServiceTemplate getGlobalSubstitutionTypesServiceTemplate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
ServiceTemplate globalSubstitutionServiceTemplate =
- translateTo.getContext().getTranslatedServiceTemplates()
- .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ translateTo.getContext().getTranslatedServiceTemplates().get(
+ Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
if (globalSubstitutionServiceTemplate == null) {
globalSubstitutionServiceTemplate = new ServiceTemplate();
- Metadata templateMetadata = new Metadata();
- templateMetadata.setTemplate_name(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ Map<String, String> templateMetadata = new HashMap<>();
+ templateMetadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
globalSubstitutionServiceTemplate.setMetadata(templateMetadata);
globalSubstitutionServiceTemplate.setImports(GlobalTypesGenerator.getGlobalTypesImportList());
globalSubstitutionServiceTemplate
@@ -95,6 +133,9 @@ public class ResourceTranslationContrailServiceTemplateImpl extends ResourceTran
.put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
globalSubstitutionServiceTemplate);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return globalSubstitutionServiceTemplate;
}
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2NetworkPolicyImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2NetworkPolicyImpl.java
index 72a25985a8..71efc18816 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2NetworkPolicyImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2NetworkPolicyImpl.java
@@ -18,32 +18,39 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
public class ResourceTranslationContrailV2NetworkPolicyImpl extends ResourceTranslationBase {
protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationContrailV2NetworkPolicyImpl.class);
+ (Logger) LoggerFactory.getLogger(ResourceTranslationContrailV2NetworkPolicyImpl.class);
@Override
protected void translate(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.CONTRAILV2_NETWORK_RULE.getDisplayName());
+ nodeTemplate.setType(ToscaNodeType.CONTRAILV2_NETWORK_RULE);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VirtualNetworkImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VirtualNetworkImpl.java
index d81f3196a3..d39d0f1c45 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VirtualNetworkImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VirtualNetworkImpl.java
@@ -18,9 +18,12 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.apache.commons.collections.CollectionUtils;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
@@ -31,13 +34,11 @@ import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
-import org.openecomp.sdc.translator.datatypes.heattotosca.ResourceReferenceType;
+import org.openecomp.sdc.translator.datatypes.heattotosca.ReferenceType;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.Collection;
@@ -48,29 +49,34 @@ import java.util.Optional;
public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTranslationBase {
protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationContrailV2VirtualNetworkImpl.class);
+ (Logger) LoggerFactory.getLogger(ResourceTranslationContrailV2VirtualNetworkImpl.class);
@Override
public void translate(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.CONTRAILV2_VIRTUAL_NETWORK.getDisplayName());
+ nodeTemplate.setType(ToscaNodeType.CONTRAILV2_VIRTUAL_NETWORK);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
- Optional<String> resourceTranslatedId = getResourceTranslatedId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), translateTo.getResourceId(),
- translateTo.getContext());
- if (resourceTranslatedId.isPresent()) {
- DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), resourceTranslatedId.get(),
- nodeTemplate);
- }
+ DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ nodeTemplate);
linkToPolicyNodeTemplate(translateTo);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void linkToPolicyNodeTemplate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<AttachedResourceId> networkPolicyIdList = extractNetworkPolicyIdList(translateTo);
if (CollectionUtils.isEmpty(networkPolicyIdList)) {
return;
@@ -83,20 +89,31 @@ public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTra
.addRequirementAssignment(policyNodeTemplate, ToscaConstants.NETWORK_REQUIREMENT_ID,
createRequirementAssignment(translateTo.getTranslatedId()));
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private List<AttachedResourceId> extractNetworkPolicyIdList(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object propertyValue = translateTo.getResource().getProperties().get("network_policy_refs");
if (propertyValue != null) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return extractNetworkPolicyId(propertyValue, translateTo);
} else {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return null;
}
}
private List<AttachedResourceId> extractNetworkPolicyId(Object propertyValue,
TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<AttachedResourceId> attachedResourceIdList = new ArrayList<>();
if (propertyValue instanceof List) {
@@ -109,14 +126,20 @@ public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTra
attachedResourceIdList.add(resourceId);
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return attachedResourceIdList;
}
private AttachedResourceId parsNetworkPolicyId(Object propertyValue, TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<String> translatedPolicyResourceId;
String policyResourceId = extractResourceId(propertyValue, translateTo);
if (policyResourceId == null) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return null;
}
@@ -125,6 +148,7 @@ public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTra
translateTo.getHeatFileName());
if (!policyResource.getType()
.equals(HeatResourcesTypes.CONTRAIL_V2_NETWORK_RULE_RESOURCE_TYPE.getHeatResource())) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return null;
}
translatedPolicyResourceId = ResourceTranslationFactory.getInstance(policyResource)
@@ -134,13 +158,16 @@ public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTra
if (!translatedPolicyResourceId.isPresent()) {
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' property network_policy_refs is referenced to an "
- + "unsupported resource the connection will be ignored in TOSCA translation.");
+ + "' property network_policy_refs is referenced to an unsupported resource the "
+ + "connection will be ignored in TOSCA translation.");
+ mdcDataDebugMessage.debugExitMessage(null, null);
return null;
}
- return
+ AttachedResourceId attachedResourceId =
new AttachedResourceId(translatedPolicyResourceId.get(), policyResourceId,
- ResourceReferenceType.GET_ATTR);
+ ReferenceType.GET_ATTR);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return attachedResourceId;
}
private String extractResourceId(Object propertyValue, TranslateTo translateTo) {
@@ -156,9 +183,8 @@ public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTra
} else {
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' has property with invalid format of 'get_attr' function "
- + "with 'fq_name' value, therefore this property"
- + " will be ignored in TOSCA translation.");
+ + "' has property with invalid format of 'get_attr' function with 'fq_name' "
+ + "value, therefore this property will be ignored in TOSCA translation.");
}
}
}
@@ -169,8 +195,8 @@ public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTra
} else {
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' has property invalid format of 'get_resource' function, therefore"
- + " this property will be ignored in TOSCA translation.");
+ + "' has property invalid format of 'get_resource' function, therefore this property"
+ + " will be ignored in TOSCA translation.");
}
} else {
Collection<Object> valCollection = ((Map) propertyValue).values();
@@ -192,16 +218,21 @@ public class ResourceTranslationContrailV2VirtualNetworkImpl extends ResourceTra
}
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
- + "' invalid format of property value, therefore "
- + "this resource will be ignored in TOSCA translation.");
+ + "' invalid format of property value, therefore this resource will be ignored in TOSCA "
+ + "translation.");
return null;
}
private RequirementAssignment createRequirementAssignment(String translatedNetworkResourceId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
+ requirement.setCapability(ToscaCapabilityType.NATIVE_ATTACHMENT);
requirement.setNode(translatedNetworkResourceId);
- requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
+ requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return requirement;
}
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/ResourceTranslationContrailV2VlanSubInterfaceImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VlanSubInterfaceImpl.java
new file mode 100644
index 0000000000..e0e6c459a1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VlanSubInterfaceImpl.java
@@ -0,0 +1,132 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.helper.ContrailV2VirtualMachineInterfaceHelper;
+import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
+
+
+public class ResourceTranslationContrailV2VlanSubInterfaceImpl extends ResourceTranslationBase {
+ protected static Logger logger =
+ (Logger) LoggerFactory.getLogger(ResourceTranslationContrailV2VlanSubInterfaceImpl.class);
+
+ @Override
+ protected void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ NodeTemplate nodeTemplate = new NodeTemplate();
+ nodeTemplate.setType(ToscaNodeType.CONTRAILV2_VLAN_SUB_INTERFACE);
+
+ nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
+ nodeTemplate.getProperties(), translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
+ nodeTemplate, translateTo.getContext()));
+
+ new ContrailV2VirtualMachineInterfaceHelper()
+ .connectVmiToNetwork(this, translateTo, nodeTemplate);
+ connectSubInterfaceToInterface(translateTo, nodeTemplate);
+ DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ //connection to shared interface is not supported
+ private void connectSubInterfaceToInterface(TranslateTo translateTo,
+ NodeTemplate vlanSubInterfaceNodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Object interfaceRefs =
+ translateTo.getResource().getProperties().get(HeatConstants.VMI_REFS_PROPERTY_NAME);
+ if (Objects.isNull(interfaceRefs) || !(interfaceRefs instanceof List)
+ || ((List) interfaceRefs).size() == 0) {
+ return;
+ }
+ List<String> acceptableResourceTypes = Arrays
+ .asList(HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE
+ .getHeatResource(),
+ HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource());
+ if (((List) interfaceRefs).size() > 1) {
+ logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ + translateTo.getResource().getType()
+ + "' include '" + HeatConstants.VMI_REFS_PROPERTY_NAME
+ + "' property with more than one interface values, only "
+ + "the first interface will be connected, "
+ + "all rest will be ignored in TOSCA translation.");
+ }
+ Object interfaceRef = ((List) interfaceRefs).get(0);
+
+ Optional<String> interfaceResourceId =
+ HeatToToscaUtil.extractContrailGetResourceAttachedHeatResourceId(interfaceRef);
+ if (interfaceResourceId.isPresent()) { // get_resource
+ Resource interfaceResource = HeatToToscaUtil
+ .getResource(translateTo.getHeatOrchestrationTemplate(), interfaceResourceId.get(),
+ translateTo.getHeatFileName());
+
+ if (acceptableResourceTypes.contains(interfaceResource.getType())
+ && !(new ContrailV2VirtualMachineInterfaceHelper()
+ .isVlanSubInterfaceResource(interfaceResource))) {
+ Optional<String> interfaceResourceTranslatedId =
+ getResourceTranslatedId(translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), interfaceResourceId.get(),
+ translateTo.getContext());
+ interfaceResourceTranslatedId.ifPresent(interfaceResourceTranslatedIdVal -> HeatToToscaUtil
+ .addBindingReqFromSubInterfaceToInterface(vlanSubInterfaceNodeTemplate,
+ interfaceResourceTranslatedIdVal));
+ } else {
+ logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ + translateTo.getResource().getType()
+ + "' include '" + HeatConstants.VMI_REFS_PROPERTY_NAME
+ + "' property which is connect to unsupported/incorrect "
+ + (true == (new ContrailV2VirtualMachineInterfaceHelper()
+ .isVlanSubInterfaceResource(interfaceResource)) ? "Vlan Sub interface " : "")
+ + "resource '" + interfaceResourceId.get() + "' with type '"
+ + interfaceResource.getType()
+ + "', therefore, this connection will be ignored in TOSCA translation.");
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+}
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/ResourceTranslationContrailV2VmInterfaceImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VmInterfaceImpl.java
new file mode 100644
index 0000000000..1736bbef96
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VmInterfaceImpl.java
@@ -0,0 +1,138 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+import org.openecomp.sdc.translator.services.heattotosca.helper.ContrailV2VirtualMachineInterfaceHelper;
+import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
+
+import java.util.List;
+import java.util.Map;
+
+
+public class ResourceTranslationContrailV2VmInterfaceImpl extends ResourceTranslationBase {
+ protected static Logger logger =
+ (Logger) LoggerFactory.getLogger(ResourceTranslationContrailV2VmInterfaceImpl.class);
+
+ @Override
+ protected String generateTranslatedId(TranslateTo translateTo) {
+ if (new ContrailV2VirtualMachineInterfaceHelper().isVlanSubInterfaceResource(translateTo
+ .getResource())) {
+ return null;
+ } else {
+ return super.generateTranslatedId(translateTo);
+ }
+ }
+
+ @Override
+ protected void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (new ContrailV2VirtualMachineInterfaceHelper().isVlanSubInterfaceResource(translateTo
+ .getResource())) {
+ translateVlanSubInterfaceResource(translateTo);
+ } else {
+ translateVirtualMachineInterfaceResource(translateTo);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+
+ private void translateVirtualMachineInterfaceResource(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ NodeTemplate nodeTemplate = new NodeTemplate();
+ nodeTemplate.setType(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE);
+ nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
+ nodeTemplate.getProperties(), translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
+ nodeTemplate, translateTo.getContext()));
+ String toscaVmiRefsPropertyName =
+ HeatToToscaUtil.getToscaPropertyName(translateTo, HeatConstants.VMI_REFS_PROPERTY_NAME);
+ if (nodeTemplate.getProperties().containsKey(toscaVmiRefsPropertyName)) {
+ nodeTemplate.getProperties().remove(toscaVmiRefsPropertyName);
+ }
+
+ handleVmiMacAddressesInProperties(translateTo, nodeTemplate);
+
+ new ContrailV2VirtualMachineInterfaceHelper()
+ .connectVmiToNetwork(this, translateTo, nodeTemplate);
+ DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void handleVmiMacAddressesInProperties(TranslateTo translateTo,
+ NodeTemplate nodeTemplate) {
+ String toscaVmiMacAddressesName =
+ HeatToToscaUtil.getToscaPropertyName(translateTo, HeatConstants.VMI_MAC_ADDRESSES);
+ String toscaVmiMacAddressesMacAddressesName =
+ HeatToToscaUtil.getToscaPropertyName(translateTo, HeatConstants.VMI_MAC_ADDRESSES_MAC_ADDRESSES);
+
+ if(nodeTemplate.getProperties().containsKey(toscaVmiMacAddressesName)){
+ Object macAddressesValue = nodeTemplate.getProperties().get(toscaVmiMacAddressesName);
+ if(macAddressesValue instanceof Map && ((Map<String, Object>)macAddressesValue).containsKey
+ (toscaVmiMacAddressesMacAddressesName)){
+ updateMacAddressesMacAddressesInProperties(nodeTemplate, toscaVmiMacAddressesName,
+ toscaVmiMacAddressesMacAddressesName,
+ (Map<String, Object>) macAddressesValue);
+ }
+ }
+ }
+
+ private void updateMacAddressesMacAddressesInProperties(NodeTemplate nodeTemplate,
+ String toscaVmiMacAddressesName,
+ String toscaVmiMacAddressesMacAddressesName,
+ Map<String, Object> macAddressesValue) {
+ Object macAddressesMacAddressesValue =
+ macAddressesValue.get(toscaVmiMacAddressesMacAddressesName);
+ if(macAddressesMacAddressesValue instanceof List){
+ nodeTemplate.getProperties().put(toscaVmiMacAddressesName, macAddressesMacAddressesValue);
+ }else{
+ nodeTemplate.getProperties().remove(toscaVmiMacAddressesName);
+ }
+ }
+
+ private void translateVlanSubInterfaceResource(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ new ResourceTranslationContrailV2VlanSubInterfaceImpl().translate(translateTo);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronNetImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailVirtualNetworkImpl.java
index 0b4ed61753..a6fc9ac2c1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronNetImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailVirtualNetworkImpl.java
@@ -18,35 +18,34 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.common.utils.CommonUtil;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-public class ResourceTranslationNeutronNetImpl extends ResourceTranslationBase {
+public class ResourceTranslationContrailVirtualNetworkImpl extends ResourceTranslationBase {
@Override
public void translate(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.NEUTRON_NET.getDisplayName());
+ nodeTemplate.setType(ToscaNodeType.CONTRAIL_VIRTUAL_NETWORK);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
+ DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(),
+ translateTo.getTranslatedId(),nodeTemplate);
- HeatToToscaUtil.mapBoolean(nodeTemplate, "port_security_enabled");
- HeatToToscaUtil.mapBoolean(nodeTemplate, "shared");
- HeatToToscaUtil.mapBoolean(nodeTemplate, "admin_state_up");
-
- DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
- nodeTemplate);
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
-
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationDefaultImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationDefaultImpl.java
index 1182b60a6a..15a3c178b9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationDefaultImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationDefaultImpl.java
@@ -18,24 +18,38 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-public class ResourceTranslationDefaultImpl extends ResourceTranslationBase {
+import java.util.Optional;
- @Override
- protected String generateTranslatedId(TranslateTo translateTo) {
- return null;
- }
+public class ResourceTranslationDefaultImpl extends ResourceTranslationBase {
@Override
public void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
//no translation is needed, this default is used for unsupported resources
logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ translateTo.getResource().getType()
+ "' is not supported, will be ignored in TOSCA translation");
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ protected String generateTranslatedId(TranslateTo translateTo) {
+ return null;
+ }
+
+ @Override
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ return Optional.empty();
}
}
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
new file mode 100644
index 0000000000..843d9fabc6
--- /dev/null
+++ 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
@@ -0,0 +1,236 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+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.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;
+
+public class ResourceTranslationNestedImpl extends ResourceTranslationBase {
+
+ protected static Logger logger =
+ (Logger) LoggerFactory.getLogger(ResourceTranslationNestedImpl.class);
+
+ @Override
+ public void translate(TranslateTo translateTo) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ FileData nestedFileData =
+ HeatToToscaUtil.getFileData(translateTo.getResource().getType(), translateTo.getContext());
+ if (nestedFileData == null) {
+ logger.warn("Nested File '" + translateTo.getResource().getType()
+ + "' is not exist, therefore, the nested resource with the ID '"
+ + translateTo.getResourceId() + "' will be ignored in TOSCA translation");
+ return;
+ }
+ String templateName = FileUtils.getFileWithoutExtention(translateTo.getResource().getType());
+ String substitutionNodeTypeKey = ToscaNodeType.ABSTRACT_NODE_TYPE_PREFIX + "heat."
+ + templateName;
+
+ if (!translateTo.getContext().getTranslatedServiceTemplates()
+ .containsKey(translateTo.getResource().getType())) {
+
+ //substitution service template
+ ServiceTemplate nestedSubstitutionServiceTemplate =
+ createSubstitutionServiceTemplate(translateTo, nestedFileData, templateName);
+
+ //global substitution service template
+ ServiceTemplate globalSubstitutionServiceTemplate = new HeatToToscaUtil()
+ .fetchGlobalSubstitutionServiceTemplate(translateTo.getServiceTemplate(),
+ translateTo.getContext());
+
+ //substitution node type
+ NodeType substitutionNodeType = new ToscaAnalyzerServiceImpl()
+ .createInitSubstitutionNodeType(nestedSubstitutionServiceTemplate,
+ ToscaNodeType.ABSTRACT_SUBSTITUTE);
+ DataModelUtil.addNodeType(globalSubstitutionServiceTemplate, substitutionNodeTypeKey,
+ substitutionNodeType);
+ //substitution mapping
+ HeatToToscaUtil
+ .handleSubstitutionMapping(translateTo.getContext(), substitutionNodeTypeKey,
+ nestedSubstitutionServiceTemplate, substitutionNodeType);
+
+ //add new nested service template
+ translateTo.getContext().getTranslatedServiceTemplates()
+ .put(translateTo.getResource().getType(), nestedSubstitutionServiceTemplate);
+ }
+
+ NodeTemplate substitutionNodeTemplate =
+ HeatToToscaUtil.createAbstractSubstitutionNodeTemplate(translateTo, templateName,
+ substitutionNodeTypeKey);
+ manageSubstitutionNodeTemplateConnectionPoint(translateTo, nestedFileData,
+ substitutionNodeTemplate, substitutionNodeTypeKey);
+ DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ substitutionNodeTemplate);
+
+ //Add nested node template id to consolidation data
+ ConsolidationDataUtil.updateNestedNodeTemplateId(translateTo);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private ServiceTemplate createSubstitutionServiceTemplate(TranslateTo translateTo,
+ FileData nestedFileData,
+ String templateName) {
+ ServiceTemplate nestedSubstitutionServiceTemplate =
+ HeatToToscaUtil.createInitSubstitutionServiceTemplate(templateName);
+ translateTo.getContext()
+ .addNestedHeatFileName(ToscaUtil.getServiceTemplateFileName(templateName),
+ translateTo.getResource().getType());
+ new TranslationService().translateHeatFile(nestedSubstitutionServiceTemplate, nestedFileData,
+ translateTo.getContext());
+ return nestedSubstitutionServiceTemplate;
+ }
+
+
+ private void manageSubstitutionNodeTemplateConnectionPoint(TranslateTo translateTo,
+ FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ String substitutionNodeTypeId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ServiceTemplate globalSubstitutionTemplate =
+ translateTo.getContext().getTranslatedServiceTemplates()
+ .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME);
+ NodeType nodeType = globalSubstitutionTemplate.getNode_types().get(substitutionNodeTypeId);
+ handlePortToNetConnections(translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
+ handleSecurityRulesToPortConnections(translateTo, nestedFileData, substitutionNodeTemplate,
+ nodeType);
+ handleNovaToVolConnection(translateTo, nestedFileData, substitutionNodeTemplate, nodeType);
+ handleContrailV2VmInterfaceToNetworkConnection(translateTo, nestedFileData,
+ substitutionNodeTemplate, nodeType);
+ handleContrailPortToNetConnections(translateTo, nestedFileData, substitutionNodeTemplate,
+ nodeType);
+ handleVlanSubInterfaceToInterfaceConnections(translateTo, nestedFileData,
+ substitutionNodeTemplate, nodeType);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void handleVlanSubInterfaceToInterfaceConnections(TranslateTo translateTo,
+ FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ContrailV2VlanToInterfaceResourceConnection linker =
+ new ContrailV2VlanToInterfaceResourceConnection(this, translateTo, nestedFileData,
+ substitutionNodeTemplate, nodeType);
+ linker.connect();
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+
+ private void handleContrailV2VmInterfaceToNetworkConnection(TranslateTo translateTo,
+ FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ContrailV2VmInterfaceToNetResourceConnection linker =
+ new ContrailV2VmInterfaceToNetResourceConnection(this, translateTo, nestedFileData,
+ substitutionNodeTemplate, nodeType);
+ linker.connect();
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void handleNovaToVolConnection(TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate, NodeType nodeType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ NovaToVolResourceConnection linker =
+ new NovaToVolResourceConnection(this, translateTo, nestedFileData, substitutionNodeTemplate,
+ nodeType);
+ linker.connect();
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void handleSecurityRulesToPortConnections(TranslateTo translateTo,
+ FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ SecurityRulesToPortResourceConnection linker =
+ new SecurityRulesToPortResourceConnection(this, translateTo, nestedFileData,
+ substitutionNodeTemplate, nodeType);
+ linker.connect();
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void handlePortToNetConnections(TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ PortToNetResourceConnection linker =
+ new PortToNetResourceConnection(this, translateTo, nestedFileData, substitutionNodeTemplate,
+ nodeType);
+ linker.connect();
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void handleContrailPortToNetConnections(TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate,
+ NodeType nodeType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ContrailPortToNetResourceConnection linker =
+ new ContrailPortToNetResourceConnection(this, translateTo, nestedFileData,
+ substitutionNodeTemplate, nodeType);
+ linker.connect();
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailVirtualNetworkImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronNetImpl.java
index 3a3a532d59..49fdcaafa9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailVirtualNetworkImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronNetImpl.java
@@ -18,34 +18,46 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.heat.services.HeatConstants;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import java.util.Optional;
-public class ResourceTranslationContrailVirtualNetworkImpl extends ResourceTranslationBase {
+public class ResourceTranslationNeutronNetImpl extends ResourceTranslationBase {
@Override
public void translate(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.CONTRAIL_VIRTUAL_NETWORK.getDisplayName());
+ nodeTemplate.setType(ToscaNodeType.NEUTRON_NET);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
- Optional<String> resourceTranslatedId = getResourceTranslatedId(translateTo.getHeatFileName(),
- translateTo.getHeatOrchestrationTemplate(), translateTo.getResourceId(),
- translateTo.getContext());
- if (resourceTranslatedId.isPresent()) {
- DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), resourceTranslatedId.get(),
- nodeTemplate);
- }
+
+ HeatToToscaUtil.mapBoolean(nodeTemplate, HeatToToscaUtil
+ .getToscaPropertyName(translateTo, HeatConstants.PORT_SECURITY_ENABLED_PROPERTY_NAME));
+ HeatToToscaUtil.mapBoolean(nodeTemplate, HeatToToscaUtil
+ .getToscaPropertyName(translateTo, HeatConstants.SHARED_PROPERTY_NAME));
+ HeatToToscaUtil.mapBoolean(nodeTemplate, HeatToToscaUtil
+ .getToscaPropertyName(translateTo, HeatConstants.ADMIN_STATE_UP_PROPERTY_NAME));
+
+ DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
+ nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
+
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronPortImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronPortImpl.java
index 343462d266..f1bd6790c2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronPortImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronPortImpl.java
@@ -18,7 +18,7 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
@@ -32,11 +32,15 @@ import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
import org.openecomp.sdc.translator.services.heattotosca.Constants;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationEntityType;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
+import org.openecomp.sdc.translator.services.heattotosca.helper.ResourceTranslationNeutronPortHelper;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@@ -50,21 +54,32 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
@Override
public void translate(TranslateTo translateTo) {
- NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.NEUTRON_PORT.getDisplayName());
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ NodeTemplate nodeTemplate = new NodeTemplate();
+ nodeTemplate.setType(ToscaNodeType.NEUTRON_PORT);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(), translateTo.
+ getResourceId(), translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
+ new ResourceTranslationNeutronPortHelper().setAdditionalProperties(nodeTemplate
+ .getProperties());
handleNetworkRequirement(translateTo, nodeTemplate);
String resourceTranslatedId = handleSecurityRulesRequirement(translateTo);
DataModelUtil
.addNodeTemplate(translateTo.getServiceTemplate(), resourceTranslatedId, nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private String handleSecurityRulesRequirement(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String resourceTranslatedId = translateTo.getTranslatedId();
Map<String, Object> properties = translateTo.getResource().getProperties();
Optional<Object> securityGroups =
@@ -76,17 +91,22 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
.extractAttachedResourceId(translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getContext(),
resourceValue);
- if (securityGroupResourceId.isPresent()) {
- handleSecurityGroupResourceId(translateTo, resourceTranslatedId,
- securityGroupResourceId.get());
- }
+ securityGroupResourceId.ifPresent(
+ attachedResourceId -> handleSecurityGroupResourceId(translateTo, resourceTranslatedId,
+ attachedResourceId));
});
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return resourceTranslatedId;
}
private void handleSecurityGroupResourceId(TranslateTo translateTo, String resourceTranslatedId,
AttachedResourceId securityGroupResourceId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<String> supportedSecurityGroupsTypes = Collections
.singletonList(HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE.getHeatResource());
if (securityGroupResourceId.isGetResource()) {
@@ -96,11 +116,19 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
handleGetParam(translateTo, resourceTranslatedId, securityGroupResourceId,
supportedSecurityGroupsTypes);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void handleGetParam(TranslateTo translateTo, String resourceTranslatedId,
AttachedResourceId securityGroupResourceId,
List<String> supportedSecurityGroupsTypes) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!(securityGroupResourceId.getEntityId() instanceof String)) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return;
+ }
TranslatedHeatResource translatedSharedResourceId =
translateTo.getContext().getHeatSharedResourcesByParam()
.get(securityGroupResourceId.getEntityId());
@@ -108,24 +136,36 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
&& !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
if (validateResourceTypeSupportedForReqCreation(translateTo, supportedSecurityGroupsTypes,
translatedSharedResourceId.getHeatResource(), "security_groups")) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
final NodeTemplate securityGroupNodeTemplate = DataModelUtil
.getNodeTemplate(translateTo.getServiceTemplate(),
translatedSharedResourceId.getTranslatedId());
RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
+ requirement.setCapability(ToscaCapabilityType.NATIVE_ATTACHMENT);
requirement.setNode(resourceTranslatedId);
- requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
+ requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO);
DataModelUtil
.addRequirementAssignment(securityGroupNodeTemplate, ToscaConstants.PORT_REQUIREMENT_ID,
requirement);
+
+ ConsolidationDataUtil
+ .updateNodesConnectedIn(translateTo, translatedSharedResourceId.getTranslatedId(),
+ ConsolidationEntityType.PORT, translateTo.getResourceId(),
+ ToscaConstants.PORT_REQUIREMENT_ID, requirement);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void handleGetResource(TranslateTo translateTo, String resourceTranslatedId,
AttachedResourceId securityGroupResourceId,
List<String> supportedSecurityGroupsTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String resourceId = (String) securityGroupResourceId.getEntityId();
Resource securityGroupResource = HeatToToscaUtil
.getResource(translateTo.getHeatOrchestrationTemplate(), resourceId,
@@ -138,21 +178,32 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
if (securityGroupTranslatedId.isPresent()) {
if (validateResourceTypeSupportedForReqCreation(translateTo, supportedSecurityGroupsTypes,
securityGroupResource, "security_groups")) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
final NodeTemplate securityGroupNodeTemplate = DataModelUtil
.getNodeTemplate(translateTo.getServiceTemplate(), securityGroupTranslatedId.get());
RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
+ requirement.setCapability(ToscaCapabilityType.NATIVE_ATTACHMENT);
requirement.setNode(resourceTranslatedId);
- requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO.getDisplayName());
+ requirement.setRelationship(ToscaRelationshipType.ATTACHES_TO);
DataModelUtil
.addRequirementAssignment(securityGroupNodeTemplate, ToscaConstants.PORT_REQUIREMENT_ID,
requirement);
+
+ ConsolidationDataUtil.updateNodesConnectedIn(translateTo, securityGroupTranslatedId.get(),
+ ConsolidationEntityType.PORT, translateTo.getResourceId(),
+ ToscaConstants.PORT_REQUIREMENT_ID, requirement);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void handleNetworkRequirement(TranslateTo translateTo, NodeTemplate nodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<AttachedResourceId> networkResourceId =
HeatToToscaUtil.extractAttachedResourceId(translateTo, "network");
if (networkResourceId.isPresent()) {
@@ -165,11 +216,17 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
addRequirementAssignmentForNetworkResource(translateTo, nodeTemplate, attachedResourceId);
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void addRequirementAssignmentForNetworkResource(TranslateTo translateTo,
NodeTemplate nodeTemplate,
AttachedResourceId attachedResourceId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String networkTranslatedId;
List<String> supportedNetworkTypes =
Arrays.asList(HeatResourcesTypes.NEUTRON_NET_RESOURCE_TYPE.getHeatResource(),
@@ -183,8 +240,14 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
return;
}
networkTranslatedId = (String) attachedResourceId.getTranslatedId();
- addRequirementAssignment(nodeTemplate, networkTranslatedId);
- } else if (attachedResourceId.isGetParam()) {
+ RequirementAssignment requirementAssignment = HeatToToscaUtil.addLinkReqFromPortToNetwork(
+ nodeTemplate, networkTranslatedId);
+
+ ConsolidationDataUtil.updateNodesConnectedOut(translateTo, networkTranslatedId,
+ ConsolidationEntityType.PORT, ToscaConstants.LINK_REQUIREMENT_ID, requirementAssignment);
+
+ } else if (attachedResourceId.isGetParam()
+ && attachedResourceId.getEntityId() instanceof String) {
TranslatedHeatResource translatedSharedResourceId =
translateTo.getContext().getHeatSharedResourcesByParam()
.get(attachedResourceId.getEntityId());
@@ -194,18 +257,16 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
translatedSharedResourceId.getHeatResource(), "network'\\'network_id")) {
return;
}
- addRequirementAssignment(nodeTemplate, translatedSharedResourceId.getTranslatedId());
+ RequirementAssignment requirementAssignment = HeatToToscaUtil.addLinkReqFromPortToNetwork(
+ nodeTemplate, translatedSharedResourceId.getTranslatedId());
+
+ ConsolidationDataUtil.updateNodesConnectedOut(translateTo,
+ translatedSharedResourceId.getTranslatedId(), ConsolidationEntityType.PORT,
+ ToscaConstants.LINK_REQUIREMENT_ID, requirementAssignment);
}
}
- }
- private void addRequirementAssignment(NodeTemplate nodeTemplate, String translatedId) {
- RequirementAssignment requirement = new RequirementAssignment();
- requirement.setCapability(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName());
- requirement.setRelationship(ToscaRelationshipType.NETWORK_LINK_TO.getDisplayName());
- requirement.setNode(translatedId);
- DataModelUtil
- .addRequirementAssignment(nodeTemplate, ToscaConstants.LINK_REQUIREMENT_ID, requirement);
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
@@ -213,21 +274,23 @@ public class ResourceTranslationNeutronPortImpl extends ResourceTranslationBase
List<String> supportedTypes,
Resource heatResource,
final String propertyName) {
- if (!isResourceTypeValidForRequirement(heatResource, supportedTypes)) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!isResourceTypeSupported(heatResource, supportedTypes)) {
logger.warn(
"'" + propertyName + "' property of port resource('" + translateTo.getResourceId()
+ "') is pointing to a resource of type '" + heatResource.getType() + "' "
+ "which is not supported for this requirement. "
+ "Supported types are: " + supportedTypes.toString());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return true;
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
return false;
}
- private boolean isResourceTypeValidForRequirement(Resource networkHeatResource,
- List<String> supportedNetworkTypes) {
- return Objects.nonNull(networkHeatResource)
- && supportedNetworkTypes.contains(networkHeatResource.getType());
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSecurityGroupImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSecurityGroupImpl.java
index cacaf4c5c7..96e79aca60 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSecurityGroupImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSecurityGroupImpl.java
@@ -18,29 +18,37 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.openecomp.sdc.common.utils.CommonUtil;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
+
public class ResourceTranslationNeutronSecurityGroupImpl extends ResourceTranslationBase {
@Override
public void translate(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate nodeTemplate = new NodeTemplate();
- nodeTemplate.setType(ToscaNodeType.NEUTRON_SECURITY_RULES.getDisplayName());
+ nodeTemplate.setType(ToscaNodeType.NEUTRON_SECURITY_RULES);
nodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(),
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(),
nodeTemplate.getProperties(), translateTo.getHeatFileName(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
nodeTemplate, translateTo.getContext()));
DataModelUtil.addNodeTemplate(translateTo.getServiceTemplate(), translateTo.getTranslatedId(),
nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSubnetImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSubnetImpl.java
index 8306f57146..76a8c447d1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSubnetImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSubnetImpl.java
@@ -18,11 +18,19 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.HeatBoolean;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
@@ -31,13 +39,10 @@ import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
-
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
import org.openecomp.sdc.translator.services.heattotosca.errors.MissingMandatoryPropertyErrorBuilder;
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.HashMap;
import java.util.Map;
@@ -45,28 +50,15 @@ import java.util.Optional;
public class ResourceTranslationNeutronSubnetImpl extends ResourceTranslationBase {
protected static Logger logger =
- LoggerFactory.getLogger(ResourceTranslationNeutronSubnetImpl.class);
-
- @Override
- protected String generateTranslatedId(TranslateTo translateTo) {
- Optional<AttachedResourceId> subnetNetwork = getAttachedNetworkResource(translateTo);
-
- if (!subnetNetwork.get().isGetResource()) {
- logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
- + translateTo.getResource().getType()
- + "' include 'network_id/'network'' property without 'get_resource' function,"
- + " therefore this resource will be ignored in TOSCA translation.");
- return null;
- }
- return (String) subnetNetwork.get().getTranslatedId();
- }
+ (Logger) LoggerFactory.getLogger(ResourceTranslationNeutronSubnetImpl.class);
@Override
public void translate(TranslateTo translateTo) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
Optional<AttachedResourceId> subnetNetwork = getAttachedNetworkResource(translateTo);
- if (!subnetNetwork.get().isGetResource()) {
+ if (!subnetNetwork.isPresent() || !subnetNetwork.get().isGetResource()) {
return;
}
@@ -87,13 +79,15 @@ public class ResourceTranslationNeutronSubnetImpl extends ResourceTranslationBas
subNetMap = new HashMap<>();
networkNodeTemplate.getProperties().put("subnets", subNetMap);
TranslatorHeatToToscaPropertyConverter
- .setSimpleProperty(translateTo.getResource().getProperties(),
+ .setSimpleProperty(translateTo.getServiceTemplate(),translateTo.getTranslatedId(),
+ translateTo.getResource().getProperties(),
translateTo.getHeatFileName(), translateTo.getResource().getType(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getContext(),
networkNodeTemplate.getProperties(), "enable_dhcp",
ToscaConstants.DHCP_ENABLED_PROPERTY_NAME, networkNodeTemplate); //dhcp_enabled
TranslatorHeatToToscaPropertyConverter
- .setSimpleProperty(translateTo.getResource().getProperties(),
+ .setSimpleProperty(translateTo.getServiceTemplate(),translateTo.getTranslatedId(),
+ translateTo.getResource().getProperties(),
translateTo.getHeatFileName(), translateTo.getResource().getType(),
translateTo.getHeatOrchestrationTemplate(), translateTo.getContext(),
networkNodeTemplate.getProperties(), "ip_version", null, networkNodeTemplate);
@@ -102,15 +96,42 @@ public class ResourceTranslationNeutronSubnetImpl extends ResourceTranslationBas
Map<String, Object> properties;
properties = TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(translateTo.getResource().getProperties(), null,
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),translateTo.
+ getResourceId(),translateTo.getResource().getProperties(), null,
translateTo.getHeatFileName(), translateTo.getHeatOrchestrationTemplate(),
translateTo.getResource().getType(), networkNodeTemplate, translateTo.getContext());
subNetMap.put(translateTo.getResourceId(), properties);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ protected String generateTranslatedId(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Optional<AttachedResourceId> subnetNetwork = getAttachedNetworkResource(translateTo);
+
+ if (!subnetNetwork.isPresent() || !subnetNetwork.get().isGetResource()) {
+ logger.warn("Heat resource: '" + translateTo.getResourceId() + "' with type: '"
+ + translateTo.getResource().getType()
+ + "' include 'network_id/'network'' property without 'get_resource' function, therefore"
+ + " this resource will be ignored in TOSCA translation.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return null;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return (String) subnetNetwork.get().getTranslatedId();
}
private void handleDhcpProperty(TranslateTo translateTo, NodeTemplate networkNodeTemplate) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object dhcpEnabled =
networkNodeTemplate.getProperties().get(ToscaConstants.DHCP_ENABLED_PROPERTY_NAME);
if (dhcpEnabled instanceof Map) {
@@ -145,9 +166,15 @@ public class ResourceTranslationNeutronSubnetImpl extends ResourceTranslationBas
}
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private Optional<AttachedResourceId> getAttachedNetworkResource(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Optional<AttachedResourceId> subnetNetwork = Optional.empty();
Optional<AttachedResourceId> attachedNetworkId =
HeatToToscaUtil.extractAttachedResourceId(translateTo, "network_id");
@@ -155,6 +182,10 @@ public class ResourceTranslationNeutronSubnetImpl extends ResourceTranslationBas
Optional<AttachedResourceId> attachedNetwork =
HeatToToscaUtil.extractAttachedResourceId(translateTo, "network");
if (!attachedNetwork.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.MISSING_MANDATORY_PROPERTY);
throw new CoreException(
new MissingMandatoryPropertyErrorBuilder("network_id/'network'").build());
} else {
@@ -163,6 +194,8 @@ public class ResourceTranslationNeutronSubnetImpl extends ResourceTranslationBas
} else {
subnetNetwork = attachedNetworkId;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return subnetNetwork;
}
}
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/ResourceTranslationNovaServerGroupsImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerGroupsImpl.java
new file mode 100644
index 0000000000..875903f8a2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerGroupsImpl.java
@@ -0,0 +1,208 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.ToscaGroupType;
+import org.openecomp.sdc.tosca.datatypes.ToscaPolicyType;
+import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.PolicyDefinition;
+import org.openecomp.sdc.tosca.datatypes.ToscaTopologyTemplateElements;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+
+public class ResourceTranslationNovaServerGroupsImpl extends ResourceTranslationBase {
+ private static final String AFFINITY = "affinity";
+ private static final String ANTI_AFFINITY = "anti-affinity";
+ private static List<String> supportedPolicies = Arrays.asList(AFFINITY, ANTI_AFFINITY);
+
+ @Override
+ protected String generateTranslatedId(TranslateTo translateTo) {
+ return isEssentialRequirementsValid(translateTo) ? getTranslatedGroupId(
+ translateTo.getResourceId()) : null;
+ }
+
+ @Override
+ protected boolean isEssentialRequirementsValid(TranslateTo translateTo) {
+ return validatePolicyType(translateTo);
+ }
+
+ @Override
+ protected Optional<ToscaTopologyTemplateElements> getTranslatedToscaTopologyElement(
+ TranslateTo translateTo) {
+ if (isEssentialRequirementsValid(translateTo)) {
+ return Optional.of(ToscaTopologyTemplateElements.GROUP);
+ } else {
+ return Optional.empty();
+ }
+ }
+
+ private boolean validatePolicyType(TranslateTo translateTo) {
+ Map<String, Object> properties = translateTo.getResource().getProperties();
+ if (Objects.isNull(properties) || Objects.isNull(properties.get("policies"))) {
+ return true;
+ }
+
+ Object policies = properties.get("policies");
+ if (!(policies instanceof List)) {
+ return false;
+ }
+
+ for (Object policy : (List) policies) {
+ if (!isValidPolicyType(policy, translateTo.getResourceId(), translateTo.getResource())) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private boolean isValidPolicyType(Object policy, String resourceId, Resource resource) {
+ if (!(policy instanceof String)) {
+ return false;
+ }
+
+ if ((policy instanceof String) && !supportedPolicies.contains(policy)) {
+ logger.warn("Resource '" + resourceId + "'(" + resource.getType()
+ + ") contains unsupported policy '" + policy.toString()
+ + "'. This resource is been ignored during the translation");
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ protected void translate(TranslateTo translateTo) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String resourceId = translateTo.getResourceId();
+ List<String> toscaPolicyTypes = getToscaPolicies(translateTo.getResource(), resourceId);
+ if (!CollectionUtils.isEmpty(toscaPolicyTypes)) {
+ String translatedGroupId = addGroupToTopology(translateTo, resourceId);
+ addPoliciesToTopology(translateTo, translatedGroupId, toscaPolicyTypes);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void addPoliciesToTopology(TranslateTo translateTo, String policyTargetEntityId,
+ List<String> toscaPolicyTypes) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ logger.info("******** Start creating policies for resource '%s' ********",
+ translateTo.getResourceId());
+ for (int i = 0; i < toscaPolicyTypes.size(); i++) {
+ String policy = toscaPolicyTypes.get(i);
+ logger.info("******** Creating policy '%s' ********", policy);
+ PolicyDefinition policyDefinition = new PolicyDefinition();
+ policyDefinition.setType(policy);
+ policyDefinition.setTargets(Arrays.asList(policyTargetEntityId));
+ policyDefinition.setProperties(TranslatorHeatToToscaPropertyConverter
+ .getToscaPropertiesSimpleConversion(translateTo.getServiceTemplate(),
+ translateTo.getResourceId(),translateTo.getResource().getProperties(),
+ policyDefinition.getProperties(), translateTo.getHeatFileName(),
+ translateTo.getHeatOrchestrationTemplate(), translateTo.getResource().getType(),
+ policyDefinition, translateTo.getContext()));
+ policyDefinition.getProperties().put(
+ policy.equals(ToscaPolicyType.PLACEMENT_ANTILOCATE) ? "container_type"
+ : AFFINITY, "host");
+ String policyId = getTranslatedPolicyId(translateTo, toscaPolicyTypes, i);
+ DataModelUtil
+ .addPolicyDefinition(translateTo.getServiceTemplate(), policyId, policyDefinition);
+ logger.info("******** Policy '%s' created ********", policy);
+ }
+
+ logger
+ .info("******** All policies for resource '%s' created successfully ********",
+ translateTo.getResourceId());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private String getTranslatedPolicyId(TranslateTo translateTo, List<String> toscaPolicyTypes,
+ int policyIndex) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return translateTo.getResourceId() + (toscaPolicyTypes.size() > 1 ? policyIndex : "")
+ + "_policy";
+ }
+
+ private String addGroupToTopology(TranslateTo translateTo, String resourceId) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ logger.info("******** Start creating group for resource '%s' ********", resourceId);
+ GroupDefinition group = new GroupDefinition();
+ group.setMembers(new ArrayList<>());
+ group.setType(ToscaGroupType.NATIVE_ROOT);
+ String translatedGroupId = getTranslatedGroupId(resourceId);
+ DataModelUtil
+ .addGroupDefinitionToTopologyTemplate(translateTo.getServiceTemplate(),
+ translatedGroupId, group);
+ logger.info("******** Creating group '%s' for resource '%s' ********", resourceId, resourceId);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return translatedGroupId;
+ }
+
+ private String getTranslatedGroupId(String resourceId) {
+ return resourceId + "_group";
+ }
+
+ private List<String> getToscaPolicies(Resource resource, String resourceId) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map<String, Object> properties = resource.getProperties();
+ if (Objects.isNull(properties) || Objects.isNull(properties.get("policies"))) {
+ return Arrays.asList(ToscaPolicyType.PLACEMENT_ANTILOCATE);
+ }
+
+ List<Object> policies = (List) properties.get("policies");
+ List<String> retList = new ArrayList<>();
+ policies.forEach(policy -> {
+ if (isValidPolicyType(policy, resourceId, resource)) {
+ retList.add(getToscaPolicyByHotPolicy(policy));
+ }
+ });
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return retList;
+ }
+
+ private String getToscaPolicyByHotPolicy(Object policy) {
+ if (Objects.equals(policy, AFFINITY)) {
+ return ToscaPolicyType.PLACEMENT_COLOCATE;
+ } else {
+ return ToscaPolicyType.PLACEMENT_ANTILOCATE;
+ }
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerImpl.java
index 59e0691b2b..499ac5f80a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerImpl.java
@@ -18,16 +18,20 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
import org.openecomp.sdc.tosca.datatypes.model.RelationshipTemplate;
@@ -36,18 +40,20 @@ import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.PropertyRegexMatcher;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslatedHeatResource;
+
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.services.heattotosca.ConfigConstants;
+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.NameExtractor;
import org.openecomp.sdc.translator.services.heattotosca.ResourceTranslationFactory;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
-import org.openecomp.sdc.translator.services.heattotosca.helper.NameExtractorService;
-import org.openecomp.sdc.translator.services.heattotosca.helper.PropertyRegexMatcher;
-import org.openecomp.sdc.translator.services.heattotosca.helper.impl.NameExtractorServiceImpl;
+
import org.openecomp.sdc.translator.services.heattotosca.mapping.TranslatorHeatToToscaPropertyConverter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.Arrays;
@@ -58,62 +64,85 @@ import java.util.Map;
import java.util.Objects;
import java.util.Optional;
+
public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
- protected static Logger logger = LoggerFactory.getLogger(ResourceTranslationNovaServerImpl.class);
+ protected static Logger logger =
+ (Logger) LoggerFactory.getLogger(ResourceTranslationNovaServerImpl.class);
@Override
protected void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
TranslationContext context = translateTo.getContext();
Map<String, Object> properties = translateTo.getResource().getProperties();
String heatFileName = translateTo.getHeatFileName();
ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ String nodeTypeRef = createLocalNodeType(serviceTemplate, translateTo.getResource(),
+ translateTo.getResourceId(), translateTo.getTranslatedId(), context);
- String nodeTypeRef =
- createLocalNodeType(serviceTemplate, translateTo.getResource().getProperties(),
- translateTo.getTranslatedId());
+ //create compute in consolidation data
+ ConsolidationDataUtil.getComputeTemplateConsolidationData(context, serviceTemplate,
+ nodeTypeRef, translateTo.getTranslatedId());
NodeTemplate novaNodeTemplate = new NodeTemplate();
novaNodeTemplate.setType(nodeTypeRef);
HeatOrchestrationTemplate heatOrchestrationTemplate =
translateTo.getHeatOrchestrationTemplate();
novaNodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(properties, novaNodeTemplate.getProperties(),
- heatFileName, heatOrchestrationTemplate, translateTo.getResource().getType(),
+ .getToscaPropertiesSimpleConversion(serviceTemplate, translateTo.getResourceId(),
+ properties, novaNodeTemplate.getProperties(), heatFileName,
+ heatOrchestrationTemplate, translateTo.getResource().getType(),
novaNodeTemplate, context));
- manageNovaServerNetwork(heatFileName, serviceTemplate, heatOrchestrationTemplate,
- translateTo.getResource(), translateTo.getTranslatedId(), context, novaNodeTemplate);
- manageNovaServerBlockDeviceMapping(heatFileName, serviceTemplate, novaNodeTemplate,
- heatOrchestrationTemplate, translateTo.getResource(), translateTo.getResourceId(),
- translateTo.getTranslatedId(), context);
+ HeatToToscaUtil.mapBoolean(novaNodeTemplate, HeatToToscaUtil
+ .getToscaPropertyName(translateTo, HeatConstants.CONFIG_DRIVE_PROPERTY_NAME));
+ manageNovaServerNetwork(translateTo, novaNodeTemplate);
+ manageNovaServerBlockDeviceMapping(translateTo, novaNodeTemplate);
manageNovaServerGroupMapping(translateTo, context, properties, heatFileName, serviceTemplate,
- heatOrchestrationTemplate);
+ novaNodeTemplate, heatOrchestrationTemplate);
DataModelUtil.addNodeTemplate(serviceTemplate, translateTo.getTranslatedId(), novaNodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void manageNovaServerGroupMapping(TranslateTo translateTo, TranslationContext context,
Map<String, Object> properties, String heatFileName,
ServiceTemplate serviceTemplate,
+ NodeTemplate novaNodeTemplate,
HeatOrchestrationTemplate heatOrchestrationTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (isSchedulerHintsPropExist(properties)) {
Object schedulerHints = properties.get("scheduler_hints");
if (schedulerHints instanceof Map) {
- addServerGroupHintsToPoliciesProups(translateTo, context, heatFileName, serviceTemplate,
- heatOrchestrationTemplate, (Map<String, Object>) schedulerHints);
+ addServerGroupHintsToPoliciesGroups(translateTo, context, heatFileName, serviceTemplate,
+ novaNodeTemplate, heatOrchestrationTemplate, (Map<String, Object>) schedulerHints);
} else {
logger.warn("'scheduler_hints' property of resource '" + translateTo.getResourceId()
+ "' is not valid. This property should be a map");
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
- private void addServerGroupHintsToPoliciesProups(TranslateTo translateTo,
+ private void addServerGroupHintsToPoliciesGroups(TranslateTo translateTo,
TranslationContext context, String heatFileName,
ServiceTemplate serviceTemplate,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- Map<String, Object> schedulerHints) {
+ NodeTemplate novaNodeTemplate,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ Map<String, Object> schedulerHints) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
for (Object hint : schedulerHints.values()) {
Optional<AttachedResourceId> attachedResourceId = HeatToToscaUtil
.extractAttachedResourceId(heatFileName, heatOrchestrationTemplate, context, hint);
@@ -126,20 +155,51 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
serverGroupResourceToTranslate);
if (isHintOfTypeNovaServerGroup) {
addNovaServerToPolicyGroup(translateTo, context, heatFileName, serviceTemplate,
- heatOrchestrationTemplate, (String) serverGroupResourceToTranslate);
+ heatOrchestrationTemplate, (String) serverGroupResourceToTranslate,
+ novaNodeTemplate);
}
- } else if (serverGroupResourceId.isGetParam()) {
- TranslatedHeatResource translatedServerGroupResource =
+ } else if (serverGroupResourceId.isGetParam()
+ && serverGroupResourceToTranslate instanceof String) {
+ TranslatedHeatResource
+ translatedServerGroupResource =
context.getHeatSharedResourcesByParam().get(serverGroupResourceToTranslate);
if (Objects.nonNull(translatedServerGroupResource)
- && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())) {
- serviceTemplate.getTopology_template().getGroups()
- .get(translatedServerGroupResource.getTranslatedId()).getMembers()
- .add(translateTo.getTranslatedId());
+ && !HeatToToscaUtil.isHeatFileNested(translateTo, translateTo.getHeatFileName())
+ && isResourceTypeServerGroup(translatedServerGroupResource)) {
+ Map<String, GroupDefinition> groups =
+ serviceTemplate.getTopology_template().getGroups();
+ if(MapUtils.isNotEmpty(groups) && Objects.nonNull(groups.get(translatedServerGroupResource
+ .getTranslatedId()))) {
+ groups
+ .get(translatedServerGroupResource.getTranslatedId()).getMembers()
+ .add(translateTo.getTranslatedId());
+ //Add group Id to compute consolidation data
+ updateComputeConsolidationDataGroup(translateTo, novaNodeTemplate,
+ translatedServerGroupResource.getTranslatedId());
+ }
}
}
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private boolean isResourceTypeServerGroup(TranslatedHeatResource translatedServerGroupResource) {
+ return translatedServerGroupResource.getHeatResource().getType().equals(HeatResourcesTypes.NOVA_SERVER_GROUP_RESOURCE_TYPE.getHeatResource());
+ }
+
+ private void updateComputeConsolidationDataGroup(TranslateTo translateTo,
+ NodeTemplate novaNodeTemplate,
+ String groupId) {
+ TranslationContext translationContext = translateTo.getContext();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = ConsolidationDataUtil
+ .getComputeTemplateConsolidationData(translationContext, serviceTemplate,
+ novaNodeTemplate.getType(),
+ translateTo.getTranslatedId());
+ ConsolidationDataUtil.updateGroupIdInConsolidationData(computeTemplateConsolidationData,
+ groupId);
}
private boolean isHintOfTypeNovaServerGroup(HeatOrchestrationTemplate heatOrchestrationTemplate,
@@ -151,7 +211,10 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
private void addNovaServerToPolicyGroup(TranslateTo translateTo, TranslationContext context,
String heatFileName, ServiceTemplate serviceTemplate,
HeatOrchestrationTemplate heatOrchestrationTemplate,
- String resourceToTranslate) {
+ String resourceToTranslate,
+ NodeTemplate novaNodeTemplate) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Resource serverGroup =
HeatToToscaUtil.getResource(heatOrchestrationTemplate, resourceToTranslate, heatFileName);
Optional<String> serverGroupTranslatedId = ResourceTranslationFactory.getInstance(serverGroup)
@@ -160,21 +223,28 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
if (serverGroupTranslatedId.isPresent()) {
serviceTemplate.getTopology_template().getGroups().get(serverGroupTranslatedId.get())
.getMembers().add(translateTo.getTranslatedId());
+ updateComputeConsolidationDataGroup(translateTo, novaNodeTemplate,
+ serverGroupTranslatedId.get());
+
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private boolean isSchedulerHintsPropExist(Map<String, Object> properties) {
return !MapUtils.isEmpty(properties) && Objects.nonNull(properties.get("scheduler_hints"));
}
- private void manageNovaServerBlockDeviceMapping(String heatFileName,
- ServiceTemplate serviceTemplate,
- NodeTemplate novaNodeTemplate,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- Resource resource, String resourceId,
- String novaServerTranslatedId,
- TranslationContext context) {
-
+ private void manageNovaServerBlockDeviceMapping(TranslateTo translateTo,
+ NodeTemplate novaNodeTemplate) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ String heatFileName = translateTo.getHeatFileName();
+ TranslationContext context = translateTo.getContext();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ Resource resource = translateTo.getResource();
+ String resourceId = translateTo.getResourceId();
+ String novaServerTranslatedId = translateTo.getTranslatedId();
+ HeatOrchestrationTemplate heatOrchestrationTemplate = translateTo
+ .getHeatOrchestrationTemplate();
List<Map<String, Object>> blockDeviceMappingList = getBlockDeviceMappingList(resource);
if (CollectionUtils.isEmpty(blockDeviceMappingList)) {
return;
@@ -197,67 +267,93 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
continue;
}
if (volumeIdObject == null) {
- String deviceName = (String) blockDeviceMapping.get("device_name");
- String relationshipId = novaServerTranslatedId + "_" + index;
-
Optional<AttachedResourceId> attachedSnapshotId = HeatToToscaUtil
.extractAttachedResourceId(heatFileName, heatOrchestrationTemplate, context,
snapshotIdObject);
- volumeResourceId = novaServerTranslatedId + "_" + attachedSnapshotId.get().getEntityId();
- createVolumeAttachesToRelationship(serviceTemplate, deviceName, novaServerTranslatedId,
- volumeResourceId, relationshipId);
- createCinderVolumeNodeTemplate(serviceTemplate, volumeResourceId, heatFileName,
- blockDeviceMapping, heatOrchestrationTemplate, context);
- connectNovaServerToVolume(novaNodeTemplate, volumeResourceId, relationshipId);
+ if (attachedSnapshotId.isPresent()) {
+ volumeResourceId = novaServerTranslatedId + "_" + attachedSnapshotId.get().getEntityId();
+ String deviceName = (String) blockDeviceMapping.get("device_name");
+ String relationshipId = novaServerTranslatedId + "_" + index;
+
+ createVolumeAttachesToRelationship(serviceTemplate, deviceName, novaServerTranslatedId,
+ volumeResourceId, relationshipId);
+ createCinderVolumeNodeTemplate(serviceTemplate, translateTo.getResourceId(),
+ volumeResourceId, heatFileName, blockDeviceMapping, heatOrchestrationTemplate,
+ context);
+ connectNovaServerToVolume(novaNodeTemplate, volumeResourceId, relationshipId,
+ translateTo);
+ }
} else {
Optional<AttachedResourceId> attachedVolumeId = HeatToToscaUtil
.extractAttachedResourceId(heatFileName, heatOrchestrationTemplate, context,
volumeIdObject);
- if (attachedVolumeId.get().isGetResource()) {
+ if (attachedVolumeId.isPresent() && attachedVolumeId.get().isGetResource()) {
connectNovaServerToVolume(novaNodeTemplate,
- (String) attachedVolumeId.get().getTranslatedId(), null);
+ (String) attachedVolumeId.get().getTranslatedId(), null, translateTo);
}
}
index++;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void connectNovaServerToVolume(NodeTemplate novaNodeTemplate, String volumeResourceId,
- String relationshipId) {
+ String relationshipId, TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
RequirementAssignment requirementAssignment = new RequirementAssignment();
- requirementAssignment.setCapability(ToscaCapabilityType.ATTACHMENT.getDisplayName());
+ requirementAssignment.setCapability(ToscaCapabilityType.NATIVE_ATTACHMENT);
requirementAssignment.setNode(volumeResourceId);
if (relationshipId != null) {
requirementAssignment.setRelationship(relationshipId);
} else {
requirementAssignment
- .setRelationship(ToscaRelationshipType.NATIVE_ATTACHES_TO.getDisplayName());
+ .setRelationship(ToscaRelationshipType.NATIVE_ATTACHES_TO);
}
DataModelUtil
.addRequirementAssignment(novaNodeTemplate, ToscaConstants.LOCAL_STORAGE_REQUIREMENT_ID,
requirementAssignment);
+ //Add volume consolidation data
+ ConsolidationDataUtil.updateComputeConsolidationDataVolumes(translateTo, novaNodeTemplate
+ .getType(), translateTo.getTranslatedId(), ToscaConstants.LOCAL_STORAGE_REQUIREMENT_ID,
+ requirementAssignment);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
- private void createCinderVolumeNodeTemplate(ServiceTemplate serviceTemplate,
+ private void createCinderVolumeNodeTemplate(ServiceTemplate serviceTemplate, String resourceId,
String volumeResourceId, String heatFileName,
Map<String, Object> blockDeviceMapping,
HeatOrchestrationTemplate heatOrchestrationTemplate,
TranslationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
NodeTemplate cinderVolumeNodeTemplate = new NodeTemplate();
- cinderVolumeNodeTemplate.setType(ToscaNodeType.CINDER_VOLUME.getDisplayName());
+ cinderVolumeNodeTemplate.setType(ToscaNodeType.CINDER_VOLUME);
cinderVolumeNodeTemplate.setProperties(TranslatorHeatToToscaPropertyConverter
- .getToscaPropertiesSimpleConversion(blockDeviceMapping, null, heatFileName,
- heatOrchestrationTemplate,
+ .getToscaPropertiesSimpleConversion(serviceTemplate, resourceId, blockDeviceMapping, null,
+ heatFileName, heatOrchestrationTemplate,
HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource(),
cinderVolumeNodeTemplate, context));
DataModelUtil.addNodeTemplate(serviceTemplate, volumeResourceId, cinderVolumeNodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void createVolumeAttachesToRelationship(ServiceTemplate serviceTemplate,
String deviceName, String novaServerTranslatedId,
String volumeId, String relationshipId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
RelationshipTemplate relationshipTemplate = new RelationshipTemplate();
- relationshipTemplate.setType(ToscaRelationshipType.CINDER_VOLUME_ATTACHES_TO.getDisplayName());
+ relationshipTemplate.setType(ToscaRelationshipType.CINDER_VOLUME_ATTACHES_TO);
Map<String, Object> properties = new HashMap<>();
properties.put("instance_uuid", novaServerTranslatedId);
properties.put("volume_id", volumeId);
@@ -267,10 +363,15 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
relationshipTemplate.setProperties(properties);
DataModelUtil.addRelationshipTemplate(serviceTemplate, relationshipId, relationshipTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private List<Map<String, Object>> getBlockDeviceMappingList(Resource resource) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (Objects.isNull(resource.getProperties())) {
return Collections.emptyList();
}
@@ -283,19 +384,32 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
blockDeviceMappingList.addAll(blockDeviceMappingV2List);
} else if (CollectionUtils.isEmpty(blockDeviceMappingList)
&& CollectionUtils.isEmpty(blockDeviceMappingV2List)) {
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return null;
} else {
blockDeviceMappingList =
blockDeviceMappingList != null ? blockDeviceMappingList : blockDeviceMappingV2List;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return blockDeviceMappingList;
}
- private void manageNovaServerNetwork(String heatFileName, ServiceTemplate serviceTemplate,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- Resource resource, String translatedId,
- TranslationContext context, NodeTemplate novaNodeTemplate) {
+ private void manageNovaServerNetwork(TranslateTo translateTo,
+ NodeTemplate novaNodeTemplate) {
+
+
+ String heatFileName = translateTo.getHeatFileName();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ HeatOrchestrationTemplate heatOrchestrationTemplate = translateTo
+ .getHeatOrchestrationTemplate();
+ Resource resource = translateTo.getResource();
+ String translatedId = translateTo.getTranslatedId();
+ TranslationContext context = translateTo.getContext();
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
if (resource.getProperties() == null) {
return;
@@ -308,18 +422,28 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
}
for (Map<String, Object> heatNetwork : heatNetworkList) {
- getOrTranslatePortTemplate(heatFileName, heatOrchestrationTemplate,
- heatNetwork.get(Constants.PORT_PROPERTY_NAME), serviceTemplate, translatedId, context,
- novaNodeTemplate);
+ getOrTranslatePortTemplate(translateTo, heatNetwork.get(
+ Constants.PORT_PROPERTY_NAME), translatedId, novaNodeTemplate);
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
+
}
- private void getOrTranslatePortTemplate(String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- Object port, ServiceTemplate serviceTemplate,
- String novaServerResourceId, TranslationContext context,
+ private void getOrTranslatePortTemplate(TranslateTo translateTo,
+ Object port,
+ String novaServerResourceId,
NodeTemplate novaNodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ String heatFileName = translateTo.getHeatFileName();
+ HeatOrchestrationTemplate heatOrchestrationTemplate = translateTo
+ .getHeatOrchestrationTemplate();
+ ServiceTemplate serviceTemplate = translateTo.getServiceTemplate();
+ TranslationContext context = translateTo.getContext();
+
Optional<AttachedResourceId> attachedPortId = HeatToToscaUtil
.extractAttachedResourceId(heatFileName, heatOrchestrationTemplate, context, port);
@@ -337,11 +461,11 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
logger.warn("NovaServer connect to port resource with id : " + resourceId + " and type : "
+ portResource.getType()
+ ". This resource type is not supported, therefore the connection to the port is "
- + "ignored. "
- + "Supported types are: "
+ + "ignored. Supported types are: "
+ HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource() + ", "
+ HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE
- .getHeatResource());
+ .getHeatResource());
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
} else if (HeatResourcesTypes.CONTRAIL_V2_VIRTUAL_MACHINE_INTERFACE_RESOURCE_TYPE
.getHeatResource().equals(portResource.getType())) {
@@ -356,7 +480,11 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
if (translatedPortId.isPresent()) {
NodeTemplate portNodeTemplate =
DataModelUtil.getNodeTemplate(serviceTemplate, translatedPortId.get());
- addBindingReqFromPortToCompute(novaServerResourceId, portNodeTemplate);
+ HeatToToscaUtil.addBindingReqFromPortToCompute(novaServerResourceId, portNodeTemplate);
+
+ // Add ports
+ ConsolidationDataUtil.updatePortInConsolidationData(translateTo, novaNodeTemplate.getType(),
+ translatedPortId.get());
} else {
logger.warn("NovaServer connect to port resource with id : " + resourceId + " and type : "
+ portResource.getType()
@@ -364,44 +492,43 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
+ "ignored.");
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
- /**
- * Create local node type string.
- *
- * @param serviceTemplate the service template
- * @param properties the properties
- * @param resourceTranslatedId the resource translated id
- * @return the string
- */
- public String createLocalNodeType(ServiceTemplate serviceTemplate, Map<String, Object> properties,
- String resourceTranslatedId) {
- NameExtractorService nodeTypeNameExtractor = new NameExtractorServiceImpl();
- List<PropertyRegexMatcher> propertyRegexMatchers =
- getPropertiesAndRegexMatchers(nodeTypeNameExtractor);
- Optional<String> extractedNodeTypeName = nodeTypeNameExtractor
- .extractNodeTypeNameByPropertiesPriority(properties, propertyRegexMatchers);
-
- String nodeTypeName = ToscaConstants.NODES_PREFIX
- + (extractedNodeTypeName.isPresent() ? extractedNodeTypeName.get()
- : resourceTranslatedId.replace(".", "_"));
+
+ private String createLocalNodeType(ServiceTemplate serviceTemplate, Resource resource, String
+ resourceId,
+ String translatedId, TranslationContext context) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ NameExtractor nodeTypeNameExtractor = context.getNameExtractorImpl(resource.getType());
+ String nodeTypeName =
+ nodeTypeNameExtractor.extractNodeTypeName(resource, resourceId, translatedId);
+
if (!isNodeTypeCreated(serviceTemplate, nodeTypeName)) {
DataModelUtil.addNodeType(serviceTemplate, nodeTypeName, createNodeType());
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return nodeTypeName;
}
- private List<PropertyRegexMatcher> getPropertiesAndRegexMatchers(
- NameExtractorService nodeTypeNameExtractor) {
+ /**
+ * Get property Regx matcher list.
+ *
+ * @return Regex exprission per nova resource property, while nova node type name is consider when
+ * setting the name value.
+ */
+ public List<PropertyRegexMatcher> getPropertyRegexMatchersForNovaNodeType() {
List<PropertyRegexMatcher> propertyRegexMatchers = new ArrayList<>();
- propertyRegexMatchers.add(nodeTypeNameExtractor
- .getPropertyRegexMatcher(Constants.NAME_PROPERTY_NAME,
+ propertyRegexMatchers
+ .add(new PropertyRegexMatcher(Constants.NAME_PROPERTY_NAME,
Arrays.asList(".+_name$", ".+_names$", ".+_name_[0-9]+"), "_name"));
- propertyRegexMatchers.add(nodeTypeNameExtractor
- .getPropertyRegexMatcher("image", Collections.singletonList(".+_image_name$"),
+ propertyRegexMatchers
+ .add(new PropertyRegexMatcher("image", Collections.singletonList(".+_image_name$"),
"_image_name"));
- propertyRegexMatchers.add(nodeTypeNameExtractor
- .getPropertyRegexMatcher("flavor", Collections.singletonList(".+_flavor_name$"),
+ propertyRegexMatchers
+ .add(new PropertyRegexMatcher("flavor", Collections.singletonList(".+_flavor_name$"),
"_flavor_name"));
return propertyRegexMatchers;
}
@@ -413,7 +540,7 @@ public class ResourceTranslationNovaServerImpl extends ResourceTranslationBase {
private NodeType createNodeType() {
NodeType nodeType = new NodeType();
- nodeType.setDerived_from(ToscaNodeType.NOVA_SERVER.getDisplayName());
+ nodeType.setDerived_from(ToscaNodeType.NOVA_SERVER);
return nodeType;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/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 4665249351..5d25c7ef25 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/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
@@ -18,12 +18,19 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
@@ -44,6 +51,10 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
@Override
protected void translate(TranslateTo translateTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
final String heatFileName = translateTo.getHeatFileName();
Object resourceDef =
translateTo.getResource().getProperties().get(HeatConstants.RESOURCE_DEF_PROPERTY_NAME);
@@ -52,16 +63,18 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
if (!(typeDefinition instanceof String)) {
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 ");
+ + "' with resourceDef which is not pointing to nested heat file is not supported and "
+ + "will be ignored in the translation ");
return;
}
String type = (String) typeDefinition;
if (!HeatToToscaUtil.isYmlFileType(type)) {
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 ");
+ + "' with resourceDef which is not pointing to nested heat file is not supported and "
+ + "will be ignored in the translation ");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return;
}
@@ -88,11 +101,18 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
substitutionNodeTemplate);
}
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void handlingIndexVar(TranslateTo translateTo, NodeTemplate substitutionNodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
String indexVarValue = getIndexVarValue(translateTo);
replacePropertiesIndexVarValue(indexVarValue, substitutionNodeTemplate.getProperties());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private Map<String, List> getNewIndexVarValue() {
@@ -107,6 +127,10 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
private void replacePropertiesIndexVarValue(String indexVarValue,
Map<String, Object> properties) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (properties == null || properties.isEmpty()) {
return;
}
@@ -118,9 +142,15 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
properties.put(propertyEntry.getKey(), newPropertyValue);
}
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private Object getUpdatedPropertyValueWithIndex(String indexVarValue, Object propertyValue) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (propertyValue instanceof String && propertyValue != null) {
if (propertyValue.equals(indexVarValue)) {
return getNewIndexVarValue();
@@ -147,6 +177,8 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
concatMap.put(ToscaFunctions.CONCAT.getDisplayName(), concatList);
return concatMap;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return propertyValue; //no update is needed
} else if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
replacePropertiesIndexVarValue(indexVarValue, (Map<String, Object>) propertyValue);
@@ -156,12 +188,19 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
for (Object entry : ((List) propertyValue)) {
newPropertyValueList.add(getUpdatedPropertyValueWithIndex(indexVarValue, entry));
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return newPropertyValueList;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return propertyValue;
}
private String getIndexVarValue(TranslateTo translateTo) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Object indexVar =
translateTo.getResource().getProperties().get(HeatConstants.INDEX_PROPERTY_NAME);
if (indexVar == null) {
@@ -169,8 +208,13 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
}
if (indexVar instanceof String) {
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return (String) indexVar;
} else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_RESOURCE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_PROPERTY);
throw new CoreException(
new InvalidPropertyValueErrorBuilder("index_var", indexVar.toString(), "String").build());
}
@@ -179,10 +223,15 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
private void populateServiceTemplateFilterProperties(TranslateTo translateTo,
NodeTemplate substitutionNodeTemplate,
Map serviceTemplateFilter) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
boolean mandatory = false;
Object countValue = TranslatorHeatToToscaPropertyConverter
- .getToscaPropertyValue(ToscaConstants.COUNT_PROPERTY_NAME,
- translateTo.getResource().getProperties().get(ToscaConstants.COUNT_PROPERTY_NAME), null,
+ .getToscaPropertyValue(translateTo.getServiceTemplate(),translateTo.getResourceId(),
+ ToscaConstants.COUNT_PROPERTY_NAME, translateTo.getResource().getProperties().get
+ (ToscaConstants.COUNT_PROPERTY_NAME), null,
translateTo.getHeatFileName(), translateTo.getHeatOrchestrationTemplate(),
substitutionNodeTemplate, translateTo.getContext());
@@ -198,5 +247,7 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
mandatory = true;
}
serviceTemplateFilter.put("mandatory", mandatory);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
}
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/SecurityRulesToPortResourceConnection.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityRulesToPortResourceConnection.java
new file mode 100644
index 0000000000..3d183b1ad9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityRulesToPortResourceConnection.java
@@ -0,0 +1,182 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.translator.datatypes.heattotosca.AttachedResourceId;
+import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
+import org.openecomp.sdc.translator.services.heattotosca.Constants;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.function.Predicate;
+
+
+class SecurityRulesToPortResourceConnection extends ResourceConnectionUsingCapabilityHelper {
+ SecurityRulesToPortResourceConnection(ResourceTranslationNestedImpl resourceTranslationNested,
+ TranslateTo translateTo, FileData nestedFileData,
+ NodeTemplate substitutionNodeTemplate, NodeType nodeType) {
+ super(resourceTranslationNested, translateTo, nestedFileData, substitutionNodeTemplate,
+ nodeType);
+ }
+
+ @Override
+ protected boolean isDesiredNodeTemplateType(NodeTemplate nodeTemplate) {
+ return nodeTemplate.getType().equals(ToscaNodeType.NEUTRON_PORT);
+ }
+
+ @Override
+ protected List<Predicate<CapabilityDefinition>> getPredicatesListForConnectionPoints() {
+ ArrayList<Predicate<CapabilityDefinition>> predicates = new ArrayList<>();
+ predicates.add(cap -> cap.getType().equals(ToscaCapabilityType.NATIVE_ATTACHMENT));
+ return predicates;
+ }
+
+ @Override
+ protected Optional<List<String>> getConnectorPropertyParamName(String heatResourceId,
+ Resource heatResource,
+ HeatOrchestrationTemplate
+ nestedHeatOrchestrationTemplate,
+ String nestedHeatFileName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Object securityGroups =
+ heatResource.getProperties().get(Constants.SECURITY_GROUPS_PROPERTY_NAME);
+ List<String> paramsList = new ArrayList<>();
+ if (securityGroups instanceof List) {
+ ((List) securityGroups).forEach(group -> {
+ Optional<AttachedResourceId> attachedResourceId = HeatToToscaUtil
+ .extractAttachedResourceId(nestedFileData.getFile(), nestedHeatOrchestrationTemplate,
+ translateTo.getContext(), group);
+ if (attachedResourceId.isPresent()
+ && attachedResourceId.get().isGetParam()
+ && attachedResourceId.get().getEntityId() instanceof String) {
+ paramsList.add((String) attachedResourceId.get().getEntityId());
+ }
+ });
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(paramsList);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+
+ @Override
+ protected String getDesiredResourceType() {
+ return HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource();
+ }
+
+ @Override
+ void addRequirementToConnectResources(
+ Map.Entry<String, CapabilityDefinition> connectionPointEntry, List<String> paramNames) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (paramNames == null || paramNames.isEmpty()) {
+ return;
+ }
+ List<String> supportedSecurityRulesTypes = Collections
+ .singletonList(HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE.getHeatResource());
+
+ for (String paramName : paramNames) {
+ addRequirementToConnectResource(connectionPointEntry, supportedSecurityRulesTypes, paramName);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ boolean validateResourceTypeSupportedForReqCreation(String nestedResourceId,
+ String nestedPropertyName,
+ String connectionPointId,
+ Resource connectedResource,
+ List<String> supportedTypes) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!resourceTranslationBase.isResourceTypeSupported(connectedResource, supportedTypes)) {
+ logger.warn("Nested resource '" + nestedResourceId + "' property '" + nestedPropertyName
+ + "' is pointing to resource with type '" + connectedResource.getType()
+ + "' which is not supported for capability '" + connectionPointId
+ + "' connection, (security rules to port connection). Supported types are: '"
+ + supportedTypes.toString() + "', therefore, this TOSCA capability will not be "
+ + "connected.");
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return false;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return true;
+ }
+
+ @Override
+ Map.Entry<String, RequirementDefinition> createRequirementDefinition(String capabilityKey) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ RequirementDefinition definition = new RequirementDefinition();
+ definition.setCapability(capabilityKey);
+ definition.setRelationship(ToscaRelationshipType.ATTACHES_TO);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return new Map.Entry<String, RequirementDefinition>() {
+ @Override
+ public String getKey() {
+ return ToscaConstants.PORT_REQUIREMENT_ID;
+ }
+
+ @Override
+ public RequirementDefinition getValue() {
+ return definition;
+ }
+
+ @Override
+ public RequirementDefinition setValue(RequirementDefinition value) {
+ return null;
+ }
+ };
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionCatalogInstance.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionCatalogInstance.java
new file mode 100644
index 0000000000..9742a44f52
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionCatalogInstance.java
@@ -0,0 +1,28 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition;
+
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedComposition;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+
+public class UnifiedCompositionCatalogInstance implements UnifiedComposition {
+ @Override
+ public void createUnifiedComposition(ServiceTemplate serviceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedComposotionDataList,
+ TranslationContext context) {
+
+ UnifiedCompositionSingleSubstitution unifiedCompositionSingleSubstitution =
+ new UnifiedCompositionSingleSubstitution();
+
+ unifiedCompositionSingleSubstitution
+ .createUnifiedComposition(serviceTemplate, null, unifiedComposotionDataList, context);
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionNestedSingleCompute.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionNestedSingleCompute.java
new file mode 100644
index 0000000000..03d7eb02df
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionNestedSingleCompute.java
@@ -0,0 +1,38 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedComposition;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class UnifiedCompositionNestedSingleCompute implements UnifiedComposition {
+ @Override
+ public void createUnifiedComposition(ServiceTemplate serviceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ UnifiedCompositionService unifiedCompositionService = new UnifiedCompositionService();
+ if (CollectionUtils.isEmpty(unifiedCompositionDataList)) {
+ return;
+ }
+
+ for (int i = 0; i < unifiedCompositionDataList.size(); i++) {
+ List<UnifiedCompositionData> nestedUnifiedCompositionDataList = new ArrayList<>();
+ nestedUnifiedCompositionDataList.add(unifiedCompositionDataList.get(i));
+
+ unifiedCompositionService
+ .handleUnifiedNestedDefinition(serviceTemplate, nestedServiceTemplate,
+ unifiedCompositionDataList, context);
+ unifiedCompositionService
+ .updateUnifiedNestedConnectivity(serviceTemplate, nestedServiceTemplate,
+ nestedUnifiedCompositionDataList, context);
+ unifiedCompositionService
+ .cleanUnifiedNestedEntities(serviceTemplate, nestedUnifiedCompositionDataList, context);
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionScalingInstances.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionScalingInstances.java
new file mode 100644
index 0000000000..fe287a4014
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionScalingInstances.java
@@ -0,0 +1,48 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedComposition;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+
+public class UnifiedCompositionScalingInstances implements UnifiedComposition {
+
+ private UnifiedCompositionService unifiedCompositionService = new UnifiedCompositionService();
+
+ @Override
+ public void createUnifiedComposition(ServiceTemplate serviceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ if (CollectionUtils.isEmpty(unifiedCompositionDataList)) {
+ return;
+ }
+
+ Integer index = null;
+ Optional<ServiceTemplate> substitutionServiceTemplate =
+ unifiedCompositionService.createUnifiedSubstitutionServiceTemplate(serviceTemplate,
+ unifiedCompositionDataList, context, index);
+
+ if (!substitutionServiceTemplate.isPresent()) {
+ return;
+ }
+
+ String abstractNodeTemplateId = unifiedCompositionService
+ .createAbstractSubstituteNodeTemplate(serviceTemplate, substitutionServiceTemplate.get(),
+ unifiedCompositionDataList, context, index);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(serviceTemplate, unifiedCompositionDataList, context);
+
+ unifiedCompositionService
+ .cleanUnifiedCompositionEntities(serviceTemplate, unifiedCompositionDataList, context);
+
+ unifiedCompositionService.cleanNodeTypes(serviceTemplate, unifiedCompositionDataList, context);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionSingleSubstitution.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionSingleSubstitution.java
new file mode 100644
index 0000000000..c3965a5f52
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/unifiedcomposition/UnifiedCompositionSingleSubstitution.java
@@ -0,0 +1,65 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedComposition;
+import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+
+
+/**
+ * The type Unified composition single substitution.
+ */
+public class UnifiedCompositionSingleSubstitution implements UnifiedComposition {
+
+ // There is no consolidation in SingleSubstitution implemetation.
+ // In case of single substitution, if there is more than one entry in the
+ // unifiedComposotionDataList, they all should contain the same compute type but the
+ // consolidation between them was canceled.
+ // For different compute type, this implementation will be called more than once, each time
+ // per diff compute type, while sending one entry in the unifiedComposotionDataList.
+ @Override
+ public void createUnifiedComposition(ServiceTemplate serviceTemplate,
+ ServiceTemplate nestedServiceTemplate,
+ List<UnifiedCompositionData> unifiedCompositionDataList,
+ TranslationContext context) {
+ UnifiedCompositionService unifiedCompositionService = new UnifiedCompositionService();
+ if (CollectionUtils.isEmpty(unifiedCompositionDataList)) {
+ return;
+ }
+
+ for (int i = 0; i < unifiedCompositionDataList.size(); i++) {
+ List<UnifiedCompositionData> singleSubstitutionUnifiedList = new ArrayList<>();
+ singleSubstitutionUnifiedList.add(unifiedCompositionDataList.get(i));
+
+ Integer index = unifiedCompositionDataList.size() > 1 ? i : null;
+ Optional<ServiceTemplate> substitutionServiceTemplate =
+ unifiedCompositionService.createUnifiedSubstitutionServiceTemplate(serviceTemplate,
+ singleSubstitutionUnifiedList, context, index);
+
+ if (!substitutionServiceTemplate.isPresent()) {
+ continue;
+ }
+
+ String abstractNodeTemplateId = unifiedCompositionService
+ .createAbstractSubstituteNodeTemplate(serviceTemplate, substitutionServiceTemplate.get(),
+ singleSubstitutionUnifiedList, context, index);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(serviceTemplate, singleSubstitutionUnifiedList, context);
+
+ unifiedCompositionService
+ .cleanUnifiedCompositionEntities(serviceTemplate, singleSubstitutionUnifiedList, context);
+
+ }
+
+ unifiedCompositionService
+ .cleanNodeTypes(serviceTemplate, unifiedCompositionDataList, context);
+
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverter.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverter.java
deleted file mode 100644
index 0aa5c5ff96..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverter.java
+++ /dev/null
@@ -1,410 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.translator.services.heattotosca.mapping;
-
-import org.openecomp.core.utilities.yaml.YamlUtil;
-import org.openecomp.sdc.heat.datatypes.HeatBoolean;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.heat.services.HeatConstants;
-import org.openecomp.sdc.tosca.datatypes.ToscaArtifactType;
-import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
-import org.openecomp.sdc.tosca.datatypes.model.ArtifactDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.Template;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
-import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationBase;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.Set;
-import java.util.stream.Collectors;
-
-
-public class TranslatorHeatToToscaFunctionConverter {
- private static final String UNSUPPORTED_RESOURCE = "UNSUPPORTED_RESOURCE_";
- private static final String UNSUPPORTED_ATTRIBUTE = "UNSUPPORTED_ATTRIBUTE_";
-
- protected static Set<String> functionNameSet;
-
- static {
- functionNameSet = new HashSet<>();
- functionNameSet.add("get_param");
- functionNameSet.add("get_attr");
- functionNameSet.add("get_resource");
- functionNameSet.add("get_file");
- }
-
- /**
- * Gets tosca function.
- *
- * @param functionName the function name
- * @param function the function
- * @param heatFileName the heat file name
- * @param heatOrchestrationTemplate the heat orchestration template
- * @param template the template
- * @param context the context
- * @return the tosca function
- */
- public static Object getToscaFunction(String functionName, Object function, String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- Template template, TranslationContext context) {
- Object returnValue = null;
- if ("get_param".equals(functionName)) {
- returnValue =
- handleGetParamFunction(function, heatFileName, heatOrchestrationTemplate, context);
- } else if ("get_attr".equals(functionName)) {
- returnValue =
- handleGetAttrFunction(function, heatFileName, heatOrchestrationTemplate, context);
- } else if ("get_resource".equals(functionName)) {
- returnValue =
- handleGetResourceFunction(function, heatFileName, heatOrchestrationTemplate, context);
- } else if ("get_file".equals(functionName)) {
- returnValue = handleGetFileFunction(function, template);
- }
- return returnValue;
- }
-
- private static Object handleGetFileFunction(Object function, Template template) {
- String file = ((String) function).replace("file:///", "");
- Object returnValue;
- final String artifactId = file.split("\\.")[0];
-
- returnValue = new HashMap<>();
- List artifactParameters = new ArrayList();
- artifactParameters.add(0, ToscaConstants.MODELABLE_ENTITY_NAME_SELF);
- ((Map) returnValue).put(ToscaFunctions.GET_ARTIFACT.getDisplayName(), artifactParameters);
- artifactParameters.add(1, artifactId);
-
- ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
- if (template != null) {
- if (template instanceof NodeTemplate) {
- NodeTemplate nodeTemplate = (NodeTemplate) template;
- ArtifactDefinition artifactDefinition =
- createArtifactDefinition(file, toscaFileOutputService);
- if (nodeTemplate.getArtifacts() == null) {
- nodeTemplate.setArtifacts(new HashMap<>());
- }
- nodeTemplate.getArtifacts().put(artifactId, artifactDefinition);
- }
- }
- return returnValue;
- }
-
- private static Object handleGetResourceFunction(Object function, String heatFileName,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- TranslationContext context) {
- Object returnValue;
- Optional<String> resourceTranslatedId = ResourceTranslationBase
- .getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, (String) function,
- context);
- if (resourceTranslatedId.isPresent()) {
- returnValue = resourceTranslatedId.get();
- } else {
- returnValue = UNSUPPORTED_RESOURCE + function;
- }
- return returnValue;
- }
-
- private static Object handleGetAttrFunction(Object function, String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- TranslationContext context) {
- Object returnValue = new HashMap<>();
- List<Object> attributeFunctionExpression =
- translateGetAttributeFunctionExpression(function, heatFileName, heatOrchestrationTemplate,
- context);
- if (isResourceSupported(attributeFunctionExpression.get(0).toString())
- && isAttributeSupported(attributeFunctionExpression.get(0).toString())) {
- ((Map) returnValue)
- .put(ToscaFunctions.GET_ATTRIBUTE.getDisplayName(), attributeFunctionExpression);
- } else {
- returnValue = attributeFunctionExpression;
- }
- return returnValue;
- }
-
- private static Object handleGetParamFunction(Object function, String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- TranslationContext context) {
- Map returnValue = new HashMap<>();
- returnValue.put(ToscaFunctions.GET_INPUT.getDisplayName(),
- translateGetParamFunctionExpression(function, heatFileName, heatOrchestrationTemplate,
- context));
- return returnValue;
- }
-
- private static ArtifactDefinition createArtifactDefinition(Object function,
- ToscaFileOutputService
- toscaFileOutputService) {
- ArtifactDefinition artifactDefinition = new ArtifactDefinition();
- artifactDefinition.setType(ToscaArtifactType.DEPLOYMENT.getDisplayName());
- artifactDefinition
- .setFile("../" + toscaFileOutputService.getArtifactsFolderName() + "/" + function);
- return artifactDefinition;
- }
-
- private static Object translateGetParamFunctionExpression(Object function, String heatFileName,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- TranslationContext context) {
- Object returnValue = null;
- if (function instanceof String) {
- returnValue = function;
- } else {
- if (function instanceof List) {
- returnValue = new ArrayList<>();
- for (int i = 0; i < ((List) function).size(); i++) {
- Object paramValue = ((List) function).get(i);
- if ((paramValue instanceof Map && !((Map) paramValue).isEmpty())) {
- Map<String, Object> paramMap = (Map) paramValue;
- Map.Entry<String, Object> entry = paramMap.entrySet().iterator().next();
- ((List) returnValue).add(
- getToscaFunction(entry.getKey(), entry.getValue(), heatFileName,
- heatOrchestrationTemplate, null, context));
- } else {
- ((List) returnValue).add(paramValue);
- }
- }
- }
- }
-
- return returnValue;
- }
-
- private static List<Object> translateGetAttributeFunctionExpression(
- Object function,String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- TranslationContext context) {
- List<String> attributeParamList = (List) function;
- List<Object> toscaAttributeParamList = new ArrayList<>();
-
- Optional<String> resourceTranslatedId =
- handleResourceName(attributeParamList.get(0), heatFileName, heatOrchestrationTemplate,
- context);
- if (!resourceTranslatedId.isPresent()) {
- //unsupported resource
- toscaAttributeParamList.add(UNSUPPORTED_RESOURCE + attributeParamList.get(0));
- return toscaAttributeParamList;
- } else {
- toscaAttributeParamList.add(resourceTranslatedId.get());
- }
-
- Optional<List<Object>> toscaAttList =
- handleAttributeName(attributeParamList, heatOrchestrationTemplate, heatFileName, context);
- if (!toscaAttList.isPresent()) {
- //Unsupported attribute
- toscaAttributeParamList.clear();
- toscaAttributeParamList
- .add(UNSUPPORTED_ATTRIBUTE + attributeParamList.get(0) + "." + attributeParamList.get(1));
- return toscaAttributeParamList;
- } else {
- toscaAttributeParamList.addAll(toscaAttList.get());
- }
-
- Optional<List<String>> toscaIndexOrKey = handleAttributeIndexOrKey(attributeParamList);
- if (toscaIndexOrKey.isPresent()) {
- toscaAttributeParamList.addAll(toscaIndexOrKey.get());
- }
-
- return toscaAttributeParamList;
- }
-
- private static Optional<List<String>> handleAttributeIndexOrKey(List<String> attributeParamList) {
- List<String> attributeIndexOrKey = new ArrayList<>();
- if (attributeParamList.size() < 2) {
- return Optional.empty();
- }
-
- for (int i = 2; i < attributeParamList.size(); i++) {
- attributeIndexOrKey.add(attributeParamList.get(i));
- }
-
- return Optional.of(attributeIndexOrKey);
- }
-
- private static Optional<List<Object>> handleAttributeName(List<String> attributeParamList,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- String heatFileName,
- TranslationContext context) {
- String resourceId = attributeParamList.get(0);
- Resource resource =
- HeatToToscaUtil.getResource(heatOrchestrationTemplate, resourceId, heatFileName);
-
- if (attributeParamList.size() == 1) {
- return getResourceTranslatedAttributesList(resource, context);
- }
-
- if (HeatToToscaUtil.isNestedResource(resource)) {
- return getNestedResourceTranslatedAttribute(attributeParamList.get(1));
- } else {
- return getResourceTranslatedAttribute(resource, attributeParamList.get(1), context);
- }
- }
-
- private static Optional<List<Object>> getResourceTranslatedAttribute(Resource resource,
- String attributeName,
- TranslationContext context) {
- List<Object> translatedAttributesList = new ArrayList<>();
- String translatedAttribute =
- context.getElementMapping(resource.getType(), Constants.ATTR, attributeName);
- if (translatedAttribute != null) {
- translatedAttributesList.add(translatedAttribute);
- return Optional.of(translatedAttributesList);
- } else { //unsupported attribute
- return Optional.empty();
- }
- }
-
- private static Optional<List<Object>> getNestedResourceTranslatedAttribute(String attributeName) {
- List<Object> translatedAttributesList = new ArrayList<>();
-
- if (attributeName.startsWith(HeatConstants.GET_ATT_FROM_RESOURCE_GROUP_PREFIX)) {
- String[] attributeSplit = attributeName.split("\\.");
- if (attributeSplit.length == 2) {
- translatedAttributesList.add(attributeSplit[1]);
- } else if (attributeSplit.length == 3) {
- translatedAttributesList.add(attributeSplit[2]);
- translatedAttributesList.add(Integer.valueOf(attributeSplit[1]));
- } else {
- return Optional.empty();
- }
- } else {
- translatedAttributesList.add(attributeName);
- }
- return Optional.of(translatedAttributesList);
- }
-
- private static Optional<List<Object>> getResourceTranslatedAttributesList(Resource resource,
- TranslationContext
- context) {
- List<Object> translatedAttributes = new ArrayList<>();
- if (HeatToToscaUtil.isNestedResource(resource)) {
- Optional<String> nestedFile = HeatToToscaUtil.getNestedFile(resource);
- if (!nestedFile.isPresent()) {
- return Optional.empty();
- }
- HeatOrchestrationTemplate nestedHeatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(context.getFiles().getFileContent(nestedFile.get()),
- HeatOrchestrationTemplate.class);
- translatedAttributes.addAll(nestedHeatOrchestrationTemplate.getOutputs().keySet());
- return Optional.of(translatedAttributes);
-
- } else {
- Map<String, String> resourceMappingAttributes =
- context.getElementMapping(resource.getType(), Constants.ATTR);
- Set<String> mappingAttributes = new HashSet<>();
- mappingAttributes
- .addAll(resourceMappingAttributes.values().stream().collect(Collectors.toList()));
- translatedAttributes.addAll(mappingAttributes);
- return Optional.of(translatedAttributes);
- }
- }
-
- private static Optional<String> handleResourceName(String resourceId, String heatFileName,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- TranslationContext context) {
- return ResourceTranslationBase
- .getResourceTranslatedId(heatFileName, heatOrchestrationTemplate, resourceId, context);
- }
-
- public static boolean isResourceSupported(String translatedResourceId) {
- return !translatedResourceId.startsWith(UNSUPPORTED_RESOURCE);
- }
-
- public static boolean isAttributeSupported(String translatedAttName) {
- return !translatedAttName.startsWith(UNSUPPORTED_ATTRIBUTE);
- }
-
- /**
- * Translate fn split function optional.
- *
- * @param propertyValue the property value
- * @param listSize the list size
- * @param includeBooleanValue the include boolean value
- * @return the optional
- */
- public static Optional<List<Map<String, List>>> translateFnSplitFunction(
- Object propertyValue,int listSize,
- boolean includeBooleanValue) {
- List<Map<String, List>> tokenPropertyValueList = new ArrayList<>();
-
- if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
- Map<String, Object> propMap = (Map) propertyValue;
- Map.Entry<String, Object> entry = propMap.entrySet().iterator().next();
- Object entity = entry.getValue();
- String key = entry.getKey();
- String tokenChar;
-
- if (key.equals("Fn::Split") && entity instanceof List) {
- tokenChar = (String) ((List) entity).get(0);
- Object refParameter = ((List) entity).get(1);
-
- for (int substringIndex = 0; substringIndex < listSize; substringIndex++) {
- Map<String, List> tokenPropertyValue = new HashMap<>();
- tokenPropertyValue.put("token", new ArrayList<>());
-
- if (refParameter instanceof Map && ((Map) refParameter).get("Ref") != null) {
- Map<String, String> stringWithToken = new HashMap<>();
- ((Map) stringWithToken)
- .put(ToscaFunctions.GET_INPUT.getDisplayName(), ((Map) refParameter).get("Ref"));
- tokenPropertyValue.get("token").add(stringWithToken);
- } else if (refParameter instanceof String) {
- if (includeBooleanValue) {
- StringBuffer booleanBuffer = new StringBuffer();
- String[] booleanValueList = ((String) refParameter).split(tokenChar);
- for (int i = 0; i < booleanValueList.length; i++) {
- if (i == 0) {
- booleanBuffer.append(HeatBoolean.eval(booleanValueList[i]));
- } else {
- booleanBuffer.append(tokenChar);
- booleanBuffer.append(HeatBoolean.eval(booleanValueList[i]));
- }
- }
- tokenPropertyValue.get("token").add(booleanBuffer.toString());
- } else {
- tokenPropertyValue.get("token").add(refParameter);
- }
- }
- tokenPropertyValue.get("token").add(tokenChar);
- tokenPropertyValue.get("token").add(substringIndex);
- tokenPropertyValueList.add(tokenPropertyValue);
- }
-
- return Optional.of(tokenPropertyValueList);
-
- }
- }
-
- return Optional.empty();
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaParameterConverter.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaParameterConverter.java
index 07ab6d1542..23a4d7317b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaParameterConverter.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaParameterConverter.java
@@ -20,15 +20,20 @@
package org.openecomp.sdc.translator.services.heattotosca.mapping;
+import org.apache.commons.collections4.MapUtils;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.Output;
import org.openecomp.sdc.heat.datatypes.model.Parameter;
import org.openecomp.sdc.tosca.datatypes.model.Constraint;
import org.openecomp.sdc.tosca.datatypes.model.EntrySchema;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
import org.openecomp.sdc.tosca.datatypes.model.heatextend.ParameterDefinitionExt;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
-
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslationFactory;
import java.util.ArrayList;
import java.util.Arrays;
@@ -36,6 +41,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+
public class TranslatorHeatToToscaParameterConverter {
@@ -65,16 +71,18 @@ public class TranslatorHeatToToscaParameterConverter {
* @param context the context
* @return the map
*/
- public static Map<String, ParameterDefinition> parameterConverter(
+ public static Map<String, ParameterDefinition> parameterConverter(ServiceTemplate serviceTemplate,
Map<String, Parameter> parameters, HeatOrchestrationTemplate heatOrchestrationTemplate,
String heatFileName, TranslationContext context) {
Map<String, ParameterDefinition> parameterDefinitionMap = new HashMap<>();
for (Map.Entry<String, Parameter> entry : parameters.entrySet()) {
- //parameterDefinitionMap.put(entry.getKey()+"_"+ FileUtils
- // .getFileWithoutExtention(heatFileName),getToscaParameter(entry.getValue(),
- // heatOrchestrationTemplate, heatFileName, context));
+ //parameterDefinitionMap.put(entry.getKey()+"_"+ FileUtils.getFileWithoutExtention
+ // (heatFileName),getToscaParameter(entry.getValue(), heatOrchestrationTemplate,
+ // heatFileName, context));
parameterDefinitionMap.put(entry.getKey(),
- getToscaParameter(entry.getValue(), heatOrchestrationTemplate, heatFileName, context));
+ getToscaParameter(serviceTemplate,entry.getKey(), entry.getValue(),
+ heatOrchestrationTemplate,
+ heatFileName, context));
}
return parameterDefinitionMap;
}
@@ -88,16 +96,16 @@ public class TranslatorHeatToToscaParameterConverter {
* @param context the context
* @return the map
*/
- public static Map<String, ParameterDefinition> parameterOutputConverter(
+ public static Map<String, ParameterDefinition> parameterOutputConverter(ServiceTemplate
+ serviceTemplate,
Map<String, Output> parameters, HeatOrchestrationTemplate heatOrchestrationTemplate,
String heatFileName, TranslationContext context) {
Map<String, ParameterDefinition> parameterDefinitionMap = new HashMap<>();
for (Map.Entry<String, Output> entry : parameters.entrySet()) {
- //parameterDefinitionMap.put(entry.getKey()+"_"+FileUtils
- // .getFileWithoutExtention(heatFileName),getToscaOutputParameter(entry.getValue(),
- // heatOrchestrationTemplate, heatFileName, context));
parameterDefinitionMap.put(entry.getKey(),
- getToscaOutputParameter(entry.getValue(), heatOrchestrationTemplate, heatFileName,
+ getToscaOutputParameter(serviceTemplate,entry.getKey(),entry.getValue(),
+ heatOrchestrationTemplate,
+ heatFileName,
context));
}
return parameterDefinitionMap;
@@ -112,9 +120,11 @@ public class TranslatorHeatToToscaParameterConverter {
* @param context the context
* @return the tosca parameter
*/
- public static ParameterDefinitionExt getToscaParameter(Parameter heatParameter,
+ public static ParameterDefinitionExt getToscaParameter(ServiceTemplate serviceTemplate,
+ String parameterName,
+ Parameter heatParameter,
HeatOrchestrationTemplate
- heatOrchestrationTemplate,
+ heatOrchestrationTemplate,
String heatFileName,
TranslationContext context) {
@@ -124,8 +134,8 @@ public class TranslatorHeatToToscaParameterConverter {
toscaParameter.setLabel(heatParameter.getLabel());
toscaParameter.setDescription(heatParameter.getDescription());
toscaParameter.set_default(
- getToscaParameterDefaultValue(heatParameter.get_default(), toscaParameter.getType(),
- heatFileName, heatOrchestrationTemplate, context));
+ getToscaParameterDefaultValue(serviceTemplate, parameterName, heatParameter.get_default(),
+ toscaParameter.getType(), heatFileName, heatOrchestrationTemplate, context));
toscaParameter.setHidden(heatParameter.isHidden());
toscaParameter.setImmutable(heatParameter.isImmutable());
toscaParameter.setConstraints(getToscaConstrains(heatParameter.getConstraints()));
@@ -141,16 +151,19 @@ public class TranslatorHeatToToscaParameterConverter {
* @param context the context
* @return the tosca output parameter
*/
- public static ParameterDefinitionExt getToscaOutputParameter(Output heatOutputParameter,
+ public static ParameterDefinitionExt getToscaOutputParameter(ServiceTemplate serviceTemplate,
+ String parameterName,
+ Output heatOutputParameter,
HeatOrchestrationTemplate
- heatOrchestrationTemplate,
+ heatOrchestrationTemplate,
String heatFileName,
TranslationContext context) {
ParameterDefinitionExt toscaParameter = new ParameterDefinitionExt();
toscaParameter.setDescription(heatOutputParameter.getDescription());
toscaParameter.setValue(
- getToscaParameterDefaultValue(heatOutputParameter.getValue(), toscaParameter.getType(),
+ getToscaParameterDefaultValue(serviceTemplate,parameterName,heatOutputParameter.getValue(),
+ toscaParameter.getType(),
heatFileName, heatOrchestrationTemplate, context));
return toscaParameter;
}
@@ -158,44 +171,53 @@ public class TranslatorHeatToToscaParameterConverter {
/**
* Gets tosca parameter default value.
*
- * @param defaultObj the a default
+ * @param obj the a default
* @param type the type
* @param heatFileName the heat file name
* @param heatOrchestrationTemplate the heat orchestration template
* @param context the context
* @return the tosca parameter default value
*/
- public static Object getToscaParameterDefaultValue(Object defaultObj, String type,
+ public static Object getToscaParameterDefaultValue(ServiceTemplate serviceTemplate,
+ String parameterName,
+ Object obj, String type,
String heatFileName,
HeatOrchestrationTemplate
- heatOrchestrationTemplate,
+ heatOrchestrationTemplate,
TranslationContext context) {
- if (defaultObj == null) {
+ if (obj == null) {
return null;
}
+ Object toscaDefaultValue = obj;
if ("list".equals(type)) {
- if (defaultObj instanceof String) {
- return Arrays.asList(((String) defaultObj).split(","));
+ if (obj instanceof String) {
+ return Arrays.asList(((String) obj).split(","));
} else {
- return defaultObj;
+ return toscaDefaultValue;
}
}
- return getToscaParameterValue(defaultObj, heatFileName, heatOrchestrationTemplate,
+ return getToscaParameterValue(serviceTemplate,parameterName,toscaDefaultValue, heatFileName,
+ heatOrchestrationTemplate,
context);
}
- private static Object getToscaParameterValue(Object paramValue, String heatFileName,
+ private static Object getToscaParameterValue(ServiceTemplate serviceTemplate,
+ String parameterName,
+ Object paramValue, String heatFileName,
HeatOrchestrationTemplate heatOrchestrationTemplate,
TranslationContext context) {
if (paramValue instanceof Map) {
+ if(MapUtils.isEmpty((Map) paramValue)){
+ return new HashMap<>();
+ }
Map.Entry<String, Object> functionMapEntry =
(Map.Entry<String, Object>) ((Map) paramValue).entrySet().iterator().next();
- if (TranslatorHeatToToscaFunctionConverter.functionNameSet
- .contains(functionMapEntry.getKey())) {
- return TranslatorHeatToToscaFunctionConverter
- .getToscaFunction(functionMapEntry.getKey(), functionMapEntry.getValue(), heatFileName,
+ if (FunctionTranslationFactory.getInstance(functionMapEntry.getKey()).isPresent()) {
+ return FunctionTranslationFactory.getInstance(functionMapEntry.getKey()).get()
+ .translateFunction(serviceTemplate, null, parameterName, functionMapEntry.getKey(),
+ functionMapEntry.getValue(),heatFileName,
heatOrchestrationTemplate, null, context);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaPropertyConverter.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaPropertyConverter.java
index d1079c2dc5..e22d21dae0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaPropertyConverter.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaPropertyConverter.java
@@ -21,9 +21,12 @@
package org.openecomp.sdc.translator.services.heattotosca.mapping;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.services.heattotosca.ConfigConstants;
import org.openecomp.sdc.translator.services.heattotosca.Constants;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslationFactory;
import java.util.ArrayList;
import java.util.HashMap;
@@ -45,16 +48,18 @@ public class TranslatorHeatToToscaPropertyConverter {
* @return the tosca properties simple conversion
*/
//Convert property assuming the property type in heat is same as the property type in tosca
- public static Map<String, Object> getToscaPropertiesSimpleConversion(
- Map<String, Object> heatProperties, Map<String, Object> toscaProperties, String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate, String resourceType, Template template,
- TranslationContext context) {
+ public static Map<String, Object> getToscaPropertiesSimpleConversion(ServiceTemplate
+ serviceTemplate,
+ String resourceId,Map<String, Object> heatProperties, Map<String, Object> toscaProperties,
+ String heatFileName, HeatOrchestrationTemplate heatOrchestrationTemplate, String
+ resourceType, Template template, TranslationContext context) {
toscaProperties = toscaProperties != null ? toscaProperties : new HashMap<>();
for (String heatPropertyName : context.getElementSet(resourceType, Constants.PROP)) {
- setSimpleProperty(heatProperties, heatFileName, resourceType, heatOrchestrationTemplate,
+ setSimpleProperty(serviceTemplate, resourceId, heatProperties, heatFileName, resourceType,
+ heatOrchestrationTemplate,
context, toscaProperties, heatPropertyName, null, template);
}
return toscaProperties;
@@ -73,7 +78,9 @@ public class TranslatorHeatToToscaPropertyConverter {
* @param toscaPropertyName the tosca property name
* @param template the template
*/
- public static void setSimpleProperty(Map<String, Object> heatProperties, String heatFileName,
+ public static void setSimpleProperty(ServiceTemplate serviceTemplate,String resourceId,
+ Map<String, Object> heatProperties,
+ String heatFileName,
String resourceType,
HeatOrchestrationTemplate heatOrchestrationTemplate,
TranslationContext context,
@@ -90,10 +97,14 @@ public class TranslatorHeatToToscaPropertyConverter {
if (toscaPropertyName == null) {
toscaPropertyName = resourceType == null ? heatPropertyName
: context.getElementMapping(resourceType, Constants.PROP, heatPropertyName);
+ if (toscaPropertyName == null) {
+ return;
+ }
}
toscaProperties.put(toscaPropertyName,
- getToscaPropertyValue(heatPropertyName, propertyValue, resourceType, heatFileName,
- heatOrchestrationTemplate, template, context));
+ getToscaPropertyValue(serviceTemplate, resourceId,heatPropertyName, propertyValue,
+ resourceType,
+ heatFileName, heatOrchestrationTemplate, template, context));
}
@@ -109,26 +120,30 @@ public class TranslatorHeatToToscaPropertyConverter {
* @param context the context
* @return the tosca property value
*/
- public static Object getToscaPropertyValue(String propertyName, Object propertyValue,
- String resourceType, String heatFileName,
+ public static Object getToscaPropertyValue(ServiceTemplate serviceTemplate, String resourceId,
+ String propertyName, Object propertyValue,
+ String resourceType, String heatFileName,
HeatOrchestrationTemplate heatOrchestrationTemplate,
Template template, TranslationContext context) {
if (propertyValue instanceof Map && !((Map) propertyValue).isEmpty()) {
Map.Entry<String, Object> functionMapEntry =
(Map.Entry<String, Object>) ((Map) propertyValue).entrySet().iterator().next();
- if (TranslatorHeatToToscaFunctionConverter.functionNameSet
- .contains(functionMapEntry.getKey())) {
- return TranslatorHeatToToscaFunctionConverter
- .getToscaFunction(functionMapEntry.getKey(), functionMapEntry.getValue(), heatFileName,
- heatOrchestrationTemplate, template, context);
+ if (FunctionTranslationFactory.getInstance(functionMapEntry.getKey()).isPresent()) {
+ return FunctionTranslationFactory.getInstance(functionMapEntry.getKey()).get()
+ .translateFunction(serviceTemplate, resourceId, propertyName ,functionMapEntry
+ .getKey(), functionMapEntry
+ .getValue(), heatFileName, heatOrchestrationTemplate, template, context);
}
Map<String, Object> propertyValueMap = new HashMap<>();
for (Map.Entry<String, Object> entry : ((Map<String, Object>) propertyValue).entrySet()) {
String toscaPropertyName = resourceType == null ? null : context
- .getElementMapping(resourceType, Constants.PROP, propertyName + "." + entry.getKey());
+ .getElementMapping(resourceType, Constants.PROP, propertyName
+ + ConfigConstants.TRANS_MAPPING_DELIMITER_CHAR + entry.getKey());
toscaPropertyName = toscaPropertyName != null ? toscaPropertyName : entry.getKey();
propertyValueMap.put(toscaPropertyName,
- getToscaPropertyValue(propertyName, entry.getValue(), resourceType, heatFileName,
+ getToscaPropertyValue(serviceTemplate, resourceId,
+ propertyName + ConfigConstants.TRANS_MAPPING_DELIMITER_CHAR
+ + entry.getKey(), entry.getValue(), resourceType, heatFileName,
heatOrchestrationTemplate, template, context));
}
return propertyValueMap;
@@ -136,8 +151,9 @@ public class TranslatorHeatToToscaPropertyConverter {
List propertyValueArray = new ArrayList<>();
for (int i = 0; i < ((List) propertyValue).size(); i++) {
propertyValueArray.add(
- getToscaPropertyValue(propertyName, ((List) propertyValue).get(i), resourceType,
- heatFileName, heatOrchestrationTemplate, template, context));
+ getToscaPropertyValue(serviceTemplate, resourceId, propertyName, ((List)
+ propertyValue).get(i),
+ resourceType, heatFileName, heatOrchestrationTemplate, template, context));
}
return propertyValueArray;
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/utils/ResourceWalker.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/utils/ResourceWalker.java
new file mode 100644
index 0000000000..7e8ef16631
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/utils/ResourceWalker.java
@@ -0,0 +1,144 @@
+package org.openecomp.sdc.translator.utils;
+
+import org.apache.commons.io.IOUtils;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.URL;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.function.BiConsumer;
+import java.util.function.Predicate;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
+
+/**
+ * @author EVITALIY.
+ * @since 02 Apr 17
+ */
+public class ResourceWalker {
+
+ public static Map<String, String> readResourcesFromDirectory(String resourceDirectoryToStart)
+ throws
+ Exception {
+ Map<String, String> filesContent = new HashMap<>();
+ traverse(resourceDirectoryToStart, (fileName, stream) -> {
+ BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
+ try {
+ filesContent.put(fileName, IOUtils.toString(reader));
+ } catch (IOException exception) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.READ_RESOURCE_FILE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.RESOURCE_FILE_READ_ERROR
+ + " File name = " + fileName);
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage(LoggerErrorDescription.RESOURCE_FILE_READ_ERROR
+ + " File name = " + fileName)
+ .withId("Resource Read Error").withCategory(ErrorCategory.APPLICATION).build(),
+ exception);
+ }
+ });
+ return filesContent;
+ }
+
+ private static void traverse(String start, BiConsumer<String, InputStream> handler) throws
+ Exception {
+
+ URL url = ResourceWalker.class.getClassLoader().getResource(start);
+ if (url == null) {
+ throw new FileNotFoundException("Resource not found: " + start);
+ }
+
+ switch (url.getProtocol().toLowerCase()) {
+
+ case "file":
+ traverseFile(new File(url.getPath()), handler);
+ break;
+ case "zip":
+ case "jar":
+ String path = url.getPath();
+ int resourcePosition = path.lastIndexOf("!/" + start);
+ traverseArchive(path.substring(0, resourcePosition), start, handler);
+ break;
+ default:
+ throw new IllegalArgumentException("Unknown protocol");
+ }
+ }
+
+ private static void traverseArchive(String file, String resource, BiConsumer<String, InputStream>
+ handler)
+ throws URISyntaxException, IOException {
+
+ // There is what looks like a bug in Java:
+ // if "abc" is a directory in an archive,
+ // both "abc" and "abc/" will be found successfully.
+ // However, calling isDirectory() will return "true" for "abc/",
+ // but "false" for "abc".
+ try (ZipFile zip = new ZipFile(new URI(file).getPath())) {
+
+ Predicate<ZipEntry> predicate = buildPredicate(resource);
+ Enumeration<? extends ZipEntry> entries = zip.entries();
+ while (entries.hasMoreElements()) {
+ handleZipEntry(predicate, zip, entries.nextElement(), handler);
+ }
+ }
+ }
+
+ private static Predicate<ZipEntry> buildPredicate(String resource) {
+
+ if (resource.endsWith("/")) {
+ return zipEntry ->
+ zipEntry.getName().startsWith(resource) && !zipEntry.isDirectory();
+ } else {
+ return zipEntry -> {
+ String name = zipEntry.getName();
+ return (name.equals(resource) || name.startsWith(resource + "/"))
+ && !zipEntry.isDirectory();
+ };
+ }
+ }
+
+ private static void handleZipEntry(Predicate<ZipEntry> predicate, ZipFile zip, ZipEntry zipEntry,
+ BiConsumer<String, InputStream> handler)
+ throws IOException {
+
+ if (predicate.test(zipEntry)) {
+
+ try (InputStream input = zip.getInputStream(zipEntry)) {
+ handler.accept(zipEntry.getName(), input);
+ }
+ }
+ }
+
+ private static void traverseFile(File file, BiConsumer<String, InputStream> handler) throws
+ IOException {
+
+ if (file.isDirectory()) {
+ for (File sub : file.listFiles()) {
+ traverseFile(sub, handler);
+ }
+ } else {
+ try (FileInputStream stream = new FileInputStream(file)) {
+ handler.accept(file.getName(), stream);
+ }
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaMapping.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaMapping.json
new file mode 100644
index 0000000000..384847351e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaMapping.json
@@ -0,0 +1,322 @@
+{
+ "resourceMapping": {
+ "OS::Contrail::VirtualNetwork": {
+ "properties": {
+ "name": "network_name",
+ "shared": "shared",
+ "external": "external",
+ "route_targets": "route_targets",
+ "forwarding_mode": "forwarding_mode",
+ "flood_unknown_unicast": "flood_unknown_unicast",
+ "allow_transit": "allow_transit"
+ },
+ "attributes": {
+ "fq_name": "fq_name",
+ "name": "network_name",
+ "shared": "shared",
+ "external": "external",
+ "route_targets": "route_targets",
+ "forwarding_mode": "forwarding_mode",
+ "flood_unknown_unicast": "flood_unknown_unicast",
+ "allow_transit": "allow_transit"
+ }
+ },
+ "OS::Contrail::NetworkPolicy": {
+ "properties": {
+ "name": "name",
+ "entries": "entries"
+ },
+ "attributes": {
+ "fq_name": "fq_name",
+ "name": "name",
+ "entries": "entries",
+ "tenant_id": "tenant_id",
+ "rules": "rules",
+ "show": "show"
+ }
+ },
+ "OS::ContrailV2::VirtualNetwork": {
+ "properties": {
+ "name": "network_name",
+ "network_ipam_refs": "network_ipam_refs",
+ "network_ipam_refs_data": "network_ipam_refs_data",
+ "network_policy_refs": "network_policy_refs",
+ "network_policy_refs_data": "network_policy_refs_data"
+ },
+ "attributes": {
+ "fq_name": "fq_name",
+ "name": "network_name",
+ "network_ipam_refs": "network_ipam_refs",
+ "network_ipam_refs_data": "network_ipam_refs_data",
+ "network_policy_refs": "network_policy_refs",
+ "network_policy_refs_data": "network_policy_refs_data"
+ }
+ },
+ "OS::ContrailV2::VirtualMachineInterface": {
+ "properties": {
+ "name": "name",
+ "virtual_machine_interface_mac_addresses": "virtual_machine_interface_mac_addresses",
+ "virtual_machine_interface_mac_addresses#virtual_machine_interface_mac_addresses_mac_address": "mac_address",
+ "virtual_network_refs": "virtual_network_refs",
+ "port_tuple_refs": "port_tuple_refs",
+ "security_group_refs": "security_group_refs",
+ "virtual_machine_interface_properties": "virtual_machine_interface_properties",
+ "virtual_machine_interface_properties#virtual_machine_interface_properties_service_interface_type": "service_interface_type",
+ "virtual_machine_interface_properties#virtual_machine_interface_properties_sub_interface_vlan_tag": "sub_interface_vlan_tag",
+ "virtual_machine_interface_allowed_address_pairs": "virtual_machine_interface_allowed_address_pairs",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair": "allowed_address_pair",
+ "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": "address_mode",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac": "mac",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip": "ip",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix": "ip_prefix",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len": "ip_prefix_len",
+ "virtual_machine_interface_refs": "virtual_machine_interface_refs"
+ },
+ "attributes": {
+ "name": "name",
+ "virtual_machine_intefrace_mac_addresses": "virtual_machine_intefrace_mac_addresses",
+ "virtual_machine_interface_mac_addresses#virtual_machine_interface_mac_addresses_mac_address": "mac_address",
+ "virtual_network_refs": "virtual_network_refs",
+ "port_tuple_refs": "port_tuple_refs",
+ "virtual_machine_interface_properties": "virtual_machine_interface_properties",
+ "virtual_machine_interface_properties#virtual_machine_interface_properties_service_interface_type": "virtual_machine_interface_properties_service_interface_type",
+ "virtual_machine_interface_properties#virtual_machine_interface_properties_sub_interface_vlan_tag": "sub_interface_vlan_tag",
+ "virtual_machine_interface_allowed_address_pairs": "virtual_machine_interface_allowed_address_pairs",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair": "allowed_address_pair",
+ "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": "address_mode",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac": "mac",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip": "ip",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix": "ip_prefix",
+ "virtual_machine_interface_allowed_address_pairs#virtual_machine_interface_allowed_address_pairs_allowed_address_pair#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip#virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len": "ip_prefix_len",
+ "fq_name": "fq_name",
+ "show": "show"
+ }
+ },
+ "OS::ContrailV2::NetworkPolicy": {
+ "properties": {
+ "name": "name",
+ "network_policy_entries": "network_policy_entries"
+ },
+ "attributes": {
+ "fq_name": "fq_name",
+ "name": "name",
+ "network_policy_entries": "network_policy_entries"
+ }
+ },
+ "OS::Cinder::Volume": {
+ "properties": {
+ "availability_zone": "availability_zone",
+ "backup_id": "backup_id",
+ "description": "description",
+ "image": "image",
+ "metadata": "metadata",
+ "multiattach": "multiattach",
+ "name": "name",
+ "read_only": "read_only",
+ "scheduler_hints": "scheduler_hints",
+ "size": "size",
+ "snapshot_id": "snapshot_id",
+ "source_volid": "source_volid",
+ "volume_id": "volume_id",
+ "volume_type": "volume_type",
+ "delete_on_termination": "delete_on_termination",
+ "volume_size": "size",
+ "device_type": "device_type",
+ "disk_bus": "disk_bus",
+ "swap_size": "swap_size",
+ "image_id": "image"
+ },
+ "attributes": {
+ "attachments": "attachments",
+ "availability_zone": "availability_zone",
+ "created_at": "created_at",
+ "display_description": "display_description",
+ "display_name": "display_name",
+ "encrypted": "encrypted",
+ "metadata": "metadata",
+ "metadata_values": "metadata_values",
+ "multiattach": "multiattach",
+ "show": "show",
+ "size": "size",
+ "snapshot_id": "snapshot_id",
+ "source_volid": "source_volid",
+ "status": "status",
+ "volume_type": "volume_type"
+ }
+ },
+ "OS::Cinder::VolumeAttachment": {
+ "properties": {
+ "instance_uuid": "instance_uuid",
+ "volume_id": "volume_id",
+ "mountpoint": "location"
+ },
+ "attributes": {
+ "show": "show"
+ }
+ },
+ "OS::Neutron::Net": {
+ "properties": {
+ "name": "network_name",
+ "dhcp_agent_ids": "dhcp_agent_ids",
+ "tenant_id": "tenant_id",
+ "port_security_enabled": "port_security_enabled",
+ "shared": "shared",
+ "admin_state_up": "admin_state_up",
+ "qos_policy": "qos_policy",
+ "value_specs": "value_specs"
+ },
+ "attributes": {
+ "admin_state_up": "admin_state_up",
+ "mtu": "mtu",
+ "name": "network_name",
+ "port_security_enabled": "port_security_enabled",
+ "qos_policy_id": "qos_policy_id",
+ "show": "show",
+ "status": "status",
+ "subnets": "subnets",
+ "tenant_id": "tenant_id"
+ }
+ },
+ "OS::Neutron::Subnet": {
+ "properties": {
+ "allocation_pools": "allocation_pools",
+ "cidr": "cidr",
+ "enable_dhcp": "enable_dhcp",
+ "gateway_ip": "gateway_ip",
+ "host_routes": "host_routes",
+ "ip_version": "ip_version",
+ "ipv6_address_mode": "ipv6_address_mode",
+ "ipv6_ra_mode": "ipv6_ra_mode",
+ "name": "name",
+ "prefixlen": "prefixlen",
+ "subnetpool": "subnetpool",
+ "tenant_id": "tenant_id",
+ "value_specs": "value_specs",
+ "dns_nameservers": "dns_nameservers"
+ }
+ },
+ "OS::Nova::Server": {
+ "properties": {
+ "flavor": "flavor",
+ "admin_pass": "admin_pass",
+ "availability_zone": "availability_zone",
+ "config_drive": "config_drive",
+ "diskConfig": "diskConfig",
+ "flavor_update_policy": "flavor_update_policy",
+ "image": "image",
+ "image_update_policy": "image_update_policy",
+ "key_name": "key_name",
+ "metadata": "metadata",
+ "name": "name",
+ "personality": "personality",
+ "reservation_id": "reservation_id",
+ "scheduler_hints": "scheduler_hints",
+ "security_groups": "security_groups",
+ "software_config_transport": "software_config_transport",
+ "user_data_format": "user_data_format",
+ "user_data_update_policy": "user_data_update_policy"
+ },
+ "attributes": {
+ "accessIPv4": "accessIPv4",
+ "accessIPv6": "accessIPv6",
+ "addresses": "addresses",
+ "console_urls": "console_urls",
+ "instance_name": "instance_name",
+ "show": "show"
+ }
+ },
+ "OS::Neutron::Port": {
+ "properties": {
+ "network": "network",
+ "network_id": "network",
+ "admin_state_up": "admin_state_up",
+ "allowed_address_pairs": "allowed_address_pairs",
+ "binding:vnic_type": "binding:vnic_type",
+ "device_id": "device_id",
+ "device_owner": "device_owner",
+ "fixed_ips": "fixed_ips",
+ "mac_address": "mac_address",
+ "name": "name",
+ "port_security_enabled": "port_security_enabled",
+ "qos_policy": "qos_policy",
+ "security_groups": "security_groups",
+ "value_specs": "value_specs",
+ "replacement_policy": "replacement_policy",
+ "fixed_ips#subnet": "subnet",
+ "fixed_ips#ip_address": "ip_address"
+ },
+ "attributes": {
+ "admin_state_up": "admin_state_up",
+ "allowed_address_pairs": "allowed_address_pairs",
+ "device_id": "device_id",
+ "device_owner": "device_owner",
+ "fixed_ips": "fixed_ips",
+ "mac_address": "mac_address",
+ "name": "name",
+ "network_id": "network",
+ "network": "network",
+ "port_security_enabled": "port_security_enabled",
+ "qos_policy": "qos_policy",
+ "security_groups": "security_groups",
+ "show": "show",
+ "status": "status",
+ "subnets": "subnets",
+ "tenant_id": "tenant_id"
+ }
+ },
+ "OS::Nova::ServerGroup": {
+ "properties": {
+ "name": "name"
+ },
+ "attributes": {
+ "show": "show"
+ }
+ },
+ "OS::Neutron::SecurityGroup": {
+ "properties": {
+ "description": "description",
+ "name": "name",
+ "rules": "rules"
+ },
+ "attributes": {
+ "show": "show"
+ }
+ },
+ "OS::Contrail::ServiceTemplate": {
+ "properties": {
+ "name": "service_template_name",
+ "service_mode": "service_mode",
+ "service_type": "service_type",
+ "image_name": "image_name",
+ "availability_zone_enable": "availability_zone_enable",
+ "flavor": "flavor",
+ "service_interface_type_list": "service_interface_type_list",
+ "shared_ip_list": "shared_ip_list",
+ "static_routes_list": "static_routes_list",
+ "ordered_interfaces": "ordered_interfaces"
+ },
+ "attributes": {
+ }
+ },
+ "OS::Contrail::ServiceInstance": {
+ "properties": {
+ "availability_zone": "availability_zone",
+ "interface_list": "interface_list",
+ "name": "service_instance_name"
+ },
+ "attributes": {
+ "fq_name": "fq_name",
+ "name": "service_instance_name",
+ "status": "status",
+ "service_template": "service_template_name",
+ "virtual_machines": "virtual_machines",
+ "active_service_vms": "active_vms",
+ "tenant_id": "tenant_id",
+ "show": "show"
+ }
+ }
+ },
+ "_config": {
+ "namespace": "heatToToscaMapping"
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaTranslator.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaTranslator.json
new file mode 100644
index 0000000000..8a9d99d54e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-heatToToscaTranslator.json
@@ -0,0 +1,35 @@
+{
+ "resourceTranslationImpl": {
+ "OS::Contrail::NetworkPolicy": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailNetworkPolicyImpl"
+ },
+ "OS::ContrailV2::NetworkPolicy": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailV2NetworkPolicyImpl"
+ },
+ "OS::Nova::ServerGroup": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNovaServerGroupsImpl"
+ },
+ "OS::Neutron::SecurityGroup": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNeutronSecurityGroupImpl"
+ },
+ "OS::Contrail::AttachPolicy": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailAttachPolicyImpl"
+ }
+ },
+ "namingConventionExtractImpl": {
+ "OS::Nova::Server": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor.NameExtractorNovaServerImpl"
+ },
+ "ContrailComputeNodeTypeName": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor.NameExtractorContrailComputeImpl"
+ }
+ },
+ "_config": {
+ "namespace": "heatToToscaTranslator"
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-heatToToscaTranslator.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-heatToToscaTranslator.json
new file mode 100644
index 0000000000..daa25d3459
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-heatToToscaTranslator.json
@@ -0,0 +1,77 @@
+{
+ "resourceTranslationImpl": {
+ "OS::Contrail::VirtualNetwork": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailVirtualNetworkImpl"
+ },
+ "OS::ContrailV2::VirtualNetwork": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailV2VirtualNetworkImpl"
+ },
+ "OS::ContrailV2::VirtualMachineInterface": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailV2VmInterfaceImpl"
+ },
+ "OS::Cinder::Volume": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationCinderVolumeImpl"
+ },
+ "OS::Cinder::VolumeAttachment": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationCinderVolumeAttachmentImpl"
+ },
+ "OS::Neutron::Net": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNeutronNetImpl"
+ },
+ "OS::Neutron::Subnet": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNeutronSubnetImpl"
+ },
+ "OS::Nova::Server": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNovaServerImpl"
+ },
+ "OS::Neutron::Port": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNeutronPortImpl"
+ },
+ "OS::Contrail::ServiceTemplate": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailServiceTemplateImpl"
+ },
+ "OS::Contrail::ServiceInstance": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationContrailServiceInstanceImpl"
+ },
+ "OS::Heat::ResourceGroup": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationResourceGroupImpl"
+ },
+ "NestedResource": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNestedImpl"
+ },
+ "DefaultResource": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationDefaultImpl"
+ }
+ },
+ "functionTranslationImpl": {
+ "get_param": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation.FunctionTranslationGetParamImpl"
+ },
+ "get_attr": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation.FunctionTranslationGetAttrImpl"
+ },
+ "get_resource": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation.FunctionTranslationGetResourceImpl"
+ },
+ "get_file": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation.FunctionTranslationGetFileImpl"
+ }
+ },
+ "_config": {
+ "namespace": "mandatoryHeatToToscaTranslator"
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-unifiedModel.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-unifiedModel.json
new file mode 100644
index 0000000000..d4df0699f5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/config-mandatory-unifiedModel.json
@@ -0,0 +1,32 @@
+{
+ "unifiedCompositionImpl": {
+ "SingleSubstitution": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition.UnifiedCompositionSingleSubstitution"
+ },
+ "ScalingInstances": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition.UnifiedCompositionScalingInstances"
+ },
+ "CatalogInstance": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition.UnifiedCompositionCatalogInstance"
+ },
+ "NestedSingleCompute": {
+ "implementationClass": "org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition.UnifiedCompositionNestedSingleCompute"
+ }
+ },
+ "supportedConsolidationComputeResources": {
+ "OS::Nova::Server": {
+ "enable": true
+ }
+ },
+ "supportedConsolidationPortResources": {
+ "OS::Neutron::Port": {
+ "enable": true
+ },
+ "OS::ContrailV2::VirtualMachineInterface": {
+ "enable": true
+ }
+ },
+ "_config": {
+ "namespace": "mandatoryUnifiedModel"
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/heatToToscaMapping.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/heatToToscaMapping.json
deleted file mode 100644
index ebe5df6b50..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/resources/heatToToscaMapping.json
+++ /dev/null
@@ -1,298 +0,0 @@
-{
- "OS::Contrail::VirtualNetwork": {
- "properties": {
- "name": "network_name",
- "shared": "shared",
- "external": "external",
- "route_targets": "route_targets",
- "forwarding_mode": "forwarding_mode",
- "flood_unknown_unicast": "flood_unknown_unicast",
- "allow_transit": "allow_transit"
- },
- "attributes": {
- "fq_name": "fq_name",
- "name": "network_name",
- "shared": "shared",
- "external": "external",
- "route_targets": "route_targets",
- "forwarding_mode": "forwarding_mode",
- "flood_unknown_unicast": "flood_unknown_unicast",
- "allow_transit": "allow_transit"
- }
- },
- "OS::Contrail::NetworkPolicy": {
- "properties": {
- "name": "name",
- "entries": "entries"
- },
- "attributes": {
- "fq_name": "fq_name",
- "name": "name",
- "entries": "entries",
- "tenant_id": "tenant_id",
- "rules": "rules",
- "show": "show"
- }
- },
-
- "OS::ContrailV2::VirtualNetwork": {
- "properties": {
- "name": "network_name",
- "network_ipam_refs": "network_ipam_refs",
- "network_ipam_refs_data": "network_ipam_refs_data",
- "network_policy_refs": "network_policy_refs",
- "network_policy_refs_data": "network_policy_refs_data"
- },
- "attributes": {
- "fq_name": "fq_name",
- "name": "network_name",
- "network_ipam_refs": "network_ipam_refs",
- "network_ipam_refs_data": "network_ipam_refs_data",
- "network_policy_refs": "network_policy_refs",
- "network_policy_refs_data": "network_policy_refs_data"
- }
- },
- "OS::ContrailV2::VirtualMachineInterface": {
- "properties": {
- "name": "name",
- "virtual_machine_intefrace_mac_addresses": "virtual_machine_intefrace_mac_addresses",
- "virtual_network_refs": "virtual_network_refs",
- "port_tuple_refs": "port_tuple_refs",
- "security_group_refs": "security_group_refs",
- "virtual_machine_interface_properties": "virtual_machine_interface_properties"
- },
- "attributes": {
- "name": "name",
- "virtual_machine_intefrace_mac_addresses": "virtual_machine_intefrace_mac_addresses",
- "virtual_network_refs": "virtual_network_refs",
- "port_tuple_refs": "port_tuple_refs",
- "virtual_machine_interface_properties": "virtual_machine_interface_properties",
- "fq_name": "fq_name",
- "show": "show"
- }
- },
- "OS::ContrailV2::NetworkPolicy": {
- "properties": {
- "name":"name",
- "network_policy_entries":"network_policy_entries"
- },
- "attributes": {
- "fq_name": "fq_name",
- "name":"name",
- "network_policy_entries":"network_policy_entries"
- }
- },
- "OS::Cinder::Volume": {
- "properties": {
- "availability_zone": "availability_zone",
- "backup_id": "backup_id",
- "description": "description",
- "image": "image",
- "metadata": "metadata",
- "multiattach": "multiattach",
- "name": "name",
- "read_only": "read_only",
- "scheduler_hints": "scheduler_hints",
- "size": "size",
- "snapshot_id": "snapshot_id",
- "source_volid": "source_volid",
- "volume_id": "volume_id",
- "volume_type": "volume_type",
- "delete_on_termination": "delete_on_termination",
- "volume_size": "size",
- "device_type": "device_type",
- "disk_bus": "disk_bus",
- "swap_size": "swap_size",
- "image_id": "image"
- },
- "attributes": {
- "attachments": "attachments",
- "availability_zone": "availability_zone",
- "created_at": "created_at",
- "display_description": "display_description",
- "display_name": "display_name",
- "encrypted": "encrypted",
- "metadata": "metadata",
- "metadata_values": "metadata_values",
- "multiattach": "multiattach",
- "show": "show",
- "size": "size",
- "snapshot_id": "snapshot_id",
- "source_volid": "source_volid",
- "status": "status",
- "volume_type": "volume_type"
- }
- },
- "OS::Cinder::VolumeAttachment": {
- "properties": {
- "instance_uuid": "instance_uuid",
- "volume_id": "volume_id",
- "mountpoint": "location"
- },
- "attributes": {
- "show": "show"
- }
- },
- "OS::Neutron::Net": {
- "properties": {
- "name": "network_name",
- "dhcp_agent_ids": "dhcp_agent_ids",
- "tenant_id": "tenant_id",
- "port_security_enabled": "port_security_enabled",
- "shared": "shared",
- "admin_state_up": "admin_state_up",
- "qos_policy": "qos_policy",
- "value_specs": "value_specs"
- },
- "attributes": {
- "admin_state_up": "admin_state_up",
- "mtu": "mtu",
- "name": "network_name",
- "port_security_enabled": "port_security_enabled",
- "qos_policy_id": "qos_policy_id",
- "show": "show",
- "status": "status",
- "subnets": "subnets",
- "tenant_id": "tenant_id"
- }
- },
- "OS::Neutron::Subnet": {
- "properties": {
- "allocation_pools": "allocation_pools",
- "cidr": "cidr",
- "enable_dhcp": "enable_dhcp",
- "gateway_ip": "gateway_ip",
- "host_routes": "host_routes",
- "ip_version": "ip_version",
- "ipv6_address_mode": "ipv6_address_mode",
- "ipv6_ra_mode": "ipv6_ra_mode",
- "name": "name",
- "prefixlen": "prefixlen",
- "subnetpool": "subnetpool",
- "tenant_id": "tenant_id",
- "value_specs": "value_specs",
- "dns_nameservers": "dns_nameservers"
- }
- },
- "OS::Nova::Server": {
- "properties": {
- "flavor": "flavor",
- "admin_pass": "admin_pass",
- "availability_zone": "availability_zone",
- "config_drive": "config_drive",
- "diskConfig": "diskConfig",
- "flavor_update_policy": "flavor_update_policy",
- "image": "image",
- "image_update_policy": "image_update_policy",
- "key_name": "key_name",
- "metadata": "metadata",
- "name": "name",
- "personality": "personality",
- "reservation_id": "reservation_id",
- "scheduler_hints": "scheduler_hints",
- "security_groups": "security_groups",
- "software_config_transport": "software_config_transport",
- "user_data_format": "user_data_format",
- "user_data_update_policy": "user_data_update_policy"
- },
- "attributes": {
- "accessIPv4": "accessIPv4",
- "accessIPv6": "accessIPv6",
- "addresses": "addresses",
- "console_urls": "console_urls",
- "instance_name": "instance_name",
-
- "show": "show"
- }
- },
- "OS::Neutron::Port": {
- "properties": {
- "network": "network",
- "network_id": "network",
- "admin_state_up": "admin_state_up",
- "allowed_address_pairs": "allowed_address_pairs",
- "binding:vnic_type": "binding:vnic_type",
- "device_id": "device_id",
- "device_owner": "device_owner",
- "fixed_ips": "fixed_ips",
- "mac_address": "mac_address",
- "name": "name",
- "port_security_enabled": "port_security_enabled",
- "qos_policy": "qos_policy",
- "security_groups": "security_groups",
- "value_specs": "value_specs",
- "replacement_policy": "replacement_policy",
- "fixed_ips.subnet":"subnet",
- "fixed_ips.ip_address":"ip_address"
- },
- "attributes": {
- "admin_state_up": "admin_state_up",
- "allowed_address_pairs": "allowed_address_pairs",
- "device_id": "device_id",
- "device_owner": "device_owner",
- "fixed_ips": "fixed_ips",
- "mac_address": "mac_address",
- "name": "name",
- "network_id": "network",
- "network": "network",
- "port_security_enabled": "port_security_enabled",
- "qos_policy": "qos_policy",
- "security_groups": "security_groups",
- "show": "show",
- "status": "status",
- "subnets": "subnets",
- "tenant_id": "tenant_id"
- }
- },
- "OS::Nova::ServerGroup": {
- "properties": {
- "name": "name"
- },
- "attributes": {
- "show": "show"
- }
- },
- "OS::Neutron::SecurityGroup": {
- "properties": {
- "description": "description",
- "name": "name",
- "rules": "rules"
- },
- "attributes": {
- "show": "show"
- }
- },
- "OS::Contrail::ServiceTemplate": {
- "properties": {
- "name": "service_template_name",
- "service_mode": "service_mode",
- "service_type": "service_type",
- "image_name": "image_name",
- "availability_zone_enable": "availability_zone_enable",
- "flavor": "flavor",
- "service_interface_type_list": "service_interface_type_list",
- "shared_ip_list": "shared_ip_list",
- "static_routes_list": "static_routes_list",
- "ordered_interfaces": "ordered_interfaces"
- },
- "attributes": {
- }
- },
- "OS::Contrail::ServiceInstance": {
- "properties": {
- "availability_zone": "availability_zone",
- "interface_list": "interface_list",
- "name": "service_instance_name"
- },
- "attributes": {
- "fq_name": "fq_name",
- "name": "service_instance_name",
- "status": "status",
- "service_template": "service_template_name",
- "virtual_machines": "virtual_machines",
- "active_service_vms": "active_vms",
- "tenant_id": "tenant_id",
- "show": "show"
- }
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/TestUtils.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/TestUtils.java
index b52abfa927..763631ff5e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/TestUtils.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/TestUtils.java
@@ -1,14 +1,51 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator;
-import org.openecomp.sdc.common.utils.AsdcCommon;
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.lang3.tuple.Pair;
+import org.junit.Assert;
import org.openecomp.core.translator.api.HeatToToscaTranslator;
import org.openecomp.core.utilities.file.FileUtils;
-import org.junit.Assert;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.*;
-import java.io.*;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.nio.file.NotDirectoryException;
+import java.util.*;
public class TestUtils {
- private static final String MANIFEST_NAME = AsdcCommon.MANIFEST_NAME;
+ private static final String MANIFEST_NAME = SdcCommon.MANIFEST_NAME;
private static String zipFilename = "VSP.zip";
private static String validationFilename = "validationOutput.json";
@@ -40,4 +77,535 @@ public class TestUtils {
}
}
}
+
+ /**
+ * Get tosca service template models for the files in a directory
+ * @param baseDirPath base directory for the tosca file
+ * @return Map of <ServiceTemplateFilename, ServiceTemplate> for the files in this directory
+ */
+ public static Map<String, ServiceTemplate> getServiceTemplates(String baseDirPath){
+ Map<String, ServiceTemplate> serviceTemplateMap = new HashMap<>();
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ baseDirPath = "."+baseDirPath+"/";
+ try {
+ String[] fileList = {};
+ URL filesDirUrl = TestUtils.class.getClassLoader().getResource(baseDirPath);
+ if (filesDirUrl != null && filesDirUrl.getProtocol().equals("file")) {
+ fileList = new File(filesDirUrl.toURI()).list();
+ } else {
+ Assert.fail("Invalid expected output files directory");
+ }
+ for (int i = 0; i < fileList.length; i++) {
+ InputStream serviceTemplateInputStream = FileUtils.getFileInputStream(TestUtils.class
+ .getClassLoader().getResource(baseDirPath + fileList[i]));
+ ServiceTemplate serviceTemplate = toscaExtensionYamlUtil.yamlToObject
+ (serviceTemplateInputStream, ServiceTemplate.class);
+ serviceTemplateMap.put(fileList[i], serviceTemplate);
+ }
+ } catch (Exception e) {
+ Assert.fail(e.getMessage());
+ }
+ return serviceTemplateMap;
+ }
+
+ /**
+ * Get tosca service template models
+ * @param expectedResultMap Map of filename and payload of the expected result files
+ * @return Map of <ServiceTemplateFilename, ServiceTemplate> for the files in this directory
+ */
+ public static Map<String, ServiceTemplate> getServiceTemplates(Map<String, byte[]>
+ expectedResultMap){
+ Map<String, ServiceTemplate> serviceTemplateMap = new HashMap<>();
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ for(String fileName : expectedResultMap.keySet()){
+ ServiceTemplate serviceTemplate = toscaExtensionYamlUtil.yamlToObject
+ (new String(expectedResultMap.get(fileName)), ServiceTemplate.class);
+ serviceTemplateMap.put(fileName, serviceTemplate);
+ }
+ return serviceTemplateMap;
+ }
+
+
+ public static ToscaServiceModel loadToscaServiceModel(String serviceTemplatesPath,
+ String globalServiceTemplatesPath,
+ String entryDefinitionServiceTemplate)
+ throws IOException {
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ Map<String, ServiceTemplate> serviceTemplates = new HashMap<>();
+ if (entryDefinitionServiceTemplate == null) {
+ entryDefinitionServiceTemplate = "MainServiceTemplate.yaml";
+ }
+
+ serviceTemplates = getServiceTemplates(serviceTemplatesPath);
+ if (globalServiceTemplatesPath != null) {
+ serviceTemplates = getServiceTemplates(globalServiceTemplatesPath);
+ }
+
+ return new ToscaServiceModel(null, serviceTemplates, entryDefinitionServiceTemplate);
+ }
+
+ public static ServiceTemplate loadServiceTemplate(String serviceTemplatePath)
+ throws IOException {
+ ServiceTemplate serviceTemplateFromYaml = new ServiceTemplate();
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ URL urlFile = TestUtils.class.getResource(serviceTemplatePath);
+ if (urlFile != null) {
+ File pathFile = new File(urlFile.getFile());
+ File[] files = pathFile.listFiles();
+ for (File file : files) {
+ try (InputStream yamlFile = new FileInputStream(file)) {
+ serviceTemplateFromYaml =
+ toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
+ createConcreteRequirementObjectsInServiceTemplate(serviceTemplateFromYaml, toscaExtensionYamlUtil);
+ try {
+ yamlFile.close();
+ } catch (IOException ignore) {
+ }
+ } catch (FileNotFoundException e) {
+ throw e;
+ } catch (IOException e) {
+ throw e;
+ }
+ }
+ } else {
+ throw new NotDirectoryException(serviceTemplatePath);
+ }
+ return serviceTemplateFromYaml;
+ }
+
+
+ public static void loadServiceTemplates(String serviceTemplatesPath,
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil,
+ Map<String, ServiceTemplate> serviceTemplates)
+ throws IOException {
+ URL urlFile = TestUtils.class.getResource(serviceTemplatesPath);
+ if (urlFile != null) {
+ File pathFile = new File(urlFile.getFile());
+ File[] files = pathFile.listFiles();
+ if (files != null) {
+ addServiceTemplateFiles(serviceTemplates, files, toscaExtensionYamlUtil);
+ } else {
+ throw new NotDirectoryException(serviceTemplatesPath);
+ }
+ } else {
+ throw new NotDirectoryException(serviceTemplatesPath);
+ }
+ }
+
+ private static void addServiceTemplateFiles(Map<String, ServiceTemplate> serviceTemplates,
+ File[] files,
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil)
+ throws IOException {
+ for (File file : files) {
+ try (InputStream yamlFile = new FileInputStream(file)) {
+ ServiceTemplate serviceTemplateFromYaml =
+ toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
+ createConcreteRequirementObjectsInServiceTemplate(serviceTemplateFromYaml, toscaExtensionYamlUtil);
+ serviceTemplates.put(file.getName(), serviceTemplateFromYaml);
+ try {
+ yamlFile.close();
+ } catch (IOException ignore) {
+ }
+ } catch (FileNotFoundException e) {
+ throw e;
+ } catch (IOException e) {
+ throw e;
+ }
+ }
+ }
+
+ private static void createConcreteRequirementObjectsInServiceTemplate(ServiceTemplate
+ serviceTemplateFromYaml,
+ ToscaExtensionYamlUtil
+ toscaExtensionYamlUtil) {
+
+ if (serviceTemplateFromYaml == null
+ || serviceTemplateFromYaml.getTopology_template() == null
+ || serviceTemplateFromYaml.getTopology_template().getNode_templates() == null) {
+ return;
+ }
+
+ //Creating concrete objects
+ Map<String, NodeTemplate> nodeTemplates =
+ serviceTemplateFromYaml.getTopology_template().getNode_templates();
+ for (Map.Entry<String, NodeTemplate> entry : nodeTemplates.entrySet()) {
+ NodeTemplate nodeTemplate = entry.getValue();
+ List<Map<String, RequirementAssignment>> requirements = nodeTemplate.getRequirements();
+ List<Map<String, RequirementAssignment>> concreteRequirementList = new ArrayList<>();
+ if (requirements != null) {
+ ListIterator<Map<String, RequirementAssignment>> reqListIterator = requirements
+ .listIterator();
+ while (reqListIterator.hasNext()){
+ Map<String, RequirementAssignment> requirement = reqListIterator.next();
+ Map<String, RequirementAssignment> concreteRequirement = new HashMap<>();
+ for (Map.Entry<String, RequirementAssignment> reqEntry : requirement.entrySet()) {
+ RequirementAssignment requirementAssignment = (toscaExtensionYamlUtil
+ .yamlToObject(toscaExtensionYamlUtil.objectToYaml(reqEntry.getValue()),
+ RequirementAssignment.class));
+ concreteRequirement.put(reqEntry.getKey(), requirementAssignment);
+ concreteRequirementList.add(concreteRequirement);
+ reqListIterator.remove();
+ }
+ }
+ requirements.clear();
+ requirements.addAll(concreteRequirementList);
+ nodeTemplate.setRequirements(requirements);
+ }
+ System.out.println();
+ //toscaExtensionYamlUtil.yamlToObject(nodeTemplate, NodeTemplate.class);
+ }
+ }
+
+ public static void updateMultiplePortConsolidationDatas(String serviceTemplateName,
+ List<String> portNodeTemplateIds,
+ List<List<String>> nodesConnectedInIds,
+ List<List<String>> nodesConnectedOutIds,
+ List<List<String>> groupIds,
+ List<List<String>> getAttrInIds,
+ List<List<Pair<String, GetAttrFuncData>>> getAttrOutFuncDataList,
+ ConsolidationData consolidationData){
+ for(int i = 0; i < portNodeTemplateIds.size(); i++){
+ updatePortConsolidationData(serviceTemplateName, portNodeTemplateIds.get(i),
+ nodesConnectedInIds.get(i), nodesConnectedOutIds.get(i),
+ groupIds.get(i), getAttrInIds.get(i),getAttrOutFuncDataList.get(i), consolidationData);
+ }
+ }
+
+ public static void updatePortConsolidationData(String serviceTemplateFileName,
+ String portNodeTemplateId,
+ List<String> nodesConnectedInIds,
+ List<String> nodesConnectedOutIds,
+ List<String> groupIds, List<String> getAttrInIds,
+ List<Pair<String, GetAttrFuncData>> getAttrOutFuncDataList,
+ ConsolidationData consolidationData) {
+
+ PortTemplateConsolidationData portTemplateConsolidationData =
+ createPortTemplateConsolidationData(portNodeTemplateId);
+
+ updateRelationsForEntityConsolidationData(portNodeTemplateId, nodesConnectedInIds,
+ nodesConnectedOutIds, groupIds, getAttrInIds, getAttrOutFuncDataList, portTemplateConsolidationData);
+
+ consolidationData.getPortConsolidationData()
+ .getFilePortConsolidationData(serviceTemplateFileName)
+ .setPortTemplateConsolidationData(portNodeTemplateId, portTemplateConsolidationData);
+ }
+
+ public static PortTemplateConsolidationData createPortTemplateConsolidationData(
+ String portNodeTemplateId) {
+ PortTemplateConsolidationData portTemplateConsolidationData =
+ new PortTemplateConsolidationData();
+ portTemplateConsolidationData.setNodeTemplateId(portNodeTemplateId);
+ return portTemplateConsolidationData;
+ }
+
+ public static void initPortConsolidationData(String serviceTemplateFileName,
+ ConsolidationData consolidationData) {
+
+ consolidationData.getPortConsolidationData()
+ .setFilePortConsolidationData(serviceTemplateFileName, new FilePortConsolidationData());
+ }
+
+ public static void updateComputeTemplateConsolidationData(String serviceTemplateFileName,
+ String computeNodeTypeName,
+ String computeNodeTemplateId,
+ List<String> nodeIdsConnectedIn,
+ List<String> nodeIdsConnectedOut,
+ List<String> volumeIds,
+ List<String> groupIds,
+ List<String> getAttrInIds,
+ List<Pair<String, GetAttrFuncData>> getAttrOutIds,
+ List<Pair<String, String>> portTypeToIdList,
+ ConsolidationData consolidationData) {
+
+ initComputeNodeTemplateIdInConsolidationData(serviceTemplateFileName, computeNodeTypeName,
+ computeNodeTemplateId, consolidationData);
+
+ Map<String, List<RequirementAssignmentData>> volumes =
+ consolidationData.getComputeConsolidationData().getFileComputeConsolidationData
+ (serviceTemplateFileName).getTypeComputeConsolidationData(computeNodeTypeName)
+ .getComputeTemplateConsolidationData(computeNodeTemplateId).getVolumes();
+
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ createComputeTemplateConsolidationData(computeNodeTemplateId, portTypeToIdList, volumes);
+
+ updateRelationsForEntityConsolidationData(computeNodeTemplateId, nodeIdsConnectedIn,
+ nodeIdsConnectedOut, groupIds, getAttrInIds, getAttrOutIds, computeTemplateConsolidationData);
+
+ updateVolumes(computeTemplateConsolidationData, volumeIds);
+
+ consolidationData.getComputeConsolidationData()
+ .getFileComputeConsolidationData(serviceTemplateFileName)
+ .getTypeComputeConsolidationData(computeNodeTypeName)
+ .setComputeTemplateConsolidationData(computeNodeTemplateId,
+ computeTemplateConsolidationData);
+ }
+
+ private static void updateRelationsForEntityConsolidationData(String entityNodeTemplateId,
+ List<String> nodeIdsConnectedIn,
+ List<String> nodeIdsConnectedOut,
+ List<String> groupIds,
+ List<String> getAttrInIds,
+ List<Pair<String, GetAttrFuncData>> getAttrOutFuncDataList,
+ EntityConsolidationData entity) {
+ updateRelationsIn(entity, nodeIdsConnectedIn);
+ updateRelationsOut(entity, entityNodeTemplateId, nodeIdsConnectedOut);
+ updateGetAttrIn(entity, getAttrInIds);
+ updateGetAttrOut(entity, getAttrOutFuncDataList);
+ entity.setGroupIds(groupIds);
+ }
+
+ public static void initComputeNodeTemplateIdInConsolidationData(String serviceTemplateFileName,
+ String computeNodeTypeName,
+ String computeNodeTemplateId,
+ ConsolidationData consolidationData) {
+
+ if(Objects.isNull(consolidationData.getComputeConsolidationData().getFileComputeConsolidationData
+ (serviceTemplateFileName))) {
+ consolidationData.getComputeConsolidationData().setFileComputeConsolidationData
+ (serviceTemplateFileName, new FileComputeConsolidationData());
+ }
+ TypeComputeConsolidationData typeComputeConsolidationData =
+ consolidationData.getComputeConsolidationData().getFileComputeConsolidationData
+ (serviceTemplateFileName).getTypeComputeConsolidationData(computeNodeTypeName);
+
+ if(
+ typeComputeConsolidationData.getComputeTemplateConsolidationData(computeNodeTemplateId) == null) {
+
+ consolidationData.getComputeConsolidationData()
+ .getFileComputeConsolidationData(serviceTemplateFileName)
+ .getTypeComputeConsolidationData(computeNodeTypeName)
+ .setComputeTemplateConsolidationData(computeNodeTemplateId, new ComputeTemplateConsolidationData());
+
+ }
+ }
+
+ public static void updateNestedConsolidationData(String serviceTemplateName,
+ List<String> substitutionNodeTemplateIds,
+ ConsolidationData consolidationData){
+ if(Objects.isNull(consolidationData.getNestedConsolidationData())){
+ consolidationData.setNestedConsolidationData(new NestedConsolidationData());
+ }
+
+ FileNestedConsolidationData fileNestedConsolidationData = new FileNestedConsolidationData();
+ for(String substitutionNodeTemplateId : substitutionNodeTemplateIds) {
+ NestedTemplateConsolidationData nestedTemplateConsolidationData = new NestedTemplateConsolidationData();
+ nestedTemplateConsolidationData.setNodeTemplateId(substitutionNodeTemplateId);
+ fileNestedConsolidationData.setNestedTemplateConsolidationData(substitutionNodeTemplateId, nestedTemplateConsolidationData);
+ }
+ consolidationData.getNestedConsolidationData().setFileNestedConsolidationData(serviceTemplateName, fileNestedConsolidationData);
+ }
+
+ public static ComputeTemplateConsolidationData createComputeTemplateConsolidationData(String computeNodeTemplateId,
+ List<Pair<String, String>> portTypeToIdList,
+ Map<String,List<RequirementAssignmentData>> volumes) {
+ ComputeTemplateConsolidationData compute = new ComputeTemplateConsolidationData();
+ compute.setNodeTemplateId(computeNodeTemplateId);
+ if (portTypeToIdList != null) {
+ for (Pair<String, String> port : portTypeToIdList) {
+ compute.addPort(port.getLeft(), port.getRight());
+ }
+ }
+ compute.setVolumes(volumes);
+ return compute;
+ }
+
+ public static void updateRelationsIn(EntityConsolidationData entity,
+ List<String> idsPontingTome){
+ if(CollectionUtils.isEmpty(idsPontingTome)){
+ return;
+ }
+
+ for(String pointingId : idsPontingTome){
+ entity.addNodesConnectedIn(pointingId, entity.getNodeTemplateId(), new RequirementAssignment());
+ }
+ }
+
+ public static void updateRelationsOut(EntityConsolidationData entity,
+ String nodeTemplateId,
+ List<String> idsToUpdate){
+ if(CollectionUtils.isEmpty(idsToUpdate)){
+ return;
+ }
+
+ for(String id : idsToUpdate){
+ entity.addNodesConnectedOut(id, id, new RequirementAssignment());
+ }
+ }
+
+ public static void updateGetAttrIn(EntityConsolidationData entity,
+ List<String> idsToUpdate){
+ if(CollectionUtils.isEmpty(idsToUpdate)){
+ return;
+ }
+
+ for(String id : idsToUpdate){
+ entity.addNodesGetAttrIn(id, new GetAttrFuncData());
+ }
+ }
+
+ public static void updateGetAttrOut(EntityConsolidationData entity,
+ List<Pair<String, GetAttrFuncData>> getAttrOutIds){
+ if(CollectionUtils.isEmpty(getAttrOutIds)){
+ return;
+ }
+
+ for(Pair<String, GetAttrFuncData> getAttrOutFunc : getAttrOutIds){
+ entity.addNodesGetAttrOut(getAttrOutFunc.getLeft(), getAttrOutFunc.getRight());
+ }
+ }
+
+ public static void updateVolumes(ComputeTemplateConsolidationData compute,
+ List<String> volumeIds){
+ if(CollectionUtils.isEmpty(volumeIds)){
+ return;
+ }
+
+ for(String id : volumeIds){
+ RequirementAssignment requirementAssignment = new RequirementAssignment();
+ requirementAssignment.setNode(id);
+ compute.addVolume(id, requirementAssignment);
+ }
+ }
+
+ public static void initComputeNodeTypeInConsolidationData(String serviceTemplateFileName,
+ String computeNodeTypeName,
+ ConsolidationData consolidationData) {
+ ComputeConsolidationData computeConsolidationData =
+ consolidationData.getComputeConsolidationData();
+ if (!computeConsolidationData.getAllServiceTemplateFileNames()
+ .contains(serviceTemplateFileName)) {
+ computeConsolidationData
+ .setFileComputeConsolidationData(serviceTemplateFileName,
+ new FileComputeConsolidationData());
+ }
+ computeConsolidationData
+ .getFileComputeConsolidationData(serviceTemplateFileName).setTypeComputeConsolidationData(
+ computeNodeTypeName, new TypeComputeConsolidationData());
+ }
+
+ public static Map<String, List<RequirementAssignmentData>> getNodeConnectedOutList(
+ NodeTemplate nodeTemplate, String requirementKey) {
+ Map<String, List<RequirementAssignmentData>> requirementAssignmentDataMap = new HashMap<>();
+ Optional<List<RequirementAssignmentData>> requirementAssignmentDataList =
+ TestUtils.createRequirementAssignmentDataList(nodeTemplate, requirementKey);
+ if (requirementAssignmentDataList.isPresent()) {
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList
+ .get()) {
+ String connectedNodeTemplateId = requirementAssignmentData.getRequirementAssignment()
+ .getNode();
+ requirementAssignmentDataMap
+ .computeIfAbsent(connectedNodeTemplateId, k -> new ArrayList<>());
+ requirementAssignmentDataMap.get(connectedNodeTemplateId).add(requirementAssignmentData);
+ }
+ }
+ return requirementAssignmentDataMap;
+ }
+
+ public static void updatePortsInComputeTemplateConsolidationData(
+ List<Pair<String, String>> portIdToTypeList, ComputeTemplateConsolidationData
+ compute){
+ compute.setPorts(new HashMap<>());
+ for(Pair<String, String> portIdToType : portIdToTypeList){
+ compute.getPorts().putIfAbsent(portIdToType.getLeft(), new ArrayList<>());
+ compute.getPorts().get(portIdToType.getLeft()).add(portIdToType.getRight());
+ }
+ }
+
+ public static Map<String, List<RequirementAssignmentData>> getNodeConnectedInList(
+ String sourceNodeTemplateId,
+ ServiceTemplate serviceTemplate, String requirementKey) {
+ Optional<List<RequirementAssignmentData>> requirementAssignmentDataList = Optional.empty();
+ List<RequirementAssignmentData> assignmentDataList = new ArrayList<>();
+ Map<String, List<RequirementAssignmentData>> requirementAssignmentDataMap = new HashMap<>();
+ Map<String, NodeTemplate> nodeTemplates = serviceTemplate.getTopology_template()
+ .getNode_templates();
+ for (Map.Entry<String, NodeTemplate> entry : nodeTemplates.entrySet()) {
+ String nodeTemplateId = entry.getKey();
+ List<Map<String, RequirementAssignment>> requirements = entry.getValue().getRequirements();
+ if (requirements != null) {
+ for (Map<String, RequirementAssignment> requirement : requirements) {
+ if (requirement.get(requirementKey) != null) {
+ RequirementAssignment requirementAssignment = requirement.get(requirementKey);
+ if (requirementAssignment != null) {
+ if (requirementAssignment.getNode().equals(sourceNodeTemplateId)) {
+ RequirementAssignmentData data = new RequirementAssignmentData(requirementKey,
+ requirementAssignment);
+ assignmentDataList.add(data);
+ }
+ }
+ }
+ }
+ requirementAssignmentDataList = Optional.ofNullable(assignmentDataList);
+ if (requirementAssignmentDataList.isPresent()) {
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList
+ .get()) {
+ requirementAssignmentDataMap.computeIfAbsent(nodeTemplateId, k -> new ArrayList<>());
+ requirementAssignmentDataMap.get(nodeTemplateId).add(requirementAssignmentData);
+ }
+ }
+ requirementAssignmentDataList = Optional.empty();
+ }
+ }
+ return requirementAssignmentDataMap;
+ }
+
+ public static List<String> getGroupsForNode(ServiceTemplate serviceTemplate, String
+ nodeTemplateId) {
+ List<String> entityGroups = new ArrayList<>();
+ Map<String, GroupDefinition> groups = serviceTemplate.getTopology_template().getGroups();
+ Map<String, NodeTemplate> nodeTemplates =
+ serviceTemplate.getTopology_template().getNode_templates();
+ for (Map.Entry<String, GroupDefinition> entry : groups.entrySet()) {
+ String groupId = entry.getKey();
+ GroupDefinition groupDefinition = entry.getValue();
+ if (groupDefinition.getType().contains("HeatStack"))
+ continue;
+ List<String> groupMembers = groupDefinition.getMembers();
+ for (String member : groupMembers) {
+ if (groups.containsKey(member))
+ continue;
+ if (member.equals(nodeTemplateId)) {
+ entityGroups.add(groupId);
+ }
+ }
+ }
+ return entityGroups;
+ }
+
+ private static Optional<List<RequirementAssignmentData>> createRequirementAssignmentDataList(
+ NodeTemplate nodeTemplate, String requirementKey) {
+
+ Optional<List<RequirementAssignment>> requirementAssignmentLink =
+ DataModelUtil.getRequirementAssignment(nodeTemplate.getRequirements(), requirementKey);
+ if (!requirementAssignmentLink.isPresent()) {
+ return Optional.empty();
+ }
+
+ List<RequirementAssignmentData> requirementAssignmentDataList = new ArrayList<>();
+ for (RequirementAssignment requirementAssignment : requirementAssignmentLink.get()) {
+ RequirementAssignmentData requirementAssignmentData = new RequirementAssignmentData
+ (requirementKey, requirementAssignment);
+ requirementAssignmentDataList.add(requirementAssignmentData);
+ }
+ return Optional.ofNullable(requirementAssignmentDataList);
+ }
+
+ public static Optional<List<RequirementAssignmentData>> getRequirementAssignmentDataList(
+ NodeTemplate nodeTemplate, String requirementKey) {
+ List<RequirementAssignmentData> returnedReqAssignmentDataList = new ArrayList<>();
+ Optional<List<RequirementAssignmentData>> requirementAssignmentDataList =
+ TestUtils.createRequirementAssignmentDataList(nodeTemplate, requirementKey);
+
+ if (requirementAssignmentDataList.isPresent()) {
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList
+ .get()) {
+ returnedReqAssignmentDataList.add(requirementAssignmentData);
+ }
+ return Optional.of(returnedReqAssignmentDataList);
+ }
+ return Optional.empty();
+ }
+
+
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/multi/Translate_Heat_Nested_Multi.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/multi/Translate_Heat_Nested_Multi.java
index 4be63258ae..10462c2838 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/multi/Translate_Heat_Nested_Multi.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/multi/Translate_Heat_Nested_Multi.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.nested.multi;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class Translate_Heat_Nested_Multi extends BaseResourceTranslationTest {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumelocal/NestedVolumelocal.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumelocal/NestedVolumelocal.java
index 4f2f3af33a..84f05ce891 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumelocal/NestedVolumelocal.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumelocal/NestedVolumelocal.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.nested.nestedvolumelocal;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class NestedVolumelocal extends BaseResourceTranslationTest {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumeseperatefile/NestedVolumeSeperateFile.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumeseperatefile/NestedVolumeSeperateFile.java
index 02a8fb6ce4..bd59303305 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumeseperatefile/NestedVolumeSeperateFile.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/nestedvolumeseperatefile/NestedVolumeSeperateFile.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.nested.nestedvolumeseperatefile;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class NestedVolumeSeperateFile extends BaseResourceTranslationTest {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/recursive/TranslateHeatNestedRecursiveTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/recursive/TranslateHeatNestedRecursiveTest.java
index 792f4f4bf5..5cad472aa0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/recursive/TranslateHeatNestedRecursiveTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/recursive/TranslateHeatNestedRecursiveTest.java
@@ -1,8 +1,29 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.nested.recursive;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Before;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
import java.io.IOException;
@@ -29,6 +50,8 @@ public class TranslateHeatNestedRecursiveTest extends BaseResourceTranslationTes
outputFilesPath = "/mock/heat/nested/nested2levels/expectedoutputfiles";
initTranslatorAndTranslate();
testTranslation();
+ validateNestedTemplateConsolidationData(TestConstants
+ .TEST_MULTIPLE_MULTI_LEVEL_NESTED_RESOURCE);
}
@Test
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/reusenestedfrommultibase/Translate_Heat_Nested_From_Multi_Base.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/reusenestedfrommultibase/Translate_Heat_Nested_From_Multi_Base.java
index 005bcd0db0..b715316146 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/reusenestedfrommultibase/Translate_Heat_Nested_From_Multi_Base.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/reusenestedfrommultibase/Translate_Heat_Nested_From_Multi_Base.java
@@ -1,7 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.nested.reusenestedfrommultibase;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class Translate_Heat_Nested_From_Multi_Base extends BaseResourceTranslationTest {
@@ -13,6 +34,7 @@ public class Translate_Heat_Nested_From_Multi_Base extends BaseResourceTranslati
@Test
public void testTranslate() throws Exception {
testTranslation();
+ validateNestedTemplateConsolidationData(TestConstants.TEST_MULTIPLE_NESTED_RESOURCE);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/separatevol/NestedAndSeparateVolTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/separatevol/NestedAndSeparateVolTranslationTest.java
index 4269705923..d867dc4597 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/separatevol/NestedAndSeparateVolTranslationTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/separatevol/NestedAndSeparateVolTranslationTest.java
@@ -1,11 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.nested.separatevol;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Before;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
import java.io.IOException;
+
public class NestedAndSeparateVolTranslationTest extends BaseResourceTranslationTest {
@Before
@@ -19,4 +40,4 @@ public class NestedAndSeparateVolTranslationTest extends BaseResourceTranslation
public void testTranslate() throws Exception {
testTranslation();
}
-} \ No newline at end of file
+}
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 1d80551f27..f81da11bc9 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
@@ -1,7 +1,29 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.nested.single;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
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;
public class TranslateHeatNestedSingle extends BaseResourceTranslationTest {
@@ -13,5 +35,6 @@ public class TranslateHeatNestedSingle extends BaseResourceTranslationTest {
@Test
public void testTranslate() throws Exception {
testTranslation();
+ validateNestedTemplateConsolidationData(TestConstants.TEST_SINGLE_NESTED_RESOURCE);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/outputs/HeatOutputConversionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/outputs/HeatOutputConversionTest.java
index fd3543a051..e3197770a7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/outputs/HeatOutputConversionTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/outputs/HeatOutputConversionTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.outputs;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class HeatOutputConversionTest extends BaseResourceTranslationTest {
@@ -16,35 +36,4 @@ public class HeatOutputConversionTest extends BaseResourceTranslationTest {
}
- //private static final String MANIFEST_NAME = "MANIFEST.json";
-
- /* @Test
- public void testTranslate_outputs() throws IOException {
-
- HeatToToscaTranslator heatToToscaTranslator = HeatToToscaTranslatorFactory.getInstance().createInterface();
- URL url = this.getClass().getResource("/mock/heat/outputs");
- File manifestFile = new File(url.getPath());
- File[] files = manifestFile.listFiles();
- FileInputStream fis;
- byte[] fileContent;
- for (File file : files) {
- fis = new FileInputStream(file);
- fileContent = FileUtils.toByteArray(fis);
- if (file.getName().equals(MANIFEST_NAME)) {
- heatToToscaTranslator.addManifest(MANIFEST_NAME, new String(fileContent));
- } else {
- heatToToscaTranslator.addFile(file.getName(), fileContent);
- }
- }
-
- TranslatorOutput translatorOutput = heatToToscaTranslator.translate();
- Assert.assertNotNull(translatorOutput);
- File file = new File("Outputs.zip");
- FileOutputStream fos = new FileOutputStream(file);
- fos.write(translatorOutput.getTranslationContent());
- fos.close();
-
- }*/
-
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/parameters/HeatParameterConversionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/parameters/HeatParameterConversionTest.java
index 4feef0e094..5f2c3691c2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/parameters/HeatParameterConversionTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/parameters/HeatParameterConversionTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.parameters;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class HeatParameterConversionTest extends BaseResourceTranslationTest {
@@ -15,40 +35,4 @@ public class HeatParameterConversionTest extends BaseResourceTranslationTest {
testTranslation();
}
-
- /*
-
- private static final String MANIFEST_NAME = "MANIFEST.json";
-
- @Test
- public void testTranslate_parameters() throws IOException {
-
-
-
- HeatToToscaTranslator heatToToscaTranslator = HeatToToscaTranslatorFactory.getInstance().createInterface();
- URL url = this.getClass().getResource("/mock/heat/parameters");
- File manifestFile = new File(url.getPath());
- File[] files = manifestFile.listFiles();
- FileInputStream fis;
- byte[] fileContent;
- for (File file : files) {
- fis = new FileInputStream(file);
- fileContent = FileUtils.toByteArray(fis);
- if (file.getName().equals(MANIFEST_NAME)) {
- heatToToscaTranslator.addManifest(MANIFEST_NAME, new String(fileContent));
- } else {
- heatToToscaTranslator.addFile(file.getName(), fileContent);
- }
- }
-
- TranslatorOutput translatorOutput = heatToToscaTranslator.translate();
- Assert.assertNotNull(translatorOutput);
- File file = new File("Parameters.zip");
- FileOutputStream fos = new FileOutputStream(file);
- fos.write(translatorOutput.getTranslationContent());
- fos.close();
-
- }
- */
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/ContrailNetworkRuleTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/ContrailNetworkRuleTest.java
index f8b3022155..b4ae36d289 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/ContrailNetworkRuleTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/ContrailNetworkRuleTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.resources;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class ContrailNetworkRuleTest extends BaseResourceTranslationTest {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSContrailVirtualNetworkTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSContrailVirtualNetworkTest.java
index b1305c3b2c..0b55173c6e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSContrailVirtualNetworkTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSContrailVirtualNetworkTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.resources;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class OSContrailVirtualNetworkTest extends BaseResourceTranslationTest {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNeutronNetTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNeutronNetTest.java
index 3b312a804d..f5568e3fb6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNeutronNetTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNeutronNetTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.resources;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class OSNeutronNetTest extends BaseResourceTranslationTest {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNovaServerTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNovaServerTest.java
index 6d194ea220..ebb34503bb 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNovaServerTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/resources/OSNovaServerTest.java
@@ -1,17 +1,62 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.resources;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_PORT_POSITIVE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_VOLUME_POSITIVE;
+
+import org.junit.Before;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
+
+import java.io.IOException;
public class OSNovaServerTest extends BaseResourceTranslationTest {
- {
+ @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/resources/OS_Nova_Server/inputs";
outputFilesPath = "/mock/heat/resources/OS_Nova_Server/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_VOLUME,
+ TEST_VOLUME_POSITIVE);
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_PORT,
+ TEST_PORT_POSITIVE);
}
@Test
- public void testTranslate() throws Exception {
+ public void testTranslateWithOnlyPorts() throws Exception {
+ inputFilesPath = "/mock/heat/resources/Port/inputfiles";
+ outputFilesPath = "/mock/heat/resources/Port/expectedoutputfiles";
+ initTranslatorAndTranslate();
testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_PORT,
+ TEST_PORT_POSITIVE);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/sharedresource/HeatSharedResourceTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/sharedresource/HeatSharedResourceTest.java
index 2395fa00db..d518e9ce11 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/sharedresource/HeatSharedResourceTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/sharedresource/HeatSharedResourceTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.impl.heattotosca.sharedresource;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class HeatSharedResourceTest extends BaseResourceTranslationTest {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java
new file mode 100644
index 0000000000..61777a6586
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/ConsolidationServiceTest.java
@@ -0,0 +1,1990 @@
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.apache.commons.lang3.tuple.Pair;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.*;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.translator.TestUtils;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionMode;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.GetAttrFuncData;
+
+import java.io.IOException;
+import java.util.*;
+
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+
+/**
+ * Created by TALIO on 3/7/2017.
+ */
+public class ConsolidationServiceTest {
+
+ @Spy
+ private TranslationContext translationContext = new TranslationContext();
+ private static String mainST = "MainServiceTemplate.yaml";
+
+ @Mock
+ private UnifiedCompositionService unifiedCompositionServiceMock;
+
+ @Captor
+ private ArgumentCaptor<List<UnifiedCompositionData>> unifiedModelListArg;
+ @Captor
+ private ArgumentCaptor<UnifiedCompositionMode> unifiedCompositionModeArg;
+
+ @InjectMocks
+ private ConsolidationService consolidationService;
+
+ @Before
+ public void setUp() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void testConsolidationValidPreCondition() throws IOException {
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel(
+ "/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/valid_pre_condition/", null,
+ null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName,
+ consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testConsolidationFalsePreConditionOneComputeNode() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_compute_node/", null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testConsolidationFalsePreConditionMoreThanOnePortPerType() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/more_than_one_port/",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_2"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testConsolidationFalsePreConditionDifferentPortTypesBetweenComputes()
+ throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/different_port_types",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+
+ }
+
+ @Test
+ public void testConsolidationResultTrueWithMoreThanTwoCompute() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_valid",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testConsolidationResultFalseWithMoreThanTwoComputeOneIsDiff() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_valid",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testConsolidationResultFalseForTwoTypesOfComputeWithOneInstanceEach()
+ throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName1 = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ String computeNodeTypeName2 = "org.openecomp.resource.vfc.nodes.heat.cmaui";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_valid",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData
+ (mainST, computeNodeTypeName1, consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData
+ (mainST, computeNodeTypeName2, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName1, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName2, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.SingleSubstitution, UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(2, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testConsolidationValidForTwoSimilarComputeAndFalseForSingleCompute() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName1 = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ String computeNodeTypeName2 = "org.openecomp.resource.vfc.nodes.heat.cmaui";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_two_similar_one_diff",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName1, consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName2, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName1, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName1, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName2, "server_ps03",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(
+ UnifiedCompositionMode.ScalingInstances, UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(2, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testValidComputeAndPortConsolidation() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_valid",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testFalseComputeConsolidationForTwoSimilarImageNamesAndOneDiff() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName1 = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ String computeNodeTypeName2 = "org.openecomp.resource.vfc.nodes.heat.pd_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_name_diff",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(
+ mainST, computeNodeTypeName1, consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(
+ mainST, computeNodeTypeName2, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName1, "server_ps01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName1, "server_ps02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName1, "server_ps03",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName2, "server_pd01",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName2, "server_pd02",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName2, "server_pd03",
+ null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance, UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(2, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testFalseComputeConsolidationForTwoSimilarFlavorNamesAndOneDiff() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_flavor_name_diff",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "sm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testFalsePortConsolidationForTwoPortsWithFixedIpsAndOneWithout() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_fixed_ips",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testFalsePortConsolidationForTwoPortsWithAddressPairsAndOneWithout()
+ throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_allowed_address_pairs",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testFalsePortConsolidationForTwoPortsWithMacAddressAndOneWithout()
+ throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_mac_address",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ null, null, null, null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testValidPortConsolidationForPortsWithNoneOfTheCheckedProperties()
+ throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/ports_with_none_of_the_properties",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", null, null, null, null, null, null,
+ portTypeToIdList, consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testComputeRelationsSimilarBetweenComputeNodes() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_with_same_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"), Arrays.asList("cmaui_volume"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testNodesInRelationsDiffBetweenThreeComputes() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"),
+ null,null ,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_2"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1", null, null, null, null, null,
+ consolidationData);
+
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testNodesOutRelationsDiffBetweenThreeComputes() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume_1"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1", null, null, null, null, null,
+ consolidationData);
+
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testVolumeRelationsDiffBetweenThreeComputes() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_valid",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume_1"), Arrays.asList("group_id1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1", null, null, null, null, null,
+ consolidationData);
+
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testGroupRelationsDiffBetweenThreeComputes() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_valid",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_2"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1", null, null, null, null, null,
+ consolidationData);
+
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testPortConsolidationDataRelationsSimilar() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testNodesInRelationsDiffBetweenThreePortConsolidationDatas() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_2"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testNodesOutRelationsDiffBetweenThreePortConsolidationDatas() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_2"), Arrays.asList("group_id_1"), null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testGroupIdsRelationsDiffBetweenThreePortConsolidationDatas() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_3"), null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testValidConsolidationForComputesWithValidGetAttr() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("node_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("node_2"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("node_3"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testInvalidConsolidationForComputesWithGetAttrForEachOther() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("server_ps02"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("node_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("node_2"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), null, null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testValidConsolidationForPortsWithValidGetAttr() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ null, null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ List<String> portNodeTemplateIds =
+ Arrays.asList("cm01_port_1", "cm01_port_2", "cm01_port_3");
+ List<List<String>> nodesConnectedInIds =
+ Arrays.asList(Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"));
+ List<List<String>> nodesConnectedOutIds =
+ Arrays.asList(Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"));
+ List<List<String>> getAttrInIds =
+ Arrays.asList(Arrays.asList("get_attr_1"), Arrays.asList("get_attr_2"), Arrays.asList("get_attr_3"));
+ List<List<String>> groupIds =
+ Arrays.asList(Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"));
+ List<List<Pair<String, GetAttrFuncData>>> getAttrOut = Arrays.asList(null, null, null);
+
+ TestUtils.updateMultiplePortConsolidationDatas(
+ mainST, portNodeTemplateIds,nodesConnectedInIds, nodesConnectedOutIds, groupIds,
+ getAttrInIds, getAttrOut, consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testInvalidConsolidationForPortsWithGetAttrInForEachOther() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation" +
+ "/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("node_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("node_2"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("node_3"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ List<String> portNodeTemplateIds =
+ Arrays.asList("cm01_port_1", "cm01_port_2", "cm01_port_3");
+ List<List<String>> nodesConnectedInIds =
+ Arrays.asList(Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"));
+ List<List<String>> nodesConnectedOutIds =
+ Arrays.asList(Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"));
+ List<List<String>> getAttrInIds =
+ Arrays.asList(Arrays.asList("get_attr_1"), Arrays.asList("get_attr_2"), Arrays.asList("cm01_port_1"));
+ List<List<String>> groupIds =
+ Arrays.asList(Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"));
+ List<List<Pair<String, GetAttrFuncData>>> getAttrOut = Arrays.asList(null, null, null);
+
+ TestUtils.updateMultiplePortConsolidationDatas(
+ mainST, portNodeTemplateIds, nodesConnectedInIds, nodesConnectedOutIds, groupIds,
+ getAttrInIds, getAttrOut, consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.CatalogInstance);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testValidConsolidationForComputesWithSamePortTypesPointingByGetAttrIn() throws
+ IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("cm01_port_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_2"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_3"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ List<String> portNodeTemplateIds =
+ Arrays.asList("cm01_port_1", "cm01_port_2", "cm01_port_3");
+ List<List<String>> nodesConnectedInIds =
+ Arrays.asList(Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"));
+ List<List<String>> nodesConnectedOutIds =
+ Arrays.asList(Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"));
+ List<List<String>> getAttrInIds =
+ Arrays.asList(Arrays.asList("get_attr_1"), Arrays.asList("get_attr_2"), Arrays.asList("get_attr_3"));
+ List<List<String>> groupIds =
+ Arrays.asList(Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"));
+ List<List<Pair<String, GetAttrFuncData>>> getAttrOut = Arrays.asList(null, null, null);
+
+ TestUtils.updateMultiplePortConsolidationDatas(
+ mainST, portNodeTemplateIds, nodesConnectedInIds, nodesConnectedOutIds, groupIds,
+ getAttrInIds, getAttrOut, consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testValidGetAttrOutFromComputes() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData("name", "c1_name");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("cm01_port_1"),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_1", getAttrFuncData)),
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_1", getAttrFuncData)),
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_1", getAttrFuncData)),
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_1",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("sm01_port_2"), null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_2",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("sm01_port_1"), null,
+ consolidationData);
+ TestUtils.updatePortConsolidationData(mainST, "cm01_port_3",
+ Arrays.asList("node_in_1"), Arrays.asList("net_id_1"),
+ Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("rm01_port_1"), null,
+ consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testInValidGetAttrOutFromComputesPortTypeDifferent() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData("name", "c1_name");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("cm01_port_1"),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_1", getAttrFuncData)),
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_1", getAttrFuncData)),
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("sm01_port_1", getAttrFuncData)),
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+
+ List<String> portNodeTemplateIds =
+ Arrays.asList("cm01_port_1", "cm01_port_2", "cm01_port_3", "sm01_port_1", "sm01_port_2",
+ "sm01_port_3");
+ List<List<String>> nodesConnectedInIds =
+ Arrays.asList(Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList
+ ("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"));
+ List<List<String>> nodesConnectedOutIds =
+ Arrays.asList(Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList
+ ("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"));
+ List<List<String>> getAttrInIds =
+ Arrays.asList(Arrays.asList("get_attr_1"), Arrays.asList("get_attr_2"), Arrays.asList
+ ("get_attr_3"), Arrays.asList("get_attr_1"), Arrays.asList("get_attr_2"), Arrays.asList("get_attr_3"));
+ List<List<String>> groupIds =
+ Arrays.asList(Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"));
+ List<List<Pair<String, GetAttrFuncData>>> getAttrOut = Arrays.asList(null, null, null, null,
+ null, null);
+
+ TestUtils.updateMultiplePortConsolidationDatas(mainST, portNodeTemplateIds,
+ nodesConnectedInIds, nodesConnectedOutIds, groupIds, getAttrInIds, getAttrOut, consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testValidGetAttrOutFromPorts() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("cm01_port_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData("name", "s1_name");
+ List<String> portNodeTemplateIds =
+ Arrays.asList("cm01_port_1", "cm01_port_2", "cm01_port_3", "sm01_port_1", "sm01_port_2",
+ "sm01_port_3");
+ List<List<String>> nodesConnectedInIds =
+ Arrays.asList(Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList
+ ("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"));
+ List<List<String>> nodesConnectedOutIds =
+ Arrays.asList(Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList
+ ("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"));
+ List<List<String>> getAttrInIds =
+ Arrays.asList(null, null, null, null, null, null);
+ List<List<String>> groupIds =
+ Arrays.asList(Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"));
+ List<List<Pair<String, GetAttrFuncData>>> getAttrOut = Arrays.asList(
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("sm01_port_1", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("sm01_port_2", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("sm01_port_3", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_1", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_2", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_3", getAttrFuncData)));
+
+ TestUtils.updateMultiplePortConsolidationDatas(mainST, portNodeTemplateIds,
+ nodesConnectedInIds, nodesConnectedOutIds, groupIds, getAttrInIds, getAttrOut, consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.ScalingInstances);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testInvalidGetAttrOutFromPorts() throws IOException {
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.ps_server";
+ ToscaServiceModel toscaServiceModel = TestUtils.loadToscaServiceModel
+ ("/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations",
+ null, null);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(mainST, computeNodeTypeName, consolidationData);
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_1"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_1"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps01", Arrays.asList("cm01_port_1"), Arrays.asList
+ ("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"), Arrays.asList("cm01_port_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_2"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_2"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps02", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cm01_port", "cm01_port_3"));
+ portTypeToIdList.add(new ImmutablePair<>("sm01_port", "sm01_port_3"));
+ TestUtils.updateComputeTemplateConsolidationData(
+ mainST,
+ computeNodeTypeName, "server_ps03", Arrays.asList("cm01_port_1"),
+ Arrays.asList("cmaui_volume"), Arrays.asList("cmaui_volume"), Arrays.asList("group_id_1"),
+ Arrays.asList("cm01_port_1"), null,
+ portTypeToIdList,
+ consolidationData);
+
+ TestUtils.initPortConsolidationData(mainST, consolidationData);
+
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData("name", "s1_name");
+ List<String> portNodeTemplateIds =
+ Arrays.asList("cm01_port_1", "cm01_port_2", "cm01_port_3", "sm01_port_1", "sm01_port_2",
+ "sm01_port_3");
+ List<List<String>> nodesConnectedInIds =
+ Arrays.asList(Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList
+ ("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"), Arrays.asList("node_in_1"));
+ List<List<String>> nodesConnectedOutIds =
+ Arrays.asList(Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList
+ ("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"), Arrays.asList("node_out_1"));
+ List<List<String>> getAttrInIds =
+ Arrays.asList(null, null, null, null, null, null);
+ List<List<String>> groupIds =
+ Arrays.asList(Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1", "group_id_2"), Arrays.asList("group_id_1",
+ "group_id_2"), Arrays.asList("group_id_1", "group_id_2"));
+ List<List<Pair<String, GetAttrFuncData>>> getAttrOut = Arrays.asList(
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("server_ps01", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("server_ps01", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("sm01_port_3", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_1", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_2", getAttrFuncData)),
+ Arrays.asList(new ImmutablePair<String, GetAttrFuncData>("cm01_port_3", getAttrFuncData)));
+
+ TestUtils.updateMultiplePortConsolidationDatas(mainST, portNodeTemplateIds,
+ nodesConnectedInIds, nodesConnectedOutIds, groupIds, getAttrInIds, getAttrOut, consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+ List<UnifiedCompositionMode> expectedUnifiedModes =
+ Arrays.asList(UnifiedCompositionMode.SingleSubstitution);
+ verifyMainServiceTemplateConsolidation(1, expectedUnifiedModes, toscaServiceModel);
+ }
+
+ @Test
+ public void testSubstitutionConsolidationPreConditionTrue() throws IOException {
+ translationContext = new TranslationContext();
+ String mainSTName = "MainServiceTemplate.yaml";
+ String nestedServiceTemplateName = "nested-pcm_v0.1ServiceTemplate.yaml";
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"), consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat.pcm_server", "server_pcm_001", consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes" +
+ ".heat.pcm_server", "pcm_server", consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+
+ addMockServiceTemplateToContext(mainSTName, "Main");
+ addMockServiceTemplateToContext(nestedServiceTemplateName, "nested-pcm_v0.1");
+
+ verifySubstitutionServiceTemplateConsolidation
+ (1, translationContext.getTranslatedServiceTemplates().get(mainSTName),
+ translationContext.getTranslatedServiceTemplates().get(nestedServiceTemplateName),
+ UnifiedCompositionMode.NestedSingleCompute);
+ }
+
+ @Test
+ public void testSubstitutionConsolidationPreConditionFalseMoreThanOneComputeType() throws IOException {
+ translationContext = new TranslationContext();
+ String mainSTName = "MainServiceTemplate.yaml";
+ String nestedServiceTemplateName = "nested-pcm_v0.1ServiceTemplate.yaml";
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"), consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes" +
+ ".heat.pcm_server", "server_pcm_001", consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_oam_001"), consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".oam_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat.oam_server", "server_oam_001", consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".oam_server", consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+
+ addMockServiceTemplateToContext(mainSTName, "Main");
+ addMockServiceTemplateToContext(nestedServiceTemplateName, "nested-pcm_v0.1");
+
+ verifySubstitutionServiceTemplateConsolidation
+ (0, translationContext.getTranslatedServiceTemplates().get(mainSTName),
+ translationContext.getTranslatedServiceTemplates().get(nestedServiceTemplateName), UnifiedCompositionMode.NestedSingleCompute);
+ }
+
+ @Test
+ public void testSubstitutionConsolidationPreConditionFalseMoreThanOneComputeOfSameType() throws IOException {
+ translationContext = new TranslationContext();
+ String mainSTName = "MainServiceTemplate.yaml";
+ String nestedServiceTemplateName = "nested-pcm_v0.1ServiceTemplate.yaml";
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"), consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes" +
+ ".heat.pcm_server", "pcm_server_1", consolidationData);
+
+ TestUtils.updateNestedConsolidationData(nestedServiceTemplateName, Arrays.asList("server_pcm_002"),
+ consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes" +
+ ".heat.pcm_server", "pcm_server_2", consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+
+ addMockServiceTemplateToContext(mainSTName, "Main");
+ addMockServiceTemplateToContext(nestedServiceTemplateName, "nested-pcm_v0.1");
+
+ verifySubstitutionServiceTemplateConsolidation
+ (0, translationContext.getTranslatedServiceTemplates().get(mainSTName),
+ translationContext.getTranslatedServiceTemplates().get(nestedServiceTemplateName), UnifiedCompositionMode.NestedSingleCompute);
+ }
+
+ @Test
+ public void testSubstitutionConsolidationPreConditionFalseNestedInsideNested(){
+ translationContext = new TranslationContext();
+ String mainSTName = "MainServiceTemplate.yaml";
+ String nestedServiceTemplateName = "nested-pcm_v0.1ServiceTemplate.yaml";
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"), consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(mainSTName, "org.openecomp.resource.vfc.nodes.heat.pcm_server", "server_pcm_001", consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes.heat" +
+ ".pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(nestedServiceTemplateName, "org.openecomp.resource.vfc.nodes" +
+ ".heat.pcm_server", "pcm_server", consolidationData);
+
+ TestUtils.updateNestedConsolidationData(nestedServiceTemplateName, Arrays.asList("nested_resource"), consolidationData);
+
+ translationContext.setConsolidationData(consolidationData);
+
+ addMockServiceTemplateToContext(mainSTName, "Main");
+ addMockServiceTemplateToContext(nestedServiceTemplateName, "nested-pcm_v0.1");
+
+ verifySubstitutionServiceTemplateConsolidation
+ (0, translationContext.getTranslatedServiceTemplates().get(mainSTName),
+ translationContext.getTranslatedServiceTemplates().get(nestedServiceTemplateName), UnifiedCompositionMode.NestedSingleCompute);
+ }
+
+
+ private void verifyMainServiceTemplateConsolidation(int times,
+ List<UnifiedCompositionMode> expectedUnifiedCompositionModes,
+ ToscaServiceModel toscaServiceModel) {
+ consolidationService.mainServiceTemplateConsolidation(toscaServiceModel.getServiceTemplates().get(mainST), translationContext);
+
+ ServiceTemplate mainServiceTemplate = toscaServiceModel.getServiceTemplates().get(mainST);
+ verify(unifiedCompositionServiceMock, times(times))
+ .createUnifiedComposition(
+ eq(mainServiceTemplate),
+ any(),
+ unifiedModelListArg.capture(),
+ unifiedCompositionModeArg.capture(),
+ eq(translationContext));
+
+ List<UnifiedCompositionMode> actualUnifiedCompositionModes = unifiedCompositionModeArg.getAllValues();
+ Assert.assertEquals(expectedUnifiedCompositionModes, actualUnifiedCompositionModes);
+ }
+
+ private void verifySubstitutionServiceTemplateConsolidation(int times,
+ ServiceTemplate mainST,
+ ServiceTemplate nestedST, UnifiedCompositionMode expectedMode){
+ consolidationService.substitutionServiceTemplateConsolidation(null, mainST,
+ nestedST, translationContext);
+
+ if(times == 0){
+ verify(unifiedCompositionServiceMock, never()).
+ createUnifiedComposition(
+ any(),
+ any(),
+ any(),
+ any(),
+ eq(translationContext));
+ }else {
+ verify(unifiedCompositionServiceMock, times(times)).
+ createUnifiedComposition(
+ eq(mainST),
+ eq(nestedST),
+ unifiedModelListArg.capture(),
+ unifiedCompositionModeArg.capture(),
+ eq(translationContext));
+
+ Assert.assertEquals(expectedMode, unifiedCompositionModeArg.getValue());
+ }
+
+ }
+
+ private void addMockServiceTemplateToContext(String serviceTemplateFileName, String templateName) {
+ ServiceTemplate serviceTemplate = new ServiceTemplate();
+ Map<String, String> metadata = new HashMap<>();
+ metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, templateName);
+ serviceTemplate.setMetadata(metadata);
+ translationContext.getTranslatedServiceTemplates()
+ .put(serviceTemplateFileName, serviceTemplate);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/GlobalTypesGeneratorTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/GlobalTypesGeneratorTest.java
deleted file mode 100644
index 6afa9c1ea2..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/GlobalTypesGeneratorTest.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca;
-
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
-import org.junit.Test;
-
-public class GlobalTypesGeneratorTest extends BaseResourceTranslationTest {
-
- {
- inputFilesPath = "/mock/services/heattotosca/global_types/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/global_types/expectedoutputfiles";
- }
-
- @Test
- public void testTranslate() throws Exception {
- testTranslation();
- }
-
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionServiceTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionServiceTest.java
new file mode 100644
index 0000000000..5b57a9ac37
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/UnifiedCompositionServiceTest.java
@@ -0,0 +1,1640 @@
+package org.openecomp.sdc.translator.services.heattotosca;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Matchers.anyObject;
+import static org.mockito.Matchers.anyString;
+
+import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.apache.commons.lang3.tuple.Pair;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.mockito.Spy;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.translator.TestUtils;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionEntity;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedSubstitutionData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.*;
+import org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition.UnifiedCompositionNestedSingleCompute;
+import org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition.UnifiedCompositionSingleSubstitution;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.*;
+
+public class UnifiedCompositionServiceTest {
+ @InjectMocks
+ @Spy
+ UnifiedCompositionService unifiedCompositionService;
+ @Spy
+ TranslationContext context;
+
+ String inputServiceTemplatesPath;
+ String outputServiceTemplatesPath;
+ Map<String, ServiceTemplate> inputServiceTemplates;
+ Map<String, ServiceTemplate> expectedOutserviceTemplates;
+ private static String mainSTName = "MainServiceTemplate.yaml";
+ private static String substitutionST = "SubstitutionServiceTemplate.yaml";
+ private static String globalSubstitutionST = "GlobalSubstitutionTypesServiceTemplate.yaml";
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ //todo
+ @Test
+ public void createUnifiedComposition() throws Exception {
+
+ }
+
+ @Test
+ public void createSubstitutionStNoConsolidationData() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out";
+
+ loadInputAndOutputData();
+ ServiceTemplate expectedServiceTemplate =
+ TestUtils.loadServiceTemplate(outputServiceTemplatesPath);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(false, substitutionServiceTemplate.isPresent());
+ }
+
+ @Test
+ public void createSubstitutionStNoOutputParamAndDuplicatePortType() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out";
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData =
+ createCompositionData("FSB1_template", portTypeToIdList);
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ substitutionServiceTemplate
+ .ifPresent(
+ subServiceTemplate -> checkSTResults(expectedOutserviceTemplates,
+ subServiceTemplate, context.getGlobalSubstitutionServiceTemplate(), null));
+ }
+
+ @Test
+ public void createSubstitutionStWithOutputParamNoConsolidation() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate" +
+ "/WithOutputParameters/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out";
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData =
+ createCompositionData("FSB1_template", portTypeToIdList);
+ addGetAttrForCompute(unifiedCompositionData);
+ addGetAttrForPort(unifiedCompositionData);
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ substitutionServiceTemplate
+ .ifPresent(
+ subServiceTemplate -> checkSTResults(expectedOutserviceTemplates,
+ subServiceTemplate, context.getGlobalSubstitutionServiceTemplate(), null));
+ }
+
+ @Test
+ public void createSubstitutionStWithOutputParamWithConsolidation() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out";
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ List<Pair<String, String>> portTypeToIdList1 = new ArrayList<>();
+ portTypeToIdList1.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList1.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData1 =
+ createCompositionData("FSB1_template", portTypeToIdList1);
+ addGetAttrForCompute(unifiedCompositionData1);
+ addGetAttrForPort(unifiedCompositionData1);
+ unifiedCompositionDataList.add(unifiedCompositionData1);
+
+ List<Pair<String, String>> portTypeToIdList2 = new ArrayList<>();
+ portTypeToIdList2.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+ portTypeToIdList2.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal1"));
+
+ UnifiedCompositionData unifiedCompositionData2 =
+ createCompositionData("FSB2_template", portTypeToIdList2);
+ addGetAttrForCompute2(unifiedCompositionData2);
+ addGetAttrForPort2(unifiedCompositionData2);
+ unifiedCompositionDataList.add(unifiedCompositionData2);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ substitutionServiceTemplate
+ .ifPresent(
+ subServiceTemplate -> checkSTResults(expectedOutserviceTemplates,
+ subServiceTemplate, context.getGlobalSubstitutionServiceTemplate(), null));
+ }
+
+ @Test
+ public void createSubstitutionStNoPorts() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out";
+
+ loadInputAndOutputData();
+
+ UnifiedCompositionData unifiedCompositionData = new UnifiedCompositionData();
+ String computeNodeTemplateId = "FSB1_template";
+ unifiedCompositionData.setComputeTemplateConsolidationData(
+ TestUtils.createComputeTemplateConsolidationData(computeNodeTemplateId, null, null));
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ substitutionServiceTemplate
+ .ifPresent(
+ subServiceTemplate -> checkSTResults(expectedOutserviceTemplates,
+ subServiceTemplate, context.getGlobalSubstitutionServiceTemplate(), null));
+ }
+
+
+ @Test
+ public void createSubstitutionStWithIndex() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out";
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData =
+ createCompositionData("FSB1_template", portTypeToIdList);
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, 2);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ substitutionServiceTemplate
+ .ifPresent(
+ subServiceTemplate -> checkSTResults(expectedOutserviceTemplates,
+ subServiceTemplate, context.getGlobalSubstitutionServiceTemplate(), null));
+ }
+
+
+ @Test
+ public void createAbstractSubstituteOneComputeMultiplePortsDifferentTypesTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out";
+
+ loadInputAndOutputData();
+
+ UnifiedCompositionData data = createComputeUnifiedCompositionData("FSB1_template");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+ addPortDataToCompositionData(portTypeToIdList, data);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new LinkedList<>();
+ unifiedCompositionDataList.add(data);
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ if (substitutionServiceTemplate.isPresent()) {
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate(
+ inputServiceTemplates.get(mainSTName), substitutionServiceTemplate.get(),
+ unifiedCompositionDataList,
+ context, null);
+ validateAbstractSubstitute();
+ }
+ }
+
+
+ @Test
+ public void createAbstractSubstituteOneComputeMultiplePortsSameTypesTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out";
+
+ loadInputAndOutputData();
+
+ UnifiedCompositionData data = createComputeUnifiedCompositionData("FSB1_template");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+ addPortDataToCompositionData(portTypeToIdList, data);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new LinkedList<>();
+ unifiedCompositionDataList.add(data);
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ if (substitutionServiceTemplate.isPresent()) {
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate(
+ inputServiceTemplates.get(mainSTName), substitutionServiceTemplate.get(),
+ unifiedCompositionDataList,
+ context, null);
+ validateAbstractSubstitute();
+ }
+ }
+
+
+ @Test
+ public void createAbstractSubstituteTwoComputesMultiplePorts() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out";
+
+ loadInputAndOutputData();
+ List<UnifiedCompositionData> unifiedCompositionDataList =
+ createAbstractSubstituteCompositionDataComputeAndPort();
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ if (substitutionServiceTemplate.isPresent()) {
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+ validateAbstractSubstitute();
+ }
+ }
+
+
+ @Test
+ public void updNodesConnectedOutWithConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out";
+
+ loadInputAndOutputData();
+ List<UnifiedCompositionData> unifiedCompositionDataList =
+ createAbstractSubstituteCompositionDataComputeAndPort();
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ if (substitutionServiceTemplate.isPresent()) {
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+ }
+
+ private void validateAbstractSubstitute() {
+ YamlUtil yamlUtil = new YamlUtil();
+ assertEquals(yamlUtil.objectToYaml(expectedOutserviceTemplates.get(mainSTName)), yamlUtil
+ .objectToYaml(inputServiceTemplates.get(mainSTName)));
+ }
+
+
+ @Test
+ public void updNodesConnectedOutNoConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out";
+
+ loadInputAndOutputData();
+
+ UnifiedCompositionData data = createComputeUnifiedCompositionData("FSB1_template");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+ addPortDataToCompositionData(portTypeToIdList, data);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new LinkedList<>();
+ unifiedCompositionDataList.add(data);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ if (substitutionServiceTemplate.isPresent()) {
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+ }
+
+
+ @Test
+ public void updNodesConnectedInNoConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/out";
+
+ loadInputAndOutputData();
+
+ UnifiedCompositionData data = createComputeUnifiedCompositionData("QRouter");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("cdr_network_port", "cdr_network_port"));
+ portTypeToIdList
+ .add(new ImmutablePair<>("oam_private_net_network_port", "oam_private_net_network_port"));
+ addPortDataToCompositionData(portTypeToIdList, data);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new LinkedList<>();
+ unifiedCompositionDataList.add(data);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+
+
+ @Test
+ public void updNodesConnectedInWithConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out";
+
+ loadInputAndOutputData();
+
+ List<UnifiedCompositionData> unifiedCompositionDataList =
+ createAbstractSubstituteCompositionDataComputeAndPort();
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+
+
+ @Test
+ public void updVolumesNoConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out";
+
+ loadInputAndOutputData();
+
+ UnifiedCompositionData data = createComputeUnifiedCompositionData("FSB1_template");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+ addPortDataToCompositionData(portTypeToIdList, data);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new LinkedList<>();
+ unifiedCompositionDataList.add(data);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+
+
+ @Test
+ public void updVolumesWithConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out";
+
+ loadInputAndOutputData();
+ List<UnifiedCompositionData> unifiedCompositionDataList =
+ createAbstractSubstituteCompositionDataComputeAndPort();
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+
+
+ @Test
+ public void updGroupsNoConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/out";
+
+ loadInputAndOutputData();
+
+ UnifiedCompositionData data = createComputeUnifiedCompositionData("server_smp1");
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("port", "port1"));
+ portTypeToIdList.add(new ImmutablePair<>("port", "port2"));
+ addPortDataToCompositionData(portTypeToIdList, data);
+
+ //Add groups
+ List<String> computeGroupIdList =
+ TestUtils.getGroupsForNode(inputServiceTemplates.get(mainSTName), "server_smp1");
+ data.getComputeTemplateConsolidationData().setGroupIds(computeGroupIdList);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new LinkedList<>();
+ unifiedCompositionDataList.add(data);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+
+
+ @Test
+ public void updGroupsWithConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out";
+
+ loadInputAndOutputData();
+
+ List<UnifiedCompositionData> unifiedCompositionDataList =
+ createAbstractSubstituteCompositionDataComputeAndPort();
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList
+ , context, null);
+
+ String nodeTemplateId = unifiedCompositionService.createAbstractSubstituteNodeTemplate
+ (inputServiceTemplates.get(mainSTName),
+ substitutionServiceTemplate.get(), unifiedCompositionDataList, context, null);
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+ validateAbstractSubstitute();
+ }
+
+ @Test
+ public void updOutParamGetAttrInNoConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/out";
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData =
+ createCompositionData("FSB1_template", portTypeToIdList);
+ addOutputGetAttrInForComputeNoConsolidation(unifiedCompositionData);
+ addOutputGetAttrInForPortNoConsolidation(unifiedCompositionData);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+ Mockito.doNothing().when(unifiedCompositionService).updNodesConnectedOutConnectivity
+ (inputServiceTemplates.get(mainSTName), unifiedCompositionDataList, context);
+ Mockito.doReturn("FSB1").when(context).getUnifiedAbstractNodeTemplateId(anyObject(),
+ anyString());
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void updOutParamGetAttrInWithConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/out";
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ List<Pair<String, String>> portTypeToIdList1 = new ArrayList<>();
+ portTypeToIdList1.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList1.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData1 =
+ createCompositionData("FSB1_template", portTypeToIdList1);
+ addOutputGetAttrInForCompute1WithConsolidation(unifiedCompositionData1);
+ addOutputGetAttrInForPortWithConsolidation1(unifiedCompositionData1);
+ unifiedCompositionDataList.add(unifiedCompositionData1);
+
+ List<Pair<String, String>> portTypeToIdList2 = new ArrayList<>();
+ portTypeToIdList2.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+ portTypeToIdList2.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal1"));
+
+ UnifiedCompositionData unifiedCompositionData2 =
+ createCompositionData("FSB2_template", portTypeToIdList2);
+ unifiedCompositionDataList.add(unifiedCompositionData2);
+ addOutputGetAttrInForCompute2WithConsolidation(unifiedCompositionData2);
+ addOutputGetAttrInForPortWithConsolidation2(unifiedCompositionData2);
+
+ Mockito.doNothing().when(unifiedCompositionService).updNodesConnectedOutConnectivity
+ (inputServiceTemplates.get(mainSTName), unifiedCompositionDataList, context);
+ Mockito.doReturn("FSB1").when(context).getUnifiedAbstractNodeTemplateId(anyObject(),
+ anyString());
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void updNodeGetAttrInNoConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/out";
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData =
+ createCompositionData("FSB1_template", portTypeToIdList);
+ addGetAttrForCompute(unifiedCompositionData);
+ addGetAttrForPort(unifiedCompositionData);
+ addGetAttrForPortInnerUC(unifiedCompositionData);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+ Mockito.doNothing().when(unifiedCompositionService).updNodesConnectedOutConnectivity
+ (inputServiceTemplates.get(mainSTName), unifiedCompositionDataList, context);
+ Mockito.doReturn("FSB1").when(context).getUnifiedAbstractNodeTemplateId(anyObject(),
+ anyString());
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void updNodeGetAttrInWithConsolidationTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/out";
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ List<Pair<String, String>> portTypeToIdList1 = new ArrayList<>();
+ portTypeToIdList1.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList1.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData1 =
+ createCompositionData("FSB1_template", portTypeToIdList1);
+ addGetAttrForCompute(unifiedCompositionData1);
+ addGetAttrForPort(unifiedCompositionData1);
+ unifiedCompositionDataList.add(unifiedCompositionData1);
+
+ List<Pair<String, String>> portTypeToIdList2 = new ArrayList<>();
+ portTypeToIdList2.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+ portTypeToIdList2.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal1"));
+
+ UnifiedCompositionData unifiedCompositionData2 =
+ createCompositionData("FSB2_template", portTypeToIdList2);
+ addGetAttrForCompute2(unifiedCompositionData2);
+ addGetAttrForPort2(unifiedCompositionData2);
+ unifiedCompositionDataList.add(unifiedCompositionData2);
+
+
+ Mockito.doNothing().when(unifiedCompositionService).updNodesConnectedOutConnectivity
+ (inputServiceTemplates.get(mainSTName), unifiedCompositionDataList, context);
+ Mockito.doReturn("FSB1").when(context).getUnifiedAbstractNodeTemplateId(anyObject(),
+ anyString());
+
+ unifiedCompositionService
+ .updateCompositionConnectivity(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+
+ @Test
+ public void updNodesGetAttrFromInnerNodesTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out";
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData =
+ createCompositionData("FSB1_template", portTypeToIdList);
+ addGetAttrForCompute(unifiedCompositionData);
+ addGetAttrForPort(unifiedCompositionData);
+ addGetAttrForPortInnerUC(unifiedCompositionData);
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+
+ Mockito.doReturn("FSB1").when(context).getUnifiedAbstractNodeTemplateId(anyObject(),
+ anyString());
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ substitutionServiceTemplate
+ .ifPresent(
+ subServiceTemplate -> checkSTResults(expectedOutserviceTemplates,
+ subServiceTemplate, context.getGlobalSubstitutionServiceTemplate(), null));
+ }
+
+
+ @Test
+ public void updNodesGetAttrFromConsolidationNodesTest() throws Exception {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out";
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ List<Pair<String, String>> portTypeToIdList1 = new ArrayList<>();
+ portTypeToIdList1.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList1.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData1 =
+ createCompositionData("FSB1_template", portTypeToIdList1);
+ addGetAttrForCompute(unifiedCompositionData1);
+ addGetAttrForPort(unifiedCompositionData1);
+ unifiedCompositionDataList.add(unifiedCompositionData1);
+
+ List<Pair<String, String>> portTypeToIdList2 = new ArrayList<>();
+ portTypeToIdList2.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+ portTypeToIdList2.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal1"));
+
+ UnifiedCompositionData unifiedCompositionData2 =
+ createCompositionData("FSB2_template", portTypeToIdList2);
+ addGetAttrForCompute2(unifiedCompositionData2);
+ addGetAttrForPort2(unifiedCompositionData2);
+ unifiedCompositionDataList.add(unifiedCompositionData2);
+
+ Optional<ServiceTemplate> substitutionServiceTemplate = unifiedCompositionService
+ .createUnifiedSubstitutionServiceTemplate(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList,
+ context, null);
+ assertEquals(true, substitutionServiceTemplate.isPresent());
+ substitutionServiceTemplate
+ .ifPresent(
+ subServiceTemplate -> checkSTResults(expectedOutserviceTemplates,
+ subServiceTemplate, context.getGlobalSubstitutionServiceTemplate(), null));
+ }
+
+ @Test
+ public void cleanMainServiceTemplateTestNoConsolidation() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/out";
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB_OAM", "FSB1_OAM"));
+
+ loadInputAndOutputData();
+ UnifiedCompositionData unifiedCompositionData =
+ createCompositionData("FSB1_template", portTypeToIdList);
+ addGetAttrForCompute(unifiedCompositionData);
+ addGetAttrForPort(unifiedCompositionData);
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ unifiedCompositionDataList.add(unifiedCompositionData);
+
+ NodeTemplate abstractNodeTemplate = getMockNode(
+ "/mock/services/heattotosca/unifiedComposition/cleanMainSt/mockAbstractNodeTemplate.yaml");
+ inputServiceTemplates.get(mainSTName).getTopology_template().getNode_templates()
+ .put("FSB1", abstractNodeTemplate);
+
+ Mockito.doReturn("FSB1").when(context).getUnifiedAbstractNodeTemplateId(anyObject(),
+ anyString());
+
+ unifiedCompositionService.
+ cleanUnifiedCompositionEntities(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void cleanMainServiceTemplateTestWithConsolidation() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/out";
+
+ loadInputAndOutputData();
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ List<Pair<String, String>> portTypeToIdList1 = new ArrayList<>();
+ portTypeToIdList1.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList1.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+
+ UnifiedCompositionData unifiedCompositionData1 =
+ createCompositionData("FSB1_template", portTypeToIdList1);
+ addOutputGetAttrInForCompute1WithConsolidation(unifiedCompositionData1);
+ addOutputGetAttrInForPortWithConsolidation1(unifiedCompositionData1);
+ unifiedCompositionDataList.add(unifiedCompositionData1);
+
+ List<Pair<String, String>> portTypeToIdList2 = new ArrayList<>();
+ portTypeToIdList2.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+ portTypeToIdList2.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal1"));
+
+ UnifiedCompositionData unifiedCompositionData2 =
+ createCompositionData("FSB2_template", portTypeToIdList2);
+ addOutputGetAttrInForCompute2WithConsolidation(unifiedCompositionData2);
+ addOutputGetAttrInForPortWithConsolidation2(unifiedCompositionData2);
+ unifiedCompositionDataList.add(unifiedCompositionData2);
+
+ NodeTemplate abstractNodeTemplate = getMockNode(
+ "/mock/services/heattotosca/unifiedComposition/cleanMainSt/mockAbstractNodeTemplate.yaml");
+ inputServiceTemplates.get(mainSTName).getTopology_template().getNode_templates()
+ .put("FSB1", abstractNodeTemplate);
+
+ Mockito.doReturn("FSB1").when(context).getUnifiedAbstractNodeTemplateId(anyObject(),
+ anyString());
+
+ unifiedCompositionService.
+ cleanUnifiedCompositionEntities(inputServiceTemplates.get(mainSTName),
+ unifiedCompositionDataList, context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void updateNewAbstractNodeTemplateNoConsolidation() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/out";
+
+ loadInputAndOutputData();
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+
+ NodeTemplate cleanedComputeNodeTemplate =
+ getMockNode(
+ "/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/mockComputeNodeTemplate.yaml");
+
+
+ context.setConsolidationData(
+ createConsolidationData(Arrays.asList("FSB1_template"), portTypeToIdList));
+ context.addCleanedNodeTemplate(mainSTName, "FSB1_template",
+ UnifiedCompositionEntity.Compute, cleanedComputeNodeTemplate);
+ context.addCleanedNodeTemplate(mainSTName, "FSB1_Internal1",
+ UnifiedCompositionEntity.Port, cleanedComputeNodeTemplate);
+ context.addCleanedNodeTemplate(mainSTName, "FSB1_Internal2",
+ UnifiedCompositionEntity.Port, cleanedComputeNodeTemplate);
+
+ setUnifiedCompositionData(Arrays.asList("FSB1_template", "FSB1_Internal1", "FSB1_Internal2"));
+
+ unifiedCompositionService
+ .updateUnifiedAbstractNodesConnectivity(inputServiceTemplates.get(mainSTName), context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void updateNewAbstractNodeTemplateWithConsolidation() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/out";
+
+ loadInputAndOutputData();
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal1"));
+
+ NodeTemplate cleanedComputeNodeTemplate =
+ getMockNode(
+ "/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/mockComputeNodeTemplate.yaml");
+
+
+ context.setConsolidationData(
+ createConsolidationData(Arrays.asList("FSB1_template_1", "FSB1_template_2"),
+ portTypeToIdList));
+ context.addCleanedNodeTemplate(mainSTName, "FSB1_template_1",
+ UnifiedCompositionEntity.Compute, cleanedComputeNodeTemplate);
+ context.addCleanedNodeTemplate(mainSTName, "FSB1_template_2",
+ UnifiedCompositionEntity.Compute, cleanedComputeNodeTemplate);
+ context.addCleanedNodeTemplate(mainSTName, "FSB1_Internal1",
+ UnifiedCompositionEntity.Port, cleanedComputeNodeTemplate);
+ context.addCleanedNodeTemplate(mainSTName, "FSB2_Internal1",
+ UnifiedCompositionEntity.Port, cleanedComputeNodeTemplate);
+
+ setUnifiedCompositionData(
+ Arrays.asList("FSB1_template_1", "FSB1_template_2", "FSB1_Internal1", "FSB2_Internal1"));
+
+ unifiedCompositionService
+ .updateUnifiedAbstractNodesConnectivity(inputServiceTemplates.get(mainSTName), context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void testThreeNovaOfSameTypePreConditionFalse() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out";
+
+ loadInputAndOutputData();
+
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ List<Pair<String, String>> portTypeToIdList1 = new ArrayList<>();
+ portTypeToIdList1.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal1"));
+ portTypeToIdList1.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+
+ UnifiedCompositionData unifiedCompositionData1 =
+ createCompositionData("FSB1_template", portTypeToIdList1);
+ addOutputGetAttrInForCompute1WithConsolidation(unifiedCompositionData1);
+ addOutputGetAttrInForPortWithConsolidation1(unifiedCompositionData1);
+ unifiedCompositionDataList.add(unifiedCompositionData1);
+
+ UnifiedCompositionData unifiedCompositionData2 =
+ createCompositionData("FSB2_template", portTypeToIdList1);
+ addOutputGetAttrInForCompute1WithConsolidation(unifiedCompositionData2);
+ addOutputGetAttrInForPortWithConsolidation1(unifiedCompositionData2);
+ unifiedCompositionDataList.add(unifiedCompositionData2);
+
+ portTypeToIdList1.remove(1);
+ UnifiedCompositionData unifiedCompositionData3 =
+ createCompositionData("FSB3_template", portTypeToIdList1);
+ addOutputGetAttrInForCompute1WithConsolidation(unifiedCompositionData3);
+ addOutputGetAttrInForPortWithConsolidation1(unifiedCompositionData3);
+ unifiedCompositionDataList.add(unifiedCompositionData3);
+
+ UnifiedCompositionSingleSubstitution unifiedCompositionSingleSubstitution =
+ new UnifiedCompositionSingleSubstitution();
+ unifiedCompositionSingleSubstitution
+ .createUnifiedComposition(inputServiceTemplates.get(mainSTName), null,
+ unifiedCompositionDataList, context);
+
+ checkSTResults(expectedOutserviceTemplates, null, null, inputServiceTemplates.get(mainSTName));
+ }
+
+ @Test
+ public void testUnifiedNestedCompositionOneComputeInNested() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out";
+
+ loadInputAndOutputData();
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ String nestedFileName = "nested-pcm_v0.1ServiceTemplate.yaml";
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"),
+ consolidationData);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedFileName,
+ "org.openecomp.resource.vfc.nodes.heat.pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(nestedFileName,
+ "org.openecomp.resource.vfc.nodes.heat.pcm_server", "server_pcm", consolidationData);
+
+ context.setConsolidationData(consolidationData);
+ context.getTranslatedServiceTemplates()
+ .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ inputServiceTemplates.get(globalSubstitutionST));
+ context.getTranslatedServiceTemplates()
+ .put(nestedFileName, inputServiceTemplates.get(nestedFileName));
+ context.getTranslatedServiceTemplates()
+ .put(mainSTName, inputServiceTemplates.get(mainSTName));
+
+ List<UnifiedCompositionData> unifiedCompositionList = createUnifiedCompositionListOnlyNested("server_pcm_001");
+ unifiedCompositionService.handleUnifiedNestedDefinition(inputServiceTemplates.get(mainSTName),
+ inputServiceTemplates.get(nestedFileName), unifiedCompositionList, context);
+
+ checkSTResults(expectedOutserviceTemplates, nestedFileName,
+ context.getTranslatedServiceTemplates().get(nestedFileName),
+ context.getTranslatedServiceTemplates()
+ .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME), null);
+ }
+
+ @Test
+ public void testTwoNestedWithOneCompute() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out";
+
+ loadInputAndOutputData();
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ String nestedFileName1 = "nested-pcm_v0.1ServiceTemplate.yaml";
+ String nestedFileName2 = "nested-oam_v0.1ServiceTemplate.yaml";
+
+ TestUtils.updateNestedConsolidationData(mainSTName,
+ Arrays.asList("server_pcm_001", "server_oam_001"), consolidationData);
+
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedFileName1,
+ "org.openecomp.resource.vfc.nodes.heat.pcm_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(nestedFileName1,
+ "org.openecomp.resource.vfc.nodes.heat.pcm_server", "server_pcm", consolidationData);
+ TestUtils.initComputeNodeTypeInConsolidationData(nestedFileName2,
+ "org.openecomp.resource.vfc.nodes.heat.oam_server", consolidationData);
+ TestUtils.initComputeNodeTemplateIdInConsolidationData(nestedFileName2,
+ "org.openecomp.resource.vfc.nodes.heat.oam_server", "server_oam", consolidationData);
+
+ context.setConsolidationData(consolidationData);
+ context.getTranslatedServiceTemplates()
+ .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ inputServiceTemplates.get(globalSubstitutionST));
+ context.getTranslatedServiceTemplates()
+ .put(nestedFileName1, inputServiceTemplates.get(nestedFileName1));
+ context.getTranslatedServiceTemplates()
+ .put(nestedFileName2, inputServiceTemplates.get(nestedFileName2));
+ context.getTranslatedServiceTemplates()
+ .put(mainSTName, inputServiceTemplates.get(mainSTName));
+
+ List<UnifiedCompositionData> unifiedCompositionList =
+ createUnifiedCompositionListOnlyNested("server_pcm_001");
+ unifiedCompositionService.handleUnifiedNestedDefinition(inputServiceTemplates.get(mainSTName),
+ inputServiceTemplates.get(nestedFileName1), unifiedCompositionList, context);
+ unifiedCompositionList = createUnifiedCompositionListOnlyNested("server_oam_001");
+ unifiedCompositionService.handleUnifiedNestedDefinition(inputServiceTemplates.get(mainSTName),
+ inputServiceTemplates.get(nestedFileName2), unifiedCompositionList, context);
+
+ checkSTResults(expectedOutserviceTemplates, nestedFileName1,
+ context.getTranslatedServiceTemplates().get(nestedFileName1),
+ context.getTranslatedServiceTemplates()
+ .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME), null);
+ checkSTResults(expectedOutserviceTemplates, nestedFileName2,
+ context.getTranslatedServiceTemplates().get(nestedFileName2),
+ null, null);
+ }
+
+ @Test
+ public void testNestedCompositionNodesConnectedIn() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out";
+
+ loadInputAndOutputData();
+ ConsolidationData consolidationData = new ConsolidationData();
+ String nestedFileName = "nested-pcm_v0.1ServiceTemplate.yaml";
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"),
+ consolidationData);
+ context.getTranslatedServiceTemplates()
+ .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ inputServiceTemplates.get(globalSubstitutionST));
+ context.getTranslatedServiceTemplates()
+ .put(nestedFileName, inputServiceTemplates.get(nestedFileName));
+ context.getTranslatedServiceTemplates()
+ .put(mainSTName, inputServiceTemplates.get(mainSTName));
+ context.addUnifiedNestedNodeTemplateId(mainSTName, "server_pcm_001", "abstract_pcm_server_0");
+
+ Map<String, List<RequirementAssignmentData>> nodeConnectedInList =
+ TestUtils.getNodeConnectedInList("server_pcm_001", inputServiceTemplates.get(mainSTName),
+ "dependency");
+ List<UnifiedCompositionData> unifiedCompositionList =
+ createUnifiedCompositionListOnlyNested("server_pcm_001");
+ unifiedCompositionList.get(0).getNestedTemplateConsolidationData()
+ .setNodesConnectedIn(nodeConnectedInList);
+
+ unifiedCompositionService.updNestedCompositionNodesConnectedInConnectivity
+ (inputServiceTemplates.get(mainSTName), unifiedCompositionList, context);
+ checkSTResults(expectedOutserviceTemplates, nestedFileName,
+ context.getTranslatedServiceTemplates().get(nestedFileName),
+ context.getTranslatedServiceTemplates()
+ .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME), context
+ .getTranslatedServiceTemplates().get(mainSTName));
+ }
+
+
+ @Test
+ public void testNestedCompositionNodesGetAttrIn() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out";
+
+ loadInputAndOutputData();
+ ConsolidationData consolidationData = new ConsolidationData();
+ String nestedFileName = "nested-pcm_v0.1ServiceTemplate.yaml";
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"),
+ consolidationData);
+ context.getTranslatedServiceTemplates()
+ .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ inputServiceTemplates.get(globalSubstitutionST));
+ context.getTranslatedServiceTemplates()
+ .put(nestedFileName, inputServiceTemplates.get(nestedFileName));
+ context.getTranslatedServiceTemplates()
+ .put(mainSTName, inputServiceTemplates.get(mainSTName));
+ context.addUnifiedNestedNodeTemplateId(mainSTName, "server_pcm_001", "abstract_pcm_server_0");
+
+ Map<String, List<RequirementAssignmentData>> nodeConnectedInList =
+ TestUtils.getNodeConnectedInList("server_pcm_001", inputServiceTemplates.get(mainSTName),
+ "dependency");
+ List<UnifiedCompositionData> unifiedCompositionList =
+ createUnifiedCompositionListOnlyNested("server_pcm_001");
+ addGetAttInUnifiedCompositionData(unifiedCompositionList.get(0)
+ .getNestedTemplateConsolidationData(), "tenant_id", "oam_net_gw", "packet_mirror_network");
+ addGetAttInUnifiedCompositionData(unifiedCompositionList.get(0)
+ .getNestedTemplateConsolidationData(), "user_data_format", "oam_net_gw",
+ "server_compute_get_attr_test");
+ addGetAttInUnifiedCompositionData(unifiedCompositionList.get(0)
+ .getNestedTemplateConsolidationData(), "metadata", "server_pcm_id",
+ "server_compute_get_attr_test");
+ unifiedCompositionService.updNestedCompositionNodesGetAttrInConnectivity
+ (inputServiceTemplates.get(mainSTName), unifiedCompositionList, context);
+ checkSTResults(expectedOutserviceTemplates, nestedFileName,
+ context.getTranslatedServiceTemplates().get(nestedFileName),
+ context.getTranslatedServiceTemplates()
+ .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME), context
+ .getTranslatedServiceTemplates().get(mainSTName));
+ }
+
+ @Test
+ public void testNestedCompositionOutputParamGetAttrIn() throws IOException {
+ inputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in";
+ outputServiceTemplatesPath =
+ "/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out";
+
+ loadInputAndOutputData();
+ ConsolidationData consolidationData = new ConsolidationData();
+ String nestedFileName = "nested-pcm_v0.1ServiceTemplate.yaml";
+ TestUtils.updateNestedConsolidationData(mainSTName, Arrays.asList("server_pcm_001"),
+ consolidationData);
+ context.getTranslatedServiceTemplates()
+ .put(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME,
+ inputServiceTemplates.get(globalSubstitutionST));
+ context.getTranslatedServiceTemplates()
+ .put(nestedFileName, inputServiceTemplates.get(nestedFileName));
+ context.getTranslatedServiceTemplates()
+ .put(mainSTName, inputServiceTemplates.get(mainSTName));
+ context.addUnifiedNestedNodeTemplateId(mainSTName, "server_pcm_001", "abstract_pcm_server_0");
+
+ Map<String, List<RequirementAssignmentData>> nodeConnectedInList =
+ TestUtils.getNodeConnectedInList("server_pcm_001", inputServiceTemplates.get(mainSTName),
+ "dependency");
+ List<UnifiedCompositionData> unifiedCompositionList =
+ createUnifiedCompositionListOnlyNested("server_pcm_001");
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionList.get(0)
+ .getNestedTemplateConsolidationData(), "output_attr_1", "accessIPv4");
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionList.get(0)
+ .getNestedTemplateConsolidationData(), "output_attr_2", "accessIPv6");
+ unifiedCompositionService.updNestedCompositionOutputParamGetAttrInConnectivity
+ (inputServiceTemplates.get(mainSTName), unifiedCompositionList, context);
+ checkSTResults(expectedOutserviceTemplates, nestedFileName,
+ context.getTranslatedServiceTemplates().get(nestedFileName),
+ context.getTranslatedServiceTemplates()
+ .get(Constants.GLOBAL_SUBSTITUTION_TYPES_TEMPLATE_NAME), context
+ .getTranslatedServiceTemplates().get(mainSTName));
+ }
+
+ private List<UnifiedCompositionData> createUnifiedCompositionListOnlyNested(
+ String nestedNodeTemplateId) {
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ new NestedTemplateConsolidationData();
+ nestedTemplateConsolidationData.setNodeTemplateId(nestedNodeTemplateId);
+ UnifiedCompositionData unifiedCompositionData = new UnifiedCompositionData();
+ unifiedCompositionData.setNestedTemplateConsolidationData(nestedTemplateConsolidationData);
+ unifiedCompositionDataList.add(unifiedCompositionData);
+
+
+// for (NestedTemplateConsolidationData nested : nestedConsolidationDatas) {
+// UnifiedCompositionData unifiedCompositionData = new UnifiedCompositionData();
+// unifiedCompositionData.setNestedTemplateConsolidationData(nested);
+// unifiedCompositionDataList.add(unifiedCompositionData);
+// }
+
+ return unifiedCompositionDataList;
+ }
+
+ private void setUnifiedCompositionData(List<String> nodeTemplateIds) {
+ UnifiedSubstitutionData unifiedSubstitutionData =
+ context.getUnifiedSubstitutionData().get(mainSTName) == null ? new UnifiedSubstitutionData()
+ : context.getUnifiedSubstitutionData().get(mainSTName);
+ Map<String, String> substitutionAbstractNodeIds = new HashMap<>();
+ for (String id : nodeTemplateIds) {
+ substitutionAbstractNodeIds.put(id, "FSB2");
+ }
+
+ substitutionAbstractNodeIds.put("", "FSB1");
+
+ unifiedSubstitutionData.setNodesRelatedAbstractNode(substitutionAbstractNodeIds);
+ }
+
+ private void checkSTResults(
+ Map<String, ServiceTemplate> expectedOutserviceTemplates,
+ ServiceTemplate substitutionServiceTemplate,
+ ServiceTemplate gloablSubstitutionServiceTemplate, ServiceTemplate mainServiceTemplate) {
+ YamlUtil yamlUtil = new YamlUtil();
+ if (Objects.nonNull(substitutionServiceTemplate)) {
+ assertEquals("difference substitution service template: ",
+ yamlUtil.objectToYaml(expectedOutserviceTemplates.get(substitutionST)),
+ yamlUtil.objectToYaml(substitutionServiceTemplate));
+ }
+ if (Objects.nonNull(gloablSubstitutionServiceTemplate)) {
+ assertEquals("difference global substitution service template: ",
+ yamlUtil.objectToYaml(expectedOutserviceTemplates.get(globalSubstitutionST)),
+ yamlUtil.objectToYaml(gloablSubstitutionServiceTemplate));
+ }
+ if (Objects.nonNull(mainServiceTemplate)) {
+ assertEquals("difference main service template: ",
+ yamlUtil.objectToYaml(expectedOutserviceTemplates.get(mainSTName)),
+ yamlUtil.objectToYaml(mainServiceTemplate));
+ }
+ }
+
+ private void checkSTResults(
+ Map<String, ServiceTemplate> expectedOutserviceTemplates,
+ String nestedSTFileName, ServiceTemplate nestedServiceTemplate,
+ ServiceTemplate gloablSubstitutionServiceTemplate, ServiceTemplate mainServiceTemplate) {
+ YamlUtil yamlUtil = new YamlUtil();
+
+ if (Objects.nonNull(nestedServiceTemplate)) {
+ assertEquals("difference nested service template: ",
+ yamlUtil.objectToYaml(expectedOutserviceTemplates.get(nestedSTFileName)),
+ yamlUtil.objectToYaml(nestedServiceTemplate));
+ }
+ checkSTResults(expectedOutserviceTemplates, null, gloablSubstitutionServiceTemplate,
+ mainServiceTemplate);
+ }
+
+
+ private void loadInputAndOutputData() throws IOException {
+ inputServiceTemplates = new HashMap<>();
+ TestUtils.loadServiceTemplates(inputServiceTemplatesPath, new ToscaExtensionYamlUtil(),
+ inputServiceTemplates);
+ expectedOutserviceTemplates = new HashMap<>();
+ TestUtils.loadServiceTemplates(outputServiceTemplatesPath, new ToscaExtensionYamlUtil(),
+ expectedOutserviceTemplates);
+ }
+
+
+ private void addGetAttInUnifiedCompositionData(EntityConsolidationData entityConsolidationData,
+ String propertyName, String attributeName,
+ String nodeTemplateId) {
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData();
+ getAttrFuncData.setAttributeName(attributeName);
+ getAttrFuncData.setFieldName(propertyName);
+ entityConsolidationData.addNodesGetAttrIn(nodeTemplateId, getAttrFuncData);
+ }
+
+ private void addOutputGetAttInUnifiedCompositionData(
+ EntityConsolidationData entityConsolidationData,
+ String outParamName, String attributeName) {
+ GetAttrFuncData getAttrFuncData = new GetAttrFuncData();
+ getAttrFuncData.setAttributeName(attributeName);
+ getAttrFuncData.setFieldName(outParamName);
+ entityConsolidationData.addOutputParamGetAttrIn(getAttrFuncData);
+ }
+
+ private ConsolidationData createConsolidationData(List<String> computeNodeIds,
+ List<Pair<String, String>> portTypeToIdList) {
+
+ ConsolidationData consolidationData = new ConsolidationData();
+ String computeNodeTypeName = "org.openecomp.resource.vfc.nodes.heat.FSB2";
+
+ TestUtils
+ .initComputeNodeTypeInConsolidationData(mainSTName, computeNodeTypeName, consolidationData);
+ TestUtils.initPortConsolidationData(mainSTName, consolidationData);
+
+ for (String computeId : computeNodeIds) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ new ComputeTemplateConsolidationData();
+ TestUtils.updatePortsInComputeTemplateConsolidationData(portTypeToIdList,
+ computeTemplateConsolidationData);
+ consolidationData.getComputeConsolidationData().getFileComputeConsolidationData(mainSTName)
+ .getTypeComputeConsolidationData(computeNodeTypeName)
+ .setComputeTemplateConsolidationData(computeId,
+ computeTemplateConsolidationData);
+ }
+
+ for (Pair<String, String> portTypeToId : portTypeToIdList) {
+ consolidationData.getPortConsolidationData().getFilePortConsolidationData(mainSTName)
+ .setPortTemplateConsolidationData(portTypeToId.getRight(),
+ new PortTemplateConsolidationData());
+ }
+
+ return consolidationData;
+ }
+
+ private UnifiedCompositionData createCompositionData(String computeNodeTemplateId,
+ List<Pair<String, String>> portTypeToIdList) {
+
+ UnifiedCompositionData unifiedCompositionData = new UnifiedCompositionData();
+ NodeTemplate computeNodeTemplate =
+ DataModelUtil.getNodeTemplate(inputServiceTemplates.get(mainSTName), computeNodeTemplateId);
+ Optional<List<RequirementAssignmentData>> requirementAssignmentDataList =
+ TestUtils.getRequirementAssignmentDataList(computeNodeTemplate, "local_storage");
+ List<RequirementAssignmentData> requirementAssignmentList =
+ (requirementAssignmentDataList.isPresent()) ? requirementAssignmentDataList.get() : null;
+ Map<String, List<RequirementAssignmentData>> volume = getVolume(requirementAssignmentList);
+
+ unifiedCompositionData.setComputeTemplateConsolidationData(
+ TestUtils.createComputeTemplateConsolidationData(computeNodeTemplateId, portTypeToIdList,
+ volume));
+ for (Pair<String, String> port : portTypeToIdList) {
+ NodeTemplate portNodeTemplate =
+ DataModelUtil.getNodeTemplate(inputServiceTemplates.get(mainSTName), port.getRight());
+
+ Map<String, List<RequirementAssignmentData>> nodeConnectedOut =
+ TestUtils.getNodeConnectedOutList(portNodeTemplate, "link");
+ PortTemplateConsolidationData portTemplateConsolidationData =
+ TestUtils.createPortTemplateConsolidationData(port.getRight());
+ portTemplateConsolidationData.setNodesConnectedOut(nodeConnectedOut);
+ unifiedCompositionData.addPortTemplateConsolidationData(portTemplateConsolidationData);
+ }
+ return unifiedCompositionData;
+ }
+
+ private List<UnifiedCompositionData> createAbstractSubstituteCompositionDataComputeAndPort() {
+ List<UnifiedCompositionData> unifiedCompositionDataList = new ArrayList<>();
+ UnifiedCompositionData data1 = createComputeUnifiedCompositionData("FSB1_template");
+ UnifiedCompositionData data2 = createComputeUnifiedCompositionData("FSB2_template");
+
+ List<Pair<String, String>> portTypeToIdList = new ArrayList<>();
+ ImmutablePair<String, String> portTypePair1 = new ImmutablePair<>("FSB1_Internal",
+ "FSB1_Internal1");
+ ImmutablePair<String, String> portTypePair2 = new ImmutablePair<>("FSB2_Internal",
+ "FSB2_Internal1");
+ portTypeToIdList.add(portTypePair1);
+ portTypeToIdList.add(portTypePair2);
+ addPortDataToCompositionData(portTypeToIdList, data1);
+ portTypeToIdList.remove(portTypePair1);
+ portTypeToIdList.remove(portTypePair2);
+ portTypeToIdList.add(new ImmutablePair<>("FSB1_Internal", "FSB1_Internal2"));
+ portTypeToIdList.add(new ImmutablePair<>("FSB2_Internal", "FSB2_Internal2"));
+ addPortDataToCompositionData(portTypeToIdList, data2);
+
+ unifiedCompositionDataList.add(data1);
+ unifiedCompositionDataList.add(data2);
+ return unifiedCompositionDataList;
+ }
+
+
+ private UnifiedCompositionData createComputeUnifiedCompositionData(String computeNodeTemplateId) {
+ NodeTemplate computeNodeTemplate =
+ DataModelUtil.getNodeTemplate(inputServiceTemplates.get(mainSTName), computeNodeTemplateId);
+ Optional<List<RequirementAssignmentData>> requirementAssignmentDataList =
+ TestUtils.getRequirementAssignmentDataList(computeNodeTemplate, "local_storage");
+ Map<String, List<RequirementAssignmentData>> volume = null;
+ if (requirementAssignmentDataList.isPresent()) {
+ volume = getVolume(requirementAssignmentDataList.get());
+ }
+ UnifiedCompositionData data = new UnifiedCompositionData();
+ Map<String, List<RequirementAssignmentData>> computeNodeConnectedOut =
+ TestUtils.getNodeConnectedOutList(computeNodeTemplate, "dependency");
+ Map<String, List<RequirementAssignmentData>> computeNodeConnectedIn =
+ TestUtils
+ .getNodeConnectedInList(computeNodeTemplateId, inputServiceTemplates.get(mainSTName),
+ "dependency");
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = TestUtils
+ .createComputeTemplateConsolidationData(computeNodeTemplateId, null, volume);
+ List<String> computeNodeGroups =
+ TestUtils.getGroupsForNode(inputServiceTemplates.get(mainSTName),
+ computeNodeTemplateId);
+ if (!computeNodeGroups.isEmpty()) {
+ computeTemplateConsolidationData.setGroupIds(computeNodeGroups);
+ }
+ computeTemplateConsolidationData.setNodesConnectedOut(computeNodeConnectedOut);
+ computeTemplateConsolidationData.setNodesConnectedIn(computeNodeConnectedIn);
+ data.setComputeTemplateConsolidationData(computeTemplateConsolidationData);
+ return data;
+ }
+
+ private void addPortDataToCompositionData(List<Pair<String, String>> portTypeToIdList,
+ UnifiedCompositionData data) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = data
+ .getComputeTemplateConsolidationData();
+
+ for (Pair<String, String> port : portTypeToIdList) {
+ NodeTemplate portNodeTemplate =
+ DataModelUtil.getNodeTemplate(inputServiceTemplates.get(mainSTName), port.getRight());
+
+ Optional<List<RequirementAssignmentData>> bindingReqList =
+ TestUtils.getRequirementAssignmentDataList(portNodeTemplate, "binding");
+
+ if (bindingReqList.isPresent()) {
+ for (RequirementAssignmentData reqData : bindingReqList.get()) {
+ String nodeId = reqData.getRequirementAssignment().getNode();
+ if (nodeId.equals(computeTemplateConsolidationData.getNodeTemplateId())) {
+ computeTemplateConsolidationData.addPort(port.getLeft(), port.getRight());
+ }
+ }
+ }
+ Map<String, List<RequirementAssignmentData>> portNodeConnectedOut =
+ TestUtils.getNodeConnectedOutList(portNodeTemplate, "link");
+ PortTemplateConsolidationData portTemplateConsolidationData = TestUtils
+ .createPortTemplateConsolidationData(port.getRight());
+ portTemplateConsolidationData.setNodesConnectedOut(portNodeConnectedOut);
+
+ //Add node connected in info to test data
+ Map<String, List<RequirementAssignmentData>> portNodeConnectedIn =
+ TestUtils.getNodeConnectedInList(port.getRight(), inputServiceTemplates.get(mainSTName),
+ "port");
+ portTemplateConsolidationData.setNodesConnectedIn(portNodeConnectedIn);
+
+ //Add group infromation for ports
+ List<String> portGroups =
+ TestUtils.getGroupsForNode(inputServiceTemplates.get(mainSTName), port.getRight());
+ portTemplateConsolidationData.setGroupIds(portGroups);
+ data.addPortTemplateConsolidationData(portTemplateConsolidationData);
+
+ }
+ addGetAttrForCompute(data);
+ addGetAttrForPort(data);
+ }
+
+ private Map<String, List<RequirementAssignmentData>> getVolume(
+ List<RequirementAssignmentData> requirementAssignmentList) {
+ Map<String, List<RequirementAssignmentData>> volume = new HashMap<>();
+ for (RequirementAssignmentData requirementAssignmentData : requirementAssignmentList) {
+ String volumeNodeTemplateId = requirementAssignmentData.getRequirementAssignment().getNode();
+ volume.computeIfAbsent(volumeNodeTemplateId, k -> new ArrayList<>());
+ volume.get(volumeNodeTemplateId).add(requirementAssignmentData);
+ }
+ return volume;
+ }
+
+ private void addGetAttrForPort(UnifiedCompositionData unifiedCompositionData) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData : unifiedCompositionData
+ .getPortTemplateConsolidationDataList()) {
+ if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_Internal1")) {
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "network_name",
+ "network_id", "jsa_net1");
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "size",
+ "addresses", "cmaui_volume1");
+ } else if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB2_Internal2")) {
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "tenant_id",
+ "network_id", "jsa_net1");
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "qos_policy",
+ "network_id", "jsa_net1");
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "volume_type",
+ "index", "cmaui_volume1");
+ } else if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_OAM")) {
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "size",
+ "oam_index", "cmaui_volume1");
+ }
+ }
+ }
+
+ private void addGetAttrForPort2(UnifiedCompositionData unifiedCompositionData) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData : unifiedCompositionData
+ .getPortTemplateConsolidationDataList()) {
+ if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB2_Internal1")) {
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "volume_type",
+ "index", "cmaui_volume3");
+ } else if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_Internal2")) {
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "size",
+ "addresses", "cmaui_volume3");
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "size",
+ "oam_index", "cmaui_volume1");
+ }
+ }
+ }
+
+ private void addGetAttrForPortInnerUC(UnifiedCompositionData unifiedCompositionData) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData : unifiedCompositionData
+ .getPortTemplateConsolidationDataList()) {
+ if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_Internal1")) {
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "availability_zone",
+ "myAttr", "FSB1_template");
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "metadata",
+ "myAttr", "FSB1_template");
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "name",
+ "myAttr", "FSB1_template");
+ addGetAttInUnifiedCompositionData(portTemplateConsolidationData, "availability_zone",
+ "index", "FSB1_template");
+ }
+ }
+ }
+
+ private void addGetAttrForCompute(UnifiedCompositionData unifiedCompositionData) {
+ addGetAttInUnifiedCompositionData(unifiedCompositionData.getComputeTemplateConsolidationData(),
+ "dhcp_agent_ids", "addresses", "jsa_net1");
+ addGetAttInUnifiedCompositionData(unifiedCompositionData.getComputeTemplateConsolidationData(),
+ "volume_type", "addresses", "cmaui_volume1");
+ addGetAttInUnifiedCompositionData(unifiedCompositionData.getComputeTemplateConsolidationData(),
+ "size", "accessIPv6", "cmaui_volume2");
+ }
+
+ private void addGetAttrForCompute2(UnifiedCompositionData unifiedCompositionData) {
+ addGetAttInUnifiedCompositionData(unifiedCompositionData.getComputeTemplateConsolidationData(),
+ "volume_type", "addresses", "cmaui_volume3");
+ addGetAttInUnifiedCompositionData(unifiedCompositionData.getComputeTemplateConsolidationData(),
+ "size", "oam_index", "cmaui_volume3");
+ }
+
+ private void addOutputGetAttrInForComputeNoConsolidation(
+ UnifiedCompositionData unifiedCompositionData) {
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionData
+ .getComputeTemplateConsolidationData(), "simpleOutput1", "accessIPv4");
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionData
+ .getComputeTemplateConsolidationData(), "simpleOutput2", "addresses");
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionData
+ .getComputeTemplateConsolidationData(), "complexOutput1", "addresses");
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionData
+ .getComputeTemplateConsolidationData(), "complexOutput3", "accessIPv6");
+
+ }
+
+ private void addOutputGetAttrInForCompute1WithConsolidation(
+ UnifiedCompositionData unifiedCompositionData) {
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionData
+ .getComputeTemplateConsolidationData(), "simpleOutput1", "accessIPv4");
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionData
+ .getComputeTemplateConsolidationData(), "complexOutput1", "addresses");
+
+ }
+
+ private void addOutputGetAttrInForCompute2WithConsolidation(
+ UnifiedCompositionData unifiedCompositionData) {
+ addOutputGetAttInUnifiedCompositionData(unifiedCompositionData
+ .getComputeTemplateConsolidationData(), "simpleOutput2", "addresses");
+ }
+
+ private void addOutputGetAttrInForPortNoConsolidation(
+ UnifiedCompositionData unifiedCompositionData) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData : unifiedCompositionData
+ .getPortTemplateConsolidationDataList()) {
+ if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_Internal1")) {
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput2",
+ "addresses");
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput3",
+ "addresses");
+ } else if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB2_Internal2")) {
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput1",
+ "index");
+ } else if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_OAM")) {
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput2",
+ "oam_index");
+ }
+ }
+ }
+
+ private void addOutputGetAttrInForPortWithConsolidation1(
+ UnifiedCompositionData unifiedCompositionData) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData : unifiedCompositionData
+ .getPortTemplateConsolidationDataList()) {
+ if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB2_Internal2")) {
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput1",
+ "index");
+ } else if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_Internal1")) {
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput3",
+ "accessIPv6");
+ }
+ }
+ }
+
+ private void addOutputGetAttrInForPortWithConsolidation2(
+ UnifiedCompositionData unifiedCompositionData) {
+ for (PortTemplateConsolidationData portTemplateConsolidationData : unifiedCompositionData
+ .getPortTemplateConsolidationDataList()) {
+ if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB2_Internal1")) {
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput2",
+ "oam_index");
+ } else if (portTemplateConsolidationData.getNodeTemplateId().equals("FSB1_Internal2")) {
+ addOutputGetAttInUnifiedCompositionData(portTemplateConsolidationData, "complexOutput2",
+ "addresses");
+ }
+ }
+ }
+
+ private NodeTemplate getMockNode(String path) throws IOException {
+ URL resource = this.getClass().getResource(path);
+ YamlUtil yamlUtil = new YamlUtil();
+ return yamlUtil.yamlToObject(resource.openStream(), NodeTemplate.class);
+ }
+
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/BuildConsolidationDataTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/BuildConsolidationDataTest.java
new file mode 100644
index 0000000000..47c99be530
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/BuildConsolidationDataTest.java
@@ -0,0 +1,24 @@
+package org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
+
+import java.io.IOException;
+
+public class BuildConsolidationDataTest extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testNovaServerGroupConsolidationData() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/novaservergroups/staticPolicy/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/novaservergroups/staticPolicy/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataTestUtil.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataTestUtil.java
new file mode 100644
index 0000000000..0f9b4deb53
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataTestUtil.java
@@ -0,0 +1,1095 @@
+package org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata;
+
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.MAIN_SERVICE_TEMPLATE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_INVALID_DEPENDENCY_CANDIDATE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_MULTIPLE_COMPUTE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_IN;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_IN_AND_OUT;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_OUT;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NO_DEPENDENCY;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_MULTIPLE_MULTI_LEVEL_NESTED_RESOURCE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_MULTIPLE_NESTED_RESOURCE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_CONNECTION;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_SHARED_PORT;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_SECURITY_RULE_PORT_NESTED_CONNECTION;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_SINGLE_NESTED_RESOURCE;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import org.apache.commons.collections4.CollectionUtils;
+import org.junit.Assert;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.GetAttrFuncData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.NestedTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.PortTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.RequirementAssignmentData;
+import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
+import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+
+public class ConsolidationDataTestUtil {
+
+ public static void validateVolumeInConsolidationData(String computeNodeTemplateId,
+ ComputeTemplateConsolidationData
+ computeTemplateConsolidationData,
+ ServiceTemplate expectedServiceTemplate,
+ String testName) {
+ Assert.assertNotNull(computeTemplateConsolidationData);
+ //Get the volume information from consolidation data
+ Map<String, List<RequirementAssignmentData>> volumeConsolidationData =
+ computeTemplateConsolidationData.getVolumes();
+
+ if(testName.equals("Negative")) {
+ Assert.assertNull(volumeConsolidationData);
+ return;
+ }
+
+ //Get the volume requirement information from the output translated template
+ NodeTemplate computeNode = DataModelUtil.getNodeTemplate(expectedServiceTemplate,
+ computeNodeTemplateId);
+
+ if(!isComputeNodeType(expectedServiceTemplate, computeNode.getType()) ) {
+ //According to toplogy only Compute->volume relationship is valid
+ Assert.assertNull(volumeConsolidationData);
+ return;
+ }
+
+ Assert.assertNotNull(computeNode);
+ List<String> computeVolumeRequirementsNodes = new ArrayList<>();
+ List<Map<String, RequirementAssignment>> requirementList = computeNode.getRequirements();
+ if(requirementList != null){
+ for(Map<String, RequirementAssignment> req : requirementList){
+ Set<String> reqKeySet = req.keySet();
+ for(String reqKey : reqKeySet){
+ //populating the "node" property of all the requirements "local_storage" related to volume
+ if(reqKey.equals(ToscaConstants.LOCAL_STORAGE_REQUIREMENT_ID)){
+ RequirementAssignment requirementAssignment = new ObjectMapper().convertValue(req.get
+ (reqKey), RequirementAssignment.class);
+ computeVolumeRequirementsNodes.add(requirementAssignment.getNode());
+ }
+ }
+ }
+ isVolumeComputeRequirement(computeVolumeRequirementsNodes, volumeConsolidationData);
+ }
+ }
+
+ private static void isVolumeComputeRequirement(List<String> computeVolumeRequirementsNodes,
+ Map<String, List<RequirementAssignmentData>>
+ volumeConsolidationData) {
+ Assert.assertEquals(computeVolumeRequirementsNodes.size(), volumeConsolidationData.size());
+ for(String volumeNodeTemplateId : computeVolumeRequirementsNodes) {
+ Assert.assertNotNull(volumeConsolidationData.containsKey(volumeNodeTemplateId));
+ List<RequirementAssignmentData> requirementAssignmentDataList = volumeConsolidationData.get
+ (volumeNodeTemplateId);
+ for(RequirementAssignmentData requirementAssignmentData : requirementAssignmentDataList){
+ Assert.assertTrue(requirementAssignmentData.getRequirementId().equals(ToscaConstants
+ .LOCAL_STORAGE_REQUIREMENT_ID));
+ }
+ }
+ }
+
+
+ public static void validatePortsInConsolidationData(String computeNodeTemplateId,
+ ComputeTemplateConsolidationData
+ computeTemplateConsolidationData,
+ ServiceTemplate outputServiceTemplate){
+ Map<String,List<String>> consolidatedMap = computeTemplateConsolidationData.getPorts();
+ Map<String,List<String>> expectedMap = getPortsInConsolidationData(outputServiceTemplate).get
+ (computeNodeTemplateId);
+ if(expectedMap == null && consolidatedMap == null){
+ return;
+ }
+ for(String consolidatedKey : consolidatedMap.keySet()){
+ List<String> consolidatedList = consolidatedMap.get(consolidatedKey);
+ List<String> expectedList = expectedMap.get(consolidatedKey);
+ if(expectedList == null ){
+ Assert.fail();
+ } if(!CollectionUtils.isEqualCollection(consolidatedList,expectedList)){
+ Assert.fail();
+ }
+ }
+ }
+
+ public static void validateDependsOnInConsolidationData(String computeNodeTemplateId,
+ ComputeTemplateConsolidationData computeTemplateConsolidationData,
+ ServiceTemplate outputServiceTemplate,
+ String testName) {
+ Map<String, NodeTemplate> outputNodeTemplates = outputServiceTemplate.getTopology_template()
+ .getNode_templates();
+ Map<String, List<RequirementAssignmentData>> nodesConnectedIn =
+ computeTemplateConsolidationData.getNodesConnectedIn();
+ Map<String, List<RequirementAssignmentData>> nodesConnectedOut =
+ computeTemplateConsolidationData.getNodesConnectedOut();
+
+ if(testName.equals(TEST_DEPENDS_ON_INVALID_DEPENDENCY_CANDIDATE) ||
+ testName.equals(TEST_DEPENDS_ON_NO_DEPENDENCY)) {
+ Assert.assertNull(nodesConnectedIn);
+ Assert.assertNull(nodesConnectedOut);
+ return;
+ }
+ //key - nodetemplate id , value - requirementassignment
+ Map<String, List<RequirementAssignment>> outputDependsOnNodeRequirementMap = new HashMap<>();
+ for(Map.Entry<String, NodeTemplate> entry : outputNodeTemplates.entrySet()) {
+ NodeTemplate nodeTemplate = entry.getValue();
+ List<Map<String, RequirementAssignment>> nodeRequirements = nodeTemplate.getRequirements();
+ if(nodeRequirements != null){
+ for(Map<String, RequirementAssignment> req : nodeRequirements) {
+ Set<String> keySet = req.keySet();
+ for(String key : keySet) {
+ if(key.equals(ToscaConstants.DEPENDS_ON_REQUIREMENT_ID))
+ //collect all dependency requirements in a map with key -> node template id
+ outputDependsOnNodeRequirementMap.computeIfAbsent(entry.getKey(), k -> new ArrayList<>())
+ .add(req.get(key));
+ }
+ }
+ }
+ }
+
+ if(testName.equals(TEST_DEPENDS_ON_NODES_CONNECTED_OUT)){
+ Assert.assertNull(nodesConnectedIn);
+ validateDependsOnNodesConnectedOut(computeNodeTemplateId, nodesConnectedOut,
+ outputDependsOnNodeRequirementMap, outputServiceTemplate);
+ }
+
+ if(testName.equals(TEST_DEPENDS_ON_NODES_CONNECTED_IN)){
+ Assert.assertNull(nodesConnectedOut);
+ validateDependsOnNodesConnectedIn(computeNodeTemplateId, nodesConnectedIn,
+ outputDependsOnNodeRequirementMap,
+ outputServiceTemplate);
+ }
+
+ if(testName.equals(TEST_DEPENDS_ON_NODES_CONNECTED_IN_AND_OUT)){
+ Assert.assertNotNull(nodesConnectedIn);
+ Assert.assertNotNull(nodesConnectedOut);
+ validateDependsOnNodesConnectedOut(computeNodeTemplateId, nodesConnectedOut,
+ outputDependsOnNodeRequirementMap,
+ outputServiceTemplate);
+ validateDependsOnNodesConnectedIn(computeNodeTemplateId, nodesConnectedIn,
+ outputDependsOnNodeRequirementMap,
+ outputServiceTemplate);
+ }
+
+ if(testName.equals(TEST_DEPENDS_ON_MULTIPLE_COMPUTE)){
+ if(nodesConnectedOut != null)
+ validateDependsOnNodesConnectedOut(computeNodeTemplateId, nodesConnectedOut,
+ outputDependsOnNodeRequirementMap,
+ outputServiceTemplate);
+ if(nodesConnectedIn != null)
+ validateDependsOnNodesConnectedIn(computeNodeTemplateId, nodesConnectedIn,
+ outputDependsOnNodeRequirementMap,
+ outputServiceTemplate);
+ }
+
+
+ }
+
+ private static void validateDependsOnNodesConnectedIn(String computeNodeTemplateId,
+ Map<String,
+ List<RequirementAssignmentData>>
+ nodesConnectedIn,
+ Map<String, List<RequirementAssignment>>
+ outputDependsOnNodeRequirementMap,
+ ServiceTemplate outputServiceTemplate) {
+ ToscaAnalyzerServiceImpl analyzerService = new ToscaAnalyzerServiceImpl();
+ for(Map.Entry<String, List<RequirementAssignment>> entry : outputDependsOnNodeRequirementMap
+ .entrySet()) {
+ String sourceNodeTemplateId = entry.getKey();
+ Optional<NodeTemplate> sourceNodeTemplate = analyzerService.getNodeTemplateById
+ (outputServiceTemplate, sourceNodeTemplateId);
+ String sourceNodeType = sourceNodeTemplate.get().getType();
+ for(Object obj : entry.getValue()){
+ RequirementAssignment req = new ObjectMapper().convertValue(obj, RequirementAssignment
+ .class);
+ String targetNodeTemplateId = req.getNode();
+ Optional<NodeTemplate> targetNodeTemplate = analyzerService.getNodeTemplateById
+ (outputServiceTemplate, targetNodeTemplateId);
+
+ String targetNodeType = targetNodeTemplate.get().getType();
+ boolean isValidTargetForConnectedIn = false;
+ if(isComputeNodeType(outputServiceTemplate, targetNodeType)) {
+ isValidTargetForConnectedIn = true;
+ } else if(isPortNodeType(outputServiceTemplate, targetNodeType)) {
+ isValidTargetForConnectedIn = true;
+ }
+
+ if(isValidTargetForConnectedIn) {
+ //Should be present if target node is compute or port
+ if(computeNodeTemplateId.equals(entry.getKey()))
+ Assert.assertTrue(nodesConnectedIn.containsKey(entry.getKey()));
+ }
+
+ if(sourceNodeType.startsWith(ToscaNodeType.NOVA_SERVER)
+ && (targetNodeType.startsWith(ToscaNodeType.NOVA_SERVER)
+ || targetNodeType.startsWith(ToscaNodeType.NEUTRON_PORT)
+ || targetNodeType.startsWith(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE))) {
+ //Ignore Compute->Port, Compute->Compute, Compute->Volume relationship
+ Assert.assertFalse(nodesConnectedIn.containsKey(targetNodeTemplateId));
+ }
+
+ if(sourceNodeType.startsWith(ToscaNodeType.NEUTRON_PORT)
+ && (targetNodeType.startsWith(ToscaNodeType.NOVA_SERVER)
+ || targetNodeType.startsWith(ToscaNodeType.NEUTRON_PORT)
+ || targetNodeType.startsWith(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE))) {
+ //Ignore Port->Port, Port->Compute, Port->Volume relationship
+ Assert.assertFalse(nodesConnectedIn.containsKey(targetNodeTemplateId));
+ }
+ }
+ }
+ }
+
+ private static boolean isComputeNodeType(ServiceTemplate serviceTemplate,
+ String nodeType) {
+
+ if(nodeType.equals(ToscaNodeType.NOVA_SERVER) ||
+ nodeType.equals(ToscaNodeType.NATIVE_COMPUTE))
+ return true;
+
+ Map<String, NodeType> nodeTypes = serviceTemplate.getNode_types();
+ if(nodeTypes.containsKey(nodeType)) {
+ NodeType nodeTypeInfo = nodeTypes.get(nodeType);
+ if(nodeTypeInfo.getDerived_from().equals(ToscaNodeType.NOVA_SERVER))
+ return true;
+ }
+ return false;
+ }
+
+ private static boolean isPortNodeType(ServiceTemplate serviceTemplate,
+ String nodeType) {
+ if(nodeType.equals(ToscaNodeType.NEUTRON_PORT) ||
+ nodeType.equals(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE))
+ return true;
+
+ Map<String, NodeType> nodeTypes = serviceTemplate.getNode_types();
+ if(nodeTypes.containsKey(nodeType)) {
+ NodeType nodeTypeInfo = nodeTypes.get(nodeType);
+ if(nodeTypeInfo.getDerived_from().equals(ToscaNodeType.NEUTRON_PORT) ||
+ nodeTypeInfo.getDerived_from().equals(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE))
+ return true;
+ }
+ return false;
+ }
+
+ private static void validateDependsOnNodesConnectedOut(String computeNodeTemplateId,
+ Map<String,
+ List<RequirementAssignmentData>>
+ nodesConnectedOut,
+ Map<String, List<RequirementAssignment>>
+ outputDependsOnNodeRequirementMap,
+ ServiceTemplate outputServiceTemplate) {
+ ToscaAnalyzerServiceImpl analyzerService = new ToscaAnalyzerServiceImpl();
+ //Iterating the map <nodeTemplateId, all the requirements of that node>
+ for(Map.Entry<String, List<RequirementAssignment>> entry : outputDependsOnNodeRequirementMap
+ .entrySet()) {
+ String sourceNodeTemplateId = entry.getKey();
+ Optional<NodeTemplate> sourceNodeTemplate = analyzerService.getNodeTemplateById
+ (outputServiceTemplate, sourceNodeTemplateId);
+ String sourceNodeType = sourceNodeTemplate.get().getType();
+ boolean isValidSourceForConnectedOut = false;
+ if(isComputeNodeType(outputServiceTemplate, sourceNodeType)) {
+ isValidSourceForConnectedOut = true;
+ } else if(isPortNodeType(outputServiceTemplate, sourceNodeType)) {
+ isValidSourceForConnectedOut = true;
+ }
+ for(Object obj : entry.getValue()){
+ RequirementAssignment req = new ObjectMapper().convertValue(obj, RequirementAssignment
+ .class);
+ String targetNodeTemplateId = req.getNode();
+ Optional<NodeTemplate> targetNodeTemplate = analyzerService.getNodeTemplateById
+ (outputServiceTemplate, targetNodeTemplateId);
+ String targetNodeType = targetNodeTemplate.get().getType();
+
+ if(isValidSourceForConnectedOut) {
+ //Should be present if source node is compute or port
+ if(computeNodeTemplateId.equals(entry.getKey()))
+ Assert.assertTrue(nodesConnectedOut.containsKey(targetNodeTemplateId));
+ }
+
+ if(sourceNodeType.startsWith(ToscaNodeType.NOVA_SERVER)
+ && (targetNodeType.startsWith(ToscaNodeType.NOVA_SERVER)
+ || targetNodeType.startsWith(ToscaNodeType.NEUTRON_PORT)
+ || targetNodeType.startsWith(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE))) {
+ //Ignore Compute->Port, Compute->Compute, Compute->Volume relationship
+ Assert.assertFalse(nodesConnectedOut.containsKey(targetNodeTemplateId));
+ }
+
+ if(sourceNodeType.startsWith(ToscaNodeType.NEUTRON_PORT)
+ && (targetNodeType.startsWith(ToscaNodeType.NOVA_SERVER)
+ || targetNodeType.startsWith(ToscaNodeType.NEUTRON_PORT)
+ || targetNodeType.startsWith(ToscaNodeType.CONTRAILV2_VIRTUAL_MACHINE_INTERFACE))) {
+ //Ignore Port->Port, Port->Compute, Port->Volume relationship
+ Assert.assertFalse(nodesConnectedOut.containsKey(targetNodeTemplateId));
+ }
+ }
+ }
+ }
+
+ private static Map<String,Map<String,List<String>>> getPortsInConsolidationData(ServiceTemplate
+ output){
+ Map<String,Map<String,List<String>>> portMap = new LinkedHashMap<>();
+ Map<String, NodeTemplate> nodeTempMap = output.getTopology_template().getNode_templates();
+ for(String nodeName : nodeTempMap.keySet()){
+ NodeTemplate node = nodeTempMap.get(nodeName);
+ if(ToscaNodeType.NEUTRON_PORT.equals(node.getType()) || ToscaNodeType
+ .CONTRAILV2_VIRTUAL_MACHINE_INTERFACE.equals(node.getType())){
+ List<Map<String, RequirementAssignment>> reqAssignList = node.getRequirements();
+ if(reqAssignList != null) {
+ for (Map<String, RequirementAssignment> reqAssignMap : reqAssignList) {
+ //RequirementAssignment req = reqAssignMap.get("binding");
+ RequirementAssignment req = new ObjectMapper().convertValue(reqAssignMap.get("binding"),
+ RequirementAssignment.class);
+
+ if (req != null) {
+ String portNode = req.getNode();
+ if (!portMap.containsKey(portNode)) {
+ portMap.put(portNode, new LinkedHashMap<>());
+ }
+ Map<String, List<String>> portTypMaps = portMap.get(portNode);
+ String id = ConsolidationDataUtil.getPortType(nodeName);
+ if (!portTypMaps.containsKey(id)) {
+ portTypMaps.put(id, new ArrayList<>());
+ }
+ List<String> portIds = portTypMaps.get(id);
+ portIds.add(nodeName);
+ }
+ }
+ }
+ }
+ }
+ return portMap;
+ }
+
+ public static void validateGroupsInConsolidationData(String computeNodeTemplateId,
+ ComputeTemplateConsolidationData
+ computeTemplateConsolidationData,
+ ServiceTemplate expectedServiceTemplate) {
+ Assert.assertNotNull(computeTemplateConsolidationData);
+ List<String> groupIds = computeTemplateConsolidationData.getGroupIds();
+ if (groupIds != null) {
+ for (String groupId : groupIds) {
+ isComputeGroupMember(expectedServiceTemplate, computeNodeTemplateId, groupId);
+ }
+ }
+ }
+
+ private static void isComputeGroupMember(ServiceTemplate expectedServiceTemplate, String
+ computeNodeTemplateId, String groupId) {
+ //Check if the collected group id is in the member list of the groups
+ GroupDefinition group = expectedServiceTemplate.getTopology_template().getGroups().get(groupId);
+ List<String> groupMembers = group.getMembers();
+ Assert.assertNotNull(groupMembers);
+ Assert.assertTrue(groupMembers.contains(computeNodeTemplateId));
+ }
+
+ public static void validateSubstituteMappingInConsolidationData(ConsolidationData consolidationData,
+ Map<String, ServiceTemplate>
+ expectedServiceTemplateModels ){
+ Map<String,List<String>> consolidatedMap = consolidationData.getSubstituteNodeTemplates();
+ Map<String,List<String>> expectedMap = getSubstituteMapping(expectedServiceTemplateModels);
+ for(String consolidatedKey : consolidatedMap.keySet()){
+ List<String> consolidatedList = consolidatedMap.get(consolidatedKey);
+ List<String> expectedList = expectedMap.get(consolidatedKey);
+ if(expectedList == null ){
+ Assert.fail();
+ } if(!CollectionUtils.isEqualCollection(consolidatedList,expectedList)){
+ Assert.fail();
+ }
+ }
+ }
+
+ private static Map<String,List<String>> getSubstituteMapping(Map<String, ServiceTemplate>
+ expectedServiceTemplateModels ){
+ Map<String,List<String>> map = new LinkedHashMap<>();
+ for(String key : expectedServiceTemplateModels.keySet()){
+ ServiceTemplate serviceTemplate = expectedServiceTemplateModels.get(key);
+ if(serviceTemplate.getTopology_template() != null && serviceTemplate
+ .getTopology_template().getNode_templates() != null) {
+ for (String key1 : serviceTemplate.getTopology_template().getNode_templates().keySet()) {
+ NodeTemplate nodeTemplate = serviceTemplate.getTopology_template().getNode_templates()
+ .get(key1);
+ if (nodeTemplate.getType().contains(ToscaNodeType.ABSTRACT_NODE_TYPE_PREFIX + "heat.")) {
+
+ List<String> subNodeTempIdList = map.get(key);
+ if (subNodeTempIdList == null) {
+ subNodeTempIdList = new ArrayList<>();
+ map.put(key, subNodeTempIdList);
+ }
+ subNodeTempIdList.add(key1);
+ }
+ }
+ }
+ }
+ return map;
+ }
+
+ public static void validateComputeConnectivityIn(ComputeTemplateConsolidationData
+ computeTemplateConsolidationData,
+ ServiceTemplate expectedServiceTemplate){
+ Map<String,List<RequirementAssignmentData>> nodesConnectedIn = computeTemplateConsolidationData.
+ getNodesConnectedIn();
+ if(nodesConnectedIn==null){
+ return;
+ }
+ boolean found = false;
+ for(String nodeIdConnTo : nodesConnectedIn.keySet()){
+ List<RequirementAssignmentData> connectToList = nodesConnectedIn.get(nodeIdConnTo);
+ List<Map<String, RequirementAssignment>> requirementsList = expectedServiceTemplate
+ .getTopology_template().getNode_templates().get(nodeIdConnTo).getRequirements();
+ for(RequirementAssignmentData requirementAssignmentData : connectToList) {
+ for (Map<String, RequirementAssignment> requirementAssignmentMap : requirementsList) {
+ RequirementAssignment requirementAssignment =
+ new ObjectMapper().convertValue(requirementAssignmentMap.values().iterator().next(),
+ RequirementAssignment.class);
+ if (requirementAssignment.getNode().equals(requirementAssignmentData.getRequirementAssignment().getNode())) {
+ Assert.assertEquals(requirementAssignment.getCapability(),requirementAssignmentData.getRequirementAssignment().getCapability());
+ Assert.assertEquals(requirementAssignment.getNode(),requirementAssignmentData.getRequirementAssignment().getNode());
+ Assert.assertEquals(requirementAssignment.getRelationship(),requirementAssignmentData.getRequirementAssignment()
+ .getRelationship());
+ found = true;
+ }
+ }
+ if (!found) {
+ Assert.fail();
+ }
+ found = false;
+ }
+ }
+ }
+
+ public static void validateComputeConnectivityOut(String computeNodeTemplateId,
+ ComputeTemplateConsolidationData
+ computeTemplateConsolidationData,
+ ServiceTemplate expectedServiceTemplate){
+ Map<String,List<RequirementAssignmentData>> nodesConnectedOut = computeTemplateConsolidationData.
+ getNodesConnectedOut();
+ if(nodesConnectedOut==null){
+ return;
+ }
+ boolean found = false;
+ for(String nodeIdConnFrom : nodesConnectedOut.keySet()){
+ List<RequirementAssignmentData> connectToList = nodesConnectedOut.get(nodeIdConnFrom);
+ List<Map<String, RequirementAssignment>> requirementsList = expectedServiceTemplate
+ .getTopology_template().getNode_templates().get(computeNodeTemplateId).getRequirements();
+ for(RequirementAssignmentData requirementAssignmentData : connectToList) {
+ for (Map<String, RequirementAssignment> requirementAssignmentMap : requirementsList) {
+ RequirementAssignment requirementAssignment =
+ new ObjectMapper().convertValue(requirementAssignmentMap.values().iterator().next(),
+ RequirementAssignment.class);
+ if (requirementAssignment.getNode().equals(requirementAssignmentData.getRequirementAssignment().getNode())) {
+ Assert.assertEquals(requirementAssignment.getCapability(),requirementAssignmentData.getRequirementAssignment().getCapability());
+ Assert.assertEquals(requirementAssignment.getNode(),requirementAssignmentData.getRequirementAssignment().getNode());
+ Assert.assertEquals(requirementAssignment.getRelationship(),requirementAssignmentData.getRequirementAssignment()
+ .getRelationship());
+ found = true;
+ }
+ }
+ if (!found) {
+ Assert.fail();
+ }
+ found = false;
+ }
+ }
+ }
+
+ public static void validatePortConnectivityIn(PortTemplateConsolidationData
+ portTemplateConsolidationData,
+ ServiceTemplate expectedServiceTemplate){
+ Map<String,List<RequirementAssignmentData>> nodesConnectedIn = portTemplateConsolidationData.
+ getNodesConnectedIn();
+ if(nodesConnectedIn==null){
+ return;
+ }
+ boolean found = false;
+ for(String nodeIdConnTo : nodesConnectedIn.keySet()){
+ List<RequirementAssignmentData> connectToList = nodesConnectedIn.get(nodeIdConnTo);
+ List<Map<String, RequirementAssignment>> requirementsList = expectedServiceTemplate
+ .getTopology_template().getNode_templates().get(nodeIdConnTo).getRequirements();
+ for(RequirementAssignmentData requirementAssignmentData : connectToList) {
+ for (Map<String, RequirementAssignment> requirementAssignmentMap : requirementsList) {
+ RequirementAssignment requirementAssignment =
+ new ObjectMapper().convertValue(requirementAssignmentMap.values().iterator().next(),
+ RequirementAssignment.class);
+ if (requirementAssignment.getNode().equals(requirementAssignmentData.getRequirementAssignment().getNode())) {
+ Assert.assertEquals(requirementAssignment.getCapability(),requirementAssignmentData.getRequirementAssignment().getCapability());
+ Assert.assertEquals(requirementAssignment.getNode(),requirementAssignmentData.getRequirementAssignment().getNode());
+ Assert.assertEquals(requirementAssignment.getRelationship(),requirementAssignmentData.getRequirementAssignment()
+ .getRelationship());
+ found = true;
+ }
+ }
+ if (!found) {
+ Assert.fail();
+ }
+ found = false;
+ }
+ }
+ }
+
+ public static void validatePortConnectivityOut(String portNodeTemplateId,
+ PortTemplateConsolidationData
+ portTemplateConsolidationData,
+ ServiceTemplate expectedServiceTemplate){
+ Map<String, List<RequirementAssignmentData>> nodesConnectedOut =
+ portTemplateConsolidationData.getNodesConnectedOut();
+ if(nodesConnectedOut==null){
+ return;
+ }
+ boolean found = false;
+ for(String nodeIdConnFrom : nodesConnectedOut.keySet()){
+ List<RequirementAssignmentData> connectToList = nodesConnectedOut.get(nodeIdConnFrom);
+ List<Map<String, RequirementAssignment>> requirementsList = expectedServiceTemplate
+ .getTopology_template().getNode_templates().get(portNodeTemplateId).getRequirements();
+ for(RequirementAssignmentData requirementAssignmentData : connectToList) {
+ for (Map<String, RequirementAssignment> requirementAssignmentMap : requirementsList) {
+ RequirementAssignment requirementAssignment =
+ new ObjectMapper().convertValue(requirementAssignmentMap.values().iterator().next(),
+ RequirementAssignment.class);
+ if (requirementAssignment.getNode().equals(requirementAssignmentData.getRequirementAssignment().getNode())) {
+ Assert.assertEquals(requirementAssignment.getCapability(),requirementAssignmentData.getRequirementAssignment().getCapability());
+ Assert.assertEquals(requirementAssignment.getNode(),requirementAssignmentData.getRequirementAssignment().getNode());
+ Assert.assertEquals(requirementAssignment.getRelationship(),requirementAssignmentData.getRequirementAssignment()
+ .getRelationship());
+ found = true;
+ }
+ }
+ if (!found) {
+ Assert.fail();
+ }
+ found = false;
+ }
+ }
+ }
+
+ public static void validateGetAttr(TranslationContext translationContext, Map<String,
+ ServiceTemplate>
+ expectedServiceTemplateModels,String testName){
+ ConsolidationData consolidationData = translationContext.getConsolidationData();
+ Assert.assertNotNull(consolidationData);
+ if(TestConstants.TEST_GET_ATTR_FOR_MORE_THAN_ONE_ATTR_IN_ATTR_LIST.equals(testName)){
+ PortTemplateConsolidationData portTemplateConsolidationData = consolidationData
+ .getPortConsolidationData().getFilePortConsolidationData("MainServiceTemplate.yaml")
+ .getPortTemplateConsolidationData("VMI1");
+ Assert.assertNotNull(portTemplateConsolidationData);
+ Assert.assertEquals(2, portTemplateConsolidationData.getNodesGetAttrIn().size());
+ List<GetAttrFuncData> attrFuncDataList = portTemplateConsolidationData.getNodesGetAttrIn()
+ .get("FSB1");
+ Assert.assertEquals(1,attrFuncDataList.size());
+ Assert.assertEquals("name",attrFuncDataList.get(0).getFieldName());
+ Assert.assertEquals("name",attrFuncDataList.get(0).getAttributeName());
+
+ attrFuncDataList = portTemplateConsolidationData.getNodesGetAttrIn()
+ .get("FSB2");
+ Assert.assertEquals(1,attrFuncDataList.size());
+ Assert.assertEquals("name",attrFuncDataList.get(0).getFieldName());
+ Assert.assertEquals("virtual_machine_interface_allowed_address_pairs",attrFuncDataList.get(0).getAttributeName());
+
+ ComputeTemplateConsolidationData computeTemplateConsolidationDataFSB2 = consolidationData
+ .getComputeConsolidationData()
+ .getFileComputeConsolidationData("MainServiceTemplate.yaml")
+ .getTypeComputeConsolidationData("org.openecomp.resource.vfc.nodes.heat.FSB2")
+ .getComputeTemplateConsolidationData("FSB2");
+ Assert.assertEquals(1,computeTemplateConsolidationDataFSB2.getNodesGetAttrOut().size());
+ List<GetAttrFuncData> attrFuncDataOutList = computeTemplateConsolidationDataFSB2
+ .getNodesGetAttrOut().get("VMI1");
+ Assert.assertEquals(1,attrFuncDataOutList.size());
+ Assert.assertEquals("name",attrFuncDataOutList.get(0).getFieldName());
+ Assert.assertEquals("virtual_machine_interface_allowed_address_pairs",attrFuncDataOutList
+ .get(0).getAttributeName());
+ ComputeTemplateConsolidationData computeTemplateConsolidationDataFSB1 = consolidationData
+ .getComputeConsolidationData()
+ .getFileComputeConsolidationData("MainServiceTemplate.yaml")
+ .getTypeComputeConsolidationData("org.openecomp.resource.vfc.nodes.heat.FSB1")
+ .getComputeTemplateConsolidationData("FSB1");
+ Assert.assertEquals(1,computeTemplateConsolidationDataFSB1.getNodesGetAttrOut().size());
+ List<GetAttrFuncData> attrFuncDataOutList2 = computeTemplateConsolidationDataFSB1
+ .getNodesGetAttrOut().get("VMI1");
+ Assert.assertEquals(1,attrFuncDataOutList2.size());
+ Assert.assertEquals("name",attrFuncDataOutList2.get(0).getFieldName());
+ Assert.assertEquals("name",attrFuncDataOutList2
+ .get(0).getAttributeName());
+ } else if(TestConstants.TEST_IGNORE_GET_ATTR_FROM_OUTPUT.equals(testName)){
+ if(!consolidationData.getPortConsolidationData().getAllServiceTemplateFileNames().isEmpty()){
+ Iterator<String> itr = consolidationData.getPortConsolidationData()
+ .getFilePortConsolidationData("MainServiceTemplate.yaml").getAllPortNodeTemplateIds()
+ .iterator();
+ while(itr.hasNext()){
+ String key = itr.next();
+ PortTemplateConsolidationData portTemplateConsolidationData = consolidationData
+ .getPortConsolidationData()
+ .getFilePortConsolidationData("MainServiceTemplate.yaml")
+ .getPortTemplateConsolidationData(key);
+ Assert.assertNull(portTemplateConsolidationData.getOutputParametersGetAttrIn());
+ }
+ }
+ } else if(TestConstants.TEST_GET_ATTR_FOR_NOT_SUPPORTED_ATTR_IN_ATTR_LIST.equals(testName)){
+ Assert.assertNull(consolidationData.getPortConsolidationData()
+ .getFilePortConsolidationData("MainServiceTemplate.yaml")
+ .getPortTemplateConsolidationData("FSB1_Internal2").getNodesGetAttrIn());
+ } else if(TestConstants.TEST_GET_ATTR_FOR_ONLY_RESOURCE_NAME.equals(testName)){
+ PortTemplateConsolidationData portTemplateConsolidationData = consolidationData
+ .getPortConsolidationData().getFilePortConsolidationData("MainServiceTemplate.yaml")
+ .getPortTemplateConsolidationData("VMI1");
+ Assert.assertNotNull(portTemplateConsolidationData);
+ Assert.assertEquals("name",portTemplateConsolidationData.getNodesGetAttrIn().get("FSB1").
+ get(0).getFieldName());
+ Assert.assertEquals("fq_name",portTemplateConsolidationData.getNodesGetAttrIn().get("FSB1").
+ get(0).getAttributeName());
+ } else if(TestConstants.TEST_GET_ATTR_FOR_NONE_TO_PORT_OR_COMPUTE.equals(testName)){
+ ComputeTemplateConsolidationData computeTemplateConsolidationData = consolidationData
+ .getComputeConsolidationData()
+ .getFileComputeConsolidationData("MainServiceTemplate.yaml")
+ .getTypeComputeConsolidationData("org.openecomp.resource.vfc.nodes.heat.compute")
+ .getComputeTemplateConsolidationData("server_compute_get_attr_test");
+ Assert.assertEquals("user_data_format",computeTemplateConsolidationData
+ .getNodesGetAttrOut().get("server_pcm_001").get(0).getFieldName());
+ Assert.assertEquals("oam_net_gw",computeTemplateConsolidationData
+ .getNodesGetAttrOut().get("server_pcm_001").get(0).getAttributeName());
+ } else if(TestConstants.TEST_OUTPUT_GET_ATTR.equals(testName)){
+ ComputeTemplateConsolidationData computeTemplateConsolidationData1 = consolidationData
+ .getComputeConsolidationData()
+ .getFileComputeConsolidationData("MainServiceTemplate.yaml")
+ .getTypeComputeConsolidationData("org.openecomp.resource.vfc.nodes.heat.cgi_fw")
+ .getComputeTemplateConsolidationData("CGI_FW_SERVER_1");
+ Assert.assertEquals("cgi_fw_01_left_mac_1",computeTemplateConsolidationData1
+ .getOutputParametersGetAttrIn()
+ .get(0).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData1.getOutputParametersGetAttrIn()
+ .get(0).getAttributeName());
+ ComputeTemplateConsolidationData computeTemplateConsolidationData2 = consolidationData
+ .getComputeConsolidationData()
+ .getFileComputeConsolidationData("MainServiceTemplate.yaml")
+ .getTypeComputeConsolidationData("org.openecomp.resource.vfc.nodes.heat.cgi_fw")
+ .getComputeTemplateConsolidationData("CGI_FW_SERVER_2");
+ Assert.assertEquals(1,computeTemplateConsolidationData2
+ .getNodesGetAttrIn().get("CGI_FW_SERVER_2").size());
+ Assert.assertEquals("availability_zone",computeTemplateConsolidationData2
+ .getNodesGetAttrIn().get("CGI_FW_SERVER_2").get(0).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getNodesGetAttrIn().get("CGI_FW_SERVER_2").get(0).getAttributeName());
+ Assert.assertEquals(1,computeTemplateConsolidationData2
+ .getNodesGetAttrOut().get("CGI_FW_SERVER_2").size());
+ Assert.assertEquals("availability_zone",computeTemplateConsolidationData2
+ .getNodesGetAttrOut().get("CGI_FW_SERVER_2").get(0).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getNodesGetAttrOut().get("CGI_FW_SERVER_2").get(0).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_2",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(0).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(0).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_3",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(1).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(1).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_4",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(2).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(2).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_5",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(3).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(3).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_5",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(4).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(4).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_6",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(5).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(5).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_9",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(6).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(6).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_10",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(7).getFieldName());
+ Assert.assertEquals("addresses",computeTemplateConsolidationData2
+ .getOutputParametersGetAttrIn().get(7).getAttributeName());
+ PortTemplateConsolidationData portTemplateConsolidationData = consolidationData
+ .getPortConsolidationData().getFilePortConsolidationData("MainServiceTemplate.yaml")
+ .getPortTemplateConsolidationData("contrail_vmi_subinterface");
+ Assert.assertEquals("cgi_fw_01_left_mac_7",portTemplateConsolidationData
+ .getOutputParametersGetAttrIn().get(0).getFieldName());
+ Assert.assertEquals("virtual_machine_interface_properties",portTemplateConsolidationData
+ .getOutputParametersGetAttrIn().get(0).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_8",portTemplateConsolidationData
+ .getOutputParametersGetAttrIn().get(1).getFieldName());
+ Assert.assertEquals("virtual_machine_interface_allowed_address_pairs",
+ portTemplateConsolidationData.getOutputParametersGetAttrIn()
+ .get(1).getAttributeName());
+ Assert.assertEquals("cgi_fw_01_left_mac_10",portTemplateConsolidationData
+ .getOutputParametersGetAttrIn().get(2).getFieldName());
+ Assert.assertEquals("virtual_machine_interface_allowed_address_pairs",
+ portTemplateConsolidationData.getOutputParametersGetAttrIn()
+ .get(2).getAttributeName());
+ }
+ }
+
+ public static void validateNestedConsolidationData(TranslationContext context,
+ String testName) {
+ ConsolidationData consolidationData = context.getConsolidationData();
+ if (testName.equals(TEST_SINGLE_NESTED_RESOURCE)) {
+ String nestedNodeTemplateId = "server_pcm_001";
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ //Validate basic null attributes
+ validateBasicNestedConsolidationData(nestedTemplateConsolidationData);
+ //Validate nodeTemplateId
+ Assert.assertEquals(nestedTemplateConsolidationData.getNodeTemplateId(), nestedNodeTemplateId);
+ //Validate nodes connected in (will only be populated for dependsOn relationships)
+ Map<String, List<RequirementAssignmentData>> nodesConnectedIn =
+ nestedTemplateConsolidationData.getNodesConnectedIn();
+ List<String> dependentNodes = new LinkedList<>();
+ dependentNodes.add("packet_mirror_network");
+ validateNestedNodesConnectedInDependency(nodesConnectedIn, nestedNodeTemplateId, dependentNodes);
+
+ //Validate get attribute in
+ Map<String, List<GetAttrFuncData>> nodesGetAttrIn =
+ nestedTemplateConsolidationData.getNodesGetAttrIn();
+ String getAttrNodeTemplateId = "server_compute_get_attr_test";
+ List<GetAttrFuncData> getAttrFuncData = nodesGetAttrIn.get(getAttrNodeTemplateId);
+ Assert.assertNotNull(getAttrFuncData);
+ Assert.assertEquals(getAttrFuncData.size(), 2);
+ Assert.assertEquals(getAttrFuncData.get(0).getFieldName(), "metadata");
+ Assert.assertEquals(getAttrFuncData.get(0).getAttributeName(), "server_pcm_id");
+ Assert.assertEquals(getAttrFuncData.get(1).getFieldName(), "user_data_format");
+ Assert.assertEquals(getAttrFuncData.get(1).getAttributeName(), "oam_net_gw");
+
+ //Validate output parameter get attribute in
+ List<GetAttrFuncData> outputParametersGetAttrIn =
+ nestedTemplateConsolidationData.getOutputParametersGetAttrIn();
+ Assert.assertNotNull(outputParametersGetAttrIn);
+ Assert.assertEquals(outputParametersGetAttrIn.size(), 1);
+ Assert.assertEquals(outputParametersGetAttrIn.get(0).getFieldName(), "output_attr_1");
+ Assert.assertEquals(outputParametersGetAttrIn.get(0).getAttributeName(), "pcm_vol");
+
+ } else if (testName.equals(TEST_MULTIPLE_NESTED_RESOURCE)) {
+ List<String> nestedNodeTemplateIds = new ArrayList<>();
+ nestedNodeTemplateIds.add("server_pcm_001");
+ nestedNodeTemplateIds.add("server_pcm_002");
+ nestedNodeTemplateIds.add("server_pcm_003");
+
+ for (String nestedNodeTemplateId : nestedNodeTemplateIds) {
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ //Validate basic null attributes
+ validateBasicNestedConsolidationData(nestedTemplateConsolidationData);
+ //Validate nodeTemplateId
+ Assert.assertEquals(nestedTemplateConsolidationData.getNodeTemplateId(),
+ nestedNodeTemplateId);
+ if (nestedNodeTemplateId.equals("server_pcm_001")) {
+ //Validate nodes connected in (will only be populated for dependsOn relationships)
+ Map<String, List<RequirementAssignmentData>> nodesConnectedIn =
+ nestedTemplateConsolidationData.getNodesConnectedIn();
+ List<String> dependentNodes = new LinkedList<>();
+ dependentNodes.add("packet_mirror_network");
+ validateNestedNodesConnectedInDependency(nodesConnectedIn, nestedNodeTemplateId, dependentNodes);
+ } else {
+ Assert.assertNull(nestedTemplateConsolidationData.getNodesConnectedIn());
+ }
+ }
+ String nestedNodeTemplateId = "server_pcm_001";
+
+ //Validate get attribute in
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData("server_pcm_002");
+ Map<String, List<GetAttrFuncData>> nodesGetAttrIn =
+ nestedTemplateConsolidationData.getNodesGetAttrIn();
+ String getAttrNodeTemplateId = "server_pcm_001";
+ List<GetAttrFuncData> getAttrFuncData = nodesGetAttrIn.get(getAttrNodeTemplateId);
+ Assert.assertNotNull(getAttrFuncData);
+ Assert.assertEquals(getAttrFuncData.size(), 1);
+ Assert.assertEquals(getAttrFuncData.get(0).getFieldName(), "user_data_format");
+ Assert.assertEquals(getAttrFuncData.get(0).getAttributeName(), "pcm_vol");
+ //Validate output parameter get attribute in
+ List<GetAttrFuncData> outputParametersGetAttrIn =
+ nestedTemplateConsolidationData.getOutputParametersGetAttrIn();
+ Assert.assertNotNull(outputParametersGetAttrIn);
+ Assert.assertEquals(outputParametersGetAttrIn.size(), 1);
+ Assert.assertEquals(outputParametersGetAttrIn.get(0).getFieldName(), "output_attr_2");
+ Assert.assertEquals(outputParametersGetAttrIn.get(0).getAttributeName(), "oam_net_ip");
+
+
+ nestedTemplateConsolidationData = consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData("server_pcm_001");
+ nodesGetAttrIn = nestedTemplateConsolidationData.getNodesGetAttrIn();
+ getAttrNodeTemplateId = "server_pcm_002";
+ getAttrFuncData = nodesGetAttrIn.get(getAttrNodeTemplateId);
+ Assert.assertNotNull(getAttrFuncData);
+ Assert.assertEquals(getAttrFuncData.size(), 1);
+ Assert.assertEquals(getAttrFuncData.get(0).getFieldName(), "metadata");
+ Assert.assertEquals(getAttrFuncData.get(0).getAttributeName(), "server_pcm_id");
+ //Validate output parameter get attribute in
+ outputParametersGetAttrIn = nestedTemplateConsolidationData.getOutputParametersGetAttrIn();
+ Assert.assertNotNull(outputParametersGetAttrIn);
+ Assert.assertEquals(outputParametersGetAttrIn.size(), 1);
+ Assert.assertEquals(outputParametersGetAttrIn.get(0).getFieldName(), "output_attr_1");
+ Assert.assertEquals(outputParametersGetAttrIn.get(0).getAttributeName(), "pcm_vol");
+
+ nestedTemplateConsolidationData = consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData("server_pcm_003");
+ Assert.assertNull(nestedTemplateConsolidationData.getNodesGetAttrIn());
+ Assert.assertNull(nestedTemplateConsolidationData.getOutputParametersGetAttrIn());
+
+ } else if (testName.equals(TEST_MULTIPLE_MULTI_LEVEL_NESTED_RESOURCE)) {
+ String nestedNodeTemplateId = "test_nested";
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ //Validate basic null attributes
+ validateBasicNestedConsolidationData(nestedTemplateConsolidationData);
+ //Validate nodeTemplateId
+ Assert.assertEquals(nestedTemplateConsolidationData.getNodeTemplateId(),
+ nestedNodeTemplateId);
+ //Validate nodes connected in (will only be populated for dependsOn relationships)
+ Map<String, List<RequirementAssignmentData>> nodesConnectedIn =
+ nestedTemplateConsolidationData.getNodesConnectedIn();
+ List<String> dependentNodes = new LinkedList<>();
+ dependentNodes.add("packet_mirror_network");
+ validateNestedNodesConnectedInDependency(nodesConnectedIn, nestedNodeTemplateId, dependentNodes);
+ //Validate output parameter get attribute in
+ List<GetAttrFuncData> getAttrFuncData =
+ nestedTemplateConsolidationData.getNodesGetAttrIn().get("packet_mirror_network");
+ Assert.assertNotNull(getAttrFuncData);
+ Assert.assertEquals(getAttrFuncData.size(), 1);
+ Assert.assertEquals(getAttrFuncData.get(0).getFieldName(), "shared");
+ Assert.assertEquals(getAttrFuncData.get(0).getAttributeName(), "output_attr_1");
+ Assert.assertNull(nestedTemplateConsolidationData.getOutputParametersGetAttrIn());
+
+ nestedNodeTemplateId = "test_nested2";
+ nestedTemplateConsolidationData = consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData("nestedServiceTemplate.yaml")
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ //Validate basic null attributes
+ validateBasicNestedConsolidationData(nestedTemplateConsolidationData);
+ //Validate nodeTemplateId
+ Assert.assertEquals(nestedTemplateConsolidationData.getNodeTemplateId(),
+ nestedNodeTemplateId);
+ Assert.assertNull(nestedTemplateConsolidationData.getNodesConnectedIn());
+ //Validate output parameter get attribute in
+ getAttrFuncData = nestedTemplateConsolidationData.getNodesGetAttrIn().get("server_cmaui");
+ Assert.assertNotNull(getAttrFuncData);
+ Assert.assertEquals(getAttrFuncData.size(), 1);
+ Assert.assertEquals(getAttrFuncData.get(0).getFieldName(), "metadata");
+ Assert.assertEquals(getAttrFuncData.get(0).getAttributeName(), "availability_zone_0");
+
+ List<GetAttrFuncData> outputParametersGetAttrIn1 =
+ nestedTemplateConsolidationData.getOutputParametersGetAttrIn();
+ Assert.assertNotNull(outputParametersGetAttrIn1);
+ Assert.assertEquals(outputParametersGetAttrIn1.size(), 1);
+ Assert.assertEquals(outputParametersGetAttrIn1.get(0).getFieldName(), "output_attr_1");
+ Assert.assertEquals(outputParametersGetAttrIn1.get(0).getAttributeName(), "availability_zone_0");
+ }
+ }
+
+ private static void validateBasicNestedConsolidationData(NestedTemplateConsolidationData
+ nestedTemplateConsolidationData) {
+ Assert.assertNull(nestedTemplateConsolidationData.getGroupIds());
+ Assert.assertNull(nestedTemplateConsolidationData.getNodesConnectedOut());
+ //Assert.assertNull(nestedTemplateConsolidationData.getNodesGetAttrOut());
+ }
+
+ private static void validateNestedNodesConnectedInDependency(Map<String,
+ List<RequirementAssignmentData>> nodesConnectedIn,
+ String nestedNodeTemplateId,
+ List<String> dependentNodeTemplateIds) {
+ Assert.assertNotNull(nodesConnectedIn);
+ for (String dependentNodeTemplateId : dependentNodeTemplateIds) {
+ List<RequirementAssignmentData> requirementAssignmentData =
+ nodesConnectedIn.get(dependentNodeTemplateId);
+ Assert.assertNotNull(requirementAssignmentData);
+ for (RequirementAssignmentData data : requirementAssignmentData) {
+ Assert.assertEquals(data.getRequirementId(), ToscaConstants.DEPENDS_ON_REQUIREMENT_ID);
+ Assert.assertEquals(data.getRequirementAssignment().getCapability(), ToscaCapabilityType
+ .NATIVE_NODE);
+ Assert.assertEquals(data.getRequirementAssignment().getNode(), nestedNodeTemplateId);
+ Assert.assertEquals(data.getRequirementAssignment().getRelationship(),
+ ToscaRelationshipType.NATIVE_DEPENDS_ON);
+ }
+ }
+ }
+
+ public static void validateNestedNodesConnectedInSecurityRuleToPort(String testName,
+ TranslationContext context) {
+ ConsolidationData consolidationData = context.getConsolidationData();
+ if (testName.equals(TEST_SECURITY_RULE_PORT_NESTED_CONNECTION) ||
+ testName.equals(TestConstants.TEST_SECURITY_RULE_PORT_NESTED_SHARED_PORT)) {
+ String nestedNodeTemplateId = "test_nested";
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ //Validate basic null attributes
+ validateBasicNestedConsolidationData(nestedTemplateConsolidationData);
+ //Validate nodeTemplateId
+ Assert
+ .assertEquals(nestedTemplateConsolidationData.getNodeTemplateId(), nestedNodeTemplateId);
+ String securityRuleNodeTemplateId = "jsa_security_group1";
+ validateNestedNodesConnectedInSecurityRuleToPort(HeatToToscaUtil
+ .getServiceTemplateFromContext(MAIN_SERVICE_TEMPLATE, context).get(),
+ nestedNodeTemplateId, securityRuleNodeTemplateId,
+ nestedTemplateConsolidationData);
+ securityRuleNodeTemplateId = "jsa_security_group2";
+ validateNestedNodesConnectedInSecurityRuleToPort(HeatToToscaUtil
+ .getServiceTemplateFromContext(MAIN_SERVICE_TEMPLATE, context).get(),
+ nestedNodeTemplateId, securityRuleNodeTemplateId,
+ nestedTemplateConsolidationData);
+ if (testName.equals(TestConstants.TEST_SECURITY_RULE_PORT_NESTED_SHARED_PORT)) {
+ nestedNodeTemplateId = "test_nestedArrayParam";
+ Assert.assertEquals(nestedNodeTemplateId, consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodeTemplateId());
+ Assert.assertNull(consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodesConnectedIn());
+ }
+ } else if (testName.equals(TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_CONNECTION) ||
+ testName.equals(TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_SHARED_PORT)) {
+ String nestedNodeTemplateId = "test_nested2Level";
+ Assert.assertEquals(nestedNodeTemplateId, consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData("nested1ServiceTemplate.yaml")
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodeTemplateId());
+ Assert.assertNull(consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData("nested1ServiceTemplate.yaml")
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodesConnectedIn());
+ nestedNodeTemplateId = "test_nested3Level";
+ Assert.assertEquals(nestedNodeTemplateId, consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData("nested2ServiceTemplate.yaml")
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodeTemplateId());
+ Assert.assertNull(consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData("nested2ServiceTemplate.yaml")
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodesConnectedIn());
+ nestedNodeTemplateId = "test_nested4Level";
+ Assert.assertEquals(nestedNodeTemplateId, consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData("nested3ServiceTemplate.yaml")
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodeTemplateId());
+ Assert.assertNull(consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData("nested3ServiceTemplate.yaml")
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodesConnectedIn());
+
+ //Validate main service template
+
+ nestedNodeTemplateId = "test_nested1Level";
+ NestedTemplateConsolidationData nestedTemplateConsolidationData =
+ consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ //Validate basic null attributes
+ validateBasicNestedConsolidationData(nestedTemplateConsolidationData);
+ //Validate nodeTemplateId
+ Assert
+ .assertEquals(nestedTemplateConsolidationData.getNodeTemplateId(), nestedNodeTemplateId);
+ String securityRuleNodeTemplateId = "jsa_security_group1";
+ validateNestedNodesConnectedInSecurityRuleToPort(HeatToToscaUtil
+ .getServiceTemplateFromContext(MAIN_SERVICE_TEMPLATE, context).get(),
+ nestedNodeTemplateId, securityRuleNodeTemplateId,
+ nestedTemplateConsolidationData);
+ securityRuleNodeTemplateId = "jsa_security_group2";
+ validateNestedNodesConnectedInSecurityRuleToPort(HeatToToscaUtil
+ .getServiceTemplateFromContext(MAIN_SERVICE_TEMPLATE, context).get(),
+ nestedNodeTemplateId, securityRuleNodeTemplateId,
+ nestedTemplateConsolidationData);
+
+ nestedNodeTemplateId = "test_resourceGroup";
+ nestedTemplateConsolidationData = consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId);
+ //Validate basic null attributes
+ validateBasicNestedConsolidationData(nestedTemplateConsolidationData);
+ //Validate nodeTemplateId
+ Assert
+ .assertEquals(nestedTemplateConsolidationData.getNodeTemplateId(), nestedNodeTemplateId);
+ securityRuleNodeTemplateId = "jsa_security_group2";
+ validateNestedNodesConnectedInSecurityRuleToPort(HeatToToscaUtil
+ .getServiceTemplateFromContext(MAIN_SERVICE_TEMPLATE, context).get(),
+ nestedNodeTemplateId, securityRuleNodeTemplateId,
+ nestedTemplateConsolidationData);
+ securityRuleNodeTemplateId = "jsa_security_group2";
+ validateNestedNodesConnectedInSecurityRuleToPort(HeatToToscaUtil
+ .getServiceTemplateFromContext(MAIN_SERVICE_TEMPLATE, context).get(),
+ nestedNodeTemplateId, securityRuleNodeTemplateId,
+ nestedTemplateConsolidationData);
+
+ nestedNodeTemplateId = "test_nestedInvalidConnectionToNova";
+ Assert.assertEquals(nestedNodeTemplateId, consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodeTemplateId());
+ Assert.assertNull(consolidationData.getNestedConsolidationData()
+ .getFileNestedConsolidationData(MAIN_SERVICE_TEMPLATE)
+ .getNestedTemplateConsolidationData(nestedNodeTemplateId).getNodesConnectedIn());
+ }
+ }
+
+ private static void validateNestedNodesConnectedInSecurityRuleToPort(ServiceTemplate
+ serviceTemplate,
+ String nestedNodeTemplateId,
+ String
+ securityRuleNodeTemplateId,
+ NestedTemplateConsolidationData nestedTemplateConsolidationData) {
+ Map<String, List<RequirementAssignmentData>> consolidationDataNodesConnectedIn =
+ nestedTemplateConsolidationData.getNodesConnectedIn();
+ Assert.assertNotNull(consolidationDataNodesConnectedIn);
+ NodeTemplate securityRuleNodeTemplate = DataModelUtil.getNodeTemplate(serviceTemplate,
+ securityRuleNodeTemplateId);
+ List<Map<String, RequirementAssignment>> securityRuleNodeTemplateRequirements =
+ securityRuleNodeTemplate.getRequirements();
+ for (Map<String, RequirementAssignment> req : securityRuleNodeTemplateRequirements) {
+ String requirementId = req.keySet().toArray()[0].toString();
+ if (requirementId.equals(ToscaConstants.PORT_REQUIREMENT_ID)) {
+ RequirementAssignment requirementAssignment = req.get(requirementId);
+ if (requirementAssignment.getNode().equals(nestedNodeTemplateId)) {
+ validateSecurityRulePortNestedConsolidationData(requirementAssignment,
+ securityRuleNodeTemplateId, consolidationDataNodesConnectedIn);
+ }
+ }
+ }
+ }
+
+ private static void validateSecurityRulePortNestedConsolidationData(RequirementAssignment
+ requirementAssignment,
+ String securityRuleNodeTemplateId,
+ Map<String,
+ List<RequirementAssignmentData>> consolidationDataNodesConnectedIn) {
+ List<RequirementAssignmentData> requirementAssignmentDataList =
+ consolidationDataNodesConnectedIn.get(securityRuleNodeTemplateId);
+ Assert.assertNotNull(requirementAssignmentDataList);
+ boolean result = false;
+ for (RequirementAssignmentData data : requirementAssignmentDataList) {
+ RequirementAssignment dataRequirementAssignment = data.getRequirementAssignment();
+ result = DataModelUtil
+ .compareRequirementAssignment(requirementAssignment, dataRequirementAssignment);
+ if (result) {
+ break;
+ }
+ }
+ Assert.assertTrue(result);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataValidationType.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataValidationType.java
new file mode 100644
index 0000000000..4cdfc35647
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/ConsolidationDataValidationType.java
@@ -0,0 +1,10 @@
+package org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata;
+
+public enum ConsolidationDataValidationType {
+ VALIDATE_GROUP,
+ VALIDATE_PORT,
+ VALIDATE_VOLUME,
+ VALIDATE_GET_ATTR,
+ VALIDATE_CONNECTIVITY,
+ VALIDATE_DEPENDS_ON
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/TestConstants.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/TestConstants.java
new file mode 100644
index 0000000000..3b97be7f33
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/buildconsolidationdata/TestConstants.java
@@ -0,0 +1,56 @@
+package org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata;
+
+public class TestConstants{
+
+ public static final String MAIN_SERVICE_TEMPLATE = "MainServiceTemplate.yaml";
+
+ public static final String TEST_GROUP_POSITIVE = "TestGroupsPositive";
+ public static final String TEST_GROUP_NEGATIVE = "TestGroupsNegative";
+
+ public static final String TEST_VOLUME_POSITIVE = "TestVolumePositive";
+ public static final String TEST_VOLUME_NEGATIVE = "TestVolumeNegative";
+
+ public static final String TEST_PORT_POSITIVE = "TestPortPositive";
+ public static final String TEST_PORT_NEGATIVE = "TestPortNegative";
+
+ public static final String TEST_CONNECTIVITY_POSITIVE = "TestConnectivityPositive";
+ public static final String TEST_CONNECTIVITY_NEGATIVE = "TestConnectivityNegative";
+
+ public static final String TEST_DEPENDS_ON_NODES_CONNECTED_IN = "TestDependsOnNodesConnectedIn";
+ public static final String TEST_DEPENDS_ON_NODES_CONNECTED_OUT = "TestDependsOnNodesConnectedOut";
+ public static final String TEST_DEPENDS_ON_NODES_CONNECTED_IN_AND_OUT =
+ "TestDependsOnNodesConnectedInAndOut";
+ public static final String TEST_DEPENDS_ON_NO_DEPENDENCY =
+ "TestDependsOnNoDependency";
+ public static final String TEST_DEPENDS_ON_INVALID_DEPENDENCY_CANDIDATE =
+ "TestDependsOnInvalidDependencyCandidate";
+ public static final String TEST_GET_ATTR_FOR_NONE_TO_PORT_OR_COMPUTE =
+ "testTranslateGetAttForNoneToPortOrCompute";
+ public static final String TEST_GET_ATTR_FOR_ONLY_RESOURCE_NAME =
+ "testTranslateGetAttOnlyResourceName";
+ public static final String TEST_GET_ATTR_FOR_MORE_THAN_ONE_ATTR_IN_ATTR_LIST =
+ "testTranslateGetAtt";
+ public static final String TEST_GET_ATTR_FOR_NOT_SUPPORTED_ATTR_IN_ATTR_LIST =
+ "testTranslateGetAttUnsupportedAttr";
+ public static final String TEST_IGNORE_GET_ATTR_FROM_OUTPUT =
+ "testTranslateGetAttUnsupportedResource";
+ public static final String TEST_OUTPUT_GET_ATTR =
+ "testTranslateGetAttDynamicParam";
+ public static final String TEST_DEPENDS_ON_MULTIPLE_COMPUTE = "TestDependsOnMultipleComputes";
+ public static final String TEST_DEPENDS_ON_NODE_TEMPLATE_TRANSLATION_ORDER_INVARIANCE =
+ "TestDependsOnNodeTemplateTranslationOrderInvariance";
+
+ public static final String TEST_SINGLE_NESTED_RESOURCE = "TestTranslateHeatSingleNestedResource";
+ public static final String TEST_MULTIPLE_NESTED_RESOURCE = "TestTranslateHeatNestedMultiBase";
+ public static final String TEST_MULTIPLE_MULTI_LEVEL_NESTED_RESOURCE =
+ "TestTranslateHeatNestedRecursiveMultiLevel";
+
+ public static final String TEST_SECURITY_RULE_PORT_NESTED_CONNECTION =
+ "TestSecurityRuleToPortNestedConnection";
+ public static final String TEST_SECURITY_RULE_PORT_NESTED_SHARED_PORT =
+ "TestSecurityRuleToPortSharedPortNestedConnection";
+ public static final String TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_CONNECTION =
+ "TestSecurityRuleToPortMultiLevelNestedConnection";
+ public static final String TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_SHARED_PORT =
+ "TestSecurityRuleToPortSharedPortMultiLevelNestedConnection";
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/hotmog/HotMogTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/hotmog/HotMogTranslationTest.java
index 13be7235d9..703efc99b6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/hotmog/HotMogTranslationTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/hotmog/HotMogTranslationTest.java
@@ -1,7 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.services.heattotosca.fullvfexample.hotmog;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
public class HotMogTranslationTest extends BaseResourceTranslationTest {
@@ -14,4 +34,4 @@ public class HotMogTranslationTest extends BaseResourceTranslationTest {
public void testTranslate() throws Exception {
testTranslation();
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/vmmesmall/VmmeSmallTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/vmmesmall/VmmeSmallTranslationTest.java
index 4db0bdf339..d28512ee1e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/vmmesmall/VmmeSmallTranslationTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/fullvfexample/vmmesmall/VmmeSmallTranslationTest.java
@@ -1,7 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.translator.services.heattotosca.fullvfexample.vmmesmall;
-import org.openecomp.sdc.translator.services.heattotosca.impl.BaseResourceTranslationTest;
import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
+
public class VmmeSmallTranslationTest extends BaseResourceTranslationTest {
@@ -14,4 +35,4 @@ public class VmmeSmallTranslationTest extends BaseResourceTranslationTest {
public void testTranslate() throws Exception {
testTranslation();
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelperTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelperTest.java
new file mode 100644
index 0000000000..9b4a59b01f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/helper/ContrailTranslationHelperTest.java
@@ -0,0 +1,149 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.helper;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+import static org.junit.Assert.*;
+
+/**
+ * @author SHIRIA
+ * @since December 21, 2016.
+ */
+public class ContrailTranslationHelperTest {
+
+ @Test
+ public void testgetComputeNodeTypeId()
+ throws Exception {
+ Resource serviceTemplate = new Resource();
+ serviceTemplate.setProperties(new HashMap<>());
+ serviceTemplate.getProperties().put("image_name", "aaaa");
+ Map flavor = new HashMap<>();
+ flavor.put("get_param", "bbb_flavor_name");
+ serviceTemplate.getProperties().put("flavor", flavor);
+ String computeNodeTypeId =
+ new ContrailTranslationHelper()
+ .getComputeNodeTypeId(serviceTemplate, "123", "123", new TranslationContext());
+ Assert.assertEquals("org.openecomp.resource.vfc.nodes.heat.bbb", computeNodeTypeId);
+ }
+
+ @Test
+ public void testTranslateFnSplitFunctionExp1() {
+ // property value = { "Fn::Split" : [ ",", "management,left,right,other" ] }
+ Map propertyValue = new HashMap();
+ List funcListVal = new ArrayList<>();
+ funcListVal.add(",");
+ funcListVal.add("management,left,right,other");
+ propertyValue.put("Fn::Split", funcListVal);
+ Optional<List<Map<String, List>>> translatedFun =
+ new ContrailTranslationHelper().translateFnSplitFunction(propertyValue, 4, false);
+
+ assertEquals(true, translatedFun.isPresent());
+ if (translatedFun.isPresent()) {
+ assertEquals(4, translatedFun.get().size());
+ for (int i = 0; i < translatedFun.get().size(); i++) {
+ assertEquals("management,left,right,other", translatedFun.get().get(i).get("token").get(0));
+ assertEquals(",", translatedFun.get().get(i).get("token").get(1));
+ assertEquals(i, translatedFun.get().get(i).get("token").get(2));
+ }
+ }
+ }
+
+ @Test
+ public void testTranslateFnSplitFunctionBoolean() {
+ // property value = { "Fn::Split" : [ ";", "n;false;false;false" ] }
+ Map propertyValue = new HashMap();
+ List funcListVal = new ArrayList<>();
+ funcListVal.add(";");
+ funcListVal.add("n;false;false;false");
+ propertyValue.put("Fn::Split", funcListVal);
+ Optional<List<Map<String, List>>> translatedFun =
+ new ContrailTranslationHelper().translateFnSplitFunction(propertyValue, 4, true);
+
+ assertEquals(true, translatedFun.isPresent());
+ if (translatedFun.isPresent()) {
+ assertEquals(4, translatedFun.get().size());
+ for (int i = 0; i < translatedFun.get().size(); i++) {
+ assertEquals("false;false;false;false", translatedFun.get().get(i).get("token").get(0));
+ assertEquals(";", translatedFun.get().get(i).get("token").get(1));
+ assertEquals(i, translatedFun.get().get(i).get("token").get(2));
+ }
+ }
+ }
+
+ @Test
+ public void testTranslateFnSplitFunctionExp2() {
+ // property value = { "Fn::Split" : [ ";", "n;false;false;false" ] }
+ Map propertyValue = new HashMap();
+ List funcListVal = new ArrayList<>();
+ funcListVal.add(";");
+ funcListVal.add("n;false;false;false");
+ propertyValue.put("Fn::Split", funcListVal);
+ Optional<List<Map<String, List>>> translatedFun =
+ new ContrailTranslationHelper().translateFnSplitFunction(propertyValue, 4, false);
+
+ assertEquals(true, translatedFun.isPresent());
+ if (translatedFun.isPresent()) {
+ assertEquals(4, translatedFun.get().size());
+ for (int i = 0; i < translatedFun.get().size(); i++) {
+ assertEquals("n;false;false;false", translatedFun.get().get(i).get("token").get(0));
+ assertEquals(";", translatedFun.get().get(i).get("token").get(1));
+ assertEquals(i, translatedFun.get().get(i).get("token").get(2));
+ }
+ }
+ }
+
+ @Test
+ public void testTranslateFnSplitFunctionWithParam() {
+ // property value = { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ Map propertyValue = new HashMap();
+ List funcListVal = new ArrayList<>();
+ funcListVal.add(",");
+ Map innerMap = new HashMap();
+ innerMap.put("Ref", "st_shared_ip_list");
+ funcListVal.add(innerMap);
+ propertyValue.put("Fn::Split", funcListVal);
+ Optional<List<Map<String, List>>> translatedFun =
+ new ContrailTranslationHelper().translateFnSplitFunction(propertyValue, 5, false);
+
+ assertEquals(true, translatedFun.isPresent());
+ if (translatedFun.isPresent()) {
+ assertEquals(5, translatedFun.get().size());
+ for (int i = 0; i < translatedFun.get().size(); i++) {
+ assertEquals("st_shared_ip_list",
+
+ ((Map) translatedFun.get().get(i).get("token").get(0)).get("get_input"));
+ assertEquals(",", translatedFun.get().get(i).get("token").get(1));
+ assertEquals(i, translatedFun.get().get(i).get("token").get(2));
+ }
+ }
+ }
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ContrailV2VMInterfaceToNetResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ContrailV2VMInterfaceToNetResourceConnectionTest.java
deleted file mode 100644
index 1dce2c8d70..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ContrailV2VMInterfaceToNetResourceConnectionTest.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-/**
- * @author Avrahamg
- * @since August 10, 2016
- */
-public class ContrailV2VMInterfaceToNetResourceConnectionTest extends BaseResourceTranslationTest {
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testTranslateVMIToNetNestedConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateVMIToSharedNetNestedConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateVMIToNetMultiConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/DependsOnResourceBaseTranslationlTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/DependsOnResourceBaseTranslationlTest.java
deleted file mode 100644
index 2ba2d936e8..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/DependsOnResourceBaseTranslationlTest.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Test;
-
-public class DependsOnResourceBaseTranslationlTest extends BaseResourceTranslationTest {
- public DependsOnResourceBaseTranslationlTest() {
- inputFilesPath = "/mock/services/heattotosca/baseResourceTranslation/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles";
- }
-
- @Test
- public void testTranslate() throws Exception {
- testTranslation();
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/MultipleHeatTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/MultipleHeatTranslationTest.java
deleted file mode 100644
index caec80c11b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/MultipleHeatTranslationTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-public class MultipleHeatTranslationTest extends BaseResourceTranslationTest {
-
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testTranslateBaseHeats() throws Exception {
- inputFilesPath = "/mock/multiHeat/allHeatsAreBase/inputs";
- outputFilesPath = "/mock/multiHeat/allHeatsAreBase/expectedOutput/";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateOneOutOfFourFilesIsNotBase() throws Exception {
- inputFilesPath = "/mock/multiHeat/referencedHeatResources/inputs";
- outputFilesPath = "/mock/multiHeat/referencedHeatResources/expectedOutput/";
- initTranslatorAndTranslate();
- testTranslation();
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToContrailV2VirtualNetworkResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToContrailV2VirtualNetworkResourceConnectionTest.java
deleted file mode 100644
index 156008edb9..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToContrailV2VirtualNetworkResourceConnectionTest.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-public class PortToContrailV2VirtualNetworkResourceConnectionTest
- extends BaseResourceTranslationTest {
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testPortToNetNestedConnection() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testPortToSharedNetNestedConnection() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testPortToNetMultiConnection() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnectionTest.java
deleted file mode 100644
index 6411d4759e..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/PortToNetResourceConnectionTest.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-public class PortToNetResourceConnectionTest extends BaseResourceTranslationTest {
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testTranslatePortToNetNestedConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/porttonetconnection/nested/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslatePortToSharedNetNestedConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/porttonetconnection/shared/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslatePortToNetMultiConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/porttonetconnection/multi/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/porttonetconnection/multi/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeAttachmentImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeAttachmentImplTest.java
deleted file mode 100644
index 54c06dd0d0..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeAttachmentImplTest.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-public class ResourceTranslationCinderVolumeAttachmentImplTest extends BaseResourceTranslationTest {
-
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testTranslateAllResourcesInOneFile() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/vol_att/volume_and_attach_one_file/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/vol_att/volume_and_attach_one_file/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testVolFileIsNestedInMainHeatFile() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testVolFileAsDataOfNested() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/vol_att/nested_with_inner_vol/out";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testVolFileIsParallelToMainHeatFile() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeImplTest.java
deleted file mode 100644
index 30ccbdd53d..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationCinderVolumeImplTest.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Test;
-
-public class ResourceTranslationCinderVolumeImplTest extends BaseResourceTranslationTest {
- public ResourceTranslationCinderVolumeImplTest() {
- inputFilesPath = "/mock/services/heattotosca/cinder_volume_translation/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/cinder_volume_translation/expectedoutputfiles";
- }
-
- @Test
- public void testTranslate() throws Exception {
- testTranslation();
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceInstanceImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceInstanceImplTest.java
deleted file mode 100644
index 40f5eb1200..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceInstanceImplTest.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-/**
- * @author shiria
- * @since August 07, 2016.
- */
-public class ResourceTranslationContrailServiceInstanceImplTest
- extends BaseResourceTranslationTest {
-
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testTranslateOneServiceInstance() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateDiffServiceTemplate() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateSharedNetworkMulti() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateSameServiceTemplate() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
-
- /*
- //TODO -- need to be tested once the 2 level nested For shared resources bug will be fixed - ATTASDC-1065
- @Test
- public void testTranslateSharedNetworkNested() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
- */
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceTemplateImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceTemplateImplTest.java
deleted file mode 100644
index 42b6db0e71..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailServiceTemplateImplTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.translator.services.heattotosca.helper.ContrailTranslationHelper;
-import org.junit.Assert;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * @author shiria
- * @since August 09, 2016.
- */
-public class ResourceTranslationContrailServiceTemplateImplTest {
-
- @Rule
- public ExpectedException thrown = ExpectedException.none();
-
- @Test
- public void testStaticGetComputeNodeTypeId() throws Exception {
- Resource serviceTemplate = new Resource();
- serviceTemplate.setProperties(new HashMap<>());
- serviceTemplate.getProperties().put("image_name", "aaaa");
- String computeNodeTypeId =
- new ContrailTranslationHelper().getComputeNodeTypeId("123", serviceTemplate);
- Assert.assertEquals("org.openecomp.resource.vfc.nodes.heat.compute_123", computeNodeTypeId);
- }
-
- @Test
- public void testNamingConventionGetComputeNodeTypeId() throws Exception {
- Resource serviceTemplate = new Resource();
- serviceTemplate.setProperties(new HashMap<>());
- Map image = new HashMap<>();
- image.put("get_param", "bbb_image_name");
- serviceTemplate.getProperties().put("image_name", image);
- String computeNodeTypeId =
- new ContrailTranslationHelper().getComputeNodeTypeId("123", serviceTemplate);
- Assert.assertEquals(computeNodeTypeId, "org.openecomp.resource.vfc.nodes.heat.bbb");
- }
-
- @Test
- public void testNoNamingConventionGetComputeNodeTypeId() throws Exception {
- Resource serviceTemplate = new Resource();
- serviceTemplate.setProperties(new HashMap<>());
- Map image = new HashMap<>();
- image.put("get_file", "bbb_image");
- serviceTemplate.getProperties().put("image_name", image);
- String computeNodeTypeId =
- new ContrailTranslationHelper().getComputeNodeTypeId("123", serviceTemplate);
- Assert.assertEquals(computeNodeTypeId, "org.openecomp.resource.vfc.nodes.heat.compute_123");
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VMInterfaceImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VMInterfaceImplTest.java
deleted file mode 100644
index 95757e7cf9..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2VMInterfaceImplTest.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-/**
- * @author Avrahamg
- * @since August 10, 2016
- */
-public class ResourceTranslationContrailV2VMInterfaceImplTest extends BaseResourceTranslationTest {
-
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testTranslateVMIWithGetResource() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/contrailv2VMinterface/oneNet/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/contrailv2VMinterface/oneNet/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateVMIWithListOfNetworks() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/contrailv2VMinterface/listNet/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/contrailv2VMinterface/listNet/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronPortImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronPortImplTest.java
deleted file mode 100644
index 6e2c298346..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronPortImplTest.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Test;
-
-public class ResourceTranslationNeutronPortImplTest extends BaseResourceTranslationTest {
-
- {
- inputFilesPath = "/mock/services/heattotosca/neutron_port_translation/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/neutron_port_translation/expectedoutputfiles";
- }
-
- @Test
- public void testTranslate() throws Exception {
- testTranslation();
- }
-
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSecurityGroupImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSecurityGroupImplTest.java
deleted file mode 100644
index 1791f10b1c..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNeutronSecurityGroupImplTest.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Test;
-
-public class ResourceTranslationNeutronSecurityGroupImplTest extends BaseResourceTranslationTest {
-
- {
- inputFilesPath = "/mock/services/heattotosca/neutron_security_group_translation/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles";
- }
-
- @Test
- public void testTranslate() throws Exception {
- testTranslation();
- }
-
-
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImplTest.java
deleted file mode 100644
index aabee8f56f..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationNovaServerGroupsImplTest.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Test;
-
-public class ResourceTranslationNovaServerGroupsImplTest extends BaseResourceTranslationTest {
- {
- inputFilesPath = "/mock/services/heattotosca/novaservergroups/inputfiles";
- outputFilesPath = "/mock/services/heattotosca/novaservergroups/expectedoutputfiles";
- }
-
- @Test
- public void testTranslate() throws Exception {
- testTranslation();
- }
-
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityGroupToNovaResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityGroupToNovaResourceConnectionTest.java
deleted file mode 100644
index ce55800d3a..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityGroupToNovaResourceConnectionTest.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-public class SecurityGroupToNovaResourceConnectionTest extends BaseResourceTranslationTest {
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testSecurityGroupToPortConnectionMultiConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/securitygrouptonovaconnectionmulti/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnectionTest.java
deleted file mode 100644
index a75e0133d9..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/SecurityRulesToPortResourceConnectionTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-
-import java.io.IOException;
-
-public class SecurityRulesToPortResourceConnectionTest extends BaseResourceTranslationTest {
- @Override
- @Before
- public void setUp() throws IOException {
- // do not delete this function. it prevents the superclass setup from running
- }
-
- @Test
- public void testTranslateSecurityRuleToPortNestedConnection() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testTranslateSecurityRuleToPortSharedPortNestedConnection() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testSecurityRuleToPortConnectionMultiConnection() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
- public void testSecurityRuleToPortConnectionNestedGetResource() throws Exception {
- inputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles";
- outputFilesPath =
- "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionCatalogInstanceFullTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionCatalogInstanceFullTest.java
new file mode 100644
index 0000000000..b6d0fb8ce9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionCatalogInstanceFullTest.java
@@ -0,0 +1,53 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.fulltest;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseFullTranslationTest;
+
+import java.io.IOException;
+
+public class UnifiedCompositionCatalogInstanceFullTest extends BaseFullTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testThreeNovaSameTypeDiffGetAttrFromSameEntitiesTypes() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out";
+
+ testTranslationWithUnifiedCondition();
+ }
+
+ @Test
+ public void testThreeNovaSameTypePortsConnectedToDiffNetworks() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out";
+
+ testTranslationWithUnifiedCondition();
+ }
+
+ @Test
+ public void testThreeNovaSameTypeDiffImageName() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out";
+
+ testTranslationWithUnifiedCondition();
+ }
+
+
+
+ private void testTranslationWithUnifiedCondition() throws IOException {
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionMixPatternFullTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionMixPatternFullTest.java
new file mode 100644
index 0000000000..5db90c2230
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionMixPatternFullTest.java
@@ -0,0 +1,72 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.fulltest;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseFullTranslationTest;
+
+import java.io.IOException;
+
+public class UnifiedCompositionMixPatternFullTest extends BaseFullTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testMixPatterns() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testMixPatternsWithConnectivityBetweenPatterns() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testMixPatternsWithConnectivityAndMoreThanOneOccurenceForEachPattern()
+ throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testDuplicateResourceIdsInDiffAddOnFiles() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in";
+
+ try {
+ testTranslationWithInit();
+ }catch(Exception e){
+ Assert.assertEquals(e.getMessage(), "Resource with id lb_0_int_oam_int_0_port occures more " +
+ "than once in different addOn files");
+ }
+ }
+
+ @Test
+ public void testMixPatternsWithDependencyConnectivity() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out";
+
+ testTranslationWithInit();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionNestedSingleComputeFullTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionNestedSingleComputeFullTest.java
new file mode 100644
index 0000000000..0001ec8d54
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionNestedSingleComputeFullTest.java
@@ -0,0 +1,154 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.fulltest;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseFullTranslationTest;
+
+import java.io.IOException;
+
+public class UnifiedCompositionNestedSingleComputeFullTest extends BaseFullTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testNestedWithOneCompute() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testOneNestedWithTwoComputesOfSameType() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testOneNestedWithTwoDiffComputeTypes() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testTwoNestedNodeTemplatesOfSameType() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testTwoDiffNestedFilesWithSameComputeType() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testNestedCompositionNodesConnectedIn() throws IOException {
+ /*
+ Nested Composition + node connected In
+ a. Dependency between a nested compute and a non-nested compute resource
+ b. Dependency between a nested compute and another nested resource (same type)
+ c. Dependency between a nested compute and another nested resource (different type)
+ d. Dependency between a non-consolidation entity resource and a nested compute resource
+ e. Dependency between a non-consolidation entity resource and a non-nested compute resource
+ f. Security Rule to Port nested connection
+ g. Security Rule to Port nested shared connection
+ */
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testNestedCompositionNodesGetAttrIn() throws IOException {
+ /*
+ Nested composition with Get attribute in -
+ a. Get attribute in a non-nested compute from a nested compute resource
+ b. Get attribute in a non-nested compute from another consolidation entity resource
+ c. Get attribute in a nested compute from another nested compute resource of same type
+ d. Get attribute in a nested compute from another nested compute resource of different type
+ e. Get attribute in a nested compute from a regular consolidation entity resource
+ f. Get attribute in a non-consolidation entity resource from a nested compute resource
+ g. Get attribute in a non-consolidation entity resource from a non-nested compute resource
+ */
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testNestedCompositionOutputParamGetAttrIn() throws IOException {
+ /*
+ Nested Composition + Output Param get attribute In
+ a. From a nested resource
+ b. From another nested resource of same type (represented by same nested file)
+ c. From a nested resource of different type (represented by different nested file)
+ d. From a non-nested consolidation entity resource
+ e. From a regular non-consolidation entity resource
+ */
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testMultiLevelNestedComposition() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testThreeNestedSameTypeTwoPointintToSameNestedFile() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testThreeNestedSameTypePointingToDiffFiles() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out";
+
+ testTranslationWithInit();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionScalingInstancesFullTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionScalingInstancesFullTest.java
new file mode 100644
index 0000000000..ddff4ee477
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionScalingInstancesFullTest.java
@@ -0,0 +1,169 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.fulltest;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseFullTranslationTest;
+
+
+import java.io.IOException;
+
+public class UnifiedCompositionScalingInstancesFullTest extends BaseFullTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testComputesSameTypeWithOnePortEach() throws IOException {
+ //1. Scenario #1 - Compute type 1 – 2 nova, each one with 1 port
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesTypesTwoComputesEachWithOnePort() throws IOException {
+ //2. Scenario #2 - 2 compute types, each type has 2 computes with one port per compute
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesTypesTwoComputesEachWithOnePortWithGetAttr() throws IOException {
+ //3. Scenario #2 + between the 2 nova which has diff types there is getAttr
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesSameTypeWithOnePortOneGroupEach() throws IOException {
+ //4. Scenario #1 + group – NovaServerGroup, connected to both nova
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesSameTypeWithOnePortEachAndNodesConnectedIn() throws IOException {
+ //5. Scenario #1 + node connected In – security Rule point to both port + “resource” with
+ // dependency (depends_on) to both computes
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortNodeConnectedIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortNodeConnectedIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesSameTypeWithOnePortEachAndNodesConnectedOut() throws IOException {
+ //6. Scenario#1 + node connected Out – both port connected to same network + each compute
+ // connected to same volume
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortNodeConnectedOut/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortNodeConnectedOut/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesSameTypeWithOnePortEachAndGetAttrIn() throws IOException {
+ /*
+ 7. Scenario#1 + node get attr in – network which include
+ a. Property with getAttr from Compute1
+ b. Property with getAttr from Compute2
+ c. Property with getAttr from port
+ */
+
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortGetAttrIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortGetAttrIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesSameTypeWithOnePortEachAndGetAttrOut() throws IOException {
+ /*
+ 8. Scenario#1 + node get attr out + network
+ a. Compute1 with property1, that include getAttr from network
+ b. Compute2 with property2, that include getAttr from network
+ c. Port with property, that include getAttr from network
+ */
+
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortGetAttrOut/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortGetAttrOut/out";
+
+ testTranslationWithInit();
+ }
+
+
+ @Test
+ public void testComputesSameTypeWithOnePortEachAndOutputParamGetAttrIn() throws IOException {
+ /*
+ 9. Scenario#1 + output parameter get attr in – 3 output parameters
+ a. Output param with getAttr from Compute1
+ b. Output param with getAttr from Compute2
+ c. Output param with getAttr from Port
+ */
+
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortOutputParamGetAttrIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortOutputParamGetAttrIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputesSameTypeWithOnePortEachAndGetAttrOutBetweenConsolidationEntities() throws
+ IOException {
+ /*
+ 10. Scenario#1 + node get attr out
+ a. Compute1 with property1, that include getAttr from port1
+ b. Compute2 with property2, that include getAttr from port2
+ c. Port1 with property, that include getAttr from compute1
+ d. Port2 with property, that include getAttr from compute2
+ */
+
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortGetAttrOutComputePort/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/scalingInstances" +
+ "/oneComputeTypeOnePortGetAttrOutComputePort/out";
+
+ testTranslationWithInit();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionSingleSubstitutionFullTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionSingleSubstitutionFullTest.java
new file mode 100644
index 0000000000..477f72520a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/fulltest/UnifiedCompositionSingleSubstitutionFullTest.java
@@ -0,0 +1,227 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.fulltest;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseFullTranslationTest;
+
+import java.io.IOException;
+
+public class UnifiedCompositionSingleSubstitutionFullTest extends BaseFullTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testComputeWithTwoDifferentPortTypes() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoSamePortTypes() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoDifferentPortTypesAndNested() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoDifferentPortAndServerGroup() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoPortsDiffTypeAndNodeConnectedIn() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoPortsSameTypeAndNodeConnectedIn() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoPortsDiffTypeAndNodeConnectedOut() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoPortsSameTypeAndNodeConnectedOut() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoDifferentPortTypesAndOutParamGetAttIn() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testComputeWithTwoSamePortTypesAndOutParamGetAttIn() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testGeneralVf() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testTwoSetsOfSingle() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out";
+
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testTwoSetsOfSingleWithGetAttrBetweenThem() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testOneComputeTwoDiffPortsAndGetAttrIn() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testOneComputeTwoSimilarPortsAndGetAttrIn() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testOneComputeTwoDiffPortsAndGetAttrOut() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testOneComputeTwoSimilarPortsAndGetAttrOut() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testThreeNovaSameTypeNoConsolidation() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testThreeNovaDiffTypeWithPorts() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testThreeNovaDiffTypeWithAllConnectivities() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out";
+
+ testTranslationWithInit();
+ }
+
+ @Test
+ public void testThreeNovaSameTypeWithGetAttrOutFromPort() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in";
+ outputFilesPath =
+ "/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out";
+
+ testTranslationWithInit();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImplTest.java
new file mode 100644
index 0000000000..878183b239
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetAttrImplTest.java
@@ -0,0 +1,104 @@
+package org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+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 FunctionTranslationGetAttrImplTest extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateGetAtt() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrUC/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrUC/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateGetAttribute(TestConstants.TEST_GET_ATTR_FOR_MORE_THAN_ONE_ATTR_IN_ATTR_LIST);
+ }
+
+ @Test
+ public void testTranslateGetAttUnsupportedResource() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateGetAttribute(TestConstants.TEST_IGNORE_GET_ATTR_FROM_OUTPUT);
+ }
+
+ @Test
+ public void testTranslateGetAttUnsupportedAttr() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateGetAttribute(TestConstants.TEST_GET_ATTR_FOR_NOT_SUPPORTED_ATTR_IN_ATTR_LIST);
+ }
+
+ @Test
+ public void testTranslateGetAttNestedAttr() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/getAttrNestedAtt/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/getAttrNestedAtt/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateGetAttDynamicParam() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/getAttrDynamicParam/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/getAttrDynamicParam/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateGetAttribute(TestConstants.TEST_OUTPUT_GET_ATTR);
+ }
+
+ @Test
+ public void testTranslateGetAttOnlyResourceName() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateGetAttribute(TestConstants.TEST_GET_ATTR_FOR_ONLY_RESOURCE_NAME);
+ }
+
+ @Test
+ public void testTranslateGetAttNonePortOrCompute() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs";
+ outputFilesPath =
+ "/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateGetAttribute(TestConstants.TEST_GET_ATTR_FOR_NONE_TO_PORT_OR_COMPUTE);
+ }
+
+ @Test
+ public void testTranslateDynamicGetAttrWithEmptyMapDefaultValue() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs";
+ outputFilesPath =
+ "/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImplTest.java
new file mode 100644
index 0000000000..b79671d763
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetFileImplTest.java
@@ -0,0 +1,97 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
+import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
+import org.openecomp.sdc.translator.services.heattotosca.FunctionTranslationFactory;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+
+import java.util.HashMap;
+import java.util.List;
+
+/**
+ * @author SHIRIA
+ * @since December 18, 2016.
+ */
+public class FunctionTranslationGetFileImplTest {
+ @Test
+ public void testGetFileWithExtensionFunction() {
+ String functionName = "get_file";
+ Object function = "scripFileName.sh";
+ String heatFileName = "heatFileName";
+ HeatOrchestrationTemplate heatOrchestrationTemplate = new HeatOrchestrationTemplate();
+ NodeTemplate nodeTemplate = new NodeTemplate();
+ TranslationContext context = new TranslationContext();
+
+ testGetToscaFunctionForGetFile(functionName, function, heatFileName, heatOrchestrationTemplate,
+ nodeTemplate, context);
+ }
+
+ @Test
+ public void testGetFileWithoutExtensionFunction() {
+ String functionName = "get_file";
+ Object function = "scripFileName";
+ String heatFileName = "heatFileName";
+ HeatOrchestrationTemplate heatOrchestrationTemplate = new HeatOrchestrationTemplate();
+ NodeTemplate nodeTemplate = new NodeTemplate();
+ TranslationContext context = new TranslationContext();
+
+ //# route_targets: { "Fn::Split" : [ ",", Ref: route_targets ] }
+ testGetToscaFunctionForGetFile(functionName, function, heatFileName, heatOrchestrationTemplate,
+ nodeTemplate, context);
+ }
+
+ private void testGetToscaFunctionForGetFile(String functionName, Object function,
+ String heatFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ NodeTemplate nodeTemplate,
+ TranslationContext context) {
+ Assert.assertEquals(true, FunctionTranslationFactory.getInstance(functionName).isPresent());
+ if(FunctionTranslationFactory.getInstance(functionName).isPresent()) {
+ Object result = FunctionTranslationFactory.getInstance(functionName).get()
+ .translateFunction(null, null, null, functionName, function, heatFileName,
+ heatOrchestrationTemplate,
+ nodeTemplate, context);
+ Assert.assertNotNull(((HashMap) result).get("get_artifact"));
+ List artifactParameters = (List) ((HashMap) result).get("get_artifact");
+ Assert.assertNotNull(artifactParameters);
+ Assert.assertEquals(artifactParameters.size(), 2);
+ Assert.assertEquals(artifactParameters.get(0), ToscaConstants.MODELABLE_ENTITY_NAME_SELF);
+ Assert.assertEquals(artifactParameters.get(1), ((String) function).split("\\.")[0]);
+
+ Assert.assertNotNull(nodeTemplate.getArtifacts());
+ Assert.assertNotNull(
+ nodeTemplate.getArtifacts().get(FileUtils.getFileWithoutExtention((String) function)));
+ ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
+ Assert.assertEquals(
+ nodeTemplate.getArtifacts().get(FileUtils.getFileWithoutExtention((String) function))
+ .getFile(), "../" + toscaFileOutputService.getArtifactsFolderName() + "/" + function);
+ }
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImplTest.java
new file mode 100644
index 0000000000..981c061e0a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/functiontranslation/FunctionTranslationGetParamImplTest.java
@@ -0,0 +1,249 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.functiontranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import static org.junit.Assert.*;
+
+public class FunctionTranslationGetParamImplTest extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testStringGetParamFuncValue() throws Exception {
+ FunctionTranslationGetParamImpl translationImpl = new FunctionTranslationGetParamImpl();
+ String functionValue = "parameter1";
+
+ Object translatedFunc = translationImpl.translateFunction(null, null, null, "get_param",
+ functionValue, "dummy", null, null, null);
+
+ assertEquals(true, translatedFunc instanceof Map);
+ if (translatedFunc instanceof Map) {
+ assertNotNull(((Map) translatedFunc).get("get_input"));
+ assertEquals(functionValue, ((Map) translatedFunc).get("get_input"));
+ }
+
+ }
+
+ @Test
+ public void testListGetParamFuncValue() throws Exception {
+ FunctionTranslationGetParamImpl translationImpl = new FunctionTranslationGetParamImpl();
+ List functionValue = new ArrayList();
+ functionValue.add("parameter1");
+ functionValue.add(0);
+ functionValue.add("key1");
+
+ Object translatedFunc = translationImpl.translateFunction(null, null, null,"get_param",
+ functionValue, "dummy", null, null, null);
+
+ assertEquals(true, translatedFunc instanceof Map);
+ if (translatedFunc instanceof Map) {
+ assertNotNull(((Map) translatedFunc).get("get_input"));
+ Object translatedFunValue = ((Map) translatedFunc).get("get_input");
+ assertEquals(true, translatedFunValue instanceof List);
+ if (translatedFunValue instanceof List) {
+
+ assertEquals(functionValue.get(0), ((List) translatedFunValue).get(0));
+ assertEquals(functionValue.get(1), ((List) translatedFunValue).get(1));
+ assertEquals(functionValue.get(2), ((List) translatedFunValue).get(2));
+ }
+ }
+
+ }
+
+ @Test
+ public void testMapGetParamFuncValue() throws Exception {
+ // input heat function expression
+ //{get_param: [parameter1, {get_param:indexParam}, key1]}
+ // output translated function expression
+ //{get_input: [parameter1, {get_input:indexParam}, key1]}
+
+ FunctionTranslationGetParamImpl translationImpl = new FunctionTranslationGetParamImpl();
+ List functionValue = new ArrayList();
+ functionValue.add("parameter1");
+ Map innerParamMap = new HashMap();
+ innerParamMap.put("get_param", "indexParam");
+ functionValue.add(innerParamMap);
+ functionValue.add("key1");
+
+ Object translatedFunc = translationImpl.translateFunction(null, null, null, "get_param",
+ functionValue, "dummy", null, null, null);
+
+ assertEquals(true, translatedFunc instanceof Map);
+ if (translatedFunc instanceof Map) {
+ assertNotNull(((Map) translatedFunc).get("get_input"));
+ Object translatedFunValue = ((Map) translatedFunc).get("get_input");
+ assertEquals(true, translatedFunValue instanceof List);
+ if (translatedFunValue instanceof List) {
+ assertEquals(functionValue.get(0), ((List) translatedFunValue).get(0));
+ assertEquals(functionValue.get(2), ((List) translatedFunValue).get(2));
+ assertEquals(true, ((List) translatedFunValue).get(1) instanceof Map);
+ if (((List) translatedFunValue).get(1) instanceof Map) {
+ assertEquals(innerParamMap.get("get_param"), ((Map) ((List) translatedFunValue).get(1))
+ .get("get_input"));
+ }
+ }
+
+ }
+ }
+
+ @Test
+ public void testMapWithMapGetParamFuncValue() throws Exception {
+ // input heat function expression
+ //{get_param: [parameter1, {get_param:[parameter2, {get_param:indexParam}]}, key1]}
+ // output translated function expression
+ //{get_input: [parameter1, {get_input:[parameter2, {get_input:indexParam}]}, key1]}
+
+ FunctionTranslationGetParamImpl translationImpl = new FunctionTranslationGetParamImpl();
+ List functionValue = new ArrayList();
+ functionValue.add("parameter1");
+ Map firstInnerParamMap = new HashMap();
+ Map secondInnerParamMap = new HashMap();
+ secondInnerParamMap.put("get_param", "indexParam");
+ List innerfunction = new ArrayList();
+ innerfunction.add("parameter2");
+ innerfunction.add(secondInnerParamMap);
+ firstInnerParamMap.put("get_param", innerfunction);
+ functionValue.add(firstInnerParamMap);
+ functionValue.add("key1");
+
+ Object translatedFunc = translationImpl.translateFunction(null, null, null, "get_param",
+ functionValue, "dummy", null, null, null);
+
+ assertEquals(true, translatedFunc instanceof Map);
+ if (translatedFunc instanceof Map) {
+ assertNotNull(((Map) translatedFunc).get("get_input"));
+ Object translatedFunValue = ((Map) translatedFunc).get("get_input");
+ assertEquals(true, translatedFunValue instanceof List);
+ if (translatedFunValue instanceof List) {
+ assertEquals(functionValue.get(0), ((List) translatedFunValue).get(0));
+ assertEquals(functionValue.get(2), ((List) translatedFunValue).get(2));
+ assertEquals(true, ((List) translatedFunValue).get(1) instanceof Map);
+ if (((List) translatedFunValue).get(1) instanceof Map) {
+ assertEquals(true, ((Map) ((List) translatedFunValue).get(1)).get("get_input")
+ instanceof List);
+ List innerTranslatedFunction =
+ (List) ((Map) ((List) translatedFunValue).get(1)).get("get_input");
+ assertEquals(innerfunction.get(0), innerTranslatedFunction.get(0));
+ assertEquals(true, innerTranslatedFunction.get(1) instanceof Map);
+ assertEquals(secondInnerParamMap.get("get_param"),
+ ((Map) innerTranslatedFunction.get(1)).get("get_input"));
+ }
+ }
+
+ }
+ }
+
+ @Test
+ public void testInnerNotSupportedFuncGetParamFuncValue() throws Exception {
+ // input heat function expression
+ //{get_param: [parameter1, {str_replace: {template:$AAkgiru, AA:{get_param:prameter2}}}, key1]}
+ // output translated function expression
+ //{get_input: [parameter1, {str_replace: {template:$AAkgiru, AA:{get_input:parameter2}}}, key1]}
+
+ FunctionTranslationGetParamImpl translationImpl = new FunctionTranslationGetParamImpl();
+ List functionValue = new ArrayList();
+ functionValue.add("parameter1");
+
+ Map templateMap = new HashMap();
+ templateMap.put("template", "$AAkgiru");
+
+ Map strReplaceFuncMap = new HashMap();
+ Map getParamMapInner = new HashMap();
+ getParamMapInner.put("get_param", "parameter2");
+ templateMap.put("AA", getParamMapInner);
+
+ Map innerParamValue = new HashMap();
+ innerParamValue.putAll(templateMap);
+ innerParamValue.putAll(strReplaceFuncMap);
+
+ strReplaceFuncMap.put("str_replace", innerParamValue);
+ functionValue.add(strReplaceFuncMap);
+
+ functionValue.add("key1");
+
+ Object translatedFunc = translationImpl.translateFunction(null, null, null, "get_param",
+ functionValue, "dummy", null, null, null);
+
+ assertEquals(true, translatedFunc instanceof Map);
+ if (translatedFunc instanceof Map) {
+ assertNotNull(((Map) translatedFunc).get("get_input"));
+ Object translatedFunValue = ((Map) translatedFunc).get("get_input");
+ assertEquals(true, translatedFunValue instanceof List);
+ if (translatedFunValue instanceof List) {
+ assertEquals(functionValue.get(0), ((List) translatedFunValue).get(0));
+ assertEquals(functionValue.get(2), ((List) translatedFunValue).get(2));
+ assertEquals(true, ((List) translatedFunValue).get(1) instanceof Map);
+ if (((List) translatedFunValue).get(1) instanceof Map) {
+ assertEquals(strReplaceFuncMap.get("get_param"),
+ ((Map) ((List) translatedFunValue).get(1))
+ .get("get_input"));
+ }
+ assertEquals(true, ((List) translatedFunValue).get(1) instanceof Map);
+ if (((List) translatedFunValue).get(1) instanceof Map) {
+ assertEquals(true, ((Map) ((List) translatedFunValue).get(1)).get("str_replace") instanceof Map);
+ Map strReplacefunctionValue = (Map) ((Map) ((List) translatedFunValue).get(1)).get("str_replace");
+ assertEquals(templateMap.get("template"), strReplacefunctionValue.get("template"));
+ assertEquals(true, strReplacefunctionValue.get("AA") instanceof Map);
+ if (strReplacefunctionValue.get("AA") instanceof Map) {
+ assertEquals(getParamMapInner.get("get_param"), ((Map) strReplacefunctionValue.get
+ ("AA")).get("get_input"));
+ }
+ }
+ }
+ }
+ }
+
+ @Test
+ public void testTranslateHeatPseudoParamUsedFromMainHeat() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateHeatPseudoParamUsedFromNestedHeat() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImplTest.java
new file mode 100644
index 0000000000..9fdd2db4cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorContrailComputeImplTest.java
@@ -0,0 +1,98 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor;
+
+import org.junit.Assert;
+import org.junit.Test;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor.NameExtractorContrailComputeImpl;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author SHIRIA
+ * @since December 21, 2016.
+ */
+public class NameExtractorContrailComputeImplTest{
+
+
+ @Test
+ public void testStaticGetComputeNodeTypeId() throws Exception {
+ Resource serviceTemplateResource = new Resource();
+ serviceTemplateResource.setProperties(new HashMap<>());
+ serviceTemplateResource.getProperties().put("image_name", "aaaa");
+ String computeNodeTypeId =
+ new NameExtractorContrailComputeImpl().extractNodeTypeName(serviceTemplateResource, "123", "123");
+ Assert.assertEquals("org.openecomp.resource.vfc.nodes.heat.compute_123", computeNodeTypeId);
+ }
+
+ @Test
+ public void testComputeNodeTypeIdIsTakingFlavorNameIfImageNameIsNotAsNamingConvention()
+ throws Exception {
+ Resource serviceTemplateResource = new Resource();
+ serviceTemplateResource.setProperties(new HashMap<>());
+ serviceTemplateResource.getProperties().put("image_name", "aaaa");
+ Map flavor = new HashMap<>();
+ flavor.put("get_param", "bbb_flavor_name");
+ serviceTemplateResource.getProperties().put("flavor", flavor);
+ String computeNodeTypeId =
+ new NameExtractorContrailComputeImpl().extractNodeTypeName(serviceTemplateResource, "123", "123");
+ Assert.assertEquals("org.openecomp.resource.vfc.nodes.heat.bbb", computeNodeTypeId);
+ }
+
+ @Test
+ public void testStaticGetComputeNodeTypeIdByFlavor() throws Exception {
+ Resource serviceTemplateResource = new Resource();
+ serviceTemplateResource.setProperties(new HashMap<>());
+ serviceTemplateResource.getProperties().put("image_name", "aaaa");
+ serviceTemplateResource.getProperties().put("flavor", "aaaa_flavor_name");
+ String computeNodeTypeId =
+ new NameExtractorContrailComputeImpl().extractNodeTypeName(serviceTemplateResource, "123", "123");
+ Assert.assertEquals("org.openecomp.resource.vfc.nodes.heat.compute_123", computeNodeTypeId);
+ }
+
+
+ @Test
+ public void testNamingConventionGetComputeNodeTypeId() throws Exception {
+ Resource serviceTemplateResource = new Resource();
+ serviceTemplateResource.setProperties(new HashMap<>());
+ Map image = new HashMap<>();
+ image.put("get_param", "bbb_image_name");
+ serviceTemplateResource.getProperties().put("image_name", image);
+ String computeNodeTypeId =
+ new NameExtractorContrailComputeImpl().extractNodeTypeName(serviceTemplateResource, "123", "123");
+ Assert.assertEquals(computeNodeTypeId, "org.openecomp.resource.vfc.nodes.heat.bbb");
+ }
+
+ @Test
+ public void testNoNamingConventionGetComputeNodeTypeId() throws Exception {
+ Resource serviceTemplateResource = new Resource();
+ serviceTemplateResource.setProperties(new HashMap<>());
+ Map image = new HashMap<>();
+ image.put("get_file", "bbb_image");
+ serviceTemplateResource.getProperties().put("image_name", image);
+ String computeNodeTypeId =
+ new NameExtractorContrailComputeImpl().extractNodeTypeName(serviceTemplateResource, "123", "123");
+ Assert.assertEquals(computeNodeTypeId, "org.openecomp.resource.vfc.nodes.heat.compute_123");
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorNovaServerImplTest.java
index 1fb1b023e0..58237975b6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/helper/impl/NameExtractorServiceImplTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/nameextractor/NameExtractorNovaServerImplTest.java
@@ -1,22 +1,43 @@
-package org.openecomp.sdc.translator.services.heattotosca.helper.impl;
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.translator.services.heattotosca.Constants;
-import org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNovaServerImpl;
import org.junit.Test;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.translator.services.heattotosca.Constants;
+import org.openecomp.sdc.translator.services.heattotosca.impl.nameextractor.NameExtractorNovaServerImpl;
+import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.ResourceTranslationNovaServerImpl;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
/**
- * @author Avrahamg
- * @since August 04, 2016
+ * @author SHIRIA
+ * @since December 20, 2016.
*/
-public class NameExtractorServiceImplTest {
+public class NameExtractorNovaServerImplTest {
@Test
public void shouldReturnNamePrefixIfPropertyNameMatchWithIndex() throws Exception {
Map<String, Object> propertiesMap = new HashMap();
@@ -25,10 +46,12 @@ public class NameExtractorServiceImplTest {
String name = "avi_test_name_1";
imageMap.put("get_param", name);
propertiesMap.put(Constants.NAME_PROPERTY_NAME, imageMap);
+ Resource resource = new Resource();
+ resource.setProperties(propertiesMap);
ResourceTranslationNovaServerImpl resourceTranslationNovaServer =
new ResourceTranslationNovaServerImpl();
- String localNodeType = resourceTranslationNovaServer
- .createLocalNodeType(new ServiceTemplate(), propertiesMap, "Ignore");
+ String localNodeType =
+ new NameExtractorNovaServerImpl().extractNodeTypeName(resource, "Ignore", "Ignore");
assertTrue(localNodeType.equals("org.openecomp.resource.vfc.nodes.heat.avi_test"));
}
@@ -41,10 +64,12 @@ public class NameExtractorServiceImplTest {
List val = Arrays.asList("virc_vm_names", "2");
imageMap.put("get_param", val);
propertiesMap.put(Constants.NAME_PROPERTY_NAME, imageMap);
+ Resource resource = new Resource();
+ resource.setProperties(propertiesMap);
ResourceTranslationNovaServerImpl resourceTranslationNovaServer =
new ResourceTranslationNovaServerImpl();
- String localNodeType = resourceTranslationNovaServer
- .createLocalNodeType(new ServiceTemplate(), propertiesMap, "Ignore");
+ String localNodeType =
+ new NameExtractorNovaServerImpl().extractNodeTypeName(resource, "Ignore", "Ignore");
assertTrue(localNodeType.equals("org.openecomp.resource.vfc.nodes.heat.virc_vm"));
}
@@ -59,10 +84,12 @@ public class NameExtractorServiceImplTest {
List val = Arrays.asList("virc_vm_names", nameValMap);
nameMap.put("get_param", val);
propertiesMap.put(Constants.NAME_PROPERTY_NAME, nameMap);
+ Resource resource = new Resource();
+ resource.setProperties(propertiesMap);
ResourceTranslationNovaServerImpl resourceTranslationNovaServer =
new ResourceTranslationNovaServerImpl();
- String localNodeType = resourceTranslationNovaServer
- .createLocalNodeType(new ServiceTemplate(), propertiesMap, "Ignore");
+ String localNodeType =
+ new NameExtractorNovaServerImpl().extractNodeTypeName(resource, "Ignore", "Ignore");
assertTrue(localNodeType.equals("org.openecomp.resource.vfc.nodes.heat.virc_vm"));
}
@@ -75,10 +102,12 @@ public class NameExtractorServiceImplTest {
String name = "avi_test_names";
imageMap.put("get_param", name);
propertiesMap.put(Constants.NAME_PROPERTY_NAME, imageMap);
+ Resource resource = new Resource();
+ resource.setProperties(propertiesMap);
ResourceTranslationNovaServerImpl resourceTranslationNovaServer =
new ResourceTranslationNovaServerImpl();
- String localNodeType = resourceTranslationNovaServer
- .createLocalNodeType(new ServiceTemplate(), propertiesMap, "Ignore");
+ String localNodeType =
+ new NameExtractorNovaServerImpl().extractNodeTypeName(resource, "Ignore", "Ignore");
assertTrue(localNodeType.equals("org.openecomp.resource.vfc.nodes.heat.avi_test"));
}
@@ -94,10 +123,12 @@ public class NameExtractorServiceImplTest {
imageMap = new HashMap();
imageMap.put("get_param", flavor);
propertiesMap.put("flavor", imageMap);
+ Resource resource = new Resource();
+ resource.setProperties(propertiesMap);
ResourceTranslationNovaServerImpl resourceTranslationNovaServer =
new ResourceTranslationNovaServerImpl();
- String localNodeType = resourceTranslationNovaServer
- .createLocalNodeType(new ServiceTemplate(), propertiesMap, "Ignore");
+ String localNodeType =
+ new NameExtractorNovaServerImpl().extractNodeTypeName(resource, "Ignore", "Ignore");
assertTrue(localNodeType.equals("org.openecomp.resource.vfc.nodes.heat.avi_test2"));
}
@@ -109,10 +140,14 @@ public class NameExtractorServiceImplTest {
String name = "avi_test_namesw";
imageMap.put("get_param", name);
propertiesMap.put(Constants.NAME_PROPERTY_NAME, imageMap);
+ Resource resource = new Resource();
+ resource.setProperties(propertiesMap);
ResourceTranslationNovaServerImpl resourceTranslationNovaServer =
new ResourceTranslationNovaServerImpl();
- String localNodeType = resourceTranslationNovaServer
- .createLocalNodeType(new ServiceTemplate(), propertiesMap, "this.is.test.resource");
+ String localNodeType =
+ new NameExtractorNovaServerImpl()
+ .extractNodeTypeName(resource, "this.is.test.resource", "this.is.test.resource");
assertTrue(localNodeType.equals("org.openecomp.resource.vfc.nodes.heat.this_is_test_resource"));
}
-} \ No newline at end of file
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/BaseResourceTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseFullTranslationTest.java
index 9282d4e4eb..9f0a6d79b9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/BaseResourceTranslationTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseFullTranslationTest.java
@@ -1,32 +1,74 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import static org.junit.Assert.assertEquals;
+
+import org.apache.commons.collections4.MapUtils;
+import org.junit.Assert;
+import org.junit.Before;
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.core.translator.api.HeatToToscaTranslator;
+import org.openecomp.core.translator.datatypes.TranslatorOutput;
+import org.openecomp.core.translator.factory.HeatToToscaTranslatorFactory;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.validation.util.MessageContainerUtil;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
import org.openecomp.sdc.translator.TestUtils;
-import org.openecomp.core.translator.api.HeatToToscaTranslator;
-import org.openecomp.core.translator.datatypes.TranslatorOutput;
-import org.openecomp.core.translator.factory.HeatToToscaTranslatorFactory;
-import org.openecomp.core.utilities.file.FileUtils;
-import org.openecomp.core.validation.types.MessageContainerUtil;
-import org.apache.commons.collections4.MapUtils;
-import org.junit.Assert;
-import org.junit.Before;
-
-import java.io.*;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.services.heattotosca.ConfigConstants;
+
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
import java.net.URL;
-import java.util.*;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
-import static org.junit.Assert.assertEquals;
-public class BaseResourceTranslationTest {
+public class BaseFullTranslationTest {
protected String inputFilesPath;
protected String outputFilesPath;
+ protected TranslationContext translationContext;
+
+ private String zipFilename = "VSP.zip";
private HeatToToscaTranslator heatToToscaTranslator;
private File translatedZipFile;
@@ -38,6 +80,11 @@ public class BaseResourceTranslationTest {
initTranslatorAndTranslate();
}
+ protected void testTranslationWithInit() throws IOException {
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
protected void initTranslatorAndTranslate() throws IOException {
heatToToscaTranslator = HeatToToscaTranslatorFactory.getInstance().createInterface();
translatedZipFile = translateZipFile();
@@ -45,7 +92,8 @@ public class BaseResourceTranslationTest {
protected void testTranslation() throws IOException {
- URL url = BaseResourceTranslationTest.class.getResource(outputFilesPath);
+ URL url = BaseFullTranslationTest.class.getResource(outputFilesPath);
+ expectedResultFileNameSet = new HashSet<>();
String path = url.getPath();
File pathFile = new File(path);
@@ -85,7 +133,6 @@ public class BaseResourceTranslationTest {
}
private File translateZipFile() throws IOException {
- String zipFilename = "VSP.zip";
URL inputFilesUrl = this.getClass().getResource(inputFilesPath);
String path = inputFilesUrl.getPath();
TestUtils.addFilesToTranslator(heatToToscaTranslator, path);
@@ -93,7 +140,10 @@ public class BaseResourceTranslationTest {
Assert.assertNotNull(translatorOutput);
if (MapUtils.isNotEmpty(translatorOutput.getErrorMessages()) && MapUtils.isNotEmpty(
MessageContainerUtil
- .getMessageByLevel(org.openecomp.sdc.datatypes.error.ErrorLevel.ERROR, translatorOutput.getErrorMessages()))) {
+ .getMessageByLevel(ErrorLevel.ERROR, translatorOutput.getErrorMessages()))) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.VALIDATE_HEAT_BEFORE_TRANSLATE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't translate HEAT file");
throw new CoreException((new ErrorCode.ErrorCodeBuilder()).withMessage(
"Error in validation " + getErrorAsString(translatorOutput.getErrorMessages()))
.withId("Validation Error").withCategory(ErrorCategory.APPLICATION).build());
@@ -110,7 +160,7 @@ public class BaseResourceTranslationTest {
return file;
}
- private String getErrorAsString(Map<String, List<org.openecomp.sdc.datatypes.error.ErrorMessage>> errorMessages) {
+ private String getErrorAsString(Map<String, List<ErrorMessage>> errorMessages) {
StringBuilder sb = new StringBuilder();
errorMessages.entrySet().forEach(
entry -> sb.append("File:").append(entry.getKey()).append(System.lineSeparator())
@@ -119,9 +169,9 @@ public class BaseResourceTranslationTest {
return sb.toString();
}
- private String getErrorList(List<org.openecomp.sdc.datatypes.error.ErrorMessage> errors) {
+ private String getErrorList(List<ErrorMessage> errors) {
StringBuilder sb = new StringBuilder();
- errors.stream().forEach(
+ errors.forEach(
error -> sb.append(error.getMessage()).append("[").append(error.getLevel()).append("]")
.append(System.lineSeparator()));
return sb.toString();
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java
new file mode 100644
index 0000000000..c5fcd442cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/BaseResourceTranslationTest.java
@@ -0,0 +1,366 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.junit.Assert.assertEquals;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateComputeConnectivityIn;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateComputeConnectivityOut;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateDependsOnInConsolidationData;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateGetAttr;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateGroupsInConsolidationData;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateNestedConsolidationData;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validatePortConnectivityIn;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validatePortConnectivityOut;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validatePortsInConsolidationData;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateSubstituteMappingInConsolidationData;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateVolumeInConsolidationData;
+
+import org.apache.commons.collections4.MapUtils;
+import org.junit.Assert;
+import org.junit.Before;
+import org.openecomp.core.translator.datatypes.TranslatorOutput;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.core.validation.util.MessageContainerUtil;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestFile;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
+import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
+import org.openecomp.sdc.translator.TestUtils;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ComputeTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.ConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FileComputeConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.FilePortConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.PortTemplateConsolidationData;
+import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation.TypeComputeConsolidationData;
+import org.openecomp.sdc.translator.services.heattotosca.TranslationService;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
+
+import java.io.BufferedInputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipInputStream;
+
+
+public class BaseResourceTranslationTest {
+
+ protected String inputFilesPath;
+ protected String outputFilesPath;
+ protected TranslationContext translationContext;
+
+ private String zipFilename = "VSP.zip";
+ private TranslationService translationService;
+ private File translatedZipFile;
+
+ private Map<String, byte[]> expectedResultMap = new HashMap<>();
+ private Set<String> expectedResultFileNameSet = new HashSet<>();
+
+ private final String MANIFEST_NAME = SdcCommon.MANIFEST_NAME;
+ private String validationFilename = "validationOutput.json";
+
+ @Before
+ public void setUp() throws IOException {
+ initTranslatorAndTranslate();
+ }
+
+ protected void initTranslatorAndTranslate() throws IOException {
+ translationService = new TranslationService();
+ translationContext = new TranslationContext();
+ translatedZipFile = translateZipFile();
+ }
+
+ protected void testTranslation() throws IOException {
+
+ URL url = BaseResourceTranslationTest.class.getResource(outputFilesPath);
+
+ String path = url.getPath();
+ File pathFile = new File(path);
+ File[] files = pathFile.listFiles();
+ Assert.assertNotNull("manifest files is empty", files);
+ for (File expectedFile : files) {
+ expectedResultFileNameSet.add(expectedFile.getName());
+ try (FileInputStream input = new FileInputStream(expectedFile)) {
+ expectedResultMap.put(expectedFile.getName(), FileUtils.toByteArray(input));
+ }
+ }
+
+ try (FileInputStream fis = new FileInputStream(translatedZipFile);
+ ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis))) {
+ ZipEntry entry;
+ String name;
+ String expected;
+ String actual;
+
+ while ((entry = zis.getNextEntry()) != null) {
+
+ name = entry.getName()
+ .substring(entry.getName().lastIndexOf(File.separator) + 1, entry.getName().length());
+ if (expectedResultFileNameSet.contains(name)) {
+ expected = new String(expectedResultMap.get(name)).trim().replace("\r", "");
+ actual = new String(FileUtils.toByteArray(zis)).trim().replace("\r", "");
+ assertEquals("difference in file: " + name, expected, actual);
+
+ expectedResultFileNameSet.remove(name);
+ }
+ }
+ if (expectedResultFileNameSet.isEmpty()) {
+ expectedResultFileNameSet.forEach(System.out::println);
+ }
+ }
+ assertEquals(0, expectedResultFileNameSet.size());
+ }
+
+ private File translateZipFile() throws IOException {
+ URL inputFilesUrl = this.getClass().getResource(inputFilesPath);
+ String path = inputFilesUrl.getPath();
+ addFilesToTranslator(translationContext, path);
+ TranslatorOutput translatorOutput = translationService.translateHeatFiles(translationContext);
+ Assert.assertNotNull(translatorOutput);
+ if (MapUtils.isNotEmpty(translatorOutput.getErrorMessages()) && MapUtils.isNotEmpty(
+ MessageContainerUtil
+ .getMessageByLevel(ErrorLevel.ERROR, translatorOutput.getErrorMessages()))) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.VALIDATE_HEAT_BEFORE_TRANSLATE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't translate HEAT file");
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder()).withMessage(
+ "Error in validation " + getErrorAsString(translatorOutput.getErrorMessages()))
+ .withId("Validation Error").withCategory(ErrorCategory.APPLICATION).build());
+ }
+ File file = new File(path + "/" + zipFilename);
+ file.createNewFile();
+
+ try (FileOutputStream fos = new FileOutputStream(file)) {
+ ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
+ fos.write(
+ toscaFileOutputService.createOutputFile(translatorOutput.getToscaServiceModel(), null));
+ }
+
+ return file;
+ }
+
+ private String getErrorAsString(Map<String, List<ErrorMessage>> errorMessages) {
+ StringBuilder sb = new StringBuilder();
+ errorMessages.entrySet().forEach(
+ entry -> sb.append("File:").append(entry.getKey()).append(System.lineSeparator())
+ .append(getErrorList(entry.getValue())));
+
+ return sb.toString();
+ }
+
+ private String getErrorList(List<ErrorMessage> errors) {
+ StringBuilder sb = new StringBuilder();
+ errors.forEach(
+ error -> sb.append(error.getMessage()).append("[").append(error.getLevel()).append("]")
+ .append(System.lineSeparator()));
+ return sb.toString();
+ }
+
+ public void addFilesToTranslator(TranslationContext translationContext, String path)
+ throws IOException {
+ File manifestFile = new File(path);
+ File[] files = manifestFile.listFiles();
+ byte[] fileContent;
+
+ Assert.assertNotNull("manifest files is empty", files);
+
+ for (File file : files) {
+
+ try (FileInputStream fis = new FileInputStream(file)) {
+
+ fileContent = FileUtils.toByteArray(fis);
+
+ if (file.getName().equals(MANIFEST_NAME)) {
+ addManifest(translationContext, MANIFEST_NAME, fileContent);
+ } else {
+ if (!file.getName().equals(zipFilename) && (!file.getName().equals(validationFilename))) {
+ addFile(translationContext, file.getName(), fileContent);
+ }
+ }
+ }
+ }
+ }
+
+ public static void addManifest(TranslationContext translationContext,
+ String name, byte[] content) {
+ ManifestContent manifestData = JsonUtil.json2Object(new String(content), ManifestContent.class);
+ ManifestFile manifest = new ManifestFile();
+ manifest.setName(name);
+ manifest.setContent(manifestData);
+ translationContext.setManifest(manifest);
+ translationContext.addFile(name, content);
+ addFilesFromManifestToTranslationContextManifestFilesMap(translationContext, manifestData
+ .getData());
+ }
+
+ public static void addFile(TranslationContext translationContext,
+ String name, byte[] content) {
+ translationContext.addFile(name, content);
+ }
+
+ private static void addFilesFromManifestToTranslationContextManifestFilesMap(TranslationContext
+ translationContext, List<FileData> fileDataListFromManifest) {
+ for (FileData fileFromManfiest : fileDataListFromManifest) {
+ translationContext.addManifestFile(fileFromManfiest.getFile(), fileFromManfiest.getType());
+ }
+ }
+
+ public void validateSubsMappingInConsolidationData(){
+ ConsolidationData consolidationData = translationContext.getConsolidationData();
+ Map<String, ServiceTemplate> expectedServiceTemplateModels = TestUtils.getServiceTemplates
+ (expectedResultMap);
+ Assert.assertNotNull(consolidationData);
+ validateSubstituteMappingInConsolidationData(consolidationData,expectedServiceTemplateModels);
+ }
+
+ public void validateComputeTemplateConsolidationData(ConsolidationDataValidationType
+ validationType,
+ String testName) {
+ ConsolidationData consolidationData = translationContext.getConsolidationData();
+ Map<String, ServiceTemplate> expectedServiceTemplateModels = TestUtils.getServiceTemplates
+ (expectedResultMap);
+ Assert.assertNotNull(consolidationData);
+ Assert.assertNotNull(consolidationData.getComputeConsolidationData());
+ Set<String> serviceTemplateFileNames = consolidationData.getComputeConsolidationData()
+ .getAllServiceTemplateFileNames();
+ Assert.assertNotNull(serviceTemplateFileNames);
+ for(String serviceTemplateName : serviceTemplateFileNames){
+ Assert.assertTrue(expectedServiceTemplateModels.containsKey(serviceTemplateName));
+ ServiceTemplate expectedServiceTemplate = expectedServiceTemplateModels.get
+ (serviceTemplateName);
+ FileComputeConsolidationData fileComputeConsolidationData = consolidationData
+ .getComputeConsolidationData().getFileComputeConsolidationData(serviceTemplateName);
+ Assert.assertNotNull(fileComputeConsolidationData);
+ Set<String> computeTypes = fileComputeConsolidationData.getAllComputeTypes();
+ Assert.assertNotNull(computeTypes);
+ for(String computeType : computeTypes) {
+ TypeComputeConsolidationData typeComputeConsolidationData = fileComputeConsolidationData
+ .getTypeComputeConsolidationData(computeType);
+ Assert.assertNotNull(typeComputeConsolidationData);
+
+ Set<String> computeNodeTemplateIds = typeComputeConsolidationData
+ .getAllComputeNodeTemplateIds();
+ Assert.assertNotNull(computeNodeTemplateIds);
+ Assert.assertNotEquals(computeNodeTemplateIds.size(), 0);
+
+ for(String computeNodeTemplateId : computeNodeTemplateIds) {
+ ComputeTemplateConsolidationData computeTemplateConsolidationData =
+ typeComputeConsolidationData.getComputeTemplateConsolidationData
+ (computeNodeTemplateId);
+ switch(validationType){
+ case VALIDATE_GROUP:
+ validateGroupsInConsolidationData(computeNodeTemplateId,
+ computeTemplateConsolidationData, expectedServiceTemplate);
+ break;
+ case VALIDATE_PORT:
+ validatePortsInConsolidationData(computeNodeTemplateId,
+ computeTemplateConsolidationData,
+ expectedServiceTemplate);
+ break;
+ case VALIDATE_VOLUME:
+ validateVolumeInConsolidationData(computeNodeTemplateId,
+ computeTemplateConsolidationData, expectedServiceTemplate, testName);
+ break;
+ case VALIDATE_CONNECTIVITY:
+ validateComputeConnectivityIn(computeTemplateConsolidationData,
+ expectedServiceTemplate);
+ validateComputeConnectivityOut(computeNodeTemplateId,computeTemplateConsolidationData,
+ expectedServiceTemplate);
+ break;
+ case VALIDATE_DEPENDS_ON:
+ validateDependsOnInConsolidationData(computeNodeTemplateId,
+ computeTemplateConsolidationData,
+ expectedServiceTemplate, testName);
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ public void validateGetAttribute(String testName){
+ Map<String, ServiceTemplate> expectedServiceTemplateModels = TestUtils.getServiceTemplates
+ (expectedResultMap);
+ validateGetAttr(translationContext,expectedServiceTemplateModels,testName);
+ }
+
+ public void validateNestedTemplateConsolidationData(String testName){
+ validateNestedConsolidationData(translationContext, testName);
+ }
+
+ public void validatePortTemplateConsolidationData(ConsolidationDataValidationType
+ validationType,
+ String testName) {
+ ConsolidationData consolidationData = translationContext.getConsolidationData();
+ Map<String, ServiceTemplate> expectedServiceTemplateModels = TestUtils.getServiceTemplates
+ (expectedResultMap);
+ Assert.assertNotNull(consolidationData);
+ Assert.assertNotNull(consolidationData.getPortConsolidationData());
+ Set<String> serviceTemplateFileNames = consolidationData.getPortConsolidationData()
+ .getAllServiceTemplateFileNames();
+ Assert.assertNotNull(serviceTemplateFileNames);
+ for(String serviceTemplateName : serviceTemplateFileNames){
+ Assert.assertTrue(expectedServiceTemplateModels.containsKey(serviceTemplateName));
+ ServiceTemplate expectedServiceTemplate = expectedServiceTemplateModels.get
+ (serviceTemplateName);
+ FilePortConsolidationData filePortConsolidationData = consolidationData
+ .getPortConsolidationData().getFilePortConsolidationData(serviceTemplateName);
+ Assert.assertNotNull(filePortConsolidationData);
+
+ Set<String> portNodeTemplateIds = filePortConsolidationData.getAllPortNodeTemplateIds();
+ Assert.assertNotNull(portNodeTemplateIds);
+ Assert.assertNotEquals(portNodeTemplateIds.size(), 0);
+
+ for(String portNodeTemplateId : portNodeTemplateIds) {
+ PortTemplateConsolidationData portTemplateConsolidationData =
+ filePortConsolidationData.getPortTemplateConsolidationData(portNodeTemplateId);
+ switch(validationType){
+ case VALIDATE_CONNECTIVITY:
+ validatePortConnectivityIn(portTemplateConsolidationData,expectedServiceTemplate);
+ validatePortConnectivityOut(portNodeTemplateId, portTemplateConsolidationData,
+ expectedServiceTemplate);
+ break;
+ }
+ }
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VlanToInterfaceResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VlanToInterfaceResourceConnectionTest.java
new file mode 100644
index 0000000000..a6944bacad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VlanToInterfaceResourceConnectionTest.java
@@ -0,0 +1,77 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import java.io.IOException;
+
+/**
+ * @author SHIRIA
+ * @since December 06, 2016.
+ */
+public class ContrailV2VlanToInterfaceResourceConnectionTest extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanToInterfaceNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanToNetMultiNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVTSBCVendorHeat() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VmInterfaceToNetResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VmInterfaceToNetResourceConnectionTest.java
new file mode 100644
index 0000000000..86e9afbbe0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ContrailV2VmInterfaceToNetResourceConnectionTest.java
@@ -0,0 +1,138 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import java.io.IOException;
+
+
+public class ContrailV2VmInterfaceToNetResourceConnectionTest extends BaseResourceTranslationTest {
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateVMIToNetNestedConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanToNetNestedConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateVMIToNetMultiNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanToNetMultiNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateVMIToSharedNetNestedConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanToSharedNetNestedConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateVMIToNetSharedMultiNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateVMIToNetSharedAddOnConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanToNetSharedAddOnConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateVMIToNetArrayParameterConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/DependsOnResourceBaseTranslationlTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/DependsOnResourceBaseTranslationlTest.java
new file mode 100644
index 0000000000..117dd0cd59
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/DependsOnResourceBaseTranslationlTest.java
@@ -0,0 +1,148 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_INVALID_DEPENDENCY_CANDIDATE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_MULTIPLE_COMPUTE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_IN;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_IN_AND_OUT;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODES_CONNECTED_OUT;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NODE_TEMPLATE_TRANSLATION_ORDER_INVARIANCE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_DEPENDS_ON_NO_DEPENDENCY;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
+
+import java.io.IOException;
+
+
+public class DependsOnResourceBaseTranslationlTest extends BaseResourceTranslationTest {
+ @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/services/heattotosca/baseResourceTranslation/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testDependsOnConsolidationNodesConnectedOut() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/nodesConnectedOut/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/nodesConnectedOut/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
+ TEST_DEPENDS_ON_NODES_CONNECTED_OUT);
+ }
+
+ @Test
+ public void testDependsOnConsolidationNodesConnectedIn() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/nodesConnectedIn/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/nodesConnectedIn/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
+ TEST_DEPENDS_ON_NODES_CONNECTED_IN);
+ }
+
+ @Test
+ public void testDependsOnConsolidationNodesConnectedInAndOut() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/nodesConnectedInOut/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/nodesConnectedInOut/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
+ TEST_DEPENDS_ON_NODES_CONNECTED_IN_AND_OUT);
+ }
+
+ @Test
+ public void testDependsOnConsolidationNoDependency() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/noDependency/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/noDependency/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
+ TEST_DEPENDS_ON_NO_DEPENDENCY);
+ }
+
+ @Test
+ public void testDependsOnConsolidationInvalidDependencyCandidate() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/noDependency/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/noDependency/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
+ TEST_DEPENDS_ON_INVALID_DEPENDENCY_CANDIDATE);
+ }
+
+ @Test
+ public void testDependsOnConsolidationMultipleCompute() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/multiplecompute/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
+ TEST_DEPENDS_ON_MULTIPLE_COMPUTE);
+ }
+
+ @Test
+ public void testDependsOnNodeTemplateTranslationOrderInvariance() throws Exception {
+ //Tests that the resource dependency is independent of the order of resource translation
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/translationorderinvariance/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/translationorderinvariance/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_DEPENDS_ON,
+ TEST_DEPENDS_ON_NODE_TEMPLATE_TRANSLATION_ORDER_INVARIANCE);
+ }
+
+ @Test
+ public void testDependsOnRemoveDependencyForInvalidCandidates() throws Exception {
+ //Tests the deletion of dependencies of Compute->Compute, Compute->Port, Port->Port,
+ // Port->Compute from the original tosca data model
+ inputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/removeInvalidDependencyFromTosca/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/buildconsolidationdata/dependsonresource" +
+ "/removeInvalidDependencyFromTosca/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/MultipleHeatTranslationTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/MultipleHeatTranslationTest.java
new file mode 100644
index 0000000000..eae9d5877a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/MultipleHeatTranslationTest.java
@@ -0,0 +1,52 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.IOException;
+
+
+public class MultipleHeatTranslationTest extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateBaseHeats() throws Exception {
+ inputFilesPath = "/mock/multiHeat/allHeatsAreBase/inputs";
+ outputFilesPath = "/mock/multiHeat/allHeatsAreBase/expectedOutput/";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateOneOutOfFourFilesIsNotBase() throws Exception {
+ inputFilesPath = "/mock/multiHeat/referencedHeatResources/inputs";
+ outputFilesPath = "/mock/multiHeat/referencedHeatResources/expectedOutput/";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaToVolResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/NovaToVolResourceConnectionTest.java
index 93a8668a2f..fe6d68aa1b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/NovaToVolResourceConnectionTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/NovaToVolResourceConnectionTest.java
@@ -1,14 +1,31 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
-/**
- * @author avrahamg
- * @since July 26, 2016
- */
+
public class NovaToVolResourceConnectionTest extends BaseResourceTranslationTest {
@Override
@Before
@@ -17,10 +34,10 @@ public class NovaToVolResourceConnectionTest extends BaseResourceTranslationTest
}
@Test
- public void testNovaToVolumeConnectionMultiConnection() throws Exception {
- inputFilesPath = "/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles";
+ public void testNovaToVolumeConnectionSharedAddOnConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles";
outputFilesPath =
- "/mock/services/heattotosca/novatovolumeconnection/multiconnection/expectedoutputfiles";
+ "/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/expectedoutputfiles";
initTranslatorAndTranslate();
testTranslation();
}
@@ -45,6 +62,7 @@ public class NovaToVolResourceConnectionTest extends BaseResourceTranslationTest
"/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles";
initTranslatorAndTranslate();
testTranslation();
+ validateSubsMappingInConsolidationData();
}
@Test
@@ -55,6 +73,7 @@ public class NovaToVolResourceConnectionTest extends BaseResourceTranslationTest
"/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles";
initTranslatorAndTranslate();
testTranslation();
+ validateSubsMappingInConsolidationData();
}
@Test
@@ -65,6 +84,7 @@ public class NovaToVolResourceConnectionTest extends BaseResourceTranslationTest
"/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles";
initTranslatorAndTranslate();
testTranslation();
+ validateSubsMappingInConsolidationData();
}
@Test
@@ -76,6 +96,7 @@ public class NovaToVolResourceConnectionTest extends BaseResourceTranslationTest
"/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles";
initTranslatorAndTranslate();
testTranslation();
+ validateSubsMappingInConsolidationData();
}
@Test
@@ -86,6 +107,42 @@ public class NovaToVolResourceConnectionTest extends BaseResourceTranslationTest
"/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles";
initTranslatorAndTranslate();
testTranslation();
+ validateSubsMappingInConsolidationData();
+ }
+
+ @Test
+ public void testTranslateNovaToVolumeNestedMultiLevelConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateSubsMappingInConsolidationData();
}
-} \ No newline at end of file
+ @Test
+ public void testTranslateNovaToVolumeSharedNestedMultiLevelConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateSubsMappingInConsolidationData();
+ }
+
+ @Test
+ public void testTranslateNovaToVolumeInnerHeatVolumeNestedMultiLevelConnection()
+ throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateSubsMappingInConsolidationData();
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToContrailV2VirtualNetworkResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToContrailV2VirtualNetworkResourceConnectionTest.java
new file mode 100644
index 0000000000..bc8c3385f1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToContrailV2VirtualNetworkResourceConnectionTest.java
@@ -0,0 +1,66 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.IOException;
+
+
+public class PortToContrailV2VirtualNetworkResourceConnectionTest
+ extends BaseResourceTranslationTest {
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testPortToNetNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testPortToSharedNetNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testPortToNetSharedAddOnConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToNetResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToNetResourceConnectionTest.java
new file mode 100644
index 0000000000..828904e545
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/PortToNetResourceConnectionTest.java
@@ -0,0 +1,78 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.IOException;
+
+
+public class PortToNetResourceConnectionTest extends BaseResourceTranslationTest {
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslatePortToNetNestedConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/porttonetconnection/nested/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslatePortToNetNestedMultiLevelsConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslatePortToNetSharedNestedMultiLevelsConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslatePortToSharedNetNestedConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/porttonetconnection/shared/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslatePortToNetSharedAddOnConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/porttonetconnection/sharedAddOn/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeAttachmentImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeAttachmentImplTest.java
new file mode 100644
index 0000000000..786b613d0f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeAttachmentImplTest.java
@@ -0,0 +1,85 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_VOLUME_NEGATIVE;
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_VOLUME_POSITIVE;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
+
+import java.io.IOException;
+
+
+public class ResourceTranslationCinderVolumeAttachmentImplTest extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateAllResourcesInOneFile() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_VOLUME,
+ TEST_VOLUME_POSITIVE);
+ }
+
+ @Test
+ public void testVolFileIsNestedInMainHeatFile() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_VOLUME,
+ TEST_VOLUME_POSITIVE);
+ }
+
+ @Test
+ public void testVolFileAsDataOfNested() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_VOLUME,
+ TEST_VOLUME_POSITIVE);
+ }
+
+ @Test
+ public void testVolFileIsParallelToMainHeatFile() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_VOLUME,
+ TEST_VOLUME_NEGATIVE);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeImplTest.java
new file mode 100644
index 0000000000..6afb3cf5bd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationCinderVolumeImplTest.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Test;
+
+
+public class ResourceTranslationCinderVolumeImplTest extends BaseResourceTranslationTest {
+ public ResourceTranslationCinderVolumeImplTest() {
+ inputFilesPath = "/mock/services/heattotosca/cinder_volume_translation/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/cinder_volume_translation/expectedoutputfiles";
+ }
+
+ @Test
+ public void testTranslate() throws Exception {
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceInstanceImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceInstanceImplTest.java
new file mode 100644
index 0000000000..723766ba78
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailServiceInstanceImplTest.java
@@ -0,0 +1,99 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.IOException;
+
+
+public class ResourceTranslationContrailServiceInstanceImplTest
+ extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateOneServiceInstance() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateDiffServiceTemplate() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateSharedNetworkMulti() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateSameServiceTemplate() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+
+ @Test
+ public void testTranslateConnectToNetworkMultiNested() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testTranslateConnectToSharedNetworkMultiNested() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2Test.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2Test.java
index e4e1ad9216..fe47858727 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationContrailV2Test.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2Test.java
@@ -1,4 +1,24 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
import org.junit.Before;
import org.junit.Test;
@@ -53,4 +73,4 @@ public class ResourceTranslationContrailV2Test extends BaseResourceTranslationTe
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VlanSubInterfaceImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VlanSubInterfaceImplTest.java
new file mode 100644
index 0000000000..796bb82dbd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VlanSubInterfaceImplTest.java
@@ -0,0 +1,62 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import java.io.IOException;
+
+/**
+ * @author SHIRIA
+ * @since December 04, 2016.
+ */
+public class ResourceTranslationContrailV2VlanSubInterfaceImplTest extends
+ BaseResourceTranslationTest {
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanSubInterfaceWithGetResource() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/contrailv2Vlan/oneInterface/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ //todo - remove the ignore once we will support VMI as sub port
+ @Ignore
+ @Test
+ public void testTranslateVlanSubInterfaceWithListOfInterfaceAndNetworks() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrailv2Vlan/listInterface/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VmInterfaceImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VmInterfaceImplTest.java
new file mode 100644
index 0000000000..3e69ed17c0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationContrailV2VmInterfaceImplTest.java
@@ -0,0 +1,113 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_CONNECTIVITY_POSITIVE;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
+
+import java.io.IOException;
+
+/**
+ * @author Avrahamg
+ * @since August 10, 2016
+ */
+public class ResourceTranslationContrailV2VmInterfaceImplTest extends BaseResourceTranslationTest {
+
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateVMIWithGetResource() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/contrailv2VMinterface/oneNet/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/contrailv2VMinterface/oneNet/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validatePortTemplateConsolidationData(ConsolidationDataValidationType
+ .VALIDATE_CONNECTIVITY, TEST_CONNECTIVITY_POSITIVE);
+ }
+
+ @Test
+ public void testTranslateVMIWithListOfNetworks() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/contrailv2VMinterface/listNet/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/listNet/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validatePortTemplateConsolidationData(ConsolidationDataValidationType
+ .VALIDATE_CONNECTIVITY, TEST_CONNECTIVITY_POSITIVE);
+ }
+
+ @Test
+ public void testMacAddressesValueMapOfListWithOneItem() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testMacAddressesValueMapOfListWithTwoItems() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testMacAddressesValueMapOfListWithStaticValue() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testMacAddressesValueNotList() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testMacAddressesValueInProperForm() throws IOException {
+ inputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronPortImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronPortImplTest.java
new file mode 100644
index 0000000000..854a2632b3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronPortImplTest.java
@@ -0,0 +1,60 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_CONNECTIVITY_POSITIVE;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
+
+import java.io.IOException;
+
+
+public class ResourceTranslationNeutronPortImplTest extends BaseResourceTranslationTest {
+
+ @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/services/heattotosca/neutron_port_translation/inputfiles";
+ outputFilesPath = "/mock/services/heattotosca/neutron_port_translation/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validatePortTemplateConsolidationData(ConsolidationDataValidationType
+ .VALIDATE_CONNECTIVITY, TEST_CONNECTIVITY_POSITIVE);
+ }
+
+ @Test
+ public void testTranslateSecure() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/neutron_security_group_translation/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validatePortTemplateConsolidationData(ConsolidationDataValidationType
+ .VALIDATE_CONNECTIVITY, TEST_CONNECTIVITY_POSITIVE);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSecurityGroupImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSecurityGroupImplTest.java
new file mode 100644
index 0000000000..a0766d99ba
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNeutronSecurityGroupImplTest.java
@@ -0,0 +1,40 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Test;
+
+
+public class ResourceTranslationNeutronSecurityGroupImplTest extends BaseResourceTranslationTest {
+
+ {
+ inputFilesPath = "/mock/services/heattotosca/neutron_security_group_translation/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles";
+ }
+
+ @Test
+ public void testTranslate() throws Exception {
+ testTranslation();
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerGroupsImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerGroupsImplTest.java
new file mode 100644
index 0000000000..03b9402e01
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNovaServerGroupsImplTest.java
@@ -0,0 +1,72 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants.TEST_GROUP_POSITIVE;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataValidationType;
+
+import java.io.IOException;
+
+
+public class ResourceTranslationNovaServerGroupsImplTest extends BaseResourceTranslationTest {
+
+ @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/services/heattotosca/novaservergroups/staticPolicy/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/novaservergroups/staticPolicy/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_GROUP,
+ TEST_GROUP_POSITIVE);
+ }
+
+ @Test
+ public void testTranslateDynamicPolicy() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/novaservergroups/dynamicPolicy/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_GROUP,
+ TEST_GROUP_POSITIVE);
+ }
+
+ @Test
+ public void testTranslateServerGroupShared() throws IOException {
+ inputFilesPath = "/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/novaservergroups/sharedServerGroup/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateComputeTemplateConsolidationData(ConsolidationDataValidationType.VALIDATE_GROUP,
+ TEST_GROUP_POSITIVE);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationResourceGroupImplTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImplTest.java
index de1b0bfe29..1488edc16e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/ResourceTranslationResourceGroupImplTest.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImplTest.java
@@ -1,6 +1,25 @@
-package org.openecomp.sdc.translator.services.heattotosca.impl;
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
-import org.openecomp.sdc.common.errors.CoreException;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -10,10 +29,6 @@ import org.mockito.runners.MockitoJUnitRunner;
import java.io.IOException;
-/**
- * @author shiria
- * @since July 21, 2016.
- */
@RunWith(MockitoJUnitRunner.class)
public class ResourceTranslationResourceGroupImplTest extends BaseResourceTranslationTest {
@Rule
@@ -87,18 +102,6 @@ public class ResourceTranslationResourceGroupImplTest extends BaseResourceTransl
}
@Test
- public void testTranslateResourceGroupInvalidIndexVar() throws Exception {
- thrown.expect(CoreException.class);
- thrown.expectMessage(
- "'index_var' property has invalid value. Actual value is '{get_param=index_parameter}' while 'String' value expected.");
-
- inputFilesPath = "/mock/heat/nested/resourceGroupInvalid/inputs";
- outputFilesPath = "/mock/heat/nested/resourceGroupInvalid/expectedoutputfiles";
- initTranslatorAndTranslate();
- testTranslation();
- }
-
- @Test
public void testTranslateMDNS() throws Exception {
inputFilesPath = "/mock/heat/nested/resourceGroupMDNS/inputs";
outputFilesPath = "/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles";
@@ -107,4 +110,4 @@ public class ResourceTranslationResourceGroupImplTest extends BaseResourceTransl
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityGroupToNovaResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityGroupToNovaResourceConnectionTest.java
new file mode 100644
index 0000000000..3aa8cf5545
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityGroupToNovaResourceConnectionTest.java
@@ -0,0 +1,44 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.IOException;
+
+public class SecurityGroupToNovaResourceConnectionTest extends BaseResourceTranslationTest {
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testSecurityGroupToPortConnectionAddOnConnection() throws Exception {
+ inputFilesPath = "/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/securityGroupToNovaAddOn/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityRulesToPortResourceConnectionTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityRulesToPortResourceConnectionTest.java
new file mode 100644
index 0000000000..724f6247af
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/SecurityRulesToPortResourceConnectionTest.java
@@ -0,0 +1,109 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+
+import static org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil.validateNestedNodesConnectedInSecurityRuleToPort;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants;
+
+import java.io.IOException;
+
+
+public class SecurityRulesToPortResourceConnectionTest extends BaseResourceTranslationTest {
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
+ }
+
+ @Test
+ public void testTranslateSecurityRuleToPortNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateNestedNodesConnectedInSecurityRuleToPort(TestConstants
+ .TEST_SECURITY_RULE_PORT_NESTED_CONNECTION, translationContext);
+ }
+
+ @Test
+ public void testTranslateSecurityRuleToPortSharedPortNestedConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateNestedNodesConnectedInSecurityRuleToPort(TestConstants
+ .TEST_SECURITY_RULE_PORT_NESTED_SHARED_PORT, translationContext);
+ }
+
+ @Test
+ public void testSecurityRuleToPortConnectionSharedAddOnConnection() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+ @Test
+ public void testSecurityRuleToPortConnectionNestedGetResource() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out";
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
+
+
+ @Test
+ public void testSecurityRuleToPortConnectionNestedMultiLevelsGetResource() throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateNestedNodesConnectedInSecurityRuleToPort(TestConstants
+ .TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_CONNECTION, translationContext);
+ }
+
+ @Test
+ public void testSecurityRuleToPortConnectionSharedNestedMultiLevelsGetResource()
+ throws Exception {
+ inputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles";
+ outputFilesPath =
+ "/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles";
+ initTranslatorAndTranslate();
+ testTranslation();
+ validateNestedNodesConnectedInSecurityRuleToPort(TestConstants
+ .TEST_SECURITY_RULE_PORT_MULTI_LEVEL_NESTED_SHARED_PORT, translationContext);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverterTest.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverterTest.java
deleted file mode 100644
index 7fccd6c080..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/services/heattotosca/mapping/TranslatorHeatToToscaFunctionConverterTest.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package org.openecomp.sdc.translator.services.heattotosca.mapping;
-
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.tosca.services.ToscaFileOutputService;
-import org.openecomp.sdc.tosca.services.impl.ToscaFileOutputServiceCsarImpl;
-import org.openecomp.sdc.translator.services.heattotosca.TranslationContext;
-import org.openecomp.core.utilities.file.FileUtils;
-import org.junit.Assert;
-import org.junit.Test;
-
-import java.util.HashMap;
-import java.util.List;
-
-public class TranslatorHeatToToscaFunctionConverterTest {
-
- @Test
- public void testGetFileWithExtensionFunction() {
- String functionName = "get_file";
- Object function = "scripFileName.sh";
- String heatFileName = "heatFileName";
- HeatOrchestrationTemplate heatOrchestrationTemplate = new HeatOrchestrationTemplate();
- NodeTemplate nodeTemplate = new NodeTemplate();
- TranslationContext context = new TranslationContext();
-
- testGetToscaFunctionForGetFile(functionName, function, heatFileName, heatOrchestrationTemplate,
- nodeTemplate, context);
- }
-
- @Test
- public void testGetFileWithoutExtensionFunction() {
- String functionName = "get_file";
- Object function = "scripFileName";
- String heatFileName = "heatFileName";
- HeatOrchestrationTemplate heatOrchestrationTemplate = new HeatOrchestrationTemplate();
- NodeTemplate nodeTemplate = new NodeTemplate();
- TranslationContext context = new TranslationContext();
-
- //# route_targets: { "Fn::Split" : [ ",", Ref: route_targets ] }
- testGetToscaFunctionForGetFile(functionName, function, heatFileName, heatOrchestrationTemplate,
- nodeTemplate, context);
- }
-
- private void testGetToscaFunctionForGetFile(String functionName, Object function,
- String heatFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- NodeTemplate nodeTemplate,
- TranslationContext context) {
- Object result = TranslatorHeatToToscaFunctionConverter
- .getToscaFunction(functionName, function, heatFileName, heatOrchestrationTemplate,
- nodeTemplate, context);
- Assert.assertNotNull(((HashMap) result).get("get_artifact"));
- List artifactParameters = (List) ((HashMap) result).get("get_artifact");
- Assert.assertNotNull(artifactParameters);
- Assert.assertEquals(artifactParameters.size(), 2);
- Assert.assertEquals(artifactParameters.get(0), ToscaConstants.MODELABLE_ENTITY_NAME_SELF);
- Assert.assertEquals(artifactParameters.get(1), ((String) function).split("\\.")[0]);
-
- Assert.assertNotNull(nodeTemplate.getArtifacts());
- Assert.assertNotNull(
- nodeTemplate.getArtifacts().get(FileUtils.getFileWithoutExtention((String) function)));
- ToscaFileOutputService toscaFileOutputService = new ToscaFileOutputServiceCsarImpl();
- Assert.assertEquals(
- nodeTemplate.getArtifacts().get(FileUtils.getFileWithoutExtention((String) function))
- .getFile(), "../" + toscaFileOutputService.getArtifactsFolderName() + "/" + function);
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/logback.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/logback.xml
new file mode 100644
index 0000000000..03ce9d1243
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/logback.xml
@@ -0,0 +1,13 @@
+<!-- only one line, shut up logback ! -->
+<configuration>
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <Pattern>
+ %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
+ </Pattern>
+ </encoder>
+ </appender>
+ <root level="off">
+ <appender-ref ref="STDOUT" />
+ </root>
+</configuration> \ 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/multi/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 9e0e6efecd..f8f5764af2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1_2:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,47 +11,83 @@ node_types:
pcm_flavor_name:
type: string
description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
pcm_image_name:
type: string
description: PCRF CM image name
+ required: true
+ status: SUPPORTED
pcm_vol:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_ip:
type: string
+ required: true
+ status: SUPPORTED
oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
attributes:
server_pcm_id:
type: string
description: the pcm nova service id
+ status: SUPPORTED
requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_pcm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -83,16 +95,163 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- endpoint_server_pcm:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -101,6 +260,132 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_pcm:
type: tosca.capabilities.Container
valid_source_types:
@@ -108,8 +393,21 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_pcm:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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
@@ -118,13 +416,68 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_0:
- type: tosca.capabilities.Attachment
+ network.outgoing.bytes.rate_pcm_port_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_pcm_port_1:
- type: tosca.capabilities.Attachment
+ disk.device.capacity_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -134,54 +487,94 @@ node_types:
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
oam_net_gw:
type: string
description: CPS network gateway
+ required: true
+ status: SUPPORTED
pcm_image_name:
type: string
description: PCRF CM image name
+ required: true
+ status: SUPPORTED
security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcm_flavor_name:
type: string
description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
pcm_vol:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_ip:
type: string
description: OAM network ip
+ required: true
+ status: SUPPORTED
oam_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
attributes:
server_pcm_id:
type: string
description: the pcm nova service id
+ status: SUPPORTED
requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_pcm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -189,16 +582,163 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- endpoint_server_pcm:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -207,6 +747,132 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_pcm:
type: tosca.capabilities.Container
valid_source_types:
@@ -214,8 +880,21 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_pcm:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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
@@ -224,13 +903,68 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_0:
- type: tosca.capabilities.Attachment
+ network.outgoing.bytes.rate_pcm_port_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_pcm_port_1:
- type: tosca.capabilities.Attachment
+ disk.device.capacity_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/multi/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/MainServiceTemplate.yaml
index a0063b174e..d61871c767 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
oam_net_ips:
@@ -222,19 +198,19 @@ topology_template:
cps_net_mask:
get_input: cps_net_mask
groups:
- hot-nimbus-pcm_v0.4_2:
+ hot-nimbus-pcm_v0.4_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v0.4_2.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
description: heat template that creates PCRF Cluman stack
members:
- - server_pcm_004
- - server_pcm_003
- hot-nimbus-pcm_v0.4:
+ - server_pcm_002
+ - server_pcm_001
+ hot-nimbus-pcm_v0.4_2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4_2.yaml
description: heat template that creates PCRF Cluman stack
members:
- - server_pcm_002
- - server_pcm_001 \ No newline at end of file
+ - server_pcm_004
+ - server_pcm_003 \ 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/multi/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
index 1b03021742..f0fffa18ed 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -117,11 +93,21 @@ topology_template:
pcm_port_1:
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: security_group_name
fixed_ips:
- ip_address:
get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -138,18 +124,28 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
pcm_port_0:
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: security_group_name
fixed_ips:
- ip_address:
get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
network:
get_input: cps_net_name
requirements:
@@ -158,7 +154,7 @@ topology_template:
node: server_pcm
relationship: tosca.relationships.network.BindsTo
groups:
- nested-pcm_v0.1:
+ nested-pcm_v0.1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1.yaml
@@ -174,27 +170,195 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
capabilities:
- endpoint_server_pcm:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
- server_pcm
- - endpoint
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
os_server_pcm:
- server_pcm
- os
- host_server_pcm:
+ disk.read.bytes_server_pcm:
- server_pcm
- - host
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
scalable_server_pcm:
- server_pcm
- scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
binding_server_pcm:
- server_pcm
- binding
- attachment_pcm_port_0:
+ network.outgoing.bytes.rate_pcm_port_0:
- pcm_port_0
- - attachment
- attachment_pcm_port_1:
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
- pcm_port_1
- - attachment
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
requirements:
link_pcm_port_0:
- pcm_port_0
@@ -204,4 +368,13 @@ topology_template:
- link
local_storage_server_pcm:
- server_pcm
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/multi/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml
index 34d0c6d899..8aa225dbdc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1_2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -103,11 +79,21 @@ topology_template:
pcm_port_1:
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: security_group_name
fixed_ips:
- ip_address:
get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -124,18 +110,28 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
pcm_port_0:
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: security_group_name
fixed_ips:
- ip_address:
get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
network:
get_input: cps_net_name
requirements:
@@ -144,7 +140,7 @@ topology_template:
node: server_pcm
relationship: tosca.relationships.network.BindsTo
groups:
- nested-pcm_v0.1_2:
+ nested-pcm_v0.1_2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1_2.yaml
@@ -160,27 +156,195 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1_2
capabilities:
- endpoint_server_pcm:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
- server_pcm
- - endpoint
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
os_server_pcm:
- server_pcm
- os
- host_server_pcm:
+ disk.read.bytes_server_pcm:
- server_pcm
- - host
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
scalable_server_pcm:
- server_pcm
- scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
binding_server_pcm:
- server_pcm
- binding
- attachment_pcm_port_0:
+ network.outgoing.bytes.rate_pcm_port_0:
- pcm_port_0
- - attachment
- attachment_pcm_port_1:
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
- pcm_port_1
- - attachment
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
requirements:
link_pcm_port_0:
- pcm_port_0
@@ -190,4 +354,13 @@ topology_template:
- link
local_storage_server_pcm:
- server_pcm
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/multi/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/inputs/MANIFEST.json
index b32b92ca11..455efc1e25 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multi/inputs/MANIFEST.json
@@ -11,14 +11,17 @@
"file": "hot-nimbus-pcm_v0.4.env",
"type": "HEAT_ENV"
}
- ]
- },{
+ ]
+ },
+ {
"file": "nested-pcm_v0.1.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "hot-nimbus-pcm_v0.4_2.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "nested-pcm_v0.1_2.yaml",
"type": "HEAT"
},
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 1b1c4dd621..e2c3da021d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,9 +11,13 @@ node_types:
vf_module_id:
type: string
description: Unique ID for this VF_MODULE instance
+ required: true
+ status: SUPPORTED
vf_name:
type: string
description: The VF Name; defaults to VMVM for the virtual MVM VNF.
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 4
@@ -45,9 +25,13 @@ node_types:
cloud_zone_id:
type: string
description: The cloud zone for this VF instance
+ required: true
+ status: SUPPORTED
vf_instance_num:
type: string
description: The number for this VF instance
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[0-9]+'
- max_length: 2
@@ -55,58 +39,90 @@ node_types:
virtual_mgmt_ip_0:
type: string
description: Virtual management network ip address
+ required: true
+ status: SUPPORTED
indx:
type: float
description: Index of the current instance
+ required: true
+ status: SUPPORTED
mvs_mgmt_ip_0:
type: list
description: List of Management network IP addresses for IPv4
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
flavor:
type: string
description: Server flavor
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
key_name:
type: string
description: SSH key name
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vnf_id:
type: string
description: Unique ID for this VF instance
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: list
description: List of Availability Zone IDs or Names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
mgmt_net_id:
type: string
description: Neutron UUID for the Management network
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vm_instance_num:
type: list
description: VM instance number list must be a list of three-digit numeric value
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
bootimage:
type: string
description: Master bootimage volume id
+ required: true
+ status: SUPPORTED
sec_groups:
type: list
description: Security groups
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
vf_component:
type: string
description: The component that this VF instance is running
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 3
- min_length: 3
requirements:
+ - dependency_boot_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vnfci:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_vnfci:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -114,29 +130,318 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_data_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_mgmt_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_mgmt_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ disk.ephemeral.size_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_data_volume:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_mgmt_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_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ memory.usage_vnfci:
+ type: org.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_mgmt_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_vnfci:
+ type: org.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_boot_volume:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_data_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_mgmt_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_mgmt_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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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.usage_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
+ binding_vnfci:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_vnfci:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_vnfci:
type: tosca.capabilities.Container
valid_source_types:
@@ -144,23 +449,32 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_vnfci:
- type: tosca.capabilities.network.Bindable
+ disk.device.allocation_vnfci:
+ type: org.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_boot_volume:
- type: tosca.capabilities.Attachment
+ network.incoming.bytes.rate_mgmt_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_vnfci:
- type: tosca.capabilities.Scalable
+ disk.read.requests_vnfci:
+ type: org.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_data_volume:
- type: tosca.capabilities.Attachment
+ feature_boot_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_vnfci:
+ type: org.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/multiple_resource_groups/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/MainServiceTemplate.yaml
index ffddcce43c..8295fecd44 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
vf_module_id:
@@ -229,7 +205,7 @@ topology_template:
vf_component:
get_input: vf_component
groups:
- mvs.vfmodule.heat:
+ mvs.vfmodule.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.vfmodule.heat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
index 315318d4f6..85bd55e44b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/multiple_resource_groups/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: mvs.nested.heat
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.vnfci:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -237,6 +213,12 @@ topology_template:
mgmt_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: true
security_groups:
- get_input: sec_groups
fixed_ips:
@@ -245,6 +227,9 @@ topology_template:
- get_input: indx
- get_input:
- get_input: mvs_mgmt_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: virtual_mgmt_ip_0
@@ -265,6 +250,7 @@ topology_template:
get_input: vf_component
$VF_INSTANCE_NUM:
get_input: vf_instance_num
+ network_role_tag: mgmt
network:
get_input: mgmt_net_id
requirements:
@@ -273,7 +259,7 @@ topology_template:
node: vnfci
relationship: tosca.relationships.network.BindsTo
groups:
- mvs.nested.heat:
+ mvs.nested.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.nested.heat.yaml
@@ -287,34 +273,190 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat
capabilities:
+ disk.ephemeral.size_vnfci:
+ - vnfci
+ - disk.ephemeral.size
+ disk.iops_vnfci:
+ - vnfci
+ - disk.iops
+ network.outgoing.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes.rate
+ disk.device.write.bytes_vnfci:
+ - vnfci
+ - disk.device.write.bytes
+ disk.device.iops_vnfci:
+ - vnfci
+ - disk.device.iops
+ cpu_util_vnfci:
+ - vnfci
+ - cpu_util
+ disk.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.write.bytes.rate
+ disk.device.latency_vnfci:
+ - vnfci
+ - disk.device.latency
+ disk.latency_vnfci:
+ - vnfci
+ - disk.latency
+ disk.write.requests_vnfci:
+ - vnfci
+ - disk.write.requests
+ attachment_data_volume:
+ - data_volume
+ - attachment
+ network.outpoing.packets_mgmt_port:
+ - mgmt_port
+ - network.outpoing.packets
+ memory.resident_vnfci:
+ - vnfci
+ - memory.resident
os_vnfci:
- vnfci
- os
+ memory.usage_vnfci:
+ - vnfci
+ - memory.usage
attachment_mgmt_port:
- mgmt_port
- attachment
+ disk.device.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.write.bytes.rate
+ attachment_boot_volume:
+ - boot_volume
+ - attachment
+ feature_data_volume:
+ - data_volume
+ - feature
+ disk.root.size_vnfci:
+ - vnfci
+ - disk.root.size
+ disk.device.usage_vnfci:
+ - vnfci
+ - disk.device.usage
+ disk.read.bytes_vnfci:
+ - vnfci
+ - disk.read.bytes
+ disk.device.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.read.bytes.rate
+ disk.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.read.bytes.rate
+ cpu_vnfci:
+ - vnfci
+ - cpu
+ disk.device.write.requests.rate_vnfci:
+ - vnfci
+ - disk.device.write.requests.rate
+ network.incoming.bytes_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes
+ disk.capacity_vnfci:
+ - vnfci
+ - disk.capacity
+ disk.device.read.requests_vnfci:
+ - vnfci
+ - disk.device.read.requests
+ binding_mgmt_port:
+ - mgmt_port
+ - binding
+ network.outgoing.bytes_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes
+ network.incoming.packets_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets
+ instance_vnfci:
+ - vnfci
+ - instance
+ feature_mgmt_port:
+ - mgmt_port
+ - feature
+ disk.device.read.bytes_vnfci:
+ - vnfci
+ - disk.device.read.bytes
+ disk.allocation_vnfci:
+ - vnfci
+ - disk.allocation
+ disk.write.requests.rate_vnfci:
+ - vnfci
+ - disk.write.requests.rate
+ disk.write.bytes_vnfci:
+ - vnfci
+ - disk.write.bytes
+ disk.device.write.requests_vnfci:
+ - vnfci
+ - disk.device.write.requests
+ disk.usage_vnfci:
+ - vnfci
+ - disk.usage
+ network.incoming.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets.rate
+ feature_vnfci:
+ - vnfci
+ - feature
+ memory_vnfci:
+ - vnfci
+ - memory
endpoint_vnfci:
- vnfci
- endpoint
- host_vnfci:
- - vnfci
- - host
binding_vnfci:
- vnfci
- binding
- attachment_boot_volume:
- - boot_volume
- - attachment
scalable_vnfci:
- vnfci
- scalable
- attachment_data_volume:
- - data_volume
- - attachment
+ disk.device.capacity_vnfci:
+ - vnfci
+ - disk.device.capacity
+ network.outgoing.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.packets.rate
+ vcpus_vnfci:
+ - vnfci
+ - vcpus
+ cpu.delta_vnfci:
+ - vnfci
+ - cpu.delta
+ host_vnfci:
+ - vnfci
+ - host
+ disk.device.allocation_vnfci:
+ - vnfci
+ - disk.device.allocation
+ network.incoming.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes.rate
+ disk.read.requests_vnfci:
+ - vnfci
+ - disk.read.requests
+ feature_boot_volume:
+ - boot_volume
+ - feature
+ disk.device.read.requests.rate_vnfci:
+ - vnfci
+ - disk.device.read.requests.rate
requirements:
+ dependency_mgmt_port:
+ - mgmt_port
+ - dependency
+ dependency_vnfci:
+ - vnfci
+ - dependency
local_storage_vnfci:
- vnfci
- local_storage
+ dependency_data_volume:
+ - data_volume
+ - dependency
link_mgmt_port:
- mgmt_port
- - link \ No newline at end of file
+ - link
+ dependency_boot_volume:
+ - boot_volume
+ - 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/nested2levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index e5cffd7233..f2dee5053a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,51 +11,103 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
description: cmaui_port_1
+ required: true
+ status: SUPPORTED
net:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
shared_security_group_id1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ attributes:
+ output_attr_1:
+ type: string
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_11_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_11_test_nested2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_22_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_22_test_nested2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui_test_nested2:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -87,6 +115,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -94,16 +129,53 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- os_server_cmaui:
- type: tosca.capabilities.OperatingSystem
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -112,6 +184,24 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -119,28 +209,241 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- endpoint_server_cmaui:
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested2:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_port_11_test_nested2:
- type: tosca.capabilities.Attachment
+ disk.device.read.bytes_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ disk.device.write.requests_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested2:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_port_2:
- type: tosca.capabilities.Attachment
+ network.incoming.packets_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2:
- type: tosca.capabilities.Endpoint.Admin
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_22_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -151,8 +454,114 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui_test_nested2:
- type: tosca.capabilities.network.Bindable
+ disk.usage_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
@@ -161,8 +570,20 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui_test_nested2:
- type: tosca.capabilities.OperatingSystem
+ feature_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -171,55 +592,385 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.device.capacity_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ memory_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_11_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_11_test_nested2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested2:
+ type: org.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.nested2level:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
properties:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
description: cmaui_port_1
+ required: true
+ status: SUPPORTED
net:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
shared_security_group_id1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_11:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_11:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_22:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_22:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -228,6 +979,72 @@ node_types:
- 0
- UNBOUNDED
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_22:
+ type: org.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_cmaui_port_22:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -235,13 +1052,155 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_port_11:
- type: tosca.capabilities.Attachment
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.Node
occurrences:
- 1
- UNBOUNDED
@@ -250,18 +1209,145 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_11:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ network.outgoing.bytes_cmaui_port_22:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_server_cmaui:
+ type: org.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/nested2levels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/MainServiceTemplate.yaml
index b619c99256..ffbd020e31 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
security_group_name:
@@ -54,6 +30,20 @@ topology_template:
type: string
description: network name of jsa log network
node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared:
+ get_attribute:
+ - test_nested
+ - output_attr_1
+ network_name:
+ get_input: jsa_net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: test_nested
+ relationship: tosca.relationships.DependsOn
jsa_security_group1:
type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
properties:
@@ -131,9 +121,17 @@ topology_template:
node: test_nested
relationship: org.openecomp.relationships.AttachesTo
- port:
+ capability: attachment_cmaui_port_22_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
capability: attachment_cmaui_port_1
node: test_nested
relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_11_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
jsa_security_group2:
type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
properties:
@@ -210,6 +208,10 @@ topology_template:
capability: attachment_cmaui_port_1
node: test_nested
relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_11_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
test_nested:
type: org.openecomp.resource.abstract.nodes.heat.nested
directives:
@@ -222,20 +224,21 @@ topology_template:
shared_security_group_id1:
get_input: shared_security_group_id1
groups:
- addOn:
+ base_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/base.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nested
- base:
+ - jsa_security_group1
+ - jsa_security_group2
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/base.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - jsa_security_group1
- - jsa_security_group2 \ No newline at end of file
+ - packet_mirror_network
+ - test_nested \ 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/nested2levels/expectedoutputfiles/nested2levelServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nested2levelServiceTemplate.yaml
index e26b5c6c18..2f611eb33d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nested2levelServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nested2levelServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested2level
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -83,6 +59,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
- get_input: p2
@@ -91,6 +73,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -102,6 +87,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
fixed_ips:
@@ -109,6 +100,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -130,7 +124,7 @@ topology_template:
- cmaui_names
- 0
groups:
- nested2level:
+ nested2level_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested2level.yml
@@ -142,28 +136,199 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested2level
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.outpoing.packets_cmaui_port_11:
+ - cmaui_port_11
+ - network.outpoing.packets
+ network.outgoing.packets.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.packets.rate
+ binding_cmaui_port_22:
+ - cmaui_port_22
+ - binding
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.incoming.packets.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.packets.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.bytes.rate
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.outpoing.packets_cmaui_port_22:
+ - cmaui_port_22
+ - network.outpoing.packets
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ feature_cmaui_port_22:
+ - cmaui_port_22
+ - feature
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.bytes.rate
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
- attachment_cmaui_port_11:
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_11:
- cmaui_port_11
- - attachment
+ - network.outgoing.bytes.rate
+ feature_cmaui_port_11:
+ - cmaui_port_11
+ - feature
attachment_cmaui_port_22:
- cmaui_port_22
- attachment
+ network.incoming.bytes.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_11:
+ - cmaui_port_11
+ - network.outgoing.bytes
+ network.incoming.packets_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.bytes_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.bytes
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.outgoing.packets.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.outgoing.packets.rate
+ binding_cmaui_port_11:
+ - cmaui_port_11
+ - binding
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ attachment_cmaui_port_11:
+ - cmaui_port_11
+ - attachment
+ network.incoming.packets.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.packets.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ network.outgoing.bytes_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.bytes
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ network.incoming.packets_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.packets
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
@@ -172,4 +337,10 @@ topology_template:
- link
link_cmaui_port_22:
- cmaui_port_22
- - link \ No newline at end of file
+ - link
+ dependency_cmaui_port_11:
+ - cmaui_port_11
+ - dependency
+ dependency_cmaui_port_22:
+ - cmaui_port_22
+ - 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/nested2levels/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nestedServiceTemplate.yaml
index 8001ba9d7d..bd00c83084 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -83,6 +59,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
fixed_ips:
@@ -90,6 +72,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -117,6 +102,10 @@ topology_template:
get_input: availability_zone_0
image:
get_input: cmaui_image
+ metadata:
+ get_attribute:
+ - test_nested2
+ - availability_zone_0
name:
get_input:
- cmaui_names
@@ -125,6 +114,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
- get_input: p2
@@ -133,6 +128,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -141,7 +139,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -151,67 +149,433 @@ topology_template:
- test_nested2
- server_cmaui
- cmaui_port_1
+ outputs:
+ output_attr_1:
+ value:
+ get_attribute:
+ - test_nested2
+ - availability_zone_0
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
- os_server_cmaui:
+ cpu.delta_server_cmaui:
- server_cmaui
- - os
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.packets.rate_cmaui_port_22
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.write.requests.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.write.requests.rate_server_cmaui
+ disk.capacity_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.capacity_server_cmaui
scalable_server_cmaui:
- server_cmaui
- scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.latency_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.latency_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.read.bytes.rate_server_cmaui
host_server_cmaui:
- server_cmaui
- host
- endpoint_server_cmaui:
+ cpu_util_server_cmaui:
- server_cmaui
- - endpoint
- attachment_cmaui_port_11_test_nested2:
+ - cpu_util
+ binding_cmaui_port_11_test_nested2:
- test_nested2
- - attachment_cmaui_port_11
- binding_server_cmaui:
+ - binding_cmaui_port_11
+ endpoint_server_cmaui_test_nested2:
+ - test_nested2
+ - endpoint_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.bytes_server_cmaui
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ memory.usage_server_cmaui_test_nested2:
+ - test_nested2
+ - memory.usage_server_cmaui
+ network.incoming.packets.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.packets.rate_cmaui_port_11
+ instance_server_cmaui:
- server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_cmaui_port_22_test_nested2:
+ - test_nested2
+ - binding_cmaui_port_22
+ binding_server_cmaui_test_nested2:
+ - test_nested2
+ - binding_server_cmaui
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.allocation_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.allocation_server_cmaui
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ disk.read.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.read.requests_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.bytes.rate_cmaui_port_22
+ disk.write.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.write.requests_server_cmaui
+ network.outpoing.packets_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outpoing.packets_cmaui_port_11
+ os_server_cmaui_test_nested2:
+ - test_nested2
+ - os_server_cmaui
+ feature_cmaui_port_22_test_nested2:
+ - test_nested2
+ - feature_cmaui_port_22
+ cpu_util_server_cmaui_test_nested2:
+ - test_nested2
+ - cpu_util_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
- binding
- attachment_cmaui_port_2:
+ binding_cmaui_port_2:
- cmaui_port_2
- - attachment
- endpoint_server_cmaui_test_nested2:
+ - binding
+ disk.write.bytes_server_cmaui_test_nested2:
- test_nested2
- - endpoint_server_cmaui
+ - disk.write.bytes_server_cmaui
+ vcpus_server_cmaui_test_nested2:
+ - test_nested2
+ - vcpus_server_cmaui
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ cpu_server_cmaui_test_nested2:
+ - test_nested2
+ - cpu_server_cmaui
+ memory.resident_server_cmaui_test_nested2:
+ - test_nested2
+ - memory.resident_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.outgoing.packets.rate_cmaui_port_22
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes.rate_cmaui_port_11
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
host_server_cmaui_test_nested2:
- test_nested2
- host_server_cmaui
- binding_server_cmaui_test_nested2:
+ disk.usage_server_cmaui_test_nested2:
- test_nested2
- - binding_server_cmaui
+ - disk.usage_server_cmaui
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ disk.ephemeral.size_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.ephemeral.size_server_cmaui
+ network.incoming.packets_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.packets_cmaui_port_11
+ network.incoming.bytes_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.bytes_cmaui_port_11
+ disk.device.read.requests.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.requests.rate_server_cmaui
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.bytes_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.bytes.rate_cmaui_port_11
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
scalable_server_cmaui_test_nested2:
- test_nested2
- scalable_server_cmaui
- os_server_cmaui_test_nested2:
+ feature_test_nested2:
- test_nested2
- - os_server_cmaui
+ - feature
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
attachment_cmaui_port_22_test_nested2:
- test_nested2
- attachment_cmaui_port_22
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.device.allocation_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.allocation_server_cmaui
+ disk.read.bytes_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.read.bytes_server_cmaui
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ memory_server_cmaui_test_nested2:
+ - test_nested2
+ - memory_server_cmaui
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.requests_server_cmaui
+ disk.device.read.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.device.latency_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.latency_server_cmaui
+ network.outgoing.bytes_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes_cmaui_port_11
+ disk.device.write.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.bytes.rate_server_cmaui
+ instance_server_cmaui_test_nested2:
+ - test_nested2
+ - instance_server_cmaui
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.write.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.usage_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.usage_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.iops_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.iops_server_cmaui
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested2:
+ - test_nested2
+ - feature_server_cmaui
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.device.iops_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.iops_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.requests.rate_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outgoing.packets.rate_cmaui_port_11
+ disk.device.write.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.requests_server_cmaui
+ network.outgoing.bytes_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes_cmaui_port_22
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outgoing.bytes.rate_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes.rate_cmaui_port_22
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.root.size_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.incoming.packets_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.packets_cmaui_port_22
+ network.incoming.bytes_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.bytes_cmaui_port_22
+ cpu.delta_server_cmaui_test_nested2:
+ - test_nested2
+ - cpu.delta_server_cmaui
+ network.outpoing.packets_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.outpoing.packets_cmaui_port_22
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ feature_cmaui_port_11_test_nested2:
+ - test_nested2
+ - feature_cmaui_port_11
+ attachment_cmaui_port_11_test_nested2:
+ - test_nested2
+ - attachment_cmaui_port_11
+ disk.device.capacity_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.capacity_server_cmaui
requirements:
- local_storage_server_cmaui_test_nested2:
+ dependency_cmaui_port_22_test_nested2:
- test_nested2
- - local_storage_server_cmaui
- local_storage_server_cmaui:
+ - dependency_cmaui_port_22
+ dependency_server_cmaui:
- server_cmaui
- - local_storage
+ - dependency
+ dependency_server_cmaui_test_nested2:
+ - test_nested2
+ - dependency_server_cmaui
link_cmaui_port_22_test_nested2:
- test_nested2
- link_cmaui_port_22
+ dependency_cmaui_port_11_test_nested2:
+ - test_nested2
+ - dependency_cmaui_port_11
link_cmaui_port_2:
- cmaui_port_2
- link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ local_storage_server_cmaui_test_nested2:
+ - test_nested2
+ - local_storage_server_cmaui
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_test_nested2:
+ - test_nested2
+ - dependency
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_11_test_nested2:
- test_nested2
- link_cmaui_port_11
- link_cmaui_port_1:
- - cmaui_port_1
- - link \ No newline at end of file
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/nested2levels/inputs/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/addOn.yml
index 0e7619a478..8edf20cafd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/addOn.yml
@@ -24,3 +24,11 @@ resources:
properties:
shared_security_group_id1: { get_param: shared_security_group_id1}
p2: { get_param: shared_security_group_id2}
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - test_nested
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: { get_attr: [test_nested]} \ 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/nested2levels/inputs/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/nested.yml
index b202fef7b0..ce299b2cf5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/nested.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested2levels/inputs/nested.yml
@@ -57,9 +57,14 @@ resources:
networks:
- port: { get_resource: cmaui_port_1 }
- port: { get_resource: cmaui_port_2 }
+ metadata: { get_attr: [test_nested2 , availability_zone_0] }
test_nested2:
type: nested2level.yml
properties:
shared_security_group_id1: { get_param: shared_security_group_id1}
- p2: { get_param: p2} \ No newline at end of file
+ p2: { get_param: p2}
+
+outputs:
+ output_attr_1:
+ value: {get_attr: [test_nested2 , availability_zone_0] } \ 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/nested3levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 9aaa8caf18..c139b7e94d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,65 +11,132 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
description: cmaui_port_1
+ required: true
+ status: SUPPORTED
net:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
shared_security_group_id1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_11_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_11_test_nested2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_22_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_22_test_nested2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_11_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_11_test_nested3_test_nested2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_22_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_22_test_nested3_test_nested2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui_test_nested3_test_nested2:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -101,6 +144,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_cmaui_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui_test_nested2:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -108,6 +158,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -115,29 +172,597 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_22_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.allocation_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_2:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_22_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
+ network.incoming.packets_cmaui_port_11_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui_test_nested3_test_nested2:
type: tosca.capabilities.Container
valid_source_types:
@@ -145,50 +770,375 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_cmaui:
+ disk.device.read.requests.rate_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested2:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_port_22_test_nested3_test_nested2:
+ feature_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- host_server_cmaui:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ disk.device.capacity_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ network.outgoing.packets.rate_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- endpoint_server_cmaui:
- type: tosca.capabilities.Endpoint.Admin
+ memory_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ disk.capacity_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ network.incoming.bytes_cmaui_port_22_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_port_2:
+ disk.iops_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested3_test_nested2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- endpoint_server_cmaui_test_nested2:
- type: tosca.capabilities.Endpoint.Admin
+ disk.device.write.requests_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -197,87 +1147,250 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_cmaui_test_nested2:
- type: tosca.capabilities.Scalable
+ memory.resident_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
- host_server_cmaui_test_nested2:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ disk.device.write.bytes.rate_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
- type: tosca.capabilities.network.Bindable
+ disk.device.usage_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
- type: tosca.capabilities.OperatingSystem
+ disk.latency_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested2:
- type: tosca.capabilities.Attachment
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
- type: tosca.capabilities.OperatingSystem
+ network.outgoing.bytes.rate_cmaui_port_22_test_nested2:
+ type: org.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_cmaui_port_1:
+ disk.device.write.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_cmaui_port_22_test_nested2:
+ type: org.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_server_cmaui_test_nested3_test_nested2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_11_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_11_test_nested2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_11_test_nested3_test_nested2:
+ type: org.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_server_cmaui_test_nested2:
+ type: org.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.nested3level:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
properties:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
description: cmaui_port_1
+ required: true
+ status: SUPPORTED
net:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
shared_security_group_id1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_11:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_11:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_22:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_22:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -286,6 +1399,72 @@ node_types:
- 0
- UNBOUNDED
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_22:
+ type: org.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_cmaui_port_22:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -293,13 +1472,155 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_port_11:
- type: tosca.capabilities.Attachment
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.Node
occurrences:
- 1
- UNBOUNDED
@@ -308,18 +1629,145 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_11:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ network.outgoing.bytes_cmaui_port_22:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -329,58 +1777,112 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
description: cmaui_port_1
+ required: true
+ status: SUPPORTED
net:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
shared_security_group_id1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_11:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_11:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_22:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_22:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_11_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_11_test_nested3:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_22_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_22_test_nested3:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui_test_nested3:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -388,6 +1890,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -396,18 +1905,33 @@ node_types:
- 0
- UNBOUNDED
capabilities:
- os_server_cmaui:
- type: tosca.capabilities.OperatingSystem
+ cpu.delta_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested3:
- type: tosca.capabilities.Attachment
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3:
- type: tosca.capabilities.Attachment
+ disk.device.allocation_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -416,6 +1940,30 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -423,35 +1971,145 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_cmaui_port_11:
- type: tosca.capabilities.Attachment
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_22:
- type: tosca.capabilities.Attachment
+ network.incoming.packets.rate_cmaui_port_22:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
- host_server_cmaui_test_nested3:
- type: tosca.capabilities.Container
+ binding_cmaui_port_11_test_nested3:
+ type: tosca.capabilities.network.Bindable
valid_source_types:
- - tosca.nodes.SoftwareComponent
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
occurrences:
- - 1
+ - 0
- UNBOUNDED
- endpoint_server_cmaui:
+ endpoint_server_cmaui_test_nested3:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
+ disk.device.read.bytes_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
- endpoint_server_cmaui_test_nested3:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.bytes.rate_cmaui_port_22_test_nested3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_11:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_11_test_nested3:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -460,8 +2118,199 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui_test_nested3:
+ feature_cmaui_port_22_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_11:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_22:
+ type: org.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_cmaui_port_11_test_nested3:
+ type: org.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_cmaui_port_11_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_22:
+ type: org.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_cmaui_port_22:
type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_cmaui_port_11_test_nested3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_11_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -469,4 +2318,339 @@ node_types:
type: tosca.capabilities.Scalable
occurrences:
- 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_22:
+ type: org.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_cmaui_port_11_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_server_cmaui_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_11_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: org.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_cmaui_port_22:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_22_test_nested3:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_22:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested3:
+ type: org.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_cmaui_port_22_test_nested3:
+ type: org.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_cmaui_port_11:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_11_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_11:
+ type: org.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_cmaui_port_11:
+ type: org.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_server_cmaui_test_nested3:
+ type: org.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/nested3levels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/MainServiceTemplate.yaml
index b619c99256..9d3f823368 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
security_group_name:
@@ -131,9 +107,25 @@ topology_template:
node: test_nested
relationship: org.openecomp.relationships.AttachesTo
- port:
+ capability: attachment_cmaui_port_22_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
capability: attachment_cmaui_port_1
node: test_nested
relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_11_test_nested3_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_22_test_nested3_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_11_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
jsa_security_group2:
type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
properties:
@@ -210,6 +202,14 @@ topology_template:
capability: attachment_cmaui_port_1
node: test_nested
relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_11_test_nested3_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_11_test_nested2
+ node: test_nested
+ relationship: org.openecomp.relationships.AttachesTo
test_nested:
type: org.openecomp.resource.abstract.nodes.heat.nested
directives:
@@ -222,20 +222,20 @@ topology_template:
shared_security_group_id1:
get_input: shared_security_group_id1
groups:
- addOn:
+ base_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/base.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nested
- base:
+ - jsa_security_group1
+ - jsa_security_group2
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/base.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - jsa_security_group1
- - jsa_security_group2 \ No newline at end of file
+ - test_nested \ 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/nested3levels/expectedoutputfiles/nested2levelServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested2levelServiceTemplate.yaml
index 2c64802a2b..334da11673 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested2levelServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested2levelServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested2level
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -83,6 +59,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
- get_input: p2
@@ -91,6 +73,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -102,6 +87,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
fixed_ips:
@@ -109,6 +100,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -141,7 +135,7 @@ topology_template:
- cmaui_names
- 0
groups:
- nested2level:
+ nested2level_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested2level.yml
@@ -154,49 +148,403 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested2level
capabilities:
- os_server_cmaui:
+ cpu.delta_server_cmaui:
- server_cmaui
- - os
- attachment_cmaui_port_22_test_nested3:
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.write.requests.rate_server_cmaui_test_nested3:
- test_nested3
- - attachment_cmaui_port_22
- attachment_cmaui_port_11_test_nested3:
+ - disk.write.requests.rate_server_cmaui
+ disk.capacity_server_cmaui_test_nested3:
- test_nested3
- - attachment_cmaui_port_11
+ - disk.capacity_server_cmaui
scalable_server_cmaui:
- server_cmaui
- scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.incoming.packets.rate_cmaui_port_22
+ disk.latency_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.latency_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.read.bytes.rate_server_cmaui
host_server_cmaui:
- server_cmaui
- host
- attachment_cmaui_port_11:
- - cmaui_port_11
- - attachment
- attachment_cmaui_port_22:
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.incoming.packets.rate_cmaui_port_22:
- cmaui_port_22
- - attachment
+ - network.incoming.packets.rate
+ binding_cmaui_port_11_test_nested3:
+ - test_nested3
+ - binding_cmaui_port_11
+ endpoint_server_cmaui_test_nested3:
+ - test_nested3
+ - endpoint_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.read.bytes_server_cmaui
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.packets.rate_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.incoming.packets.rate_cmaui_port_11
+ memory.usage_server_cmaui_test_nested3:
+ - test_nested3
+ - memory.usage_server_cmaui
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.bytes.rate
+ binding_cmaui_port_22_test_nested3:
+ - test_nested3
+ - binding_cmaui_port_22
+ binding_server_cmaui_test_nested3:
+ - test_nested3
+ - binding_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.incoming.bytes.rate_cmaui_port_22
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.allocation_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.allocation_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.read.requests_server_cmaui
+ feature_cmaui_port_11:
+ - cmaui_port_11
+ - feature
+ network.incoming.bytes.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.bytes.rate
+ disk.write.requests_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.write.requests_server_cmaui
+ network.outgoing.bytes_cmaui_port_11:
+ - cmaui_port_11
+ - network.outgoing.bytes
+ network.outpoing.packets_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.outpoing.packets_cmaui_port_11
+ os_server_cmaui_test_nested3:
+ - test_nested3
+ - os_server_cmaui
+ feature_cmaui_port_22_test_nested3:
+ - test_nested3
+ - feature_cmaui_port_22
+ cpu_util_server_cmaui_test_nested3:
+ - test_nested3
+ - cpu_util_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ disk.usage_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.usage_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.write.bytes_server_cmaui
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ vcpus_server_cmaui_test_nested3:
+ - test_nested3
+ - vcpus_server_cmaui
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.packets.rate_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.outgoing.packets.rate_cmaui_port_22
+ memory.resident_server_cmaui_test_nested3:
+ - test_nested3
+ - memory.resident_server_cmaui
+ network.incoming.packets.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.packets.rate
host_server_cmaui_test_nested3:
- test_nested3
- host_server_cmaui
- endpoint_server_cmaui:
+ network.outgoing.bytes_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.bytes
+ network.incoming.packets_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.incoming.packets_cmaui_port_11
+ network.incoming.bytes_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.incoming.bytes_cmaui_port_11
+ disk.iops_server_cmaui:
- server_cmaui
- - endpoint
- binding_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.outgoing.bytes.rate_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.outgoing.bytes.rate_cmaui_port_11
+ disk.read.bytes_server_cmaui:
- server_cmaui
+ - disk.read.bytes
+ cpu_server_cmaui_test_nested3:
+ - test_nested3
+ - cpu_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.ephemeral.size_server_cmaui
+ network.outpoing.packets_cmaui_port_11:
+ - cmaui_port_11
+ - network.outpoing.packets
+ network.outgoing.packets.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.packets.rate
+ binding_cmaui_port_22:
+ - cmaui_port_22
- binding
- endpoint_server_cmaui_test_nested3:
+ attachment_cmaui_port_11_test_nested3:
- test_nested3
- - endpoint_server_cmaui
- os_server_cmaui_test_nested3:
+ - attachment_cmaui_port_11
+ disk.device.read.requests.rate_server_cmaui_test_nested3:
- test_nested3
- - os_server_cmaui
- binding_server_cmaui_test_nested3:
+ - disk.device.read.requests.rate_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested3:
- test_nested3
- - binding_server_cmaui
+ - disk.device.write.bytes_server_cmaui
+ feature_test_nested3:
+ - test_nested3
+ - feature
+ network.incoming.bytes.rate_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.incoming.bytes.rate_cmaui_port_11
+ disk.read.bytes_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.read.bytes_server_cmaui
scalable_server_cmaui_test_nested3:
- test_nested3
- scalable_server_cmaui
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.allocation_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.allocation_server_cmaui
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.bytes.rate
+ attachment_cmaui_port_22_test_nested3:
+ - test_nested3
+ - attachment_cmaui_port_22
+ memory_server_cmaui_test_nested3:
+ - test_nested3
+ - memory_server_cmaui
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.read.requests_server_cmaui
+ network.outpoing.packets_cmaui_port_22:
+ - cmaui_port_22
+ - network.outpoing.packets
+ network.outgoing.bytes_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.outgoing.bytes_cmaui_port_11
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.device.read.bytes.rate_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.latency_server_cmaui
+ instance_server_cmaui_test_nested3:
+ - test_nested3
+ - instance_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.write.bytes.rate_server_cmaui
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ feature_cmaui_port_22:
+ - cmaui_port_22
+ - feature
+ disk.write.bytes.rate_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.usage_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.usage_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.iops_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.iops_server_cmaui
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ network.outgoing.bytes.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.outgoing.bytes.rate
+ feature_server_cmaui_test_nested3:
+ - test_nested3
+ - feature_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.write.requests.rate_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_11_test_nested3:
+ - test_nested3
+ - network.outgoing.packets.rate_cmaui_port_11
+ disk.device.write.requests_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.write.requests_server_cmaui
+ network.incoming.packets_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.incoming.packets_cmaui_port_22
+ network.incoming.bytes_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.incoming.bytes_cmaui_port_22
+ attachment_cmaui_port_22:
+ - cmaui_port_22
+ - attachment
+ network.outgoing.bytes_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.outgoing.bytes_cmaui_port_22
+ network.incoming.packets_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.bytes_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.iops_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.outgoing.bytes.rate_cmaui_port_22
+ disk.root.size_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.root.size_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.outgoing.packets.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.outgoing.packets.rate
+ binding_cmaui_port_11:
+ - cmaui_port_11
+ - binding
+ cpu.delta_server_cmaui_test_nested3:
+ - test_nested3
+ - cpu.delta_server_cmaui
+ network.outpoing.packets_cmaui_port_22_test_nested3:
+ - test_nested3
+ - network.outpoing.packets_cmaui_port_22
+ attachment_cmaui_port_11:
+ - cmaui_port_11
+ - attachment
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ feature_cmaui_port_11_test_nested3:
+ - test_nested3
+ - feature_cmaui_port_11
+ network.incoming.packets_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.packets
+ network.incoming.bytes_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.bytes
+ disk.device.capacity_server_cmaui_test_nested3:
+ - test_nested3
+ - disk.device.capacity_server_cmaui
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_server_cmaui_test_nested3:
+ - test_nested3
+ - dependency_server_cmaui
+ dependency_cmaui_port_11_test_nested3:
+ - test_nested3
+ - dependency_cmaui_port_11
+ link_cmaui_port_22_test_nested3:
+ - test_nested3
+ - link_cmaui_port_22
+ dependency_cmaui_port_22_test_nested3:
+ - test_nested3
+ - dependency_cmaui_port_22
local_storage_server_cmaui_test_nested3:
- test_nested3
- local_storage_server_cmaui
@@ -209,9 +557,15 @@ topology_template:
link_cmaui_port_22:
- cmaui_port_22
- link
- link_cmaui_port_22_test_nested3:
+ dependency_cmaui_port_11:
+ - cmaui_port_11
+ - dependency
+ dependency_cmaui_port_22:
+ - cmaui_port_22
+ - dependency
+ dependency_test_nested3:
- test_nested3
- - link_cmaui_port_22
+ - dependency
link_cmaui_port_11_test_nested3:
- test_nested3
- link_cmaui_port_11 \ 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/nested3levels/expectedoutputfiles/nested3levelServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested3levelServiceTemplate.yaml
index d270626fa7..1e2f187bff 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested3levelServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nested3levelServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested3level
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -83,6 +59,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
- get_input: p2
@@ -91,6 +73,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -102,6 +87,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
fixed_ips:
@@ -109,6 +100,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -130,7 +124,7 @@ topology_template:
- cmaui_names
- 0
groups:
- nested3level:
+ nested3level_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested3level.yml
@@ -142,28 +136,199 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested3level
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.outpoing.packets_cmaui_port_11:
+ - cmaui_port_11
+ - network.outpoing.packets
+ network.outgoing.packets.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.packets.rate
+ binding_cmaui_port_22:
+ - cmaui_port_22
+ - binding
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.incoming.packets.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.packets.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.bytes.rate
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.outpoing.packets_cmaui_port_22:
+ - cmaui_port_22
+ - network.outpoing.packets
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ feature_cmaui_port_22:
+ - cmaui_port_22
+ - feature
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.bytes.rate
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
- attachment_cmaui_port_11:
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_11:
- cmaui_port_11
- - attachment
+ - network.outgoing.bytes.rate
+ feature_cmaui_port_11:
+ - cmaui_port_11
+ - feature
attachment_cmaui_port_22:
- cmaui_port_22
- attachment
+ network.incoming.bytes.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_11:
+ - cmaui_port_11
+ - network.outgoing.bytes
+ network.incoming.packets_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.bytes_cmaui_port_22:
+ - cmaui_port_22
+ - network.incoming.bytes
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.outgoing.packets.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.outgoing.packets.rate
+ binding_cmaui_port_11:
+ - cmaui_port_11
+ - binding
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ attachment_cmaui_port_11:
+ - cmaui_port_11
+ - attachment
+ network.incoming.packets.rate_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.packets.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ network.outgoing.bytes_cmaui_port_22:
+ - cmaui_port_22
+ - network.outgoing.bytes
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ network.incoming.packets_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.packets
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_11:
+ - cmaui_port_11
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
@@ -172,4 +337,10 @@ topology_template:
- link
link_cmaui_port_22:
- cmaui_port_22
- - link \ No newline at end of file
+ - link
+ dependency_cmaui_port_11:
+ - cmaui_port_11
+ - dependency
+ dependency_cmaui_port_22:
+ - cmaui_port_22
+ - 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/nested3levels/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nestedServiceTemplate.yaml
index d78a252f4f..8b1dfeb095 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nested3levels/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -83,6 +59,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
fixed_ips:
@@ -90,6 +72,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -125,6 +110,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
- get_input: p2
@@ -133,6 +124,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -141,7 +135,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -154,94 +148,637 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.packets.rate_cmaui_port_22
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.read.bytes_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.read.bytes_server_cmaui_test_nested3
+ feature_test_nested3_test_nested2:
+ - test_nested2
+ - feature_test_nested3
+ disk.write.requests.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.write.requests.rate_server_cmaui
+ disk.capacity_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.capacity_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.latency_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.latency_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.read.bytes.rate_server_cmaui
+ memory_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - memory_server_cmaui_test_nested3
+ instance_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - instance_server_cmaui_test_nested3
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ binding_cmaui_port_11_test_nested2:
+ - test_nested2
+ - binding_cmaui_port_11
+ endpoint_server_cmaui_test_nested2:
+ - test_nested2
+ - endpoint_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.bytes_server_cmaui
+ feature_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - feature_cmaui_port_11_test_nested3
+ feature_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - feature_cmaui_port_22_test_nested3
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ memory.usage_server_cmaui_test_nested2:
+ - test_nested2
+ - memory.usage_server_cmaui
+ network.outpoing.packets_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.outpoing.packets_cmaui_port_11_test_nested3
+ disk.device.iops_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.iops_server_cmaui_test_nested3
+ network.incoming.packets.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.packets.rate_cmaui_port_11
+ disk.device.read.requests_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.read.requests_server_cmaui_test_nested3
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ cpu_util_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - cpu_util_server_cmaui_test_nested3
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ network.outgoing.bytes.rate_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes.rate_cmaui_port_22_test_nested3
+ binding_cmaui_port_22_test_nested2:
+ - test_nested2
+ - binding_cmaui_port_22
+ disk.allocation_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.allocation_server_cmaui_test_nested3
+ binding_server_cmaui_test_nested2:
+ - test_nested2
+ - binding_server_cmaui
+ disk.capacity_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.capacity_server_cmaui_test_nested3
+ os_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - os_server_cmaui_test_nested3
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
binding_server_cmaui_test_nested3_test_nested2:
- test_nested2
- binding_server_cmaui_test_nested3
+ disk.ephemeral.size_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.ephemeral.size_server_cmaui_test_nested3
+ disk.write.requests.rate_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.write.requests.rate_server_cmaui_test_nested3
+ disk.allocation_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.allocation_server_cmaui
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ network.outgoing.bytes_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes_cmaui_port_11_test_nested3
+ network.incoming.bytes.rate_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.bytes.rate_cmaui_port_22
+ disk.read.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.read.requests_server_cmaui
+ network.outgoing.bytes_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes_cmaui_port_22_test_nested3
+ disk.write.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.write.requests_server_cmaui
+ network.outpoing.packets_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outpoing.packets_cmaui_port_11
+ os_server_cmaui_test_nested2:
+ - test_nested2
+ - os_server_cmaui
+ feature_cmaui_port_22_test_nested2:
+ - test_nested2
+ - feature_cmaui_port_22
+ cpu_util_server_cmaui_test_nested2:
+ - test_nested2
+ - cpu_util_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ disk.iops_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.iops_server_cmaui_test_nested3
+ disk.device.allocation_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.allocation_server_cmaui_test_nested3
+ network.outpoing.packets_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - network.outpoing.packets_cmaui_port_22_test_nested3
+ network.incoming.packets.rate_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - network.incoming.packets.rate_cmaui_port_22_test_nested3
+ disk.write.bytes_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.write.bytes_server_cmaui
+ network.incoming.packets_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - network.incoming.packets_cmaui_port_22_test_nested3
+ vcpus_server_cmaui_test_nested2:
+ - test_nested2
+ - vcpus_server_cmaui
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ disk.root.size_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.root.size_server_cmaui_test_nested3
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ disk.device.write.requests.rate_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.write.requests.rate_server_cmaui_test_nested3
+ cpu_server_cmaui_test_nested2:
+ - test_nested2
+ - cpu_server_cmaui
+ memory.resident_server_cmaui_test_nested2:
+ - test_nested2
+ - memory.resident_server_cmaui
+ cpu_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - cpu_server_cmaui_test_nested3
+ network.outgoing.packets.rate_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.outgoing.packets.rate_cmaui_port_22
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.write.requests_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.write.requests_server_cmaui_test_nested3
+ disk.device.latency_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.latency_server_cmaui_test_nested3
+ network.outgoing.bytes.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes.rate_cmaui_port_11
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ host_server_cmaui_test_nested2:
+ - test_nested2
+ - host_server_cmaui
+ disk.usage_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.usage_server_cmaui
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.bytes.rate_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.incoming.bytes.rate_cmaui_port_11_test_nested3
+ disk.read.bytes_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.read.bytes_server_cmaui_test_nested3
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ disk.write.bytes.rate_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.write.bytes.rate_server_cmaui_test_nested3
+ binding_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - binding_cmaui_port_22_test_nested3
+ disk.ephemeral.size_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.ephemeral.size_server_cmaui
+ binding_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - binding_cmaui_port_11_test_nested3
+ disk.read.requests_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.read.requests_server_cmaui_test_nested3
scalable_server_cmaui_test_nested3_test_nested2:
- test_nested2
- scalable_server_cmaui_test_nested3
+ network.incoming.packets_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.packets_cmaui_port_11
+ network.incoming.bytes_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.bytes_cmaui_port_11
+ vcpus_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - vcpus_server_cmaui_test_nested3
host_server_cmaui_test_nested3_test_nested2:
- test_nested2
- host_server_cmaui_test_nested3
- scalable_server_cmaui:
+ disk.device.read.requests.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.requests.rate_server_cmaui
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_22_test_nested3_test_nested2:
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ network.outgoing.packets.rate_cmaui_port_22_test_nested3_test_nested2:
- test_nested2
- - attachment_cmaui_port_22_test_nested3
- host_server_cmaui:
+ - network.outgoing.packets.rate_cmaui_port_22_test_nested3
+ disk.device.read.bytes.rate_server_cmaui:
- server_cmaui
- - host
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.outgoing.packets.rate_cmaui_port_11_test_nested3
+ disk.device.write.bytes_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.bytes_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.incoming.bytes.rate_cmaui_port_11
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ scalable_server_cmaui_test_nested2:
+ - test_nested2
+ - scalable_server_cmaui
+ feature_test_nested2:
+ - test_nested2
+ - feature
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ attachment_cmaui_port_22_test_nested2:
+ - test_nested2
+ - attachment_cmaui_port_22
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.device.allocation_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.allocation_server_cmaui
+ disk.read.bytes_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.read.bytes_server_cmaui
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ memory_server_cmaui_test_nested2:
+ - test_nested2
+ - memory_server_cmaui
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.incoming.packets_cmaui_port_11_test_nested3
+ disk.device.read.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.requests_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - network.incoming.bytes.rate_cmaui_port_22_test_nested3
+ disk.device.read.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.usage_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.usage_server_cmaui_test_nested3
+ disk.device.latency_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.latency_server_cmaui
+ network.outgoing.bytes_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes_cmaui_port_11
+ disk.latency_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.latency_server_cmaui_test_nested3
+ disk.device.write.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.bytes.rate_server_cmaui
+ instance_server_cmaui_test_nested2:
+ - test_nested2
+ - instance_server_cmaui
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
attachment_cmaui_port_11_test_nested3_test_nested2:
- test_nested2
- attachment_cmaui_port_11_test_nested3
- endpoint_server_cmaui:
- - server_cmaui
- - endpoint
- attachment_cmaui_port_11_test_nested2:
+ network.incoming.bytes_cmaui_port_22_test_nested3_test_nested2:
- test_nested2
- - attachment_cmaui_port_11
+ - network.incoming.bytes_cmaui_port_22_test_nested3
+ disk.write.bytes.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.usage_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.usage_server_cmaui
binding_server_cmaui:
- server_cmaui
- binding
- attachment_cmaui_port_2:
- - cmaui_port_2
- - attachment
- endpoint_server_cmaui_test_nested2:
+ disk.iops_server_cmaui_test_nested2:
- test_nested2
- - endpoint_server_cmaui
+ - disk.iops_server_cmaui
+ memory.usage_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - memory.usage_server_cmaui_test_nested3
+ disk.device.write.bytes_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.write.bytes_server_cmaui_test_nested3
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.incoming.packets.rate_cmaui_port_11_test_nested3
+ feature_server_cmaui_test_nested2:
+ - test_nested2
+ - feature_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.write.bytes_server_cmaui_test_nested3
+ disk.device.read.requests.rate_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.read.requests.rate_server_cmaui_test_nested3
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.device.iops_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.iops_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.requests.rate_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_11_test_nested2:
+ - test_nested2
+ - network.outgoing.packets.rate_cmaui_port_11
+ feature_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - feature_server_cmaui_test_nested3
+ disk.device.capacity_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.capacity_server_cmaui_test_nested3
+ attachment_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - attachment_cmaui_port_22_test_nested3
+ disk.device.write.requests_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.write.requests_server_cmaui
+ network.outgoing.bytes_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes_cmaui_port_22
+ cpu.delta_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - cpu.delta_server_cmaui_test_nested3
endpoint_server_cmaui_test_nested3_test_nested2:
- test_nested2
- endpoint_server_cmaui_test_nested3
- scalable_server_cmaui_test_nested2:
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.write.bytes.rate_server_cmaui_test_nested3_test_nested2:
- test_nested2
- - scalable_server_cmaui
- host_server_cmaui_test_nested2:
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3
+ disk.device.usage_server_cmaui_test_nested3_test_nested2:
- test_nested2
- - host_server_cmaui
- binding_server_cmaui_test_nested2:
+ - disk.device.usage_server_cmaui_test_nested3
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outgoing.bytes.rate_cmaui_port_22_test_nested2:
- test_nested2
- - binding_server_cmaui
- os_server_cmaui_test_nested2:
+ - network.outgoing.bytes.rate_cmaui_port_22
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.read.bytes.rate_server_cmaui_test_nested3_test_nested2:
- test_nested2
- - os_server_cmaui
- attachment_cmaui_port_22_test_nested2:
+ - disk.read.bytes.rate_server_cmaui_test_nested3
+ disk.device.read.bytes.rate_server_cmaui_test_nested3_test_nested2:
- test_nested2
- - attachment_cmaui_port_22
- os_server_cmaui_test_nested3_test_nested2:
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3
+ disk.root.size_server_cmaui_test_nested2:
- test_nested2
- - os_server_cmaui_test_nested3
- attachment_cmaui_port_1:
+ - disk.root.size_server_cmaui
+ memory.resident_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - memory.resident_server_cmaui_test_nested3
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.outpoing.packets_cmaui_port_1:
- cmaui_port_1
- - attachment
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.incoming.packets_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.packets_cmaui_port_22
+ network.incoming.bytes_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.incoming.bytes_cmaui_port_22
+ cpu.delta_server_cmaui_test_nested2:
+ - test_nested2
+ - cpu.delta_server_cmaui
+ network.incoming.bytes_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.incoming.bytes_cmaui_port_11_test_nested3
+ network.outpoing.packets_cmaui_port_22_test_nested2:
+ - test_nested2
+ - network.outpoing.packets_cmaui_port_22
+ disk.device.write.requests_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - disk.device.write.requests_server_cmaui_test_nested3
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ feature_cmaui_port_11_test_nested2:
+ - test_nested2
+ - feature_cmaui_port_11
+ attachment_cmaui_port_11_test_nested2:
+ - test_nested2
+ - attachment_cmaui_port_11
+ network.outgoing.bytes.rate_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - network.outgoing.bytes.rate_cmaui_port_11_test_nested3
+ disk.device.capacity_server_cmaui_test_nested2:
+ - test_nested2
+ - disk.device.capacity_server_cmaui
requirements:
+ dependency_cmaui_port_22_test_nested2:
+ - test_nested2
+ - dependency_cmaui_port_22
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_server_cmaui_test_nested2:
+ - test_nested2
+ - dependency_server_cmaui
+ link_cmaui_port_22_test_nested2:
+ - test_nested2
+ - link_cmaui_port_22
+ dependency_cmaui_port_22_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_cmaui_port_22_test_nested3
+ dependency_cmaui_port_11_test_nested2:
+ - test_nested2
+ - dependency_cmaui_port_11
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ dependency_cmaui_port_11_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_cmaui_port_11_test_nested3
local_storage_server_cmaui_test_nested2:
- test_nested2
- local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_server_cmaui_test_nested3
local_storage_server_cmaui:
- server_cmaui
- local_storage
link_cmaui_port_11_test_nested3_test_nested2:
- test_nested2
- link_cmaui_port_11_test_nested3
- link_cmaui_port_22_test_nested2:
+ dependency_test_nested2:
- test_nested2
- - link_cmaui_port_22
+ - dependency
link_cmaui_port_22_test_nested3_test_nested2:
- test_nested2
- link_cmaui_port_22_test_nested3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
local_storage_server_cmaui_test_nested3_test_nested2:
- test_nested2
- local_storage_server_cmaui_test_nested3
- link_cmaui_port_2:
- - cmaui_port_2
- - link
+ dependency_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_test_nested3
link_cmaui_port_11_test_nested2:
- test_nested2
- link_cmaui_port_11
- link_cmaui_port_1:
- - cmaui_port_1
- - link \ No newline at end of file
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/nestedvolumelocal/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index ef081a9bec..48c3d92d3f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,13 +11,26 @@ node_types:
nova_image_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
nove_001_vol_property:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_nova_001:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_nova_001:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -50,8 +39,9 @@ node_types:
- 0
- UNBOUNDED
capabilities:
- scalable_nova_001:
- type: tosca.capabilities.Scalable
+ disk.iops_nova_001:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -67,8 +57,21 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_nova_001:
- type: tosca.capabilities.OperatingSystem
+ disk.device.read.requests_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -76,4 +79,205 @@ node_types:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
+ - UNBOUNDED
+ disk.device.iops_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_nova_001:
+ type: org.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.usage_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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/nestedvolumelocal/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/MainServiceTemplate.yaml
index 136eb6309a..2fbec0c498 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
not_null:
@@ -55,7 +31,7 @@ topology_template:
properties: {
}
groups:
- hot-nimbus-pcm_v0.4:
+ hot-nimbus-pcm_v0.4_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
index 1b9c34f1da..f11aa503a3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.nova:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -60,7 +36,7 @@ topology_template:
image:
get_input: nova_image_name
groups:
- nested-pcm_v0.1:
+ nested-pcm_v0.1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1.yaml
@@ -70,22 +46,133 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
capabilities:
- scalable_nova_001:
+ disk.iops_nova_001:
- nova_001
- - scalable
+ - disk.iops
host_nova_001:
- nova_001
- host
endpoint_nova_001:
- nova_001
- endpoint
- os_nova_001:
+ disk.device.read.requests_nova_001:
- nova_001
- - os
+ - disk.device.read.requests
+ disk.device.write.requests_nova_001:
+ - nova_001
+ - disk.device.write.requests
+ disk.device.write.requests.rate_nova_001:
+ - nova_001
+ - disk.device.write.requests.rate
binding_nova_001:
- nova_001
- binding
+ disk.device.iops_nova_001:
+ - nova_001
+ - disk.device.iops
+ disk.read.bytes_nova_001:
+ - nova_001
+ - disk.read.bytes
+ os_nova_001:
+ - nova_001
+ - os
+ disk.device.read.bytes.rate_nova_001:
+ - nova_001
+ - disk.device.read.bytes.rate
+ disk.usage_nova_001:
+ - nova_001
+ - disk.usage
+ disk.device.allocation_nova_001:
+ - nova_001
+ - disk.device.allocation
+ disk.root.size_nova_001:
+ - nova_001
+ - disk.root.size
+ disk.device.read.requests.rate_nova_001:
+ - nova_001
+ - disk.device.read.requests.rate
+ disk.write.bytes_nova_001:
+ - nova_001
+ - disk.write.bytes
+ memory.usage_nova_001:
+ - nova_001
+ - memory.usage
+ disk.capacity_nova_001:
+ - nova_001
+ - disk.capacity
+ disk.write.requests_nova_001:
+ - nova_001
+ - disk.write.requests
+ vcpus_nova_001:
+ - nova_001
+ - vcpus
+ scalable_nova_001:
+ - nova_001
+ - scalable
+ disk.device.latency_nova_001:
+ - nova_001
+ - disk.device.latency
+ disk.device.write.bytes.rate_nova_001:
+ - nova_001
+ - disk.device.write.bytes.rate
+ disk.device.usage_nova_001:
+ - nova_001
+ - disk.device.usage
+ cpu.delta_nova_001:
+ - nova_001
+ - cpu.delta
+ disk.latency_nova_001:
+ - nova_001
+ - disk.latency
+ instance_nova_001:
+ - nova_001
+ - instance
+ disk.read.bytes.rate_nova_001:
+ - nova_001
+ - disk.read.bytes.rate
+ disk.device.read.bytes_nova_001:
+ - nova_001
+ - disk.device.read.bytes
+ disk.allocation_nova_001:
+ - nova_001
+ - disk.allocation
+ memory.resident_nova_001:
+ - nova_001
+ - memory.resident
+ disk.write.bytes.rate_nova_001:
+ - nova_001
+ - disk.write.bytes.rate
+ disk.device.write.bytes_nova_001:
+ - nova_001
+ - disk.device.write.bytes
+ disk.device.capacity_nova_001:
+ - nova_001
+ - disk.device.capacity
+ feature_nova_001:
+ - nova_001
+ - feature
+ memory_nova_001:
+ - nova_001
+ - memory
+ disk.write.requests.rate_nova_001:
+ - nova_001
+ - disk.write.requests.rate
+ disk.ephemeral.size_nova_001:
+ - nova_001
+ - disk.ephemeral.size
+ cpu_util_nova_001:
+ - nova_001
+ - cpu_util
+ disk.read.requests_nova_001:
+ - nova_001
+ - disk.read.requests
+ cpu_nova_001:
+ - nova_001
+ - cpu
requirements:
local_storage_nova_001:
- nova_001
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_nova_001:
+ - nova_001
+ - 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/nestedvolumelocal/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/inputs/MANIFEST.json
index 44c5652ed6..6f37dcd40e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumelocal/inputs/MANIFEST.json
@@ -6,7 +6,8 @@
{
"file": "hot-nimbus-pcm_v0.4.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "nested-pcm_v0.1.yaml",
"type": "HEAT"
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 5edf602a57..0dbf560f84 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,13 +11,26 @@ node_types:
nova_image_name:
type: string
description: nova image name
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
nove_001_vol_property:
type: string
description: volume name
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_nova_001:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_nova_001:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -50,8 +39,9 @@ node_types:
- 0
- UNBOUNDED
capabilities:
- scalable_nova_001:
- type: tosca.capabilities.Scalable
+ disk.iops_nova_001:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -67,8 +57,21 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_nova_001:
- type: tosca.capabilities.OperatingSystem
+ disk.device.read.requests_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -76,4 +79,205 @@ node_types:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
+ - UNBOUNDED
+ disk.device.iops_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_nova_001:
+ type: org.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.usage_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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_nova_001:
+ type: org.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/nestedvolumeseperatefile/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/MainServiceTemplate.yaml
index 30e792209b..b6d5633203 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
not_null:
@@ -57,16 +33,16 @@ topology_template:
properties: {
}
groups:
- volume:
+ hot-nimbus-pcm_v0.4_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/volume.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
members:
- - nove_001_vol
- hot-nimbus-pcm_v0.4:
+ - server_pcm_001
+ volume_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
- description: heat template that creates PCRF Cluman stack
+ heat_file: ../Artifacts/volume.yaml
members:
- - server_pcm_001 \ No newline at end of file
+ - nove_001_vol \ 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/nestedvolumeseperatefile/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
index 3f03905588..9dee4bf2ce 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.nova:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -60,7 +36,7 @@ topology_template:
image:
get_input: nova_image_name
groups:
- nested-pcm_v0.1:
+ nested-pcm_v0.1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1.yaml
@@ -70,22 +46,133 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
capabilities:
- scalable_nova_001:
+ disk.iops_nova_001:
- nova_001
- - scalable
+ - disk.iops
host_nova_001:
- nova_001
- host
endpoint_nova_001:
- nova_001
- endpoint
- os_nova_001:
+ disk.device.read.requests_nova_001:
- nova_001
- - os
+ - disk.device.read.requests
+ disk.device.write.requests_nova_001:
+ - nova_001
+ - disk.device.write.requests
+ disk.device.write.requests.rate_nova_001:
+ - nova_001
+ - disk.device.write.requests.rate
binding_nova_001:
- nova_001
- binding
+ disk.device.iops_nova_001:
+ - nova_001
+ - disk.device.iops
+ disk.read.bytes_nova_001:
+ - nova_001
+ - disk.read.bytes
+ os_nova_001:
+ - nova_001
+ - os
+ disk.device.read.bytes.rate_nova_001:
+ - nova_001
+ - disk.device.read.bytes.rate
+ disk.usage_nova_001:
+ - nova_001
+ - disk.usage
+ disk.device.allocation_nova_001:
+ - nova_001
+ - disk.device.allocation
+ disk.root.size_nova_001:
+ - nova_001
+ - disk.root.size
+ disk.device.read.requests.rate_nova_001:
+ - nova_001
+ - disk.device.read.requests.rate
+ disk.write.bytes_nova_001:
+ - nova_001
+ - disk.write.bytes
+ memory.usage_nova_001:
+ - nova_001
+ - memory.usage
+ disk.capacity_nova_001:
+ - nova_001
+ - disk.capacity
+ disk.write.requests_nova_001:
+ - nova_001
+ - disk.write.requests
+ vcpus_nova_001:
+ - nova_001
+ - vcpus
+ scalable_nova_001:
+ - nova_001
+ - scalable
+ disk.device.latency_nova_001:
+ - nova_001
+ - disk.device.latency
+ disk.device.write.bytes.rate_nova_001:
+ - nova_001
+ - disk.device.write.bytes.rate
+ disk.device.usage_nova_001:
+ - nova_001
+ - disk.device.usage
+ cpu.delta_nova_001:
+ - nova_001
+ - cpu.delta
+ disk.latency_nova_001:
+ - nova_001
+ - disk.latency
+ instance_nova_001:
+ - nova_001
+ - instance
+ disk.read.bytes.rate_nova_001:
+ - nova_001
+ - disk.read.bytes.rate
+ disk.device.read.bytes_nova_001:
+ - nova_001
+ - disk.device.read.bytes
+ disk.allocation_nova_001:
+ - nova_001
+ - disk.allocation
+ memory.resident_nova_001:
+ - nova_001
+ - memory.resident
+ disk.write.bytes.rate_nova_001:
+ - nova_001
+ - disk.write.bytes.rate
+ disk.device.write.bytes_nova_001:
+ - nova_001
+ - disk.device.write.bytes
+ disk.device.capacity_nova_001:
+ - nova_001
+ - disk.device.capacity
+ feature_nova_001:
+ - nova_001
+ - feature
+ memory_nova_001:
+ - nova_001
+ - memory
+ disk.write.requests.rate_nova_001:
+ - nova_001
+ - disk.write.requests.rate
+ disk.ephemeral.size_nova_001:
+ - nova_001
+ - disk.ephemeral.size
+ cpu_util_nova_001:
+ - nova_001
+ - cpu_util
+ disk.read.requests_nova_001:
+ - nova_001
+ - disk.read.requests
+ cpu_nova_001:
+ - nova_001
+ - cpu
requirements:
local_storage_nova_001:
- nova_001
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_nova_001:
+ - nova_001
+ - 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/nestedvolumeseperatefile/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/inputs/MANIFEST.json
index 63b14401c8..724ddc7017 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedvolumeseperatefile/inputs/MANIFEST.json
@@ -6,10 +6,12 @@
{
"file": "hot-nimbus-pcm_v0.4.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "nested-pcm_v0.1.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "volume.yaml",
"type": "HEAT_VOL"
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 2dee4a9971..029052218e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1_2:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,47 +11,83 @@ node_types:
pcm_flavor_name:
type: string
description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
pcm_image_name:
type: string
description: PCRF CM image name
+ required: true
+ status: SUPPORTED
pcm_vol:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_ip:
type: string
+ required: true
+ status: SUPPORTED
oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
attributes:
server_pcm_id:
type: string
description: the pcm nova service id
+ status: SUPPORTED
requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_pcm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -83,16 +95,164 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_network:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
capabilities:
- endpoint_server_pcm:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -101,11 +261,158 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.capacity_server_pcm:
+ type: org.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_server_pcm:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_network:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_pcm:
+ type: org.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_network:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_network:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_pcm:
type: tosca.capabilities.Container
valid_source_types:
@@ -113,13 +420,21 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_pcm:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_pcm:
+ type: org.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_network:
- type: tosca.capabilities.Attachment
+ network.outgoing.bytes.rate_pcm_port_1:
+ type: org.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_pcm_port_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
@@ -128,13 +443,68 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_0:
- type: tosca.capabilities.Attachment
+ network.outgoing.bytes.rate_pcm_port_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_pcm_port_1:
- type: tosca.capabilities.Attachment
+ disk.device.capacity_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -144,60 +514,104 @@ node_types:
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
oam_net_gw:
type: string
description: CPS network gateway
+ required: true
+ status: SUPPORTED
pcm_image_name:
type: string
description: PCRF CM image name
+ required: true
+ status: SUPPORTED
cps_net_ips:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcm_volumes:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
pcm_flavor_name:
type: string
description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
pcm_vol:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_ip:
type: string
description: OAM network ip
+ required: true
+ status: SUPPORTED
oam_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
attributes:
server_pcm_id:
type: string
description: the pcm nova service id
+ status: SUPPORTED
requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_pcm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -205,13 +619,33 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_pcm_005:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_1_server_pcm_005:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_1_server_pcm_005:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_pcm_server_pcm_005:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_pcm_server_pcm_005:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -219,23 +653,429 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcm_port_0_server_pcm_005:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_0_server_pcm_005:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_network_server_pcm_005:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_network:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
capabilities:
- endpoint_server_pcm:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.packets.rate_pcm_port_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
+ scalable_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ link_network_server_pcm_005:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_0_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_0_server_pcm_005:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_network:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_network:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -246,6 +1086,129 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_0_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_network_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_0_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_pcm_server_pcm_005:
type: tosca.capabilities.Container
valid_source_types:
@@ -253,13 +1216,15 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_server_pcm_server_pcm_005:
- type: tosca.capabilities.OperatingSystem
+ network.outpoing.packets_pcm_port_0_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
- type: tosca.capabilities.Scalable
+ disk.read.bytes.rate_server_pcm_server_pcm_005:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -273,18 +1238,62 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_network_server_pcm_005:
- type: tosca.capabilities.Attachment
+ disk.write.requests_server_pcm:
+ type: org.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_network:
- type: tosca.capabilities.Attachment
+ cpu_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
- type: tosca.capabilities.network.Bindable
+ memory.resident_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_pcm:
+ type: org.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_pcm_port_0_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -293,8 +1302,9 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_0_server_pcm_005:
- type: tosca.capabilities.Attachment
+ disk.capacity_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -303,28 +1313,173 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- link_network_server_pcm_005:
- type: tosca.capabilities.network.Linkable
+ memory.usage_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
- type: tosca.capabilities.Scalable
+ network.incoming.packets.rate_pcm_port_0_server_pcm_005:
+ type: org.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_pcm_port_0:
- type: tosca.capabilities.Attachment
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_1:
- type: tosca.capabilities.Attachment
+ end_point_network:
+ type: tosca.capabilities.Endpoint
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_1_server_pcm_005:
+ disk.device.write.requests_server_pcm_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_pcm_port_0_server_pcm_005:
+ type: org.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_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_1_server_pcm_005:
+ type: org.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_network_server_pcm_005:
type: tosca.capabilities.Attachment
occurrences:
- 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_1:
+ type: org.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_pcm_port_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_pcm_port_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
+ end_point_network_server_pcm_005:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_pcm_port_1:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm_server_pcm_005:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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/recursive/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/MainServiceTemplate.yaml
index a0063b174e..d61871c767 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
oam_net_ips:
@@ -222,19 +198,19 @@ topology_template:
cps_net_mask:
get_input: cps_net_mask
groups:
- hot-nimbus-pcm_v0.4_2:
+ hot-nimbus-pcm_v0.4_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v0.4_2.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
description: heat template that creates PCRF Cluman stack
members:
- - server_pcm_004
- - server_pcm_003
- hot-nimbus-pcm_v0.4:
+ - server_pcm_002
+ - server_pcm_001
+ hot-nimbus-pcm_v0.4_2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4_2.yaml
description: heat template that creates PCRF Cluman stack
members:
- - server_pcm_002
- - server_pcm_001 \ No newline at end of file
+ - server_pcm_004
+ - server_pcm_003 \ 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/recursive/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
index 39fb736465..480a645fdf 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -129,11 +105,21 @@ topology_template:
pcm_port_1:
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: security_group_name
fixed_ips:
- ip_address:
get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -150,7 +136,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
@@ -180,11 +166,21 @@ topology_template:
pcm_port_0:
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: security_group_name
fixed_ips:
- ip_address:
get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
network:
get_input: cps_net_name
requirements:
@@ -198,7 +194,7 @@ topology_template:
network_name:
get_input: cps_net_name
groups:
- nested-pcm_v0.1:
+ nested-pcm_v0.1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1.yaml
@@ -216,76 +212,454 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
capabilities:
- endpoint_server_pcm:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ scalable_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - scalable_server_pcm
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
- server_pcm
- - endpoint
+ - memory
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.write.bytes_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.write.bytes_server_pcm
+ network.incoming.bytes.rate_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.bytes.rate_pcm_port_1
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ binding_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - binding_pcm_port_1
+ link_network_server_pcm_005:
+ - server_pcm_005
+ - link_network
+ memory_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - memory_server_pcm
+ network.outgoing.packets.rate_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.outgoing.packets.rate_pcm_port_1
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.device.read.requests.rate_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.read.requests.rate_server_pcm
+ network.outgoing.bytes_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.outgoing.bytes_pcm_port_1
+ os_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - os_server_pcm
+ feature_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - feature_pcm_port_0
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.read.bytes_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.read.bytes_server_pcm
+ disk.device.write.bytes.rate_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.write.bytes.rate_server_pcm
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ network.incoming.packets_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.packets_pcm_port_0
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.write.requests_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.write.requests_server_pcm
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ instance_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - instance_server_pcm
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ network.incoming.packets.rate_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.packets.rate_pcm_port_1
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.iops_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.iops_server_pcm
+ disk.device.read.bytes.rate_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.read.bytes.rate_server_pcm
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.bytes_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - network.outgoing.bytes_pcm_port_0
+ network.outgoing.bytes.rate_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.outgoing.bytes.rate_pcm_port_1
+ disk.device.latency_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.latency_server_pcm
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ feature_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - feature_pcm_port_1
+ disk.device.read.requests_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.read.requests_server_pcm
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ attachment_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - attachment_pcm_port_1
+ disk.device.usage_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.usage_server_pcm
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ disk.read.requests_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.read.requests_server_pcm
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ attachment_network:
+ - network
+ - attachment
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.write.bytes.rate_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.write.bytes.rate_server_pcm
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ attachment_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - attachment_pcm_port_0
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ disk.allocation_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.allocation_server_pcm
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ feature_network:
+ - network
+ - feature
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ vcpus_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - vcpus_server_pcm
host_server_pcm:
- server_pcm
- host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ disk.write.bytes_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.write.bytes_server_pcm
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.usage_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.usage_server_pcm
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ network.outpoing.packets_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.outpoing.packets_pcm_port_1
+ cpu_util_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - cpu_util_server_pcm
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ disk.ephemeral.size_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.ephemeral.size_server_pcm
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ memory.resident_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - memory.resident_server_pcm
+ network.incoming.bytes_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.bytes_pcm_port_0
+ disk.capacity_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.capacity_server_pcm
+ feature_network_server_pcm_005:
+ - server_pcm_005
+ - feature_network
+ network.outgoing.bytes.rate_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - network.outgoing.bytes.rate_pcm_port_0
+ disk.latency_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.latency_server_pcm
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ disk.write.requests.rate_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.write.requests.rate_server_pcm
host_server_pcm_server_pcm_005:
- server_pcm_005
- host_server_pcm
- os_server_pcm_server_pcm_005:
+ network.outpoing.packets_pcm_port_0_server_pcm_005:
- server_pcm_005
- - os_server_pcm
- scalable_server_pcm_server_pcm_005:
+ - network.outpoing.packets_pcm_port_0
+ disk.read.bytes.rate_server_pcm_server_pcm_005:
- server_pcm_005
- - scalable_server_pcm
+ - disk.read.bytes.rate_server_pcm
binding_server_pcm_server_pcm_005:
- server_pcm_005
- binding_server_pcm
endpoint_server_pcm_server_pcm_005:
- server_pcm_005
- endpoint_server_pcm
- attachment_network_server_pcm_005:
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ cpu_server_pcm_server_pcm_005:
- server_pcm_005
- - attachment_network
- attachment_network:
- - network
- - attachment
- binding_server_pcm:
+ - cpu_server_pcm
+ memory.resident_server_pcm:
- server_pcm
- - binding
+ - memory.resident
+ disk.device.read.bytes_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.read.bytes_server_pcm
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ feature_server_pcm_005:
+ - server_pcm_005
+ - feature
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ network.outgoing.packets.rate_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - network.outgoing.packets.rate_pcm_port_0
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
link_network:
- network
- link
- attachment_pcm_port_0_server_pcm_005:
- - server_pcm_005
- - attachment_pcm_port_0
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
os_server_pcm:
- server_pcm
- os
- link_network_server_pcm_005:
+ memory.usage_server_pcm_server_pcm_005:
- server_pcm_005
- - link_network
- scalable_server_pcm:
+ - memory.usage_server_pcm
+ network.incoming.packets.rate_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.packets.rate_pcm_port_0
+ endpoint_server_pcm:
- server_pcm
- - scalable
- attachment_pcm_port_0:
+ - endpoint
+ end_point_network:
+ - network
+ - end_point
+ disk.device.write.requests_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.write.requests_server_pcm
+ disk.device.iops_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.iops_server_pcm
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.device.capacity_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.capacity_server_pcm
+ network.incoming.bytes_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.bytes_pcm_port_1
+ network.incoming.bytes.rate_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.bytes.rate_pcm_port_0
+ feature_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - feature_server_pcm
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ disk.device.write.requests.rate_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.write.requests.rate_server_pcm
+ binding_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - binding_pcm_port_0
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ disk.device.allocation_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - disk.device.allocation_server_pcm
+ network.incoming.packets_pcm_port_1_server_pcm_005:
+ - server_pcm_005
+ - network.incoming.packets_pcm_port_1
+ attachment_network_server_pcm_005:
+ - server_pcm_005
+ - attachment_network
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
- pcm_port_0
- - attachment
- attachment_pcm_port_1:
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ end_point_network_server_pcm_005:
+ - server_pcm_005
+ - end_point_network
+ network.incoming.packets_pcm_port_1:
- pcm_port_1
- - attachment
- attachment_pcm_port_1_server_pcm_005:
+ - network.incoming.packets
+ disk.root.size_server_pcm_server_pcm_005:
- server_pcm_005
- - attachment_pcm_port_1
- requirements:
- link_pcm_port_0:
+ - disk.root.size_server_pcm
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ cpu.delta_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - cpu.delta_server_pcm
+ network.incoming.bytes.rate_pcm_port_0:
- pcm_port_0
- - link
- link_pcm_port_1:
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
- pcm_port_1
- - link
+ - network.incoming.bytes.rate
+ requirements:
+ dependency_server_pcm_005:
+ - server_pcm_005
+ - dependency
link_pcm_port_1_server_pcm_005:
- server_pcm_005
- link_pcm_port_1
- link_pcm_port_0_server_pcm_005:
+ dependency_pcm_port_1_server_pcm_005:
- server_pcm_005
- - link_pcm_port_0
+ - dependency_pcm_port_1
local_storage_server_pcm:
- server_pcm
- local_storage
+ dependency_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - dependency_pcm_port_0
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
local_storage_server_pcm_server_pcm_005:
- server_pcm_005
- - local_storage_server_pcm \ No newline at end of file
+ - local_storage_server_pcm
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
+ dependency_server_pcm_server_pcm_005:
+ - server_pcm_005
+ - dependency_server_pcm
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ dependency_network:
+ - network
+ - dependency
+ link_pcm_port_0_server_pcm_005:
+ - server_pcm_005
+ - link_pcm_port_0
+ dependency_network_server_pcm_005:
+ - server_pcm_005
+ - dependency_network \ 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/recursive/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml
index a80a5811b1..16b003af18 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/expectedoutputfiles/nested-pcm_v0.1_2ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1_2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -103,11 +79,21 @@ topology_template:
pcm_port_1:
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: security_group_name
fixed_ips:
- ip_address:
get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -124,18 +110,28 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
pcm_port_0:
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: security_group_name
fixed_ips:
- ip_address:
get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
network:
get_input: cps_net_name
requirements:
@@ -149,7 +145,7 @@ topology_template:
network_name:
get_input: cps_net_name
groups:
- nested-pcm_v0.1_2:
+ nested-pcm_v0.1_2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1_2.yaml
@@ -166,33 +162,207 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1_2
capabilities:
- endpoint_server_pcm:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
- server_pcm
- - endpoint
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
link_network:
- network
- link
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
os_server_pcm:
- server_pcm
- os
- host_server_pcm:
+ disk.read.bytes_server_pcm:
- server_pcm
- - host
- scalable_server_pcm:
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
- server_pcm
- - scalable
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ end_point_network:
+ - network
+ - end_point
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
attachment_network:
- network
- attachment
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ feature_network:
+ - network
+ - feature
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
binding_server_pcm:
- server_pcm
- binding
- attachment_pcm_port_0:
+ network.outgoing.bytes.rate_pcm_port_0:
- pcm_port_0
- - attachment
- attachment_pcm_port_1:
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
- pcm_port_1
- - attachment
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
requirements:
link_pcm_port_0:
- pcm_port_0
@@ -200,6 +370,18 @@ topology_template:
link_pcm_port_1:
- pcm_port_1
- link
+ dependency_network:
+ - network
+ - dependency
local_storage_server_pcm:
- server_pcm
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/recursive/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/inputs/MANIFEST.json
index b4a1b43a1e..0e7e10bb2e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/recursive/inputs/MANIFEST.json
@@ -11,14 +11,17 @@
"file": "hot-nimbus-pcm_v0.4.env",
"type": "HEAT_ENV"
}
- ]
- },{
+ ]
+ },
+ {
"file": "nested-pcm_v0.1.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "hot-nimbus-pcm_v0.4_2.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "nested-pcm_v0.1_2.yaml",
"type": "HEAT"
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 15b5e3b3a8..6549b60e5e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,9 +11,13 @@ node_types:
vf_module_id:
type: string
description: Unique ID for this VF_MODULE instance
+ required: true
+ status: SUPPORTED
vf_name:
type: string
description: The VF Name; defaults to VMVM for the virtual MVM VNF.
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 4
@@ -45,9 +25,13 @@ node_types:
cloud_zone_id:
type: string
description: The cloud zone for this VF instance
+ required: true
+ status: SUPPORTED
vf_instance_num:
type: string
description: The number for this VF instance
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[0-9]+'
- max_length: 2
@@ -55,53 +39,71 @@ node_types:
virtual_mgmt_ip_0:
type: string
description: Virtual management network ip address
+ required: true
+ status: SUPPORTED
indx:
type: float
description: Index of the current instance
+ required: true
+ status: SUPPORTED
mvs_mgmt_ip_0:
type: list
description: List of Management network IP addresses for IPv4
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
flavor:
type: string
description: Server flavor
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
key_name:
type: string
description: SSH key name
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vnf_id:
type: string
description: Unique ID for this VF instance
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: list
description: List of Availability Zone IDs or Names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
mgmt_net_id:
type: string
description: Neutron UUID for the Management network
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vm_instance_num:
type: list
description: VM instance number list must be a list of three-digit numeric value
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
bootimage:
type: string
description: Master bootimage volume id
+ required: true
+ status: SUPPORTED
sec_groups:
type: list
description: Security groups
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
vf_component:
type: string
description: The component that this VF instance is running
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 3
@@ -109,9 +111,18 @@ node_types:
attributes:
vnfci_id_2:
type: string
+ status: SUPPORTED
vnfci_id_1:
type: string
+ status: SUPPORTED
requirements:
+ - dependency_vnfci:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_vnfci:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -119,29 +130,296 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_mgmt_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_mgmt_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ disk.ephemeral.size_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ memory.usage_vnfci:
+ type: org.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_mgmt_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_mgmt_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_mgmt_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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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.usage_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
+ binding_vnfci:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_vnfci:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_vnfci:
type: tosca.capabilities.Container
valid_source_types:
@@ -149,13 +427,27 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_vnfci:
- type: tosca.capabilities.network.Bindable
+ disk.device.allocation_vnfci:
+ type: org.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_vnfci:
- type: tosca.capabilities.Scalable
+ network.incoming.bytes.rate_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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/resourceGroupIndexVar/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/MainServiceTemplate.yaml
index b07fa5b70b..d24a02ca03 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.compute:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -556,7 +532,7 @@ topology_template:
- 1
name: compute_name
groups:
- mvs.vfmodule.heat:
+ mvs.vfmodule.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.vfmodule.heat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
index 11369f9b68..0d84b3fc0e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupIndexVar/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: mvs.nested.heat
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.vnfci:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -174,6 +150,12 @@ topology_template:
mgmt_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: true
security_groups:
- get_input: sec_groups
fixed_ips:
@@ -182,6 +164,9 @@ topology_template:
- get_input: indx
- get_input:
- get_input: mvs_mgmt_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: virtual_mgmt_ip_0
@@ -202,6 +187,7 @@ topology_template:
get_input: vf_component
$VF_INSTANCE_NUM:
get_input: vf_instance_num
+ network_role_tag: mgmt
network:
get_input: mgmt_net_id
requirements:
@@ -210,7 +196,7 @@ topology_template:
node: vnfci
relationship: tosca.relationships.network.BindsTo
groups:
- mvs.nested.heat:
+ mvs.nested.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.nested.heat.yaml
@@ -227,25 +213,169 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat
capabilities:
+ disk.ephemeral.size_vnfci:
+ - vnfci
+ - disk.ephemeral.size
+ disk.iops_vnfci:
+ - vnfci
+ - disk.iops
+ network.outgoing.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes.rate
+ disk.device.write.bytes_vnfci:
+ - vnfci
+ - disk.device.write.bytes
+ disk.device.iops_vnfci:
+ - vnfci
+ - disk.device.iops
+ cpu_util_vnfci:
+ - vnfci
+ - cpu_util
+ disk.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.write.bytes.rate
+ disk.device.latency_vnfci:
+ - vnfci
+ - disk.device.latency
+ disk.latency_vnfci:
+ - vnfci
+ - disk.latency
+ disk.write.requests_vnfci:
+ - vnfci
+ - disk.write.requests
+ network.outpoing.packets_mgmt_port:
+ - mgmt_port
+ - network.outpoing.packets
+ memory.resident_vnfci:
+ - vnfci
+ - memory.resident
os_vnfci:
- vnfci
- os
+ memory.usage_vnfci:
+ - vnfci
+ - memory.usage
attachment_mgmt_port:
- mgmt_port
- attachment
+ disk.device.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.write.bytes.rate
+ disk.root.size_vnfci:
+ - vnfci
+ - disk.root.size
+ disk.device.usage_vnfci:
+ - vnfci
+ - disk.device.usage
+ disk.read.bytes_vnfci:
+ - vnfci
+ - disk.read.bytes
+ disk.device.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.read.bytes.rate
+ disk.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.read.bytes.rate
+ cpu_vnfci:
+ - vnfci
+ - cpu
+ disk.device.write.requests.rate_vnfci:
+ - vnfci
+ - disk.device.write.requests.rate
+ network.incoming.bytes_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes
+ disk.capacity_vnfci:
+ - vnfci
+ - disk.capacity
+ disk.device.read.requests_vnfci:
+ - vnfci
+ - disk.device.read.requests
+ binding_mgmt_port:
+ - mgmt_port
+ - binding
+ network.outgoing.bytes_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes
+ network.incoming.packets_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets
+ instance_vnfci:
+ - vnfci
+ - instance
+ feature_mgmt_port:
+ - mgmt_port
+ - feature
+ disk.device.read.bytes_vnfci:
+ - vnfci
+ - disk.device.read.bytes
+ disk.allocation_vnfci:
+ - vnfci
+ - disk.allocation
+ disk.write.requests.rate_vnfci:
+ - vnfci
+ - disk.write.requests.rate
+ disk.write.bytes_vnfci:
+ - vnfci
+ - disk.write.bytes
+ disk.device.write.requests_vnfci:
+ - vnfci
+ - disk.device.write.requests
+ disk.usage_vnfci:
+ - vnfci
+ - disk.usage
+ network.incoming.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets.rate
+ feature_vnfci:
+ - vnfci
+ - feature
+ memory_vnfci:
+ - vnfci
+ - memory
endpoint_vnfci:
- vnfci
- endpoint
- host_vnfci:
- - vnfci
- - host
binding_vnfci:
- vnfci
- binding
scalable_vnfci:
- vnfci
- scalable
+ disk.device.capacity_vnfci:
+ - vnfci
+ - disk.device.capacity
+ network.outgoing.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.packets.rate
+ vcpus_vnfci:
+ - vnfci
+ - vcpus
+ cpu.delta_vnfci:
+ - vnfci
+ - cpu.delta
+ host_vnfci:
+ - vnfci
+ - host
+ disk.device.allocation_vnfci:
+ - vnfci
+ - disk.device.allocation
+ network.incoming.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes.rate
+ disk.read.requests_vnfci:
+ - vnfci
+ - disk.read.requests
+ disk.device.read.requests.rate_vnfci:
+ - vnfci
+ - disk.device.read.requests.rate
requirements:
+ dependency_mgmt_port:
+ - mgmt_port
+ - dependency
+ dependency_vnfci:
+ - vnfci
+ - dependency
local_storage_vnfci:
- vnfci
- local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/MANIFEST.json
deleted file mode 100644
index c7729c8653..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/MANIFEST.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "name": "mvs.vfmodule.heat.yaml",
- "description": "Metaswitch MVS (Metaview Server)",
- "version": "2013-05-23",
- "data": [
- {
- "file": "mvs.vfmodule.heat.yaml",
- "type": "HEAT",
- "data": [
- ]
- },
- {
- "file": "mvs.nested.heat.yaml",
- "type": "HEAT",
- "data": [
- ]
- }
- ]
-} \ 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/resourceGroupInvalid/inputs/mvs.nested.heat.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/mvs.nested.heat.yaml
deleted file mode 100644
index 01adb51d71..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/mvs.nested.heat.yaml
+++ /dev/null
@@ -1,129 +0,0 @@
-heat_template_version: 2013-05-23
-
-description: >
- Metaswitch MVS (Metaview Server)
-
-parameters:
- cloud_zone_id:
- type: string
- description: The cloud zone for this VF instance
- vf_name:
- type: string
- description: The VF Name; defaults to VMVM for the virtual MVM VNF.
- constraints:
- - allowed_pattern: "[a-zA-Z0-9]+"
- - length: { min: 4, max: 4 }
- description: Each VF will have a 4-character alphanumeric identifier
- vf_instance_num:
- type: string
- description: The number for this VF instance
- constraints:
- - allowed_pattern: "[0-9]+"
- - length: { min: 2, max: 2 }
- description: VF instance number must be a two-digit numeric value
- vf_component:
- type: string
- description: The component that this VF instance is running
- constraints:
- - allowed_pattern: "[a-zA-Z0-9]+"
- - length: { min: 3, max: 3 }
- description: Each VF component will have a 3-character alphanumeric identifier
- vm_instance_num:
- type: comma_delimited_list
- description: VM instance number list must be a list of three-digit numeric value
- vnf_id:
- type: string
- description: Unique ID for this VF instance
- vf_module_id:
- type: string
- description: Unique ID for this VF_MODULE instance
- bootimage:
- type: string
- description: Master bootimage volume id
- flavor:
- type: string
- description: Server flavor
- constraints:
- - custom_constraint: nova.flavor
- key_name:
- type: string
- description: SSH key name
- constraints:
- - custom_constraint: nova.keypair
-
- availability_zone_0:
- type: comma_delimited_list
- description: List of Availability Zone IDs or Names
-
- sec_groups:
- type: comma_delimited_list
- description: Security groups
- mgmt_net_id:
- type: string
- description: Neutron UUID for the Management network
- constraints:
- - custom_constraint: neutron.network
- virtual_mgmt_ip_0:
- type: string
- description: Virtual management network ip address
-
- mvs_mgmt_ip_0:
- type: comma_delimited_list
- description: List of Management network IP addresses for IPv4
-
- indx:
- type: number
- description: Index of the current instance
-
-resources:
- mgmt_port:
- type: OS::Neutron::Port
- properties:
- name:
- str_replace:
- template: Z$CLOUD_ZONE_ID$VF_NAME$VF_INSTANCE_NUM$VF_COMPONENT$VM_INSTANCE_NUM-mgmt-port
- params:
- $CLOUD_ZONE_ID: { get_param: cloud_zone_id }
- $VF_NAME: { get_param: vf_name }
- $VF_INSTANCE_NUM: { get_param: vf_instance_num }
- $VF_COMPONENT: { get_param: vf_component }
- $VM_INSTANCE_NUM: { "Fn::Select" : [ { get_param: indx }, { get_param: [vm_instance_num] } ] }
- network_id: { get_param: mgmt_net_id }
- security_groups: [{ get_param: sec_groups }]
-
- fixed_ips:
- - ip_address: { "Fn::Select" : [ { get_param: indx }, { get_param: [{ get_param: mvs_mgmt_ip_0 }] } ] }
-
- allowed_address_pairs:
- - ip_address: { get_param: virtual_mgmt_ip_0 }
-
-
-
- vnfci:
- type: OS::Nova::Server
- properties:
- name:
- str_replace:
- template: Z$CLOUD_ZONE_ID$VF_NAME$VF_INSTANCE_NUM$VF_COMPONENT$VM_INSTANCE_NUM
- params:
- $CLOUD_ZONE_ID: { get_param: cloud_zone_id }
- $VF_NAME: { get_param: vf_name }
- $VF_INSTANCE_NUM: { get_param: vf_instance_num }
- $VF_COMPONENT: { get_param: vf_component }
- $VM_INSTANCE_NUM: { "Fn::Select" : [ { get_param: indx }, { get_param: [vm_instance_num] } ] }
- flavor: { get_param: flavor }
- key_name: { get_param: key_name }
- networks:
- - port: { get_resource: mgmt_port }
-
- availability_zone: { "Fn::Select" : [ { get_param: indx }, { get_param: [availability_zone_0] } ] }
-
- metadata:
- vnf_id: { get_param: vnf_id }
- vf_module_id: { get_param: vf_module_id }
-
-outputs:
- vnfci_id_1:
- value: { get_resource: vnfci }
- vnfci_id_2:
- value: { get_resource: vnfci } \ 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/resourceGroupInvalid/inputs/mvs.vfmodule.heat.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/mvs.vfmodule.heat.yaml
deleted file mode 100644
index d71dd81fbf..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupInvalid/inputs/mvs.vfmodule.heat.yaml
+++ /dev/null
@@ -1,166 +0,0 @@
-heat_template_version: 2013-05-23
-
-description: >
- Metaswitch MVS (Metaview Server)
-
-parameters:
- cloud_zone_id:
- type: string
- description: The cloud zone for this VF instance
- index_parameter:
- type: string
- vf_name:
- type: string
- description: The VF Name; defaults to VMVM for the virtual MVM VNF.
- constraints:
- - allowed_pattern: "[a-zA-Z0-9]+"
- - length: { min: 4, max: 4 }
- description: Each VF will have a 4-character alphanumeric identifier
- vf_instance_num:
- type: string
- description: The number for this VF instance
- constraints:
- - allowed_pattern: "[0-9]+"
- - length: { min: 2, max: 2 }
- description: VF instance number must be a two-digit numeric value
- vf_component:
- type: string
- description: The component that this VF instance is running
- constraints:
- - allowed_pattern: "[a-zA-Z0-9]+"
- - length: { min: 3, max: 3 }
- description: Each VF component will have a 3-character alphanumeric identifier
- vm_instance_num:
- type: comma_delimited_list
- description: VM instance number list must be a list of three-digit numeric value
- vnf_id:
- type: string
- description: Unique ID for this VF instance
- vf_module_id:
- type: string
- description: Unique ID for this VF_MODULE instance
- bootimage:
- type: string
- description: Master bootimage volume id
- flavor:
- type: string
- description: Server flavor
- constraints:
- - custom_constraint: nova.flavor
- key_name:
- type: string
- description: SSH key name
- constraints:
- - custom_constraint: nova.keypair
- type_name:
- type: string
- availability_zone_0:
- type: comma_delimited_list
- description: List of Availability Zone IDs or Names
-
- sec_groups:
- type: comma_delimited_list
- description: Security groups
- mgmt_net_id:
- type: string
- description: Neutron UUID for the Management network
- constraints:
- - custom_constraint: neutron.network
- virtual_mgmt_ip_0:
- type: string
- description: Virtual management network ip address
-
- mvs_mgmt_ip_0:
- type: comma_delimited_list
- description: List of Management network IP addresses for IPv4
-
- num_instances:
- type: number
- description: number of instance of the VF_module
-
- compute_image_name:
- type: string
-
-resources:
- mvs_modules:
- type: OS::Heat::ResourceGroup
- properties:
- count: 3
- index_var: { get_param: index_parameter }
- resource_def:
- type: mvs.nested.heat.yaml
- properties:
- cloud_zone_id: { get_param: cloud_zone_id }
- vf_name: { get_param: vf_name }
- vf_instance_num: { get_param: vf_instance_num }
- vf_component: { get_param: vf_component }
- vm_instance_num: { get_param: vm_instance_num }
- vnf_id: { get_param: vnf_id }
- vf_module_id: { get_param: vf_module_id }
- bootimage: { get_param: bootimage }
- flavor: { get_param: flavor }
- key_name: { get_param: key_name }
- availability_zone_0: { get_param: availability_zone_0 }
- sec_groups: { get_param: sec_groups }
- mgmt_net_id: { get_param: mgmt_net_id }
- virtual_mgmt_ip_0: { get_param: virtual_mgmt_ip_0 }
- mvs_mgmt_ip_0: { get_param: mvs_mgmt_ip_0 }
- indx: "%index%"
-
- not_supported_resourceGroup1:
- type: OS::Heat::ResourceGroup
- properties:
- count: 3
- resource_def:
- type: OS::Heat::ResourceGroup
- properties:
- cloud_zone_id: { get_param: cloud_zone_id }
- vf_name: { get_param: vf_name }
- vf_instance_num: { get_param: vf_instance_num }
- vf_component: { get_param: vf_component }
- vm_instance_num: { get_param: vm_instance_num }
- vnf_id: { get_param: vnf_id }
- vf_module_id: { get_param: vf_module_id }
- bootimage: { get_param: bootimage }
- flavor: { get_param: flavor }
- key_name: { get_param: key_name }
- availability_zone_0: { get_param: availability_zone_0 }
- sec_groups: { get_param: sec_groups }
- mgmt_net_id: { get_param: mgmt_net_id }
- virtual_mgmt_ip_0: { get_param: virtual_mgmt_ip_0 }
- mvs_mgmt_ip_0: { get_param: mvs_mgmt_ip_0 }
- indx: "%index%"
-
- not_supported_resourceGroup2:
- type: OS::Heat::ResourceGroup
- properties:
- count: 3
- resource_def:
- type: { get_param: type_name }
- properties:
- cloud_zone_id: { get_param: cloud_zone_id }
- vf_name: { get_param: vf_name }
- vf_instance_num: { get_param: vf_instance_num }
- vf_component: { get_param: vf_component }
- vm_instance_num: { get_param: vm_instance_num }
- vnf_id: { get_param: vnf_id }
- vf_module_id: { get_param: vf_module_id }
- bootimage: { get_param: bootimage }
- flavor: { get_param: flavor }
- key_name: { get_param: key_name }
- availability_zone_0: { get_param: availability_zone_0 }
- sec_groups: { get_param: sec_groups }
- mgmt_net_id: { get_param: mgmt_net_id }
- virtual_mgmt_ip_0: { get_param: virtual_mgmt_ip_0 }
- mvs_mgmt_ip_0: { get_param: mvs_mgmt_ip_0 }
- indx: "%index%"
-
- server_compute_get_attr_test:
- type: OS::Nova::Server
- properties:
- config_drive: {get_attr: [mvs_modules]}
- name: compute_name
- image: { get_param: compute_image_name }
- flavor: compute_flavor_name
- user_data_format: { get_attr: [mvs_modules , resource.1.vnfci_id_1] }
- user_data: { get_attr: [mvs_modules, resource.vnfci_id_2]}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index ec3b692135..dc01287086 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.dns_nested_01:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,77 +11,130 @@ node_types:
vf_module_id:
type: string
description: Unique ID for this VF module instance
+ required: true
+ status: SUPPORTED
name_with_index:
type: string
description: name parameter which will include the index value
+ required: true
+ status: SUPPORTED
dns_int_bearer_ips:
type: list
description: DNS Bearer IP list
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
vnf_name:
type: string
description: Unique name for this VF instance
+ required: true
+ status: SUPPORTED
index:
type: float
description: index parameter
+ required: true
+ status: SUPPORTED
security_group:
type: string
description: security group
+ required: true
+ status: SUPPORTED
oam_protected_net_name:
type: string
description: OAM network where instaces will connect
+ required: true
+ status: SUPPORTED
dns_oam_protected_ips:
type: list
description: DNS OAM IP list
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
dns_key:
type: string
description: server key
+ required: true
+ status: SUPPORTED
int_bearer_net_name:
type: string
description: Bearer network where instaces will connect
+ required: true
+ status: SUPPORTED
route_eth0:
type: string
description: OAM network routes
+ required: true
+ status: SUPPORTED
dns_names:
type: list
description: server name
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
vnf_id:
type: string
description: Unique ID for this VF instance
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availability zone ID or Name
+ required: true
+ status: SUPPORTED
dns_image_name:
type: string
description: server image
+ required: true
+ status: SUPPORTED
dns_int_bearer_ipv6_ips:
type: list
description: fixed IPv6 assignment for VM's on the Bearer network
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
dns_flavor_name:
type: string
description: server flavor
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_dns_oam_protected_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_dns_oam_protected_0_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_dns_int_bearer_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_dns_int_bearer_0_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_dns_servers:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_dns_servers:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -114,6 +143,120 @@ node_types:
- 0
- UNBOUNDED
capabilities:
+ disk.read.bytes.rate_dns_servers:
+ type: org.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_dns_oam_protected_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_dns_int_bearer_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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_oam_protected_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_dns_int_bearer_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_dns_int_bearer_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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_int_bearer_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_dns_oam_protected_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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_oam_protected_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_dns_servers:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_dns_servers:
type: tosca.capabilities.Container
valid_source_types:
@@ -121,13 +264,193 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu.delta_dns_servers:
+ type: org.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_dns_oam_protected_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_dns_servers:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_dns_int_bearer_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_dns_oam_protected_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_dns_servers:
+ type: org.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_dns_oam_protected_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_dns_oam_protected_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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_int_bearer_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_dns_oam_protected_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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_int_bearer_0_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- attachment_dns_oam_protected_0_port:
- type: tosca.capabilities.Attachment
+ disk.device.latency_dns_servers:
+ type: org.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_dns_int_bearer_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_oam_protected_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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_int_bearer_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_dns_int_bearer_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
@@ -136,13 +459,54 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ feature_dns_oam_protected_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_dns_int_bearer_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
endpoint_dns_servers:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_dns_servers:
- type: tosca.capabilities.network.Bindable
+ cpu_util_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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_dns_servers:
+ type: org.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.usage_dns_servers:
+ type: org.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_dns_servers:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/MainServiceTemplate.yaml
index 6eae1ff185..45de38a378 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
vf_module_id:
@@ -221,15 +197,15 @@ topology_template:
direction: ingress
requirements:
- port:
- capability: attachment_dns_int_bearer_0_port
+ capability: attachment_dns_oam_protected_0_port
node: dns_server_group_az
relationship: org.openecomp.relationships.AttachesTo
- port:
- capability: attachment_dns_oam_protected_0_port
+ capability: attachment_dns_int_bearer_0_port
node: dns_server_group_az
relationship: org.openecomp.relationships.AttachesTo
groups:
- base_dns:
+ base_dns_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/base_dns.yaml
@@ -237,7 +213,7 @@ topology_template:
Base HOT template to create The Security Group for the the DNS VNF
members:
- DNS_SECURITY_GROUP
- dns_az_01:
+ dns_az_01_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/dns_az_01.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/dns_nested_01ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/dns_nested_01ServiceTemplate.yaml
index db6b3a0179..b777782c3e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/dns_nested_01ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/expectedoutputfiles/dns_nested_01ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: dns_nested_01
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.dns:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -132,6 +108,12 @@ topology_template:
dns_oam_protected_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: security_group
fixed_ips:
@@ -139,12 +121,16 @@ topology_template:
get_input:
- dns_oam_protected_ips
- get_input: index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
name:
str_replace:
template: VNF_NAME_dns_oam_port
params:
VNF_NAME:
get_input: vnf_name
+ network_role_tag: oam_protected
network:
get_input: oam_protected_net_name
requirements:
@@ -155,6 +141,12 @@ topology_template:
dns_int_bearer_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: security_group
fixed_ips:
@@ -166,12 +158,16 @@ topology_template:
get_input:
- dns_int_bearer_ipv6_ips
- get_input: index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
name:
str_replace:
template: VNF_NAME_dns_bearer_port
params:
VNF_NAME:
get_input: vnf_name
+ network_role_tag: int_bearer
network:
get_input: int_bearer_net_name
requirements:
@@ -202,7 +198,7 @@ topology_template:
- dns_names
- get_input: index
groups:
- dns_nested_01:
+ dns_nested_01_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/dns_nested_01.yaml
@@ -216,24 +212,192 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.dns_nested_01
capabilities:
+ disk.read.bytes.rate_dns_servers:
+ - dns_servers
+ - disk.read.bytes.rate
+ attachment_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - attachment
+ network.outpoing.packets_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.outpoing.packets
+ memory.resident_dns_servers:
+ - dns_servers
+ - memory.resident
+ disk.device.write.requests.rate_dns_servers:
+ - dns_servers
+ - disk.device.write.requests.rate
+ disk.root.size_dns_servers:
+ - dns_servers
+ - disk.root.size
+ disk.write.requests.rate_dns_servers:
+ - dns_servers
+ - disk.write.requests.rate
+ disk.device.write.requests_dns_servers:
+ - dns_servers
+ - disk.device.write.requests
+ network.incoming.bytes_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - network.incoming.bytes
+ network.incoming.packets.rate_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_dns_servers:
+ - dns_servers
+ - disk.read.bytes
+ disk.capacity_dns_servers:
+ - dns_servers
+ - disk.capacity
+ network.outgoing.packets.rate_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.outgoing.packets.rate
+ binding_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - binding
+ disk.device.iops_dns_servers:
+ - dns_servers
+ - disk.device.iops
+ disk.read.requests_dns_servers:
+ - dns_servers
+ - disk.read.requests
+ network.outpoing.packets_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - network.outpoing.packets
+ disk.device.capacity_dns_servers:
+ - dns_servers
+ - disk.device.capacity
host_dns_servers:
- dns_servers
- host
+ cpu.delta_dns_servers:
+ - dns_servers
+ - cpu.delta
+ network.incoming.bytes.rate_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - network.incoming.bytes.rate
+ binding_dns_servers:
+ - dns_servers
+ - binding
+ instance_dns_servers:
+ - dns_servers
+ - instance
+ disk.device.read.requests.rate_dns_servers:
+ - dns_servers
+ - disk.device.read.requests.rate
+ disk.allocation_dns_servers:
+ - dns_servers
+ - disk.allocation
+ disk.ephemeral.size_dns_servers:
+ - dns_servers
+ - disk.ephemeral.size
+ disk.device.read.bytes_dns_servers:
+ - dns_servers
+ - disk.device.read.bytes
+ vcpus_dns_servers:
+ - dns_servers
+ - vcpus
+ feature_dns_servers:
+ - dns_servers
+ - feature
+ network.outgoing.bytes.rate_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - network.outgoing.bytes.rate
+ disk.write.bytes_dns_servers:
+ - dns_servers
+ - disk.write.bytes
+ network.outgoing.packets.rate_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - network.incoming.packets
+ disk.write.requests_dns_servers:
+ - dns_servers
+ - disk.write.requests
+ cpu_dns_servers:
+ - dns_servers
+ - cpu
+ memory.usage_dns_servers:
+ - dns_servers
+ - memory.usage
+ network.incoming.packets_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.incoming.packets
+ network.incoming.packets.rate_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - network.incoming.packets.rate
+ memory_dns_servers:
+ - dns_servers
+ - memory
+ disk.device.write.bytes.rate_dns_servers:
+ - dns_servers
+ - disk.device.write.bytes.rate
attachment_dns_int_bearer_0_port:
- dns_int_bearer_0_port
- attachment
- attachment_dns_oam_protected_0_port:
+ disk.device.latency_dns_servers:
+ - dns_servers
+ - disk.device.latency
+ binding_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - binding
+ disk.device.read.bytes.rate_dns_servers:
+ - dns_servers
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_dns_servers:
+ - dns_servers
+ - disk.write.bytes.rate
+ network.outgoing.bytes_dns_oam_protected_0_port:
- dns_oam_protected_0_port
- - attachment
+ - network.outgoing.bytes
+ disk.device.read.requests_dns_servers:
+ - dns_servers
+ - disk.device.read.requests
+ disk.iops_dns_servers:
+ - dns_servers
+ - disk.iops
+ network.outgoing.bytes_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.outgoing.bytes
+ network.incoming.bytes_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - network.incoming.bytes
os_dns_servers:
- dns_servers
- os
+ feature_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - feature
+ feature_dns_int_bearer_0_port:
+ - dns_int_bearer_0_port
+ - feature
endpoint_dns_servers:
- dns_servers
- endpoint
- binding_dns_servers:
+ cpu_util_dns_servers:
- dns_servers
- - binding
+ - cpu_util
+ disk.device.allocation_dns_servers:
+ - dns_servers
+ - disk.device.allocation
+ disk.latency_dns_servers:
+ - dns_servers
+ - disk.latency
+ disk.device.usage_dns_servers:
+ - dns_servers
+ - disk.device.usage
+ disk.usage_dns_servers:
+ - dns_servers
+ - disk.usage
+ disk.device.write.bytes_dns_servers:
+ - dns_servers
+ - disk.device.write.bytes
scalable_dns_servers:
- dns_servers
- scalable
@@ -241,9 +405,18 @@ topology_template:
local_storage_dns_servers:
- dns_servers
- local_storage
+ dependency_dns_oam_protected_0_port:
+ - dns_oam_protected_0_port
+ - dependency
link_dns_oam_protected_0_port:
- dns_oam_protected_0_port
- link
+ dependency_dns_servers:
+ - dns_servers
+ - dependency
link_dns_int_bearer_0_port:
- dns_int_bearer_0_port
- - link \ No newline at end of file
+ - link
+ dependency_dns_int_bearer_0_port:
+ - dns_int_bearer_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/resourceGroupMDNS/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/inputs/MANIFEST.json
index 0fa0f714da..8f4e710501 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resourceGroupMDNS/inputs/MANIFEST.json
@@ -1,37 +1,37 @@
{
- "name": "",
- "description": "",
- "data": [
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "dns_nested_01.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "base_dns.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
{
- "file": "dns_nested_01.yaml",
- "type": "HEAT",
- "isBase": "false"
- },
- {
- "file": "base_dns.yaml",
- "type": "HEAT",
- "isBase": "true",
- "data": [
- {
- "file": "base_dns.env",
- "type": "HEAT_ENV"
- }
- ]
- },
+ "file": "base_dns.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "dns_az_01.yaml",
+ "type": "HEAT",
+ "isBase": "false",
+ "data": [
{
- "file": "dns_az_01.yaml",
- "type": "HEAT",
- "isBase": "false",
- "data": [
- {
- "file": "dns_az_01.env",
- "type": "HEAT_ENV"
- }
- ]
- },
- {
- "file": "nimbus-willows-2.pem",
- "type": "OTHER"
+ "file": "dns_az_01.env",
+ "type": "HEAT_ENV"
}
- ]
+ ]
+ },
+ {
+ "file": "nimbus-willows-2.pem",
+ "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/resource_group/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 15b5e3b3a8..6549b60e5e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,9 +11,13 @@ node_types:
vf_module_id:
type: string
description: Unique ID for this VF_MODULE instance
+ required: true
+ status: SUPPORTED
vf_name:
type: string
description: The VF Name; defaults to VMVM for the virtual MVM VNF.
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 4
@@ -45,9 +25,13 @@ node_types:
cloud_zone_id:
type: string
description: The cloud zone for this VF instance
+ required: true
+ status: SUPPORTED
vf_instance_num:
type: string
description: The number for this VF instance
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[0-9]+'
- max_length: 2
@@ -55,53 +39,71 @@ node_types:
virtual_mgmt_ip_0:
type: string
description: Virtual management network ip address
+ required: true
+ status: SUPPORTED
indx:
type: float
description: Index of the current instance
+ required: true
+ status: SUPPORTED
mvs_mgmt_ip_0:
type: list
description: List of Management network IP addresses for IPv4
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
flavor:
type: string
description: Server flavor
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
key_name:
type: string
description: SSH key name
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vnf_id:
type: string
description: Unique ID for this VF instance
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: list
description: List of Availability Zone IDs or Names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
mgmt_net_id:
type: string
description: Neutron UUID for the Management network
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vm_instance_num:
type: list
description: VM instance number list must be a list of three-digit numeric value
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
bootimage:
type: string
description: Master bootimage volume id
+ required: true
+ status: SUPPORTED
sec_groups:
type: list
description: Security groups
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
vf_component:
type: string
description: The component that this VF instance is running
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 3
@@ -109,9 +111,18 @@ node_types:
attributes:
vnfci_id_2:
type: string
+ status: SUPPORTED
vnfci_id_1:
type: string
+ status: SUPPORTED
requirements:
+ - dependency_vnfci:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_vnfci:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -119,29 +130,296 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_mgmt_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_mgmt_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ disk.ephemeral.size_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ memory.usage_vnfci:
+ type: org.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_mgmt_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_mgmt_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_mgmt_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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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.usage_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
+ binding_vnfci:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_vnfci:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_vnfci:
type: tosca.capabilities.Container
valid_source_types:
@@ -149,13 +427,27 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_vnfci:
- type: tosca.capabilities.network.Bindable
+ disk.device.allocation_vnfci:
+ type: org.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_vnfci:
- type: tosca.capabilities.Scalable
+ network.incoming.bytes.rate_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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/resource_group/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/MainServiceTemplate.yaml
index 632afc51b3..6e7b3990c6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.compute:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -212,7 +188,7 @@ topology_template:
- 1
name: compute_name
groups:
- mvs.vfmodule.heat:
+ mvs.vfmodule.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.vfmodule.heat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
index 11369f9b68..0d84b3fc0e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: mvs.nested.heat
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.vnfci:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -174,6 +150,12 @@ topology_template:
mgmt_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: true
security_groups:
- get_input: sec_groups
fixed_ips:
@@ -182,6 +164,9 @@ topology_template:
- get_input: indx
- get_input:
- get_input: mvs_mgmt_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: virtual_mgmt_ip_0
@@ -202,6 +187,7 @@ topology_template:
get_input: vf_component
$VF_INSTANCE_NUM:
get_input: vf_instance_num
+ network_role_tag: mgmt
network:
get_input: mgmt_net_id
requirements:
@@ -210,7 +196,7 @@ topology_template:
node: vnfci
relationship: tosca.relationships.network.BindsTo
groups:
- mvs.nested.heat:
+ mvs.nested.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.nested.heat.yaml
@@ -227,25 +213,169 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat
capabilities:
+ disk.ephemeral.size_vnfci:
+ - vnfci
+ - disk.ephemeral.size
+ disk.iops_vnfci:
+ - vnfci
+ - disk.iops
+ network.outgoing.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes.rate
+ disk.device.write.bytes_vnfci:
+ - vnfci
+ - disk.device.write.bytes
+ disk.device.iops_vnfci:
+ - vnfci
+ - disk.device.iops
+ cpu_util_vnfci:
+ - vnfci
+ - cpu_util
+ disk.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.write.bytes.rate
+ disk.device.latency_vnfci:
+ - vnfci
+ - disk.device.latency
+ disk.latency_vnfci:
+ - vnfci
+ - disk.latency
+ disk.write.requests_vnfci:
+ - vnfci
+ - disk.write.requests
+ network.outpoing.packets_mgmt_port:
+ - mgmt_port
+ - network.outpoing.packets
+ memory.resident_vnfci:
+ - vnfci
+ - memory.resident
os_vnfci:
- vnfci
- os
+ memory.usage_vnfci:
+ - vnfci
+ - memory.usage
attachment_mgmt_port:
- mgmt_port
- attachment
+ disk.device.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.write.bytes.rate
+ disk.root.size_vnfci:
+ - vnfci
+ - disk.root.size
+ disk.device.usage_vnfci:
+ - vnfci
+ - disk.device.usage
+ disk.read.bytes_vnfci:
+ - vnfci
+ - disk.read.bytes
+ disk.device.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.read.bytes.rate
+ disk.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.read.bytes.rate
+ cpu_vnfci:
+ - vnfci
+ - cpu
+ disk.device.write.requests.rate_vnfci:
+ - vnfci
+ - disk.device.write.requests.rate
+ network.incoming.bytes_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes
+ disk.capacity_vnfci:
+ - vnfci
+ - disk.capacity
+ disk.device.read.requests_vnfci:
+ - vnfci
+ - disk.device.read.requests
+ binding_mgmt_port:
+ - mgmt_port
+ - binding
+ network.outgoing.bytes_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes
+ network.incoming.packets_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets
+ instance_vnfci:
+ - vnfci
+ - instance
+ feature_mgmt_port:
+ - mgmt_port
+ - feature
+ disk.device.read.bytes_vnfci:
+ - vnfci
+ - disk.device.read.bytes
+ disk.allocation_vnfci:
+ - vnfci
+ - disk.allocation
+ disk.write.requests.rate_vnfci:
+ - vnfci
+ - disk.write.requests.rate
+ disk.write.bytes_vnfci:
+ - vnfci
+ - disk.write.bytes
+ disk.device.write.requests_vnfci:
+ - vnfci
+ - disk.device.write.requests
+ disk.usage_vnfci:
+ - vnfci
+ - disk.usage
+ network.incoming.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets.rate
+ feature_vnfci:
+ - vnfci
+ - feature
+ memory_vnfci:
+ - vnfci
+ - memory
endpoint_vnfci:
- vnfci
- endpoint
- host_vnfci:
- - vnfci
- - host
binding_vnfci:
- vnfci
- binding
scalable_vnfci:
- vnfci
- scalable
+ disk.device.capacity_vnfci:
+ - vnfci
+ - disk.device.capacity
+ network.outgoing.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.packets.rate
+ vcpus_vnfci:
+ - vnfci
+ - vcpus
+ cpu.delta_vnfci:
+ - vnfci
+ - cpu.delta
+ host_vnfci:
+ - vnfci
+ - host
+ disk.device.allocation_vnfci:
+ - vnfci
+ - disk.device.allocation
+ network.incoming.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes.rate
+ disk.read.requests_vnfci:
+ - vnfci
+ - disk.read.requests
+ disk.device.read.requests.rate_vnfci:
+ - vnfci
+ - disk.device.read.requests.rate
requirements:
+ dependency_mgmt_port:
+ - mgmt_port
+ - dependency
+ dependency_vnfci:
+ - vnfci
+ - dependency
local_storage_vnfci:
- vnfci
- local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 1b1c4dd621..e2c3da021d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,9 +11,13 @@ node_types:
vf_module_id:
type: string
description: Unique ID for this VF_MODULE instance
+ required: true
+ status: SUPPORTED
vf_name:
type: string
description: The VF Name; defaults to VMVM for the virtual MVM VNF.
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 4
@@ -45,9 +25,13 @@ node_types:
cloud_zone_id:
type: string
description: The cloud zone for this VF instance
+ required: true
+ status: SUPPORTED
vf_instance_num:
type: string
description: The number for this VF instance
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[0-9]+'
- max_length: 2
@@ -55,58 +39,90 @@ node_types:
virtual_mgmt_ip_0:
type: string
description: Virtual management network ip address
+ required: true
+ status: SUPPORTED
indx:
type: float
description: Index of the current instance
+ required: true
+ status: SUPPORTED
mvs_mgmt_ip_0:
type: list
description: List of Management network IP addresses for IPv4
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
flavor:
type: string
description: Server flavor
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
key_name:
type: string
description: SSH key name
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vnf_id:
type: string
description: Unique ID for this VF instance
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: list
description: List of Availability Zone IDs or Names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
mgmt_net_id:
type: string
description: Neutron UUID for the Management network
- constraints: [
- ]
+ required: true
+ status: SUPPORTED
vm_instance_num:
type: list
description: VM instance number list must be a list of three-digit numeric value
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
bootimage:
type: string
description: Master bootimage volume id
+ required: true
+ status: SUPPORTED
sec_groups:
type: list
description: Security groups
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
vf_component:
type: string
description: The component that this VF instance is running
+ required: true
+ status: SUPPORTED
constraints:
- pattern: '[a-zA-Z0-9]+'
- max_length: 3
- min_length: 3
requirements:
+ - dependency_boot_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vnfci:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_vnfci:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -114,29 +130,318 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_data_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_mgmt_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_mgmt_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ disk.ephemeral.size_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_data_volume:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_mgmt_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_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ memory.usage_vnfci:
+ type: org.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_mgmt_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_vnfci:
+ type: org.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_boot_volume:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_data_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_mgmt_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_mgmt_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_vnfci:
+ type: org.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_mgmt_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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_vnfci:
+ type: org.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.usage_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_vnfci:
+ type: org.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_vnfci:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
+ binding_vnfci:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_vnfci:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_vnfci:
+ type: org.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_mgmt_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_vnfci:
+ type: org.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_vnfci:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_vnfci:
type: tosca.capabilities.Container
valid_source_types:
@@ -144,23 +449,32 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_vnfci:
- type: tosca.capabilities.network.Bindable
+ disk.device.allocation_vnfci:
+ type: org.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_boot_volume:
- type: tosca.capabilities.Attachment
+ network.incoming.bytes.rate_mgmt_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_vnfci:
- type: tosca.capabilities.Scalable
+ disk.read.requests_vnfci:
+ type: org.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_data_volume:
- type: tosca.capabilities.Attachment
+ feature_boot_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_vnfci:
+ type: org.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/resource_group_with_dynamic_count/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/MainServiceTemplate.yaml
index b3b1349b36..ee856f8b00 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
vf_module_id:
@@ -185,7 +161,7 @@ topology_template:
vf_component:
get_input: vf_component
groups:
- mvs.vfmodule.heat:
+ mvs.vfmodule.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.vfmodule.heat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
index 315318d4f6..85bd55e44b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/resource_group_with_dynamic_count/expectedoutputfiles/mvs.nested.heatServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: mvs.nested.heat
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.vnfci:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -237,6 +213,12 @@ topology_template:
mgmt_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: true
security_groups:
- get_input: sec_groups
fixed_ips:
@@ -245,6 +227,9 @@ topology_template:
- get_input: indx
- get_input:
- get_input: mvs_mgmt_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: virtual_mgmt_ip_0
@@ -265,6 +250,7 @@ topology_template:
get_input: vf_component
$VF_INSTANCE_NUM:
get_input: vf_instance_num
+ network_role_tag: mgmt
network:
get_input: mgmt_net_id
requirements:
@@ -273,7 +259,7 @@ topology_template:
node: vnfci
relationship: tosca.relationships.network.BindsTo
groups:
- mvs.nested.heat:
+ mvs.nested.heat_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/mvs.nested.heat.yaml
@@ -287,34 +273,190 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.mvs.nested.heat
capabilities:
+ disk.ephemeral.size_vnfci:
+ - vnfci
+ - disk.ephemeral.size
+ disk.iops_vnfci:
+ - vnfci
+ - disk.iops
+ network.outgoing.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes.rate
+ disk.device.write.bytes_vnfci:
+ - vnfci
+ - disk.device.write.bytes
+ disk.device.iops_vnfci:
+ - vnfci
+ - disk.device.iops
+ cpu_util_vnfci:
+ - vnfci
+ - cpu_util
+ disk.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.write.bytes.rate
+ disk.device.latency_vnfci:
+ - vnfci
+ - disk.device.latency
+ disk.latency_vnfci:
+ - vnfci
+ - disk.latency
+ disk.write.requests_vnfci:
+ - vnfci
+ - disk.write.requests
+ attachment_data_volume:
+ - data_volume
+ - attachment
+ network.outpoing.packets_mgmt_port:
+ - mgmt_port
+ - network.outpoing.packets
+ memory.resident_vnfci:
+ - vnfci
+ - memory.resident
os_vnfci:
- vnfci
- os
+ memory.usage_vnfci:
+ - vnfci
+ - memory.usage
attachment_mgmt_port:
- mgmt_port
- attachment
+ disk.device.write.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.write.bytes.rate
+ attachment_boot_volume:
+ - boot_volume
+ - attachment
+ feature_data_volume:
+ - data_volume
+ - feature
+ disk.root.size_vnfci:
+ - vnfci
+ - disk.root.size
+ disk.device.usage_vnfci:
+ - vnfci
+ - disk.device.usage
+ disk.read.bytes_vnfci:
+ - vnfci
+ - disk.read.bytes
+ disk.device.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.device.read.bytes.rate
+ disk.read.bytes.rate_vnfci:
+ - vnfci
+ - disk.read.bytes.rate
+ cpu_vnfci:
+ - vnfci
+ - cpu
+ disk.device.write.requests.rate_vnfci:
+ - vnfci
+ - disk.device.write.requests.rate
+ network.incoming.bytes_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes
+ disk.capacity_vnfci:
+ - vnfci
+ - disk.capacity
+ disk.device.read.requests_vnfci:
+ - vnfci
+ - disk.device.read.requests
+ binding_mgmt_port:
+ - mgmt_port
+ - binding
+ network.outgoing.bytes_mgmt_port:
+ - mgmt_port
+ - network.outgoing.bytes
+ network.incoming.packets_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets
+ instance_vnfci:
+ - vnfci
+ - instance
+ feature_mgmt_port:
+ - mgmt_port
+ - feature
+ disk.device.read.bytes_vnfci:
+ - vnfci
+ - disk.device.read.bytes
+ disk.allocation_vnfci:
+ - vnfci
+ - disk.allocation
+ disk.write.requests.rate_vnfci:
+ - vnfci
+ - disk.write.requests.rate
+ disk.write.bytes_vnfci:
+ - vnfci
+ - disk.write.bytes
+ disk.device.write.requests_vnfci:
+ - vnfci
+ - disk.device.write.requests
+ disk.usage_vnfci:
+ - vnfci
+ - disk.usage
+ network.incoming.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.packets.rate
+ feature_vnfci:
+ - vnfci
+ - feature
+ memory_vnfci:
+ - vnfci
+ - memory
endpoint_vnfci:
- vnfci
- endpoint
- host_vnfci:
- - vnfci
- - host
binding_vnfci:
- vnfci
- binding
- attachment_boot_volume:
- - boot_volume
- - attachment
scalable_vnfci:
- vnfci
- scalable
- attachment_data_volume:
- - data_volume
- - attachment
+ disk.device.capacity_vnfci:
+ - vnfci
+ - disk.device.capacity
+ network.outgoing.packets.rate_mgmt_port:
+ - mgmt_port
+ - network.outgoing.packets.rate
+ vcpus_vnfci:
+ - vnfci
+ - vcpus
+ cpu.delta_vnfci:
+ - vnfci
+ - cpu.delta
+ host_vnfci:
+ - vnfci
+ - host
+ disk.device.allocation_vnfci:
+ - vnfci
+ - disk.device.allocation
+ network.incoming.bytes.rate_mgmt_port:
+ - mgmt_port
+ - network.incoming.bytes.rate
+ disk.read.requests_vnfci:
+ - vnfci
+ - disk.read.requests
+ feature_boot_volume:
+ - boot_volume
+ - feature
+ disk.device.read.requests.rate_vnfci:
+ - vnfci
+ - disk.device.read.requests.rate
requirements:
+ dependency_mgmt_port:
+ - mgmt_port
+ - dependency
+ dependency_vnfci:
+ - vnfci
+ - dependency
local_storage_vnfci:
- vnfci
- local_storage
+ dependency_data_volume:
+ - data_volume
+ - dependency
link_mgmt_port:
- mgmt_port
- - link \ No newline at end of file
+ - link
+ dependency_boot_volume:
+ - boot_volume
+ - 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/reusenestedfrommultibase/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index b99ba37305..9699fe0770 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,54 +11,94 @@ node_types:
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
oam_net_gw:
type: string
description: CPS network gateway
+ required: true
+ status: SUPPORTED
pcm_image_name:
type: string
description: PCRF CM image name
+ required: true
+ status: SUPPORTED
security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcm_flavor_name:
type: string
description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
pcm_vol:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_ip:
type: string
description: OAM network ip
+ required: true
+ status: SUPPORTED
oam_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
attributes:
server_pcm_id:
type: string
description: the pcm nova service id
+ status: SUPPORTED
requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_pcm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -90,16 +106,163 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- endpoint_server_pcm:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -108,6 +271,132 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_pcm:
type: tosca.capabilities.Container
valid_source_types:
@@ -115,8 +404,21 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_pcm:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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
@@ -125,13 +427,68 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_0:
- type: tosca.capabilities.Attachment
+ network.outgoing.bytes.rate_pcm_port_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_pcm_port_1:
- type: tosca.capabilities.Attachment
+ disk.device.capacity_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/reusenestedfrommultibase/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/MainServiceTemplate.yaml
index ed5854c2fd..90dcdb5d5f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
oam_net_ips:
@@ -128,6 +104,10 @@ topology_template:
get_input: pcm_flavor_name
service_template_filter:
substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ metadata:
+ get_attribute:
+ - server_pcm_001
+ - server_pcm_id
availabilityzone_name:
get_input: availabilityzone_name
pcm_image_name:
@@ -153,6 +133,10 @@ topology_template:
get_input: availabilityzone_name
oam_net_gw:
get_input: oam_net_gw
+ user_data_format:
+ get_attribute:
+ - server_pcm_002
+ - pcm_vol
pcm_vol:
get_input:
- pcm_volumes
@@ -175,6 +159,16 @@ topology_template:
get_input: oam_net_mask
oam_net_name:
get_input: oam_net_name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: cps_net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pcm_001
+ relationship: tosca.relationships.DependsOn
server_pcm_003:
type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
directives:
@@ -199,18 +193,30 @@ topology_template:
cps_net_mask:
get_input: cps_net_mask
groups:
- hot-nimbus-pcm_v0.4_2:
+ hot-nimbus-pcm_v0.4_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v0.4_2.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
description: heat template that creates PCRF Cluman stack
members:
- - server_pcm_003
- hot-nimbus-pcm_v0.4:
+ - server_pcm_002
+ - server_pcm_001
+ - packet_mirror_network
+ hot-nimbus-pcm_v0.4_2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4_2.yaml
description: heat template that creates PCRF Cluman stack
members:
- - server_pcm_002
- - server_pcm_001 \ No newline at end of file
+ - server_pcm_003
+ outputs:
+ output_attr_1:
+ value:
+ get_attribute:
+ - server_pcm_001
+ - pcm_vol
+ output_attr_2:
+ value:
+ get_attribute:
+ - server_pcm_002
+ - oam_net_ip \ 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/reusenestedfrommultibase/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
index 1b03021742..f0fffa18ed 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -117,11 +93,21 @@ topology_template:
pcm_port_1:
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: security_group_name
fixed_ips:
- ip_address:
get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -138,18 +124,28 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
pcm_port_0:
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: security_group_name
fixed_ips:
- ip_address:
get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
network:
get_input: cps_net_name
requirements:
@@ -158,7 +154,7 @@ topology_template:
node: server_pcm
relationship: tosca.relationships.network.BindsTo
groups:
- nested-pcm_v0.1:
+ nested-pcm_v0.1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1.yaml
@@ -174,27 +170,195 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
capabilities:
- endpoint_server_pcm:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
- server_pcm
- - endpoint
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
os_server_pcm:
- server_pcm
- os
- host_server_pcm:
+ disk.read.bytes_server_pcm:
- server_pcm
- - host
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
scalable_server_pcm:
- server_pcm
- scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
binding_server_pcm:
- server_pcm
- binding
- attachment_pcm_port_0:
+ network.outgoing.bytes.rate_pcm_port_0:
- pcm_port_0
- - attachment
- attachment_pcm_port_1:
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
- pcm_port_1
- - attachment
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
requirements:
link_pcm_port_0:
- pcm_port_0
@@ -204,4 +368,13 @@ topology_template:
- link
local_storage_server_pcm:
- server_pcm
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/reusenestedfrommultibase/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/MANIFEST.json
index 6f151c4f36..67fe95690d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/MANIFEST.json
@@ -11,11 +11,13 @@
"file": "hot-nimbus-pcm_v0.4.env",
"type": "HEAT_ENV"
}
- ]
- },{
+ ]
+ },
+ {
"file": "nested-pcm_v0.1.yaml",
"type": "HEAT"
- },{
+ },
+ {
"file": "hot-nimbus-pcm_v0.4_2.yaml",
"type": "HEAT"
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/hot-nimbus-pcm_v0.4.yaml
index f7d050790f..aa67fcd567 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/hot-nimbus-pcm_v0.4.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/reusenestedfrommultibase/inputs/hot-nimbus-pcm_v0.4.yaml
@@ -70,6 +70,7 @@ resources:
oam_net_ip: { get_param: [oam_net_ips, 0] }
oam_net_mask: { get_param: oam_net_mask }
oam_net_gw: { get_param: oam_net_gw }
+ user_data_format: { get_attr: [server_pcm_002 , pcm_vol] }
server_pcm_002:
type: nested-pcm_v0.1.yaml
@@ -80,3 +81,19 @@ resources:
availabilityzone_name: { get_param: availabilityzone_name }
security_group_name: { get_param: security_group_name }
pcm_vol: { get_param: [pcm_volumes, 0] }
+ metadata: { get_attr: [server_pcm_001]}
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pcm_001
+ properties:
+ name:
+ get_param: cps_net_name
+
+outputs:
+ output_attr_1:
+ value: {get_attr: [server_pcm_001 , pcm_vol] }
+
+ output_attr_2:
+ value: {get_attr: [server_pcm_002 , oam_net_ip] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index b99ba37305..9699fe0770 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,54 +11,94 @@ node_types:
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
oam_net_gw:
type: string
description: CPS network gateway
+ required: true
+ status: SUPPORTED
pcm_image_name:
type: string
description: PCRF CM image name
+ required: true
+ status: SUPPORTED
security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcm_flavor_name:
type: string
description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
pcm_vol:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_ip:
type: string
description: OAM network ip
+ required: true
+ status: SUPPORTED
oam_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
attributes:
server_pcm_id:
type: string
description: the pcm nova service id
+ status: SUPPORTED
requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_pcm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -90,16 +106,163 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcm_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- endpoint_server_pcm:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -108,6 +271,132 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_pcm:
type: tosca.capabilities.Container
valid_source_types:
@@ -115,8 +404,21 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_pcm:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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
@@ -125,13 +427,68 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_pcm_port_0:
- type: tosca.capabilities.Attachment
+ network.outgoing.bytes.rate_pcm_port_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_pcm_port_1:
- type: tosca.capabilities.Attachment
+ disk.device.capacity_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/single/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/MainServiceTemplate.yaml
index dcc2a9abbb..aba8c1aa81 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.compute:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -188,9 +164,28 @@ topology_template:
get_input: oam_net_mask
oam_net_name:
get_input: oam_net_name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pcm_001
+ relationship: tosca.relationships.DependsOn
compute_port_0:
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
network:
get_input: net_name
server_compute_get_attr_test:
@@ -200,6 +195,10 @@ topology_template:
compute_flavor_name: null
image:
get_input: compute_image_name
+ metadata:
+ get_attribute:
+ - server_pcm_001
+ - server_pcm_id
config_drive:
get_attribute:
- compute_port_0
@@ -225,12 +224,19 @@ topology_template:
name:
compute_name: null
groups:
- hot-nimbus-pcm_v0.4:
+ hot-nimbus-pcm_v0.4_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
description: heat template that creates PCRF Cluman stack
members:
- server_pcm_001
+ - packet_mirror_network
- compute_port_0
- - server_compute_get_attr_test \ No newline at end of file
+ - server_compute_get_attr_test
+ outputs:
+ output_attr_1:
+ value:
+ get_attribute:
+ - server_pcm_001
+ - pcm_vol
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
index 1b03021742..f0fffa18ed 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v0.1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -117,11 +93,21 @@ topology_template:
pcm_port_1:
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: security_group_name
fixed_ips:
- ip_address:
get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -138,18 +124,28 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
pcm_port_0:
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: security_group_name
fixed_ips:
- ip_address:
get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
network:
get_input: cps_net_name
requirements:
@@ -158,7 +154,7 @@ topology_template:
node: server_pcm
relationship: tosca.relationships.network.BindsTo
groups:
- nested-pcm_v0.1:
+ nested-pcm_v0.1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v0.1.yaml
@@ -174,27 +170,195 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
capabilities:
- endpoint_server_pcm:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
- server_pcm
- - endpoint
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
os_server_pcm:
- server_pcm
- os
- host_server_pcm:
+ disk.read.bytes_server_pcm:
- server_pcm
- - host
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
scalable_server_pcm:
- server_pcm
- scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
binding_server_pcm:
- server_pcm
- binding
- attachment_pcm_port_0:
+ network.outgoing.bytes.rate_pcm_port_0:
- pcm_port_0
- - attachment
- attachment_pcm_port_1:
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
- pcm_port_1
- - attachment
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
requirements:
link_pcm_port_0:
- pcm_port_0
@@ -204,4 +368,13 @@ topology_template:
- link
local_storage_server_pcm:
- server_pcm
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/single/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/MANIFEST.json
index 345ca77b2a..609c38b28e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/MANIFEST.json
@@ -11,8 +11,9 @@
"file": "hot-nimbus-pcm_v0.4.env",
"type": "HEAT_ENV"
}
- ]
- },{
+ ]
+ },
+ {
"file": "nested-pcm_v0.1.yaml",
"type": "HEAT"
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/hot-nimbus-pcm_v0.4.yaml
index e4a79f34ba..22b14cf018 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/hot-nimbus-pcm_v0.4.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/single/inputs/hot-nimbus-pcm_v0.4.yaml
@@ -86,9 +86,21 @@ resources:
image: { get_param: compute_image_name }
flavor: { compute_flavor_name }
user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
- user_data: { get_attr: [server_pcm_001]}
+ metadata: { get_attr: [server_pcm_001]}
compute_port_0:
type: OS::Neutron::Port
properties:
- network: { get_param: net_name } \ No newline at end of file
+ network: { get_param: net_name }
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pcm_001
+ properties:
+ name:
+ get_param: net_name
+
+outputs:
+ output_attr_1:
+ value: {get_attr: [server_pcm_001 , pcm_vol] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/outputs/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/outputs/expectedoutputfiles/MainServiceTemplate.yaml
index eac8fd673d..9a3ea5651b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/outputs/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/outputs/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
node_templates:
jsa_net:
@@ -58,7 +34,7 @@ topology_template:
key1: spec1
key2: spec2
groups:
- outputs:
+ outputs_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/outputs.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/parameters/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/parameters/expectedoutputfiles/MainServiceTemplate.yaml
index 5cd5d0e597..fbda1f8157 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/parameters/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/parameters/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
param_type_comma_delimited_list:
@@ -171,7 +147,7 @@ topology_template:
name:
get_input: FSB1_volume_name
groups:
- parameters:
+ parameters_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/parameters.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_Network_Rule/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_Network_Rule/expectedoutputfiles/MainServiceTemplate.yaml
index 0d9ec35ce7..7197964d8b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_Network_Rule/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_Network_Rule/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
start_src_ports:
@@ -185,7 +161,7 @@ topology_template:
end:
get_input: private_net_2_pool_end
groups:
- network_policy_chain:
+ network_policy_chain_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/network_policy_chain.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_VirtualNetwork/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_VirtualNetwork/expectedoutputfiles/MainServiceTemplate.yaml
index 2b047dd8ae..d1a2daf0ef 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_VirtualNetwork/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Contrail_VirtualNetwork/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.NCB1:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -646,9 +622,19 @@ topology_template:
VLC2_OAM:
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
fixed_ips:
- ip_address:
get_input: vlc2-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -677,6 +663,15 @@ topology_template:
NCB1_Internal1:
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: true
mac_address:
get_input: ncb1-Internal1-mac
network: Internal1-net
@@ -692,6 +687,15 @@ topology_template:
VLC2_Internal2:
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: true
mac_address:
get_input: vlc2-Internal2-mac
network: Internal2-net
@@ -707,6 +711,15 @@ topology_template:
NCB1_Internal2:
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: true
mac_address:
get_input: ncb1-Internal2-mac
network: Internal2-net
@@ -722,6 +735,15 @@ topology_template:
VLC2_Internal1:
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: true
mac_address:
get_input: vlc2-Internal1-mac
network: Internal1-net
@@ -737,9 +759,18 @@ topology_template:
VLC2_GTP:
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
fixed_ips:
- ip_address:
get_input: vlc2-gtp-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-gtp-net
requirements:
- link:
@@ -788,9 +819,19 @@ topology_template:
FSB1_OAM:
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
fixed_ips:
- ip_address:
get_input: fsb1-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -842,6 +883,15 @@ topology_template:
GPB2_Internal1:
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: true
mac_address:
get_input: gpb2-Internal1-mac
network: Internal1-net
@@ -857,6 +907,15 @@ topology_template:
GPB2_Internal2:
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: true
mac_address:
get_input: gpb2-Internal2-mac
network: Internal2-net
@@ -883,6 +942,15 @@ topology_template:
NCB2_Internal2:
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: true
mac_address:
get_input: ncb2-Internal2-mac
network: Internal2-net
@@ -898,6 +966,15 @@ topology_template:
NCB2_Internal1:
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: true
mac_address:
get_input: ncb2-Internal1-mac
network: Internal1-net
@@ -952,6 +1029,15 @@ topology_template:
VLC1_Internal1:
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: true
mac_address:
get_input: vlc1-Internal1-mac
network: Internal1-net
@@ -985,6 +1071,15 @@ topology_template:
VLC1_Internal2:
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: true
mac_address:
get_input: vlc1-Internal2-mac
network: Internal2-net
@@ -1000,9 +1095,18 @@ topology_template:
VLC1_SCTP_B:
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
fixed_ips:
- ip_address:
get_input: vlc1-sctp-b-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-b-net
requirements:
- link:
@@ -1016,9 +1120,18 @@ topology_template:
VLC2_SCTP_B:
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
fixed_ips:
- ip_address:
get_input: vlc2-sctp-b-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-b-net
requirements:
- link:
@@ -1032,9 +1145,18 @@ topology_template:
VLC1_SCTP_A:
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
fixed_ips:
- ip_address:
get_input: vlc1-sctp-a-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-a-net
requirements:
- link:
@@ -1048,9 +1170,18 @@ topology_template:
VLC2_SCTP_A:
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
fixed_ips:
- ip_address:
get_input: vlc2-sctp-a-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-a-net
requirements:
- link:
@@ -1075,6 +1206,15 @@ topology_template:
FSB1_Internal2:
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: true
mac_address:
get_input: fsb1-Internal2-mac
network: Internal2-net
@@ -1101,6 +1241,15 @@ topology_template:
FSB1_Internal1:
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: true
mac_address:
get_input: fsb1-Internal1-mac
network: Internal1-net
@@ -1116,6 +1265,15 @@ topology_template:
FSB2_Internal2:
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: true
mac_address:
get_input: fsb2-Internal2-mac
network: Internal2-net
@@ -1131,6 +1289,15 @@ topology_template:
FSB2_Internal1:
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: true
mac_address:
get_input: fsb2-Internal1-mac
network: Internal1-net
@@ -1146,9 +1313,19 @@ topology_template:
VLC1_OAM:
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
fixed_ips:
- ip_address:
get_input: vlc1-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -1199,9 +1376,18 @@ topology_template:
VLC1_GTP:
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
fixed_ips:
- ip_address:
get_input: vlc1-gtp-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-gtp-net
requirements:
- link:
@@ -1215,9 +1401,19 @@ topology_template:
FSB2_OAM:
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
fixed_ips:
- ip_address:
get_input: fsb2-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -1228,6 +1424,15 @@ topology_template:
GPB1_Internal2:
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: true
mac_address:
get_input: gpb1-Internal2-mac
network: Internal2-net
@@ -1243,6 +1448,15 @@ topology_template:
GPB1_Internal1:
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: true
mac_address:
get_input: gpb1-Internal1-mac
network: Internal1-net
@@ -1256,7 +1470,7 @@ topology_template:
node: GPB1
relationship: tosca.relationships.network.BindsTo
groups:
- vmme_small:
+ vmme_small_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/vmme_small.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Neutron_Net/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Neutron_Net/expectedoutputfiles/MainServiceTemplate.yaml
index c93363e850..63d9b08d82 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Neutron_Net/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Neutron_Net/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
param_number:
@@ -204,7 +180,7 @@ topology_template:
key1: spec1
key2: spec2
groups:
- ep-jsa_net:
+ ep-jsa_net_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/ep-jsa_net.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Nova_Server/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Nova_Server/expectedoutputfiles/MainServiceTemplate.yaml
index 4eacd2f60a..c97b870219 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Nova_Server/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/OS_Nova_Server/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.FSB2:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -342,11 +318,21 @@ topology_template:
pcm_port_1:
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: security_group_name
fixed_ips:
- ip_address:
get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -362,6 +348,15 @@ topology_template:
FSB1_Internal2:
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: true
mac_address:
get_input: fsb1-Internal2-mac
network: Internal2-net
@@ -382,6 +377,15 @@ topology_template:
FSB1_Internal1:
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: true
mac_address:
get_input: fsb1-Internal1-mac
network: Internal1-net
@@ -397,9 +401,19 @@ topology_template:
FSB1_OAM:
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
fixed_ips:
- ip_address:
get_input: fsb1-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -410,11 +424,21 @@ topology_template:
psm01_port_0:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_cps
network:
get_input: pcrf_cps_net_name
requirements:
@@ -425,11 +449,21 @@ topology_template:
pcm_port_0:
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: security_group_name
fixed_ips:
- ip_address:
get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
network:
get_input: cps_net_name
requirements:
@@ -451,7 +485,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
@@ -475,10 +509,10 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcrf_psm_image_name
- config_drive: 'True'
metadata:
vnf_id:
get_input: pcrf_vnf_id
+ config_drive: true
user_data_format: RAW
name:
get_input: pcrf_psm_server_name
@@ -491,7 +525,7 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcm_image_name
- config_drive: 'True'
+ config_drive: true
user_data_format: RAW
name:
get_input: pcm_server_name
@@ -567,18 +601,18 @@ topology_template:
file: ../Artifacts/nimbus-ethernet
relationship_templates:
server_VolumeTest_4:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: server_VolumeTest_snapshot01
instance_uuid: server_VolumeTest
device: vdb
server_VolumeTest_5:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: server_VolumeTest_snapshot02
instance_uuid: server_VolumeTest
groups:
- ep-jsa_net:
+ ep-jsa_net_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/ep-jsa_net.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..48d0f4f4ef
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,119 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+topology_template:
+ node_templates:
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ cmaui1_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ cmaui1_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - subnet: subnetNameVal
+ ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ - subnet: subnetNameVal2
+ ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network: jsa_net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ cmaui1_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - subnet: subnetNameVal
+ ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ - subnet: subnetNameVal2
+ ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network: jsa_net1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ hot_template_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot_template.yml
+ description: cmaui server template for vMMSC
+ members:
+ - jsa_net
+ - jsa_net1
+ - cmaui1_port_0
+ - cmaui1_port_1
+ - cmaui1_port_2 \ 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/resources/Port/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..70cdc7d237
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/inputfiles/MANIFEST.json
@@ -0,0 +1,11 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volumes",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot_template.yml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/inputfiles/hot_template.yml
new file mode 100644
index 0000000000..cf18a53e6e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/resources/Port/inputfiles/hot_template.yml
@@ -0,0 +1,49 @@
+heat_template_version: 2013-05-23
+
+#################################
+#
+# Changes from MSO 01/26/2016
+# Updated per OPENECOMP feedback
+#
+#################################
+
+description: cmaui server template for vMMSC
+
+resources:
+ cmaui1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 1]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: jsa_net }
+ fixed_ips: [{"subnet": subnetNameVal, "ip_address": {get_param: [cmaui_oam_ips, 1]}}, {"subnet": subnetNameVal2, "ip_address": {get_param: [cmaui_oam_ips, 1]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ jsa_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ cmaui1_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: jsa_net1 }
+ fixed_ips: [{"subnet": subnetNameVal, "ip_address": {get_param: [cmaui_oam_ips, 1]}}, {"subnet": subnetNameVal2, "ip_address": {get_param: [cmaui_oam_ips, 1]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ jsa_net1:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/sharedresources/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/sharedresources/expectedoutputfiles/MainServiceTemplate.yaml
index 6d35846244..b43b9c3240 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/sharedresources/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/sharedresources/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.server_pcm_002:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -79,7 +55,7 @@ topology_template:
name:
get_input: fsb1-name
groups:
- sharedDefinitionOutParam:
+ sharedDefinitionOutParam_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/sharedDefinitionOutParam.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/MANIFEST.json
index e5bfbd157d..4d4c0dfdbf 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/MANIFEST.json
@@ -1,83 +1,98 @@
{
- "name": "multiple_not_nested",
- "description": "multiple heat files in zip, no nesting",
- "version": "2013-05-23",
- "data": [{
- "file": "cmaui.yml",
- "type": "HEAT",
- "isBase": true,
- "data": [{
- "file": "cmaui.env",
- "type": "HEAT_ENV"
- },
- {
- "file": "cmaui_net.yaml",
- "type": "HEAT_NET"
- }]
- },
- {
- "file": "eca_oam.yaml",
- "type": "HEAT",
- "data": [{
- "file": "eca_oam.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "eca_oam_nested.yaml",
- "type": "HEAT"
- },
- {
- "file": "nested1.yaml",
- "type": "HEAT"
- },
- {
- "file": "nested2.yaml",
- "type": "HEAT"
- },
- {
- "file": "MMSC_Capacity_Line.yml",
- "type": "HEAT",
- "data": [{
- "file": "MMSC_Capacity_Line_1.env",
- "type": "HEAT_ENV"
- },
- {
- "file": "VOLUME.yaml",
- "type": "HEAT_VOL",
- "data": [{
- "file": "volume.env",
- "type": "HEAT_ENV"
- }]
- }]
- },
- {
- "file": "SG_ECA_MGMT.yaml",
- "type": "HEAT",
- "data": [{
- "file": "sg_eca_mgmt.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "VOLUME_OUT.yaml",
- "type": "HEAT_VOL",
- "data": [{
- "file": "volume_out.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "NETWORK_OUT.yaml",
- "type": "HEAT_NET",
- "data": [{
- "file": "network_out.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "art.sh",
- "type": "SHELL"
- }
- ]
+ "name": "multiple_not_nested",
+ "description": "multiple heat files in zip, no nesting",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "cmaui.yml",
+ "type": "HEAT",
+ "isBase": true,
+ "data": [
+ {
+ "file": "cmaui.env",
+ "type": "HEAT_ENV"
+ },
+ {
+ "file": "cmaui_net.yaml",
+ "type": "HEAT_NET"
+ }
+ ]
+ },
+ {
+ "file": "eca_oam.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "eca_oam.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "eca_oam_nested.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested2.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "MMSC_Capacity_Line.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "MMSC_Capacity_Line_1.env",
+ "type": "HEAT_ENV"
+ },
+ {
+ "file": "VOLUME.yaml",
+ "type": "HEAT_VOL",
+ "data": [
+ {
+ "file": "volume.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "file": "SG_ECA_MGMT.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "sg_eca_mgmt.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "VOLUME_OUT.yaml",
+ "type": "HEAT_VOL",
+ "data": [
+ {
+ "file": "volume_out.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "NETWORK_OUT.yaml",
+ "type": "HEAT_NET",
+ "data": [
+ {
+ "file": "network_out.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "art.sh",
+ "type": "SHELL"
+ }
+ ]
} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/cmaui.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/cmaui.yml
index 3d757b1631..267a0d98a7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/cmaui.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/cmaui.yml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
#################################
#
# Changes from MSO 01/26/2016
-# Updated per ECOMP feedback
+# Updated per OPENECOMP feedback
#
#################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam.yaml
index 243bccf3d0..7bca8d40e7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam.yaml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
##########################################################
#
# Changes from MSO
-# - Updated per ECOMP Feedback
+# - Updated per OPENECOMP Feedback
#
#
##########################################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam_nested.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam_nested.yaml
index c8b9527555..ea0aa3bb92 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam_nested.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/eca_oam_nested.yaml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
##########################################################
#
# Changes from MSO
-# - Updated per ECOMP Feedback
+# - Updated per OPENECOMP Feedback
#
#
##########################################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested1.yaml
index a0c56d9da7..29e026f1fe 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested1.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested1.yaml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
##########################################################
#
# Changes from MSO
-# - Updated per ECOMP Feedback
+# - Updated per OPENECOMP Feedback
#
#
##########################################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested2.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested2.yaml
index 8775ffc72e..396a418cf6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested2.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heattotoscatranslator/overallexample/inputs/nested2.yaml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
##########################################################
#
# Changes from MSO
-# - Updated per ECOMP Feedback
+# - Updated per OPENECOMP Feedback
#
#
##########################################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/expectedOutput/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/expectedOutput/MainServiceTemplate.yaml
index 5aa6e2e213..609b0b2e7d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/expectedOutput/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/expectedOutput/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.nems_be:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -1375,6 +1351,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1382,6 +1364,10 @@ topology_template:
get_input:
- lb_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1393,11 +1379,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: mms_traffic_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: mms_traffic_net_floating_ip
@@ -1415,6 +1410,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1422,6 +1423,9 @@ topology_template:
get_input:
- nems_fe_nems_traffic_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_traffic_net
requirements:
- link:
@@ -1436,6 +1440,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1443,6 +1453,9 @@ topology_template:
get_input:
- nems_fe_nems_internal_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_internal_net
requirements:
- link:
@@ -1473,6 +1486,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1480,6 +1499,9 @@ topology_template:
get_input:
- nems_fe_nems_user_web_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_user_web_net
requirements:
- link:
@@ -1494,6 +1516,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1501,6 +1529,9 @@ topology_template:
get_input:
- nems_fe_nems_user_web_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_user_web_net
requirements:
- link:
@@ -1515,6 +1546,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1522,6 +1559,9 @@ topology_template:
get_input:
- nems_fe_nems_traffic_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_traffic_net
requirements:
- link:
@@ -1536,6 +1576,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1543,6 +1589,10 @@ topology_template:
get_input:
- nems_fe_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1554,6 +1604,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1561,6 +1617,10 @@ topology_template:
get_input:
- nems_fe_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1572,6 +1632,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1579,6 +1645,9 @@ topology_template:
get_input:
- nems_fe_nems_internal_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_internal_net
requirements:
- link:
@@ -1593,6 +1662,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1600,6 +1675,9 @@ topology_template:
get_input:
- nems_fe_nems_imap_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_imap_net
requirements:
- link:
@@ -1614,6 +1692,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1621,6 +1705,9 @@ topology_template:
get_input:
- nems_fe_nems_imap_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_imap_net
requirements:
- link:
@@ -1680,11 +1767,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: eca_traffic_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: eca_traffic_net_floating_ip
@@ -1702,11 +1798,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: ha_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: ha_net
requirements:
- link:
@@ -1721,6 +1826,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1728,6 +1839,10 @@ topology_template:
get_input:
- eca_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1755,11 +1870,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: ha_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: ha_net
requirements:
- link:
@@ -1802,6 +1926,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1809,6 +1939,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 15
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1820,6 +1954,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1827,6 +1967,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 18
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -1841,6 +1984,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1848,6 +1997,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 15
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -1859,6 +2012,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1866,6 +2025,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 18
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -1877,6 +2040,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1884,6 +2053,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 14
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1895,6 +2068,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1902,6 +2081,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 18
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1913,11 +2096,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_traffic_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_traffic_net_floating_ip
@@ -1956,6 +2148,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1963,6 +2161,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 10
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -1974,6 +2176,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1981,6 +2189,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 10
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -1995,6 +2206,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2002,6 +2219,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 11
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2022,6 +2242,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2029,6 +2255,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 11
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2040,6 +2270,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2047,6 +2283,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 10
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2058,6 +2298,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2065,6 +2311,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 11
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2076,6 +2326,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2083,6 +2339,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2094,6 +2354,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2101,6 +2367,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2112,6 +2382,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2119,6 +2395,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2130,6 +2410,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2137,6 +2423,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 14
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2151,6 +2440,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2158,6 +2453,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -2172,6 +2470,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2179,6 +2483,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -2193,6 +2500,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2200,6 +2513,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 14
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2211,6 +2528,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2218,6 +2541,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 15
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2232,6 +2558,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2239,6 +2571,10 @@ topology_template:
get_input:
- arb_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2250,6 +2586,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2257,6 +2599,10 @@ topology_template:
get_input:
- lb_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2274,6 +2620,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2281,6 +2633,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 6
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2295,6 +2650,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2302,6 +2663,10 @@ topology_template:
get_input:
- eca_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2335,6 +2700,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2342,6 +2713,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 6
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2353,6 +2728,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2360,6 +2741,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 6
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2377,6 +2762,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2384,6 +2775,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2395,6 +2790,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2402,6 +2803,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2413,6 +2818,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2420,6 +2831,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2478,6 +2892,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2485,6 +2905,9 @@ topology_template:
get_input:
- lb_dmz_protected_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -2514,6 +2937,7 @@ topology_template:
get_input:
- mmsc_dmz_protected_snat_ips
- 3
+ network_role_tag: dmz_protected
network:
get_input: dmz_protected_net_name
requirements:
@@ -2525,11 +2949,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: eca_traffic_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: eca_traffic_net_floating_ip
@@ -2547,6 +2980,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2554,6 +2993,9 @@ topology_template:
get_input:
- lb_dmz_protected_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -2583,6 +3025,7 @@ topology_template:
get_input:
- mmsc_dmz_protected_snat_ips
- 3
+ network_role_tag: dmz_protected
network:
get_input: dmz_protected_net_name
requirements:
@@ -2594,11 +3037,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: mms_traffic_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: mms_traffic_net_floating_ip
@@ -2632,6 +3084,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2639,6 +3097,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2735,6 +3196,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2742,6 +3209,9 @@ topology_template:
get_input:
- lb_cor_direct_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -2771,6 +3241,7 @@ topology_template:
get_input:
- mmsc_core_snat_ips
- 4
+ network_role_tag: cor_direct
network:
get_input: cor_direct_net_name
requirements:
@@ -2782,6 +3253,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2789,6 +3266,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 19
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2800,6 +3281,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2807,6 +3294,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 19
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2821,6 +3311,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2828,6 +3324,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 19
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2839,6 +3339,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2846,6 +3352,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 7
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2857,6 +3367,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2864,6 +3380,10 @@ topology_template:
get_input:
- eca_eca_mgmt_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2875,6 +3395,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2882,6 +3408,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 5
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2893,11 +3423,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_user_web_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_user_web_net_floating_ip
@@ -2931,6 +3470,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2938,6 +3483,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 5
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2952,6 +3500,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2959,6 +3513,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 7
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2973,11 +3530,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_user_web_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_user_web_net_floating_ip
@@ -2995,6 +3561,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3002,6 +3574,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 5
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3013,6 +3589,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3020,6 +3602,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 7
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3031,6 +3617,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3038,6 +3630,10 @@ topology_template:
get_input:
- arb_eca_mgmt_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3087,11 +3683,21 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_be_oam_ips
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3103,6 +3709,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3110,6 +3722,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3143,11 +3759,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_be_nems_internal_net_ips
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_internal_net
requirements:
- link:
@@ -3162,6 +3787,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3169,6 +3800,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3180,6 +3815,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3187,6 +3828,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3220,11 +3865,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_be_nems_imap_net_ips
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_imap_net
requirements:
- link:
@@ -3239,6 +3893,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3246,6 +3906,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3260,6 +3923,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3267,6 +3936,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3297,6 +3969,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3304,6 +3982,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3365,6 +4047,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3372,6 +4060,10 @@ topology_template:
get_input:
- eca_eca_mgmt_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3383,6 +4075,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3390,6 +4088,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 16
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3401,6 +4103,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3408,6 +4116,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 17
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3422,6 +4133,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3429,6 +4146,9 @@ topology_template:
get_input:
- lb_cor_direct_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -3458,6 +4178,7 @@ topology_template:
get_input:
- mmsc_core_snat_ips
- 4
+ network_role_tag: cor_direct
network:
get_input: cor_direct_net_name
requirements:
@@ -3469,6 +4190,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3476,6 +4203,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3487,6 +4218,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3494,6 +4231,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 16
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3508,6 +4248,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3515,6 +4261,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 17
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3526,6 +4276,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3533,6 +4289,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -3547,6 +4306,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3554,6 +4319,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -3568,6 +4336,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3575,6 +4349,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 16
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3586,6 +4364,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3593,6 +4377,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 17
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3620,6 +4408,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3627,6 +4421,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3638,6 +4436,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3645,6 +4449,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 9
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3688,6 +4496,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3695,6 +4509,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 9
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3744,6 +4562,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3751,6 +4575,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 9
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3829,6 +4656,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3836,6 +4669,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 13
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3847,6 +4684,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3854,6 +4697,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 12
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3865,6 +4712,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3872,6 +4725,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 13
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3883,6 +4740,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3890,6 +4753,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -3904,6 +4770,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3911,6 +4783,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 12
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3922,6 +4798,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3929,6 +4811,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3940,6 +4826,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3947,6 +4839,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 12
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3961,6 +4856,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3968,6 +4869,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 13
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3982,6 +4886,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3989,6 +4899,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -4048,6 +4962,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4055,6 +4975,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 8
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -4066,6 +4990,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4073,6 +5003,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 8
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -4084,6 +5018,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4091,6 +5031,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 8
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -4105,11 +5048,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_traffic_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_traffic_net_floating_ip
@@ -4127,6 +5079,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4134,6 +5092,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -4164,6 +5125,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4171,6 +5138,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -4182,6 +5153,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4189,6 +5166,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -4221,6 +5202,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4228,6 +5215,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -4239,6 +5230,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -4246,6 +5243,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -4261,72 +5262,102 @@ topology_template:
size: '(get_input : mmsc_cinder_volume_size) * 1024'
relationship_templates:
mmsc1_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc1_volume
instance_uuid: server_mmsc1
mmsc4_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc4_volume
instance_uuid: server_mmsc4
arb_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: arb_volume
instance_uuid: arb_instance
cmaui_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: cmaui_volume
instance_uuid: server_cmaui
nems1_fe_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: nems1_fe_volume
instance_uuid: server_nems_fe1
mmsc3_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc3_volume
instance_uuid: server_mmsc3
oam2_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: oam2_volume
instance_uuid: oam2_instance
cmaui1_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: cmaui1_volume
instance_uuid: server_cmaui1
nems_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: nems_be_volume
instance_uuid: server_nems_be1
oam1_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: oam1_volume
instance_uuid: oam1_instance
nems2_fe_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: nems2_fe_volume
instance_uuid: server_nems_fe2
mmsc5_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc5_volume
instance_uuid: server_mmsc5
mmsc2_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc2_volume
instance_uuid: server_mmsc2
groups:
- MMSC_Capacity_Line:
+ eca_oam_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/eca_oam.yaml
+ description: This stack creates two ECA OAM VM and one ARB VM
+ members:
+ - arb_mgmt_port
+ - oam2_mgmt_port
+ - arb_instance
+ - arb_volume
+ - oam1_instance
+ - oam2_volume
+ - oam1_volume
+ - oam1_int_port
+ - oam1_mgmt_port
+ - arb_int_port
+ - oam2_int_port
+ - oam2_instance
+ cmaui_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/cmaui.yml
+ description: cmaui server template for vMMSC
+ members:
+ - server_cmaui1
+ - server_cmaui
+ - cmaui1_port_0
+ - cmaui_volume
+ - cmaui1_volume
+ - cmaui_port_0
+ MMSC_Capacity_Line_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/MMSC_Capacity_Line.yml
@@ -4477,25 +5508,7 @@ topology_template:
- eca_trx1_port_0
- eca_trx5_port_0
- mmsc3_volume
- eca_oam:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/eca_oam.yaml
- description: This stack creates two ECA OAM VM and one ARB VM
- members:
- - arb_mgmt_port
- - oam2_mgmt_port
- - arb_instance
- - arb_volume
- - oam1_instance
- - oam2_volume
- - oam1_volume
- - oam1_int_port
- - oam1_mgmt_port
- - arb_int_port
- - oam2_int_port
- - oam2_instance
- SG_ECA_MGMT:
+ SG_ECA_MGMT_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/SG_ECA_MGMT.yaml
@@ -4503,16 +5516,4 @@ topology_template:
HOT template that creates Security Group and ECA network
members:
- mms_security_group
- - eca_mgmt_net
- cmaui:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/cmaui.yml
- description: cmaui server template for vMMSC
- members:
- - server_cmaui1
- - server_cmaui
- - cmaui1_port_0
- - cmaui_volume
- - cmaui1_volume
- - cmaui_port_0 \ No newline at end of file
+ - eca_mgmt_net \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/MANIFEST.json
index 167ae4e9d8..b57a01b8d1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/MANIFEST.json
@@ -1,37 +1,47 @@
{
- "name": "multiple_not_nested",
- "description": "multiple heat files in zip, no nesting",
- "version": "2013-05-23",
- "data": [{
- "file": "cmaui.yml",
- "type": "HEAT",
- "data": [{
- "file": "cmaui.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "eca_oam.yaml",
- "type": "HEAT",
- "data": [{
- "file": "eca_oam.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "MMSC_Capacity_Line.yml",
- "type": "HEAT",
- "data": [{
- "file": "MMSC_Capacity_Line_1.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "SG_ECA_MGMT.yaml",
- "type": "HEAT",
- "data": [{
- "file": "sg_eca_mgmt.env",
- "type": "HEAT_ENV"
- }]
- }]
+ "name": "multiple_not_nested",
+ "description": "multiple heat files in zip, no nesting",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "cmaui.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "cmaui.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "eca_oam.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "eca_oam.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "MMSC_Capacity_Line.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "MMSC_Capacity_Line_1.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "SG_ECA_MGMT.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "sg_eca_mgmt.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/cmaui.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/cmaui.yml
index 1b575858fb..9d8ec78c75 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/cmaui.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/cmaui.yml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
#################################
#
# Changes from MSO 01/26/2016
-# Updated per ECOMP feedback
+# Updated per OPENECOMP feedback
#
#################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/eca_oam.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/eca_oam.yaml
index 84e8f7c6c9..cb28baf86d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/eca_oam.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/allHeatsAreBase/inputs/eca_oam.yaml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
##########################################################
#
# Changes from MSO
-# - Updated per ECOMP Feedback
+# - Updated per OPENECOMP Feedback
#
#
##########################################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/GlobalSubstitutionTypesServiceTemplate.yaml
index 4814d1c086..bcb8046664 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.eca_oam:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,140 +11,213 @@ node_types:
metadata:
type: string
description: cmaui metadata
+ required: true
+ status: SUPPORTED
oam_flavor:
type: string
description: OAM flavor name
+ required: false
default: lc.xlarge4
+ status: SUPPORTED
eca_eca_mgmt_ips:
type: list
description: internal eca_mgmt network ips for eca VM
+ required: false
default:
- 172.25.137.242
- 172.25.137.243
+ status: SUPPORTED
entry_schema:
type: string
eca_mgmt_net_name:
type: string
description: the name of the internal network
+ required: false
default: int_mms_eca_mgmt_net_1
+ status: SUPPORTED
ECA_OAM_volume_type:
type: string
description: the name of the target volume backend
+ required: false
default: Platinum
+ status: SUPPORTED
arb_eca_mgmt_ips:
type: list
description: internal eca_mgmt network ips for arb VM
+ required: false
default:
- 172.25.137.244
+ status: SUPPORTED
entry_schema:
type: string
networks:
type: string
description: cmaui network name
+ required: true
+ status: SUPPORTED
cmaui_name:
type: string
description: cmaui name
+ required: true
+ status: SUPPORTED
arb_volume_size:
type: float
description: the size of the ARB volume
+ required: false
default: 40
+ status: SUPPORTED
vnf_id:
type: string
description: Unique ID for this VNF instance
+ required: false
default: This_is_ths_MMSC-ECA_id
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: false
default: nova
+ status: SUPPORTED
oam_image_name:
type: string
description: the OAM image name
+ required: false
default: ECABASE
+ status: SUPPORTED
oam_volume_size:
type: float
description: the size of the OAM volume
+ required: false
default: 1800
+ status: SUPPORTED
swift_eca_url:
type: string
description: Base URL for eca swift object store
+ required: false
default: http://object-store.rdm2.cci.com:8080/v1/AUTH_1bbab536a19b4756926e7d0ec1eb543c/eca
+ status: SUPPORTED
oam_net_name:
type: string
description: the name of the oam network
+ required: false
default: oam_protected_net_0
+ status: SUPPORTED
ARB_volume_type:
type: string
description: the name of the target volume backend
+ required: false
default: Platinum
+ status: SUPPORTED
eca_names:
type: list
description: the names of the OAM1,OAM2 VM instances
+ required: false
default:
- ZRDM1MMSC02OAM001
- ZRDM1MMSC02OAM002
+ status: SUPPORTED
entry_schema:
type: string
arbiter_flavor:
type: string
description: arbiter flavor name
+ required: false
default: m1.large2
+ status: SUPPORTED
eca_oam_ips:
type: list
description: the ips of oam networks for eca VM
+ required: false
default:
- 107.250.172.44
- 107.250.172.45
+ status: SUPPORTED
entry_schema:
type: string
security_group_name:
type: string
description: the name of security group
+ required: false
default: mmsc_security_group_1
+ status: SUPPORTED
user_data:
type: string
description: cmaui user data
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: cmaui image
+ required: true
+ status: SUPPORTED
arb_names:
type: list
description: the names of the arbiter VM instances
+ required: false
default:
- ZRDM1MMSC02ARB001
+ status: SUPPORTED
entry_schema:
type: string
cmaui_flavor:
type: string
description: cmaui flavor name
+ required: true
+ status: SUPPORTED
user_data_format:
type: string
description: cmaui user data
+ required: true
+ status: SUPPORTED
eca_oam_gateway:
type: string
description: the ip of oam gateway
+ required: false
default: 107.250.172.1
+ status: SUPPORTED
arb_oam_ips:
type: list
description: oam network ips for eca VM
+ required: false
default:
- 107.250.172.46
+ status: SUPPORTED
entry_schema:
type: string
requirements:
+ - dependency_arb_mgmt_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_arb_mgmt_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_oam2_mgmt_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_oam2_mgmt_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_arb_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_arb_instance:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -176,6 +225,20 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_arb_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_oam1_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_oam1_instance:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -183,34 +246,79 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_oam2_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_oam1_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_oam1_int_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_oam1_int_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_oam1_mgmt_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_oam1_mgmt_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_arb_int_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_arb_int_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_oam2_int_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_oam2_int_port:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_oam2_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_oam2_instance:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -219,60 +327,301 @@ node_types:
- 0
- UNBOUNDED
capabilities:
- attachment_oam2_volume:
- type: tosca.capabilities.Attachment
+ disk.usage_arb_instance:
+ type: org.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_oam2_instance:
- type: tosca.capabilities.network.Bindable
+ disk.capacity_arb_instance:
+ type: org.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_oam2_int_port:
+ disk.write.bytes.rate_oam1_instance:
+ type: org.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_oam1_int_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_oam2_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_oam1_int_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_oam2_instance:
+ type: org.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_arb_mgmt_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ feature_oam2_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam1_int_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_oam2_mgmt_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_oam1_int_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_oam1_mgmt_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_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam1_volume:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- os_oam1_instance:
- type: tosca.capabilities.OperatingSystem
+ network.incoming.packets.rate_oam2_int_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_oam2_instance:
- type: tosca.capabilities.Scalable
+ network.outgoing.bytes.rate_arb_int_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_arb_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam1_mgmt_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_arb_instance:
+ type: org.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_arb_mgmt_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_arb_mgmt_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_oam2_mgmt_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_oam2_mgmt_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_arb_int_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_oam2_instance:
+ type: org.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_oam1_mgmt_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_oam1_mgmt_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
scalable_arb_instance:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- endpoint_oam1_instance:
- type: tosca.capabilities.Endpoint.Admin
+ cpu.delta_arb_instance:
+ type: org.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_arb_instance:
+ disk.usage_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam1_mgmt_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_arb_int_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_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_oam1_instance:
+ type: org.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_oam2_mgmt_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_oam2_instance:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
- host_arb_instance:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ network.outpoing.packets_oam1_int_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_arb_instance:
- type: tosca.capabilities.Endpoint.Admin
+ network.incoming.bytes.rate_oam1_mgmt_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_oam1_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam1_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -281,8 +630,15 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_arb_volume:
- type: tosca.capabilities.Attachment
+ disk.iops_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -293,13 +649,86 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_oam2_instance:
- type: tosca.capabilities.OperatingSystem
+ network.incoming.bytes_arb_mgmt_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_oam2_instance:
- type: tosca.capabilities.Endpoint.Admin
+ network.outgoing.bytes_arb_int_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_arb_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam2_int_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_oam1_instance:
+ type: org.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_arb_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_arb_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_arb_instance:
+ type: org.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_oam1_int_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_oam1_int_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.iops_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -308,10 +737,236 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- host_oam2_instance:
- type: tosca.capabilities.Container
+ disk.root.size_arb_instance:
+ type: org.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_oam2_int_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_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam1_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_oam1_mgmt_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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam2_mgmt_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_oam2_mgmt_port:
+ type: tosca.capabilities.network.Bindable
valid_source_types:
- - tosca.nodes.SoftwareComponent
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes.rate_oam2_mgmt_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_arb_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam1_mgmt_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_oam2_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam1_mgmt_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_oam2_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.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_arb_int_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_arb_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam2_int_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_oam1_int_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_oam2_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam2_int_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_arb_int_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_oam2_instance:
+ type: org.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_oam2_int_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_arb_int_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
@@ -320,22 +975,435 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- attachment_oam1_mgmt_port:
+ network.incoming.packets.rate_oam1_int_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_oam1_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_arb_instance:
+ type: org.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_arb_instance:
+ type: org.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_arb_int_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_oam2_instance:
+ type: org.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_oam2_volume:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- attachment_arb_int_port:
+ disk.write.bytes.rate_oam2_instance:
+ type: org.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_oam1_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_oam2_instance:
+ type: org.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_arb_mgmt_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
+ host_arb_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_oam2_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam1_instance:
+ type: org.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_arb_int_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_arb_mgmt_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_oam2_instance:
+ type: org.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_oam1_instance:
+ type: org.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_arb_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_oam1_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam2_int_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_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_arb_instance:
+ type: org.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_arb_int_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_oam2_mgmt_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_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam2_mgmt_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_oam1_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam2_mgmt_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- attachment_arb_mgmt_port:
+ memory.usage_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam1_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_arb_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: org.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_arb_volume:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- attachment_oam2_mgmt_port:
+ network.outpoing.packets_arb_int_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.usage_oam2_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam1_instance:
+ type: org.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_oam2_instance:
+ type: org.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_arb_instance:
+ type: org.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_arb_instance:
+ type: org.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_arb_mgmt_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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_oam2_instance:
+ type: org.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_oam1_instance:
+ type: org.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_arb_mgmt_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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: org.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_arb_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_oam2_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_arb_instance:
+ type: org.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_oam2_instance:
+ type: org.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_oam2_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_oam1_int_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_arb_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_arb_mgmt_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_oam1_instance:
+ type: org.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_arb_instance:
+ type: org.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_oam1_instance:
+ type: org.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_arb_mgmt_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_oam2_mgmt_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_oam1_mgmt_port:
type: tosca.capabilities.Attachment
occurrences:
- 1
@@ -344,4 +1412,64 @@ node_types:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
+ - UNBOUNDED
+ attachment_oam2_int_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_oam2_instance:
+ type: org.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_oam2_int_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_oam2_int_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests.rate_oam2_instance:
+ type: org.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_oam2_int_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_oam1_mgmt_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_oam2_instance:
+ type: org.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_arb_mgmt_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_oam1_instance:
+ type: org.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/multiHeat/referencedHeatResources/expectedOutput/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/MainServiceTemplate.yaml
index d9f89dfc0e..4f1398af5e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.nems_be:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -1226,6 +1202,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1233,6 +1215,10 @@ topology_template:
get_input:
- lb_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1244,11 +1230,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: mms_traffic_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: mms_traffic_net_floating_ip
@@ -1266,6 +1261,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1273,6 +1274,9 @@ topology_template:
get_input:
- nems_fe_nems_traffic_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_traffic_net
requirements:
- link:
@@ -1287,6 +1291,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1294,6 +1304,9 @@ topology_template:
get_input:
- nems_fe_nems_internal_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_internal_net
requirements:
- link:
@@ -1324,6 +1337,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1331,6 +1350,9 @@ topology_template:
get_input:
- nems_fe_nems_user_web_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_user_web_net
requirements:
- link:
@@ -1345,6 +1367,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1352,6 +1380,9 @@ topology_template:
get_input:
- nems_fe_nems_user_web_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_user_web_net
requirements:
- link:
@@ -1366,6 +1397,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1373,6 +1410,9 @@ topology_template:
get_input:
- nems_fe_nems_traffic_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_traffic_net
requirements:
- link:
@@ -1387,6 +1427,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1394,6 +1440,10 @@ topology_template:
get_input:
- nems_fe_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1405,6 +1455,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1412,6 +1468,10 @@ topology_template:
get_input:
- nems_fe_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1423,6 +1483,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1430,6 +1496,9 @@ topology_template:
get_input:
- nems_fe_nems_internal_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_internal_net
requirements:
- link:
@@ -1444,6 +1513,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1451,6 +1526,9 @@ topology_template:
get_input:
- nems_fe_nems_imap_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_imap_net
requirements:
- link:
@@ -1465,6 +1543,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1472,6 +1556,9 @@ topology_template:
get_input:
- nems_fe_nems_imap_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_imap_net
requirements:
- link:
@@ -1531,11 +1618,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: eca_traffic_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: eca_traffic_net_floating_ip
@@ -1553,11 +1649,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: ha_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: ha_net
requirements:
- link:
@@ -1588,11 +1693,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: ha_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: ha_net
requirements:
- link:
@@ -1635,6 +1749,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1642,6 +1762,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 15
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1653,6 +1777,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1660,6 +1790,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 18
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -1674,6 +1807,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1681,6 +1820,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 15
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -1692,6 +1835,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1699,6 +1848,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 18
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -1710,6 +1863,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1717,6 +1876,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 14
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1728,6 +1891,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1735,6 +1904,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 18
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1746,11 +1919,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_traffic_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_traffic_net_floating_ip
@@ -1768,6 +1950,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1775,6 +1963,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 10
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -1786,6 +1978,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1793,6 +1991,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 10
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -1807,6 +2008,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1814,6 +2021,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 11
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -1828,6 +2038,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1835,6 +2051,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 11
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -1846,6 +2066,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1853,6 +2079,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 10
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1864,6 +2094,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1871,6 +2107,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 11
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1882,6 +2122,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1889,6 +2135,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1900,6 +2150,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1907,6 +2163,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1918,6 +2178,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1925,6 +2191,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1936,6 +2206,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1943,6 +2219,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 14
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -1957,6 +2236,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1964,6 +2249,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -1978,6 +2266,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -1985,6 +2279,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -1999,6 +2296,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2006,6 +2309,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 14
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2017,6 +2324,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2024,6 +2337,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 15
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2038,6 +2354,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2045,6 +2367,10 @@ topology_template:
get_input:
- lb_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2062,6 +2388,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2069,6 +2401,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 6
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2135,6 +2470,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2142,6 +2483,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 6
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2153,6 +2498,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2160,6 +2511,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 6
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2177,6 +2532,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2184,6 +2545,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2195,6 +2560,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2202,6 +2573,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2213,6 +2588,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2220,6 +2601,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2278,6 +2662,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2285,6 +2675,9 @@ topology_template:
get_input:
- lb_dmz_protected_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -2314,6 +2707,7 @@ topology_template:
get_input:
- mmsc_dmz_protected_snat_ips
- 3
+ network_role_tag: dmz_protected
network:
get_input: dmz_protected_net_name
requirements:
@@ -2325,11 +2719,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: eca_traffic_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: eca_traffic_net_floating_ip
@@ -2347,6 +2750,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2354,6 +2763,9 @@ topology_template:
get_input:
- lb_dmz_protected_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -2383,6 +2795,7 @@ topology_template:
get_input:
- mmsc_dmz_protected_snat_ips
- 3
+ network_role_tag: dmz_protected
network:
get_input: dmz_protected_net_name
requirements:
@@ -2394,11 +2807,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: mms_traffic_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: mms_traffic_net_floating_ip
@@ -2432,6 +2854,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2439,6 +2867,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2523,6 +2954,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2530,6 +2967,9 @@ topology_template:
get_input:
- lb_cor_direct_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -2559,6 +2999,7 @@ topology_template:
get_input:
- mmsc_core_snat_ips
- 4
+ network_role_tag: cor_direct
network:
get_input: cor_direct_net_name
requirements:
@@ -2570,6 +3011,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2577,6 +3024,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 19
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2588,6 +3039,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2595,6 +3052,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 19
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2609,6 +3069,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2616,6 +3082,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 19
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2627,6 +3097,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2634,6 +3110,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 7
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2645,6 +3125,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2652,6 +3138,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 5
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2663,11 +3153,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_user_web_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_user_web_net_floating_ip
@@ -2701,6 +3200,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2708,6 +3213,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 5
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2722,6 +3230,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2729,6 +3243,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 7
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -2743,11 +3260,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_user_web_net_local_ip1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_user_web_net_floating_ip
@@ -2765,6 +3291,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2772,6 +3304,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 5
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2783,6 +3319,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2790,6 +3332,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 7
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2839,11 +3385,21 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_be_oam_ips
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2855,6 +3411,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2862,6 +3424,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -2895,11 +3461,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_be_nems_internal_net_ips
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_internal_net
requirements:
- link:
@@ -2914,6 +3489,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2921,6 +3502,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2932,6 +3517,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2939,6 +3530,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -2972,11 +3567,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_be_nems_imap_net_ips
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: nems_imap_net
requirements:
- link:
@@ -2991,6 +3595,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -2998,6 +3608,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3012,6 +3625,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3019,6 +3638,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3049,6 +3671,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3056,6 +3684,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3117,6 +3749,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3124,6 +3762,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 16
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3135,6 +3777,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3142,6 +3790,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 17
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3156,6 +3807,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3163,6 +3820,9 @@ topology_template:
get_input:
- lb_cor_direct_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input:
@@ -3192,6 +3852,7 @@ topology_template:
get_input:
- mmsc_core_snat_ips
- 4
+ network_role_tag: cor_direct
network:
get_input: cor_direct_net_name
requirements:
@@ -3203,6 +3864,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3210,6 +3877,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3221,6 +3892,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3228,6 +3905,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 16
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3242,6 +3922,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3249,6 +3935,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 17
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3260,6 +3950,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3267,6 +3963,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -3281,6 +3980,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3288,6 +3993,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -3302,6 +4010,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3309,6 +4023,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 16
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3320,6 +4038,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3327,6 +4051,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 17
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3354,6 +4082,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3361,12 +4095,22 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
eca_trx10_port_1:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3374,6 +4118,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 9
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3417,6 +4165,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3424,6 +4178,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 9
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3473,6 +4231,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3480,6 +4244,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 9
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3558,6 +4325,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3565,6 +4338,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 13
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3576,6 +4353,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3583,6 +4366,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 12
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3594,6 +4381,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3601,6 +4394,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 13
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3612,6 +4409,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3619,6 +4422,9 @@ topology_template:
get_input:
- mmsc_mms_traffic_net_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: mms_traffic_net
requirements:
- link:
@@ -3633,6 +4439,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3640,6 +4452,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 12
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3651,6 +4467,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3658,6 +4480,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3669,6 +4495,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3676,6 +4508,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 12
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3690,6 +4525,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3697,6 +4538,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 13
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3711,6 +4555,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3718,6 +4568,10 @@ topology_template:
get_input:
- mmsc_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3777,6 +4631,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3784,6 +4644,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 8
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3795,6 +4659,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3802,6 +4672,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 8
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3813,6 +4687,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3820,6 +4700,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 8
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3834,11 +4717,20 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
security_groups:
- get_input: security_group_name
fixed_ips:
- ip_address:
get_input: nems_traffic_net_local_ip2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: nems_traffic_net_floating_ip
@@ -3856,6 +4748,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3863,6 +4761,9 @@ topology_template:
get_input:
- eca_trx_eca_traffic_net_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: eca_traffic_net
requirements:
- link:
@@ -3893,6 +4794,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3900,6 +4807,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3911,6 +4822,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3918,6 +4835,10 @@ topology_template:
get_input:
- eca_trx_mgmt_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -3929,6 +4850,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3936,6 +4863,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3947,6 +4878,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -3954,6 +4891,10 @@ topology_template:
get_input:
- eca_trx_oam_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -3969,57 +4910,69 @@ topology_template:
size: '(get_input : mmsc_cinder_volume_size) * 1024'
relationship_templates:
nems1_fe_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: nems1_fe_volume
instance_uuid: server_nems_fe1
mmsc3_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc3_volume
instance_uuid: server_mmsc3
mmsc1_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc1_volume
instance_uuid: server_mmsc1
cmaui1_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: cmaui1_volume
instance_uuid: server_cmaui1
mmsc4_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc4_volume
instance_uuid: server_mmsc4
nems_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: nems_be_volume
instance_uuid: server_nems_be1
cmaui_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: cmaui_volume
instance_uuid: server_cmaui
nems2_fe_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: nems2_fe_volume
instance_uuid: server_nems_fe2
mmsc5_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc5_volume
instance_uuid: server_mmsc5
mmsc2_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: mmsc2_volume
instance_uuid: server_mmsc2
groups:
- MMSC_Capacity_Line:
+ cmaui_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/cmaui.yml
+ description: cmaui server template for vMMSC
+ members:
+ - server_cmaui1
+ - server_cmaui
+ - cmaui1_port_0
+ - cmaui_volume
+ - cmaui1_volume
+ - cmaui_port_0
+ MMSC_Capacity_Line_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/MMSC_Capacity_Line.yml
@@ -4170,7 +5123,7 @@ topology_template:
- eca_trx1_port_0
- eca_trx5_port_0
- mmsc3_volume
- SG_ECA_MGMT:
+ SG_ECA_MGMT_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/SG_ECA_MGMT.yaml
@@ -4178,16 +5131,4 @@ topology_template:
HOT template that creates Security Group and ECA network
members:
- mms_security_group
- - eca_mgmt_net
- cmaui:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/cmaui.yml
- description: cmaui server template for vMMSC
- members:
- - server_cmaui1
- - server_cmaui
- - cmaui1_port_0
- - cmaui_volume
- - cmaui1_volume
- - cmaui_port_0 \ No newline at end of file
+ - eca_mgmt_net \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/eca_oamServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/eca_oamServiceTemplate.yaml
index 90d4df7dab..663ab05b24 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/eca_oamServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/expectedOutput/eca_oamServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: eca_oam
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.eca:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -244,6 +220,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -251,6 +233,10 @@ topology_template:
get_input:
- arb_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -262,6 +248,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -269,6 +261,10 @@ topology_template:
get_input:
- eca_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -340,6 +336,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -347,6 +349,10 @@ topology_template:
get_input:
- eca_eca_mgmt_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -358,6 +364,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -365,6 +377,10 @@ topology_template:
get_input:
- eca_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -376,6 +392,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -383,6 +405,10 @@ topology_template:
get_input:
- arb_eca_mgmt_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -394,6 +420,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -401,6 +433,10 @@ topology_template:
get_input:
- eca_eca_mgmt_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: eca_mgmt
network:
get_input: eca_mgmt_net_name
requirements:
@@ -431,22 +467,22 @@ topology_template:
relationship: oam2_volume_attachment
relationship_templates:
oam2_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: oam2_volume
instance_uuid: oam2_instance
oam1_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: oam1_volume
instance_uuid: oam1_instance
arb_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: arb_volume
instance_uuid: arb_instance
groups:
- eca_oam:
+ eca_oam_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/eca_oam.yaml
@@ -467,103 +503,652 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.eca_oam
capabilities:
- attachment_oam2_volume:
+ disk.usage_arb_instance:
+ - arb_instance
+ - disk.usage
+ disk.capacity_arb_instance:
+ - arb_instance
+ - disk.capacity
+ disk.write.bytes.rate_oam1_instance:
+ - oam1_instance
+ - disk.write.bytes.rate
+ network.incoming.bytes_oam1_int_port:
+ - oam1_int_port
+ - network.incoming.bytes
+ endpoint_oam2_instance:
+ - oam2_instance
+ - endpoint
+ network.incoming.packets_oam1_int_port:
+ - oam1_int_port
+ - network.incoming.packets
+ disk.allocation_oam2_instance:
+ - oam2_instance
+ - disk.allocation
+ attachment_arb_mgmt_port:
+ - arb_mgmt_port
+ - attachment
+ feature_oam2_volume:
- oam2_volume
+ - feature
+ memory.resident_arb_instance:
+ - arb_instance
+ - memory.resident
+ disk.device.usage_oam1_instance:
+ - oam1_instance
+ - disk.device.usage
+ disk.device.allocation_oam2_instance:
+ - oam2_instance
+ - disk.device.allocation
+ network.incoming.bytes.rate_oam1_int_port:
+ - oam1_int_port
+ - network.incoming.bytes.rate
+ network.incoming.packets.rate_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.incoming.packets.rate
+ feature_oam1_int_port:
+ - oam1_int_port
+ - feature
+ network.incoming.packets_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.incoming.packets
+ disk.read.bytes_oam1_instance:
+ - oam1_instance
+ - disk.read.bytes
+ disk.device.read.requests_arb_instance:
+ - arb_instance
+ - disk.device.read.requests
+ attachment_oam1_volume:
+ - oam1_volume
- attachment
- binding_oam2_instance:
+ network.incoming.packets.rate_oam2_int_port:
+ - oam2_int_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes.rate_arb_int_port:
+ - arb_int_port
+ - network.outgoing.bytes.rate
+ memory.usage_arb_instance:
+ - arb_instance
+ - memory.usage
+ disk.device.write.requests_oam2_instance:
- oam2_instance
+ - disk.device.write.requests
+ feature_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - feature
+ disk.read.bytes.rate_arb_instance:
+ - arb_instance
+ - disk.read.bytes.rate
+ network.outgoing.packets.rate_arb_mgmt_port:
+ - arb_mgmt_port
+ - network.outgoing.packets.rate
+ binding_arb_mgmt_port:
+ - arb_mgmt_port
- binding
- attachment_oam2_int_port:
- - oam2_int_port
+ network.outpoing.packets_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.outpoing.packets
+ network.incoming.packets_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.incoming.packets
+ attachment_arb_int_port:
+ - arb_int_port
- attachment
- attachment_oam1_volume:
- - oam1_volume
+ disk.device.write.bytes_oam2_instance:
+ - oam2_instance
+ - disk.device.write.bytes
+ network.outgoing.packets.rate_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.outgoing.packets.rate
+ binding_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - binding
+ scalable_arb_instance:
+ - arb_instance
+ - scalable
+ cpu.delta_arb_instance:
+ - arb_instance
+ - cpu.delta
+ disk.usage_oam1_instance:
+ - oam1_instance
+ - disk.usage
+ disk.device.write.requests_arb_instance:
+ - arb_instance
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.outgoing.bytes.rate
+ network.incoming.packets_arb_int_port:
+ - arb_int_port
+ - network.incoming.packets
+ disk.device.read.bytes_oam1_instance:
+ - oam1_instance
+ - disk.device.read.bytes
+ disk.device.iops_arb_instance:
+ - arb_instance
+ - disk.device.iops
+ memory_oam2_instance:
+ - oam2_instance
+ - memory
+ os_oam2_instance:
+ - oam2_instance
+ - os
+ disk.device.read.bytes.rate_oam1_instance:
+ - oam1_instance
+ - disk.device.read.bytes.rate
+ network.incoming.bytes_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.incoming.bytes
+ binding_oam2_instance:
+ - oam2_instance
+ - binding
+ network.outpoing.packets_oam1_int_port:
+ - oam1_int_port
+ - network.outpoing.packets
+ network.incoming.bytes.rate_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.incoming.bytes.rate
+ cpu_oam1_instance:
+ - oam1_instance
+ - cpu
+ disk.device.capacity_oam2_instance:
+ - oam2_instance
+ - disk.device.capacity
+ disk.root.size_oam1_instance:
+ - oam1_instance
+ - disk.root.size
+ attachment_oam1_int_port:
+ - oam1_int_port
- attachment
+ disk.iops_arb_instance:
+ - arb_instance
+ - disk.iops
+ memory.resident_oam1_instance:
+ - oam1_instance
+ - memory.resident
+ host_oam1_instance:
+ - oam1_instance
+ - host
+ network.incoming.bytes_arb_mgmt_port:
+ - arb_mgmt_port
+ - network.incoming.bytes
+ network.outgoing.bytes_arb_int_port:
+ - arb_int_port
+ - network.outgoing.bytes
+ disk.device.write.bytes_arb_instance:
+ - arb_instance
+ - disk.device.write.bytes
+ instance_arb_instance:
+ - arb_instance
+ - instance
+ disk.device.latency_oam1_instance:
+ - oam1_instance
+ - disk.device.latency
+ network.incoming.bytes.rate_oam2_int_port:
+ - oam2_int_port
+ - network.incoming.bytes.rate
+ memory_oam1_instance:
+ - oam1_instance
+ - memory
+ binding_arb_instance:
+ - arb_instance
+ - binding
+ feature_arb_volume:
+ - arb_volume
+ - feature
+ disk.write.bytes_arb_instance:
+ - arb_instance
+ - disk.write.bytes
+ network.outgoing.packets.rate_oam1_int_port:
+ - oam1_int_port
+ - network.outgoing.packets.rate
+ binding_oam1_int_port:
+ - oam1_int_port
+ - binding
+ disk.iops_oam1_instance:
+ - oam1_instance
+ - disk.iops
+ disk.write.requests.rate_arb_instance:
+ - arb_instance
+ - disk.write.requests.rate
+ scalable_oam1_instance:
+ - oam1_instance
+ - scalable
+ disk.root.size_arb_instance:
+ - arb_instance
+ - disk.root.size
+ network.outpoing.packets_oam2_int_port:
+ - oam2_int_port
+ - network.outpoing.packets
+ disk.device.read.requests.rate_arb_instance:
+ - arb_instance
+ - disk.device.read.requests.rate
+ instance_oam1_instance:
+ - oam1_instance
+ - instance
os_oam1_instance:
- oam1_instance
- os
- scalable_oam2_instance:
+ network.incoming.packets.rate_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.incoming.packets.rate
+ memory.usage_oam2_instance:
- oam2_instance
- - scalable
- scalable_arb_instance:
+ - memory.usage
+ disk.device.read.bytes.rate_oam2_instance:
+ - oam2_instance
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.outgoing.packets.rate
+ binding_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - binding
+ network.outgoing.bytes.rate_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.outgoing.bytes.rate
+ disk.read.requests_arb_instance:
- arb_instance
- - scalable
+ - disk.read.requests
+ disk.device.iops_oam2_instance:
+ - oam2_instance
+ - disk.device.iops
+ network.outgoing.bytes_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.outgoing.bytes
+ disk.write.requests_oam2_instance:
+ - oam2_instance
+ - disk.write.requests
+ disk.device.write.bytes_oam1_instance:
+ - oam1_instance
+ - disk.device.write.bytes
+ disk.root.size_oam2_instance:
+ - oam2_instance
+ - disk.root.size
+ disk.device.write.bytes.rate_oam2_instance:
+ - oam2_instance
+ - disk.device.write.bytes.rate
+ network.incoming.bytes_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.incoming.bytes
+ disk.write.bytes_oam2_instance:
+ - oam2_instance
+ - disk.write.bytes
+ cpu_arb_instance:
+ - arb_instance
+ - cpu
+ disk.read.requests_oam1_instance:
+ - oam1_instance
+ - disk.read.requests
+ network.outgoing.packets.rate_arb_int_port:
+ - arb_int_port
+ - network.outgoing.packets.rate
+ disk.allocation_arb_instance:
+ - arb_instance
+ - disk.allocation
+ cpu.delta_oam2_instance:
+ - oam2_instance
+ - cpu.delta
+ cpu_util_oam2_instance:
+ - oam2_instance
+ - cpu_util
+ disk.device.read.bytes.rate_arb_instance:
+ - arb_instance
+ - disk.device.read.bytes.rate
+ network.incoming.packets_oam2_int_port:
+ - oam2_int_port
+ - network.incoming.packets
+ network.outgoing.bytes_oam1_int_port:
+ - oam1_int_port
+ - network.outgoing.bytes
+ disk.device.read.requests.rate_oam2_instance:
+ - oam2_instance
+ - disk.device.read.requests.rate
+ disk.allocation_oam1_instance:
+ - oam1_instance
+ - disk.allocation
+ disk.capacity_oam1_instance:
+ - oam1_instance
+ - disk.capacity
+ feature_oam2_int_port:
+ - oam2_int_port
+ - feature
+ disk.device.allocation_oam1_instance:
+ - oam1_instance
+ - disk.device.allocation
+ vcpus_arb_instance:
+ - arb_instance
+ - vcpus
+ network.incoming.packets.rate_arb_int_port:
+ - arb_int_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_oam2_instance:
+ - oam2_instance
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_oam2_int_port:
+ - oam2_int_port
+ - network.outgoing.bytes.rate
+ network.incoming.bytes.rate_arb_int_port:
+ - arb_int_port
+ - network.incoming.bytes.rate
+ os_arb_instance:
+ - arb_instance
+ - os
+ network.incoming.packets.rate_oam1_int_port:
+ - oam1_int_port
+ - network.incoming.packets.rate
+ feature_oam1_volume:
+ - oam1_volume
+ - feature
+ disk.write.bytes.rate_arb_instance:
+ - arb_instance
+ - disk.write.bytes.rate
+ disk.device.capacity_arb_instance:
+ - arb_instance
+ - disk.device.capacity
+ network.incoming.bytes_arb_int_port:
+ - arb_int_port
+ - network.incoming.bytes
+ disk.device.usage_oam2_instance:
+ - oam2_instance
+ - disk.device.usage
+ attachment_oam2_volume:
+ - oam2_volume
+ - attachment
+ disk.write.bytes.rate_oam2_instance:
+ - oam2_instance
+ - disk.write.bytes.rate
endpoint_oam1_instance:
- oam1_instance
- endpoint
- binding_arb_instance:
- - arb_instance
- - binding
+ disk.iops_oam2_instance:
+ - oam2_instance
+ - disk.iops
+ network.outgoing.bytes.rate_arb_mgmt_port:
+ - arb_mgmt_port
+ - network.outgoing.bytes.rate
host_arb_instance:
- arb_instance
- host
- endpoint_arb_instance:
+ disk.device.write.requests.rate_oam2_instance:
+ - oam2_instance
+ - disk.device.write.requests.rate
+ cpu_util_oam1_instance:
+ - oam1_instance
+ - cpu_util
+ disk.ephemeral.size_oam1_instance:
+ - oam1_instance
+ - disk.ephemeral.size
+ binding_arb_int_port:
+ - arb_int_port
+ - binding
+ network.outgoing.bytes_arb_mgmt_port:
+ - arb_mgmt_port
+ - network.outgoing.bytes
+ disk.capacity_oam2_instance:
+ - oam2_instance
+ - disk.capacity
+ vcpus_oam1_instance:
+ - oam1_instance
+ - vcpus
+ feature_arb_instance:
- arb_instance
- - endpoint
- attachment_oam1_int_port:
- - oam1_int_port
+ - feature
+ disk.device.read.requests.rate_oam1_instance:
+ - oam1_instance
+ - disk.device.read.requests.rate
+ memory.resident_oam2_instance:
+ - oam2_instance
+ - memory.resident
+ network.outgoing.bytes_oam2_int_port:
+ - oam2_int_port
+ - network.outgoing.bytes
+ disk.device.write.bytes.rate_arb_instance:
+ - arb_instance
+ - disk.device.write.bytes.rate
+ disk.write.requests_oam1_instance:
+ - oam1_instance
+ - disk.write.requests
+ disk.device.usage_arb_instance:
+ - arb_instance
+ - disk.device.usage
+ disk.device.latency_arb_instance:
+ - arb_instance
+ - disk.device.latency
+ feature_arb_int_port:
+ - arb_int_port
+ - feature
+ network.outgoing.bytes_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.outgoing.bytes
+ disk.read.bytes_arb_instance:
+ - arb_instance
+ - disk.read.bytes
+ disk.write.requests.rate_oam1_instance:
+ - oam1_instance
+ - disk.write.requests.rate
+ cpu.delta_oam1_instance:
+ - oam1_instance
+ - cpu.delta
+ network.incoming.bytes.rate_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - network.incoming.bytes.rate
+ disk.device.write.bytes.rate_oam1_instance:
+ - oam1_instance
+ - disk.device.write.bytes.rate
+ disk.device.iops_oam1_instance:
+ - oam1_instance
+ - disk.device.iops
+ attachment_oam2_mgmt_port:
+ - oam2_mgmt_port
- attachment
+ memory.usage_oam1_instance:
+ - oam1_instance
+ - memory.usage
+ disk.ephemeral.size_arb_instance:
+ - arb_instance
+ - disk.ephemeral.size
+ feature_oam1_instance:
+ - oam1_instance
+ - feature
+ disk.write.requests_arb_instance:
+ - arb_instance
+ - disk.write.requests
+ disk.device.read.bytes_oam2_instance:
+ - oam2_instance
+ - disk.device.read.bytes
+ disk.latency_oam2_instance:
+ - oam2_instance
+ - disk.latency
attachment_arb_volume:
- arb_volume
- attachment
- host_oam1_instance:
+ network.outpoing.packets_arb_int_port:
+ - arb_int_port
+ - network.outpoing.packets
+ disk.usage_oam2_instance:
+ - oam2_instance
+ - disk.usage
+ disk.write.bytes_oam1_instance:
- oam1_instance
- - host
- os_oam2_instance:
+ - disk.write.bytes
+ disk.device.write.requests.rate_oam1_instance:
+ - oam1_instance
+ - disk.device.write.requests.rate
+ disk.read.bytes_oam2_instance:
- oam2_instance
- - os
- endpoint_oam2_instance:
+ - disk.read.bytes
+ disk.device.allocation_arb_instance:
+ - arb_instance
+ - disk.device.allocation
+ cpu_util_arb_instance:
+ - arb_instance
+ - cpu_util
+ network.incoming.packets_arb_mgmt_port:
+ - arb_mgmt_port
+ - network.incoming.packets
+ instance_oam2_instance:
- oam2_instance
- - endpoint
- scalable_oam1_instance:
+ - instance
+ feature_oam2_instance:
+ - oam2_instance
+ - feature
+ cpu_oam2_instance:
+ - oam2_instance
+ - cpu
+ disk.device.read.requests_oam1_instance:
- oam1_instance
- - scalable
+ - disk.device.read.requests
+ network.incoming.packets.rate_arb_mgmt_port:
+ - arb_mgmt_port
+ - network.incoming.packets.rate
+ disk.device.read.requests_oam2_instance:
+ - oam2_instance
+ - disk.device.read.requests
+ disk.read.requests_oam2_instance:
+ - oam2_instance
+ - disk.read.requests
+ disk.device.read.bytes_arb_instance:
+ - arb_instance
+ - disk.device.read.bytes
host_oam2_instance:
- oam2_instance
- host
- os_arb_instance:
+ disk.device.write.requests.rate_arb_instance:
- arb_instance
- - os
- attachment_oam1_mgmt_port:
- - oam1_mgmt_port
- - attachment
- attachment_arb_int_port:
- - arb_int_port
- - attachment
- attachment_arb_mgmt_port:
+ - disk.device.write.requests.rate
+ vcpus_oam2_instance:
+ - oam2_instance
+ - vcpus
+ scalable_oam2_instance:
+ - oam2_instance
+ - scalable
+ network.outgoing.bytes.rate_oam1_int_port:
+ - oam1_int_port
+ - network.outgoing.bytes.rate
+ endpoint_arb_instance:
+ - arb_instance
+ - endpoint
+ disk.device.capacity_oam1_instance:
+ - oam1_instance
+ - disk.device.capacity
+ disk.latency_arb_instance:
+ - arb_instance
+ - disk.latency
+ network.incoming.bytes.rate_arb_mgmt_port:
- arb_mgmt_port
- - attachment
- attachment_oam2_mgmt_port:
+ - network.incoming.bytes.rate
+ disk.read.bytes.rate_oam1_instance:
+ - oam1_instance
+ - disk.read.bytes.rate
+ memory_arb_instance:
+ - arb_instance
+ - memory
+ disk.latency_oam1_instance:
+ - oam1_instance
+ - disk.latency
+ feature_arb_mgmt_port:
+ - arb_mgmt_port
+ - feature
+ feature_oam2_mgmt_port:
- oam2_mgmt_port
+ - feature
+ attachment_oam1_mgmt_port:
+ - oam1_mgmt_port
- attachment
binding_oam1_instance:
- oam1_instance
- binding
+ attachment_oam2_int_port:
+ - oam2_int_port
+ - attachment
+ disk.device.latency_oam2_instance:
+ - oam2_instance
+ - disk.device.latency
+ network.outgoing.packets.rate_oam2_int_port:
+ - oam2_int_port
+ - network.outgoing.packets.rate
+ binding_oam2_int_port:
+ - oam2_int_port
+ - binding
+ disk.write.requests.rate_oam2_instance:
+ - oam2_instance
+ - disk.write.requests.rate
+ network.incoming.bytes_oam2_int_port:
+ - oam2_int_port
+ - network.incoming.bytes
+ network.outpoing.packets_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - network.outpoing.packets
+ disk.ephemeral.size_oam2_instance:
+ - oam2_instance
+ - disk.ephemeral.size
+ network.outpoing.packets_arb_mgmt_port:
+ - arb_mgmt_port
+ - network.outpoing.packets
+ disk.device.write.requests_oam1_instance:
+ - oam1_instance
+ - disk.device.write.requests
requirements:
link_oam2_mgmt_port:
- oam2_mgmt_port
- link
+ dependency_oam2_volume:
+ - oam2_volume
+ - dependency
+ dependency_oam1_volume:
+ - oam1_volume
+ - dependency
+ link_oam1_mgmt_port:
+ - oam1_mgmt_port
+ - link
+ dependency_oam2_instance:
+ - oam2_instance
+ - dependency
+ local_storage_oam2_instance:
+ - oam2_instance
+ - local_storage
+ link_arb_int_port:
+ - arb_int_port
+ - link
+ dependency_oam1_instance:
+ - oam1_instance
+ - dependency
+ dependency_arb_instance:
+ - arb_instance
+ - dependency
link_oam1_int_port:
- oam1_int_port
- link
- link_oam1_mgmt_port:
+ dependency_oam1_mgmt_port:
- oam1_mgmt_port
- - link
+ - dependency
+ dependency_oam1_int_port:
+ - oam1_int_port
+ - dependency
local_storage_arb_instance:
- arb_instance
- local_storage
+ dependency_arb_mgmt_port:
+ - arb_mgmt_port
+ - dependency
+ dependency_oam2_mgmt_port:
+ - oam2_mgmt_port
+ - dependency
link_arb_mgmt_port:
- arb_mgmt_port
- link
- local_storage_oam2_instance:
- - oam2_instance
- - local_storage
- link_arb_int_port:
- - arb_int_port
- - link
+ dependency_arb_volume:
+ - arb_volume
+ - dependency
+ dependency_oam2_int_port:
+ - oam2_int_port
+ - dependency
link_oam2_int_port:
- oam2_int_port
- link
local_storage_oam1_instance:
- oam1_instance
- - local_storage \ No newline at end of file
+ - local_storage
+ dependency_arb_int_port:
+ - arb_int_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/multiHeat/referencedHeatResources/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/MANIFEST.json
index 167ae4e9d8..b57a01b8d1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/MANIFEST.json
@@ -1,37 +1,47 @@
{
- "name": "multiple_not_nested",
- "description": "multiple heat files in zip, no nesting",
- "version": "2013-05-23",
- "data": [{
- "file": "cmaui.yml",
- "type": "HEAT",
- "data": [{
- "file": "cmaui.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "eca_oam.yaml",
- "type": "HEAT",
- "data": [{
- "file": "eca_oam.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "MMSC_Capacity_Line.yml",
- "type": "HEAT",
- "data": [{
- "file": "MMSC_Capacity_Line_1.env",
- "type": "HEAT_ENV"
- }]
- },
- {
- "file": "SG_ECA_MGMT.yaml",
- "type": "HEAT",
- "data": [{
- "file": "sg_eca_mgmt.env",
- "type": "HEAT_ENV"
- }]
- }]
+ "name": "multiple_not_nested",
+ "description": "multiple heat files in zip, no nesting",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "cmaui.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "cmaui.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "eca_oam.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "eca_oam.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "MMSC_Capacity_Line.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "MMSC_Capacity_Line_1.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "SG_ECA_MGMT.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "sg_eca_mgmt.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/cmaui.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/cmaui.yml
index 6d094be26f..83d398d218 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/cmaui.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/cmaui.yml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
#################################
#
# Changes from MSO 01/26/2016
-# Updated per ECOMP feedback
+# Updated per OPENECOMP feedback
#
#################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/eca_oam.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/eca_oam.yaml
index db5ab5c26b..885e61c91c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/eca_oam.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/multiHeat/referencedHeatResources/inputs/eca_oam.yaml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
##########################################################
#
# Changes from MSO
-# - Updated per ECOMP Feedback
+# - Updated per OPENECOMP Feedback
#
#
##########################################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_MultiPolicy_single_net_translation/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_MultiPolicy_single_net_translation/expectedoutputfiles/MainServiceTemplate.yaml
index 0744579c92..664d0eb8f8 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_MultiPolicy_single_net_translation/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_MultiPolicy_single_net_translation/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
left_vn_fqdn:
@@ -293,7 +269,7 @@ topology_template:
node: template_VirtualNetwork_2
relationship: org.openecomp.relationships.AttachesTo
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_Multi_net_single_policy_translation/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_Multi_net_single_policy_translation/expectedoutputfiles/MainServiceTemplate.yaml
index f00614b2ad..5f3717475e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_Multi_net_single_policy_translation/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/ContrailV2_Multi_net_single_policy_translation/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
left_vn_fqdn:
@@ -279,7 +255,7 @@ topology_template:
node: template_NetworkPolicy
relationship: tosca.relationships.DependsOn
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/invalid_policy_resource_type/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/invalid_policy_resource_type/expectedoutputfiles/MainServiceTemplate.yaml
index 31bb9db74a..39aee3c4fa 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/invalid_policy_resource_type/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/invalid_policy_resource_type/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
left_vn_fqdn:
@@ -183,7 +159,7 @@ topology_template:
node: template_NetworkPolicy
relationship: tosca.relationships.DependsOn
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/simple/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/simple/expectedoutputfiles/MainServiceTemplate.yaml
index 3abd06c651..d31efa8e4c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/simple/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/ContrailV2_translation/simple/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
left_vn_fqdn:
@@ -215,7 +191,7 @@ topology_template:
node: template_NetworkPolicy
relationship: tosca.relationships.DependsOn
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 7b58dd24e0..8b2bc096be 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,51 +11,92 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
template_PortTuple_LB1:
type: string
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
oam_sec_group_name:
type: string
+ required: true
+ status: SUPPORTED
lb_st_interface_type_oam:
type: string
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_template_VMInt_OAM_lb_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_template_VMInt_OAM_lb_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -88,6 +105,53 @@ node_types:
- 0
- UNBOUNDED
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -95,23 +159,311 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
index 623325a944..121b2d9c8b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
jsa_net_name:
@@ -69,7 +45,7 @@ topology_template:
node: test_net
relationship: tosca.relationships.network.LinksTo
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
index 4484578db6..5c469df2db 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -100,7 +76,7 @@ topology_template:
virtual_network_refs:
- get_input: p1
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -118,7 +94,7 @@ topology_template:
- get_input: p1
- get_input: p2
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -142,7 +118,7 @@ topology_template:
- cmaui_names
- 0
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -154,28 +130,205 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.incoming.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.incoming.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - feature
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ feature_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - feature
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.outpoing.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outpoing.packets
+ network.outpoing.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outpoing.packets
+ network.incoming.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets
+ network.incoming.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes.rate
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
requirements:
link_template_VMInt_OAM_lb_1:
- template_VMInt_OAM_lb_1
- link
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
link_template_VMInt_OAM_lb_2:
- template_VMInt_OAM_lb_2
- - link \ No newline at end of file
+ - link
+ dependency_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - dependency
+ dependency_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - 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/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..31a150f54f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,470 @@
+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.nested:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..6d883f24cd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,55 @@
+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:
+ untrusted_vlan_networks:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nested:
+ type: org.openecomp.resource.abstract.nodes.heat.nested
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: untrusted_vlan_networks
+ service_template_filter:
+ substitute_service_template: nestedServiceTemplate.yaml
+ p2: test_net1
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_net1
+ - test_net
+ - test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..95cc9a0f70
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -0,0 +1,339 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input:
+ - p1
+ - 0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input:
+ - p1
+ - 1
+ - get_input: p2
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested.yml
+ description: cmaui server template for vMMSC
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.incoming.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.incoming.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - feature
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ feature_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - feature
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.outpoing.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outpoing.packets
+ network.outpoing.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outpoing.packets
+ network.incoming.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets
+ network.incoming.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes.rate
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ link_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - link
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - link
+ dependency_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - dependency
+ dependency_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - 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/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..aca75b5055
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/main.yml
new file mode 100644
index 0000000000..c78f8b7540
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/main.yml
@@ -0,0 +1,29 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ untrusted_vlan_networks:
+ type: comma_delimited_list
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+ test_net1:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_nested:
+ type: nested.yml
+ properties:
+ p1: { get_param: untrusted_vlan_networks }
+ p2: { get_resource: test_net1}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/nested.yml
index 4894cfa44c..312fef914f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedArrayParam/inputfiles/nested.yml
@@ -4,14 +4,16 @@ description: cmaui server template for vMMSC
parameters:
p1:
+ type: comma_delimited_list
+ p2:
type: string
description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
cmaui_names:
type: comma_delimited_list
description: CMAUI1, CMAUI2 server names
- security_group_name:
- type: comma_delimited_list
- description: CMAUI1, CMAUI2 server names
cmaui_image:
type: string
description: Image for CMAUI server
@@ -22,12 +24,6 @@ parameters:
cmaui_flavor:
type: string
description: Flavor for CMAUI server
- shared_network_id:
- type: string
- description: Flavor for CMAUI server
- shared_network_id1:
- type: string
- description: Flavor for CMAUI server
cmaui_oam_ips:
type: string
oam_sec_group_name:
@@ -36,7 +32,6 @@ parameters:
type: string
template_PortTuple_LB1:
type: string
-
resources:
template_VMInt_OAM_lb_1:
type: OS::ContrailV2::VirtualMachineInterface
@@ -45,7 +40,7 @@ resources:
{
virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
}
- virtual_network_refs: [{ get_param: shared_network_id }]
+ virtual_network_refs: [{ get_param: [ p1, 0] }]
port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
security_group_refs: [{ get_param: oam_sec_group_name}]
@@ -56,7 +51,7 @@ resources:
{
virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
}
- virtual_network_refs: [{ get_param: shared_network_id }, { get_param: shared_network_id1 }]
+ virtual_network_refs: [{ get_param: [ p1, 1] },{ get_param: p2 }]
port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
security_group_refs: [{ get_param: oam_sec_group_name}]
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..960202a0dd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4341 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_4:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_template_VMInt_OAM_lb_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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.usage_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ 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.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_template_VMInt_OAM_lb_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a14b9d2c59
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,156 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_net
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_attribute:
+ - test_contrailV2_net
+ - fq_name
+ requirements:
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ list_join:
+ - ':'
+ - get_attribute:
+ - test_contrailV2_net
+ - fq_name
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ test_contrailV2_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nestedInvalidConnectionToNetwork2:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_contrail_net
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nestedInvalidConnectionToNetwork1:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_contrail_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_resourceGroup
+ - test_contrailV2_net
+ - test_nestedInvalidConnectionToNetwork2
+ - test_net
+ - test_nestedInvalidConnectionToNetwork1
+ - test_contrail_net
+ - test_nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..6dd6f7731e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,967 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: p1
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - server_cmaui
+ - test_nested2Level
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_3
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level
+ binding_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ network.incoming.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui
+ disk.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested3Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ binding_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_6_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ cpu.delta_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested3Level
+ binding_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_3
+ network.outpoing.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_4
+ cpu_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested3Level
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets
+ network.incoming.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes
+ binding_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_4
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_4
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_3
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.bytes_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_3
+ feature_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_4
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui
+ feature_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_3
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.device.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_4
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets.rate
+ disk.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested4Level_test_nested3Level
+ feature_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - feature
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested3Level
+ feature_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - feature
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ vcpus_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_4
+ cpu_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.root.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested3Level
+ memory.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested3Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested3Level
+ instance_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui
+ disk.device.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested4Level_test_nested3Level
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui
+ network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested3Level
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.incoming.bytes_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_6_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.packets.rate
+ cpu_util_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested3Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outpoing.packets
+ network.outpoing.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outpoing.packets
+ disk.device.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_6_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_3
+ network.incoming.packets_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3Level
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes.rate
+ disk.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes.rate
+ disk.device.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested3Level
+ vcpus_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui
+ memory.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ feature_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_5_test_nested3Level
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_3
+ network.outgoing.bytes_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_3
+ feature_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ feature_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_4
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_4
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested3Level
+ feature_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ disk.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_3
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_4
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_3
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu.delta_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_4
+ network.outgoing.bytes_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested3Level
+ requirements:
+ dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ dependency_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_4
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_4
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_6_test_nested3Level
+ link_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - link
+ dependency_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_5_test_nested3Level
+ dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level
+ link_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_3
+ link_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - link
+ dependency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui
+ link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_5_test_nested3Level
+ dependency_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - dependency
+ dependency_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - dependency
+ dependency_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_3
+ dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ dependency_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_6_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..add8fa9189
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,767 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_4:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: p1
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - test_nested3Level
+ - template_VMInt_OAM_lb_3
+ - template_VMInt_OAM_lb_4
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ feature_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui_test_nested4Level
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_6
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui_test_nested4Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui_test_nested4Level
+ binding_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - binding
+ binding_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - binding
+ network.incoming.bytes_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.bytes
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level
+ feature_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_6
+ memory.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui
+ feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_8_test_nested4Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ memory_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_5
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outpoing.packets
+ network.incoming.packets_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_5
+ disk.ephemeral.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui_test_nested4Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets
+ cpu_util_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui
+ network.outgoing.bytes_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outgoing.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.packets
+ binding_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_5
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui
+ memory.resident_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level
+ cpu.delta_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui
+ network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui_test_nested4Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes.rate
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.bytes.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ memory_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui_test_nested4Level
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.device.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_6
+ network.outpoing.packets_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_5
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.root.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_6
+ feature_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_5
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.bytes_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_5
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_7_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui_test_nested4Level
+ disk.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_5
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_5
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.device.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ network.incoming.packets.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets.rate
+ disk.device.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_5
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui_test_nested4Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_6
+ feature_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - feature
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ binding_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_6
+ feature_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - feature
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level
+ disk.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level
+ network.incoming.bytes_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_6
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui_test_nested4Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui_test_nested4Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outgoing.packets.rate
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_5
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.packets.rate
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui
+ network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_6
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ instance_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui
+ disk.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui
+ network.incoming.packets_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_6
+ disk.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui_test_nested4Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui_test_nested4Level
+ feature_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_6
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui_test_nested4Level
+ requirements:
+ dependency_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_5
+ dependency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui
+ link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_7_test_nested4Level
+ dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_5
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ dependency_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - dependency
+ link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_8_test_nested4Level
+ dependency_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - dependency
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - link
+ dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui_test_nested4Level
+ dependency_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_6
+ link_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - link
+ dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ link_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_6
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..9be4e5d5d2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,556 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_5:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ template_VMInt_OAM_lb_6:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ - get_input: p2
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - template_VMInt_OAM_lb_5
+ - test_nested4Level
+ - template_VMInt_OAM_lb_6
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ memory_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ instance_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_7
+ disk.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ cpu_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui
+ vcpus_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui
+ binding_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - binding
+ binding_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.bytes_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_template_VMInt_OAM_lb_7
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.device.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_8
+ network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_template_VMInt_OAM_lb_8
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_8
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outpoing.packets
+ disk.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui
+ network.outgoing.bytes_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outgoing.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outgoing.bytes
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outpoing.packets
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_8
+ disk.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_7
+ disk.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outgoing.bytes.rate
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.bytes.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.packets_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_7
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.incoming.packets_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.packets
+ binding_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - binding_template_VMInt_OAM_lb_7
+ feature_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_8
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_7
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_8
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ feature_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - feature_template_VMInt_OAM_lb_7
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.packets.rate
+ feature_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - feature
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.packets.rate
+ disk.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - feature
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ cpu.delta_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_7
+ memory.resident_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_8
+ network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_8
+ disk.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui
+ disk.device.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outgoing.packets.rate
+ feature_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - feature_template_VMInt_OAM_lb_8
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ memory.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.device.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_7
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_7
+ binding_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - binding_template_VMInt_OAM_lb_8
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - dependency
+ dependency_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - dependency
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ dependency_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_template_VMInt_OAM_lb_8
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - link_template_VMInt_OAM_lb_8
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui
+ link_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - link
+ dependency_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_template_VMInt_OAM_lb_7
+ link_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - link
+ link_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - link_template_VMInt_OAM_lb_7 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..e1f9672bd4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,332 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_7:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_8:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - template_VMInt_OAM_lb_7
+ - template_VMInt_OAM_lb_8
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ binding_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - binding
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ binding_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - binding
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.incoming.bytes_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.packets.rate
+ feature_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - feature
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.packets.rate
+ feature_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - feature
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outgoing.packets.rate
+ network.outpoing.packets_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outpoing.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.outpoing.packets_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outpoing.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outgoing.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outgoing.bytes
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outgoing.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.bytes.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.incoming.packets_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.packets
+ network.incoming.packets_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.packets
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - dependency
+ dependency_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - dependency
+ link_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - link
+ link_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - 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/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..c7d4122f3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,32 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/main.yml
new file mode 100644
index 0000000000..0d9c6569f6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/main.yml
@@ -0,0 +1,63 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_contrailV2_net:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_contrail_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_net}
+ p2: { get_attr: [ test_contrailV2_net, fq_name ] }
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { list_join: [':', { get_attr: [ test_contrailV2_net, fq_name ] } ] }
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNetwork1:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_nova}
+
+ test_nestedInvalidConnectionToNetwork2:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_contrail_net} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..518849a73e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,75 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: template_VMInt_OAM_lb_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..634c34bebd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,80 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_3 }
+ - port: { get_resource: template_VMInt_OAM_lb_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..2b33ff1eed
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,76 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_5:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_6:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 },{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_5 }
+ - port: { get_resource: template_VMInt_OAM_lb_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..d1c7d1dd53
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/nestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,68 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_7:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_8:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_7 }
+ - port: { get_resource: template_VMInt_OAM_lb_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index f0124b6d68..2a6a954a1f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,68 +11,123 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
abc_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
template_PortTuple_LB1:
type: string
+ required: true
+ status: SUPPORTED
oam_sec_group_name:
type: string
+ required: true
+ status: SUPPORTED
lb_st_interface_type_oam:
type: string
+ required: true
+ status: SUPPORTED
abc_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
security_group_name:
description: not impotrtant
+ required: true
+ status: SUPPORTED
shared_network_id1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
abc_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
abc_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_template_VMInt_OAM_lb_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_template_VMInt_OAM_lb_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_template_VMInt_OAM_lb_3:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -104,6 +135,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_abc:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_abc:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -111,19 +149,84 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_abc_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_abc_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- scalable_server_abc:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_abc:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -131,18 +234,147 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_abc:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
- binding_server_abc:
- type: tosca.capabilities.network.Bindable
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Endpoint.Admin
+ network.outpoing.packets_template_VMInt_OAM_lb_1:
+ type: org.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_server_abc:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_abc:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -151,8 +383,51 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.read.bytes_server_abc:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_abc_port_1:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -161,11 +436,427 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_server_cmaui:
+ disk.write.requests.rate_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_abc_port_1:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_abc:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_abc:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_abc:
+ type: org.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_server_abc:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
+ disk.write.bytes_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.allocation_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_abc:
type: tosca.capabilities.Container
valid_source_types:
@@ -173,8 +864,31 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_server_abc:
- type: tosca.capabilities.OperatingSystem
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -184,27 +898,50 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
description: not impotrtant
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
abc_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -212,14 +949,78 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -227,28 +1028,245 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_cmaui_port_1:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
index c5d68ff070..2cf0580cc7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
shared_network_id1:
@@ -131,22 +107,22 @@ topology_template:
node: test_net2
relationship: tosca.relationships.network.LinksTo
groups:
- addOn:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nested2
- - test_nested3
- - test_nested1
- main:
+ - test_net2
+ - test_net1
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/main.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_net2
- - test_net1 \ No newline at end of file
+ - test_nested2
+ - test_nested3
+ - test_nested1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
index a10ccc2e1a..c36c9421ca 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.abc:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -120,7 +96,7 @@ topology_template:
virtual_network_refs:
- get_input: shared_network_id1
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -137,7 +113,7 @@ topology_template:
virtual_network_refs:
- get_input: p2
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -155,7 +131,7 @@ topology_template:
- get_input: p2
- get_input: shared_network_id1
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -195,6 +171,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -202,6 +184,9 @@ topology_template:
get_input:
- abc_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p2
requirements:
@@ -210,7 +195,7 @@ topology_template:
node: server_abc
relationship: tosca.relationships.network.BindsTo
groups:
- nested1:
+ nested1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested1.yml
@@ -225,43 +210,388 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested1
capabilities:
- scalable_server_abc:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_abc:
+ - server_abc
+ - disk.write.bytes.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ memory.resident_server_abc:
- server_abc
+ - memory.resident
+ scalable_server_cmaui:
+ - server_cmaui
- scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ os_server_abc:
+ - server_abc
+ - os
+ cpu_server_abc:
+ - server_abc
+ - cpu
+ network.outgoing.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.packets.rate
+ disk.device.usage_server_abc:
+ - server_abc
+ - disk.device.usage
host_server_cmaui:
- server_cmaui
- host
- os_server_cmaui:
+ cpu_util_server_cmaui:
- server_cmaui
- - os
- binding_server_abc:
+ - cpu_util
+ binding_abc_port_1:
+ - abc_port_1
+ - binding
+ disk.device.write.requests_server_abc:
- server_abc
+ - disk.device.write.requests
+ binding_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
- binding
- endpoint_server_cmaui:
+ disk.device.write.requests_server_cmaui:
- server_cmaui
- - endpoint
+ - disk.device.write.requests
+ network.incoming.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes
+ feature_abc_port_1:
+ - abc_port_1
+ - feature
+ disk.write.requests_server_abc:
+ - server_abc
+ - disk.write.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.capacity_server_abc:
+ - server_abc
+ - disk.capacity
+ disk.device.write.bytes_server_abc:
+ - server_abc
+ - disk.device.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.outpoing.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outpoing.packets
+ disk.device.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.read.bytes.rate
+ network.outpoing.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outpoing.packets
+ disk.iops_server_abc:
+ - server_abc
+ - disk.iops
+ network.outpoing.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outpoing.packets
attachment_abc_port_1:
- abc_port_1
- attachment
+ disk.read.bytes_server_abc:
+ - server_abc
+ - disk.read.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets
+ network.incoming.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets
+ network.outpoing.packets_abc_port_1:
+ - abc_port_1
+ - network.outpoing.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes
+ endpoint_server_abc:
+ - server_abc
+ - endpoint
+ disk.write.requests.rate_server_abc:
+ - server_abc
+ - disk.write.requests.rate
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes.rate
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes.rate
+ instance_server_abc:
+ - server_abc
+ - instance
+ network.incoming.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.device.write.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.write.bytes.rate
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.allocation_server_abc:
+ - server_abc
+ - disk.allocation
+ disk.device.iops_server_abc:
+ - server_abc
+ - disk.device.iops
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.packets_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.root.size_server_abc:
+ - server_abc
+ - disk.root.size
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets.rate
+ disk.device.latency_server_abc:
+ - server_abc
+ - disk.device.latency
+ network.incoming.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - feature
+ feature_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - feature
+ memory_server_abc:
+ - server_abc
+ - memory
+ feature_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - feature
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.device.read.bytes_server_abc:
+ - server_abc
+ - disk.device.read.bytes
binding_server_cmaui:
- server_cmaui
- binding
- endpoint_server_abc:
+ memory.usage_server_abc:
- server_abc
- - endpoint
- scalable_server_cmaui:
+ - memory.usage
+ disk.read.requests_server_abc:
+ - server_abc
+ - disk.read.requests
+ disk.device.read.requests.rate_server_cmaui:
- server_cmaui
+ - disk.device.read.requests.rate
+ disk.usage_server_abc:
+ - server_abc
+ - disk.usage
+ scalable_server_abc:
+ - server_abc
- scalable
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.write.bytes_server_abc:
+ - server_abc
+ - disk.write.bytes
+ disk.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.read.bytes.rate
+ disk.device.read.requests.rate_server_abc:
+ - server_abc
+ - disk.device.read.requests.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.packets.rate
+ network.outgoing.bytes_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_server_abc:
+ - server_abc
+ - disk.ephemeral.size
+ cpu_util_server_abc:
+ - server_abc
+ - cpu_util
+ binding_server_abc:
+ - server_abc
+ - binding
+ disk.device.capacity_server_abc:
+ - server_abc
+ - disk.device.capacity
+ network.outgoing.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_abc:
+ - server_abc
+ - disk.device.allocation
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ disk.device.write.requests.rate_server_abc:
+ - server_abc
+ - disk.device.write.requests.rate
+ disk.device.read.requests_server_abc:
+ - server_abc
+ - disk.device.read.requests
host_server_abc:
- server_abc
- host
- os_server_abc:
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_abc:
- server_abc
- - os
+ - cpu.delta
+ disk.latency_server_abc:
+ - server_abc
+ - disk.latency
+ feature_server_abc:
+ - server_abc
+ - feature
+ vcpus_server_abc:
+ - server_abc
+ - vcpus
requirements:
+ dependency_abc_port_1:
+ - abc_port_1
+ - dependency
link_template_VMInt_OAM_lb_1:
- template_VMInt_OAM_lb_1
- link
+ dependency_server_abc:
+ - server_abc
+ - dependency
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
@@ -271,6 +601,15 @@ topology_template:
link_template_VMInt_OAM_lb_2:
- template_VMInt_OAM_lb_2
- link
+ dependency_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - dependency
+ dependency_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - dependency
+ dependency_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - dependency
link_abc_port_1:
- abc_port_1
- link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
index 992e1c017c..1d2d9ada48 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -93,6 +69,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -100,6 +82,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -108,7 +93,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested2:
+ nested2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested2.yml
@@ -119,28 +104,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested2
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_1:
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
- cmaui_port_1
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_1:
- cmaui_port_1
- 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/services/heattotosca/VMInterfaceToNettworkConnection/multi/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
index 9b25041540..354559b3aa 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -89,6 +65,13 @@ topology_template:
immutable: false
type: string
description: Flavor for CMAUI server
+ shared_network_id2:
+ hidden: false
+ immutable: false
+ type: list
+ description: Flavor for CMAUI server
+ entry_schema:
+ type: string
availability_zone_0:
label: availabilityzone name
hidden: false
@@ -108,7 +91,7 @@ topology_template:
virtual_network_refs:
- get_input: shared_network_id
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -130,7 +113,7 @@ topology_template:
- get_input: shared_network_id
- get_input: shared_network_id1
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -143,6 +126,20 @@ topology_template:
capability: tosca.capabilities.network.Bindable
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input:
+ - shared_network_id2
+ - 0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
test_net1:
type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
properties:
@@ -170,16 +167,7 @@ topology_template:
network_name:
get_input: jsa_net_name
groups:
- addOn:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/addOn.yml
- description: cmaui server template for vMMSC
- members:
- - template_VMInt_OAM_lb_1
- - template_VMInt_OAM_lb_2
- - server_cmaui
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
@@ -187,4 +175,14 @@ topology_template:
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- test_net1
- - test_net \ No newline at end of file
+ - test_net
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: cmaui server template for vMMSC
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - template_VMInt_OAM_lb_3
+ - server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/MANIFEST.json
index 1f762d0ccc..1f762d0ccc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/addOn.yml
new file mode 100644
index 0000000000..069303d2ce
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/addOn.yml
@@ -0,0 +1,86 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ shared_network_id:
+ type: string
+ description: Flavor for CMAUI server
+ shared_network_id1:
+ type: string
+ description: Flavor for CMAUI server
+ shared_network_id2:
+ type: comma_delimited_list
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ oam_sec_group_name:
+ type: string
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+
+resources:
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_network_id }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_network_id }, { get_param: shared_network_id1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: [ shared_network_id2, 0] }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: template_VMInt_OAM_lb_2 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/main.yml
index 3bd60fc93e..3bd60fc93e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/multi/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedAddOn/inputfiles/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..e12c89613e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4420 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_1:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_1:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_4:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_4:
+ type: org.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_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_template_VMInt_OAM_lb_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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.usage_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_6:
+ type: org.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_template_VMInt_OAM_lb_5:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: org.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_template_VMInt_OAM_lb_8_test_nested4Level:
+ 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.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_template_VMInt_OAM_lb_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_template_VMInt_OAM_lb_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_VMInt_OAM_lb_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: org.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_template_VMInt_OAM_lb_7:
+ type: org.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_template_VMInt_OAM_lb_8:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..297a958256
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,176 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ shared_test_nova:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_contrail_net:
+ hidden: false
+ immutable: false
+ type: string
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_contrailV2_net:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_input: shared_test_contrailV2_net
+ shared_test_net:
+ get_input: shared_test_net
+ requirements:
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ shared_test_net:
+ get_input: shared_test_contrailV2_net
+ requirements:
+ - link_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ test_contrailV2_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nestedInvalidConnectionToNetwork2:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ shared_test_net:
+ get_input: shared_test_contrail_net
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nestedInvalidConnectionToNetwork1:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ shared_test_net:
+ get_input: shared_test_nova
+ test_contrail_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ base_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_contrailV2_net
+ - test_net
+ - test_contrail_net
+ - test_nova
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_resourceGroup
+ - test_nestedInvalidConnectionToNetwork2
+ - test_nestedInvalidConnectionToNetwork1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0a2759663e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,1021 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: shared_test_net
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: shared_test_net
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input:
+ - p2
+ - 0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ shared_test_net:
+ get_input: shared_test_net
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - template_VMInt_OAM_lb_3
+ - server_cmaui
+ - test_nested2Level
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_3
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level
+ binding_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui
+ binding_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - binding
+ network.incoming.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ network.incoming.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui
+ disk.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested3Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ binding_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_6_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ cpu.delta_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested3Level
+ binding_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_3
+ network.outpoing.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_4
+ cpu_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested3Level
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets
+ network.incoming.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes
+ binding_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_4
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_4
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_3
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.bytes_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_3
+ feature_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_4
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui
+ feature_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_3
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.device.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.bytes.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.bytes.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_4
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.packets.rate
+ disk.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested4Level_test_nested3Level
+ feature_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - feature
+ feature_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - feature
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested3Level
+ feature_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - feature
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ vcpus_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.packets.rate
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_4
+ cpu_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.root.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested3Level
+ memory.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested3Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested3Level
+ instance_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui
+ disk.device.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested4Level_test_nested3Level
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui
+ network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested3Level
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.incoming.bytes_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_6_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outgoing.packets.rate
+ cpu_util_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested3Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outgoing.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outpoing.packets_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.outpoing.packets
+ network.outpoing.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outpoing.packets
+ network.outpoing.packets_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.outpoing.packets
+ disk.device.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_6_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_3
+ network.incoming.packets_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes.rate
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - network.incoming.bytes.rate
+ disk.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - network.incoming.bytes.rate
+ disk.device.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes.rate
+ vcpus_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui
+ memory.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ feature_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_5_test_nested3Level
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_3
+ network.outgoing.bytes_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_3
+ feature_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ feature_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_4
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_4
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested3Level
+ feature_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ disk.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_3
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_template_VMInt_OAM_lb_4
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_3
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level
+ disk.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu.delta_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_4
+ network.outgoing.bytes_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_6_test_nested3Level
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested3Level
+ requirements:
+ dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ dependency_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_4
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_4
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_6_test_nested3Level
+ link_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - link
+ dependency_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_5_test_nested3Level
+ dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level
+ link_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_3
+ link_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - link
+ link_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - link
+ binding_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - binding
+ dependency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui
+ link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_5_test_nested3Level
+ dependency_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - dependency
+ dependency_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - dependency
+ dependency_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_3
+ dependency_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - dependency
+ dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ dependency_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_template_VMInt_OAM_lb_6_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..4e6471a4cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,767 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: shared_test_net
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ shared_test_net:
+ get_input: shared_test_net
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: shared_test_net
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_4:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: shared_test_net
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - test_nested3Level
+ - template_VMInt_OAM_lb_3
+ - template_VMInt_OAM_lb_4
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ feature_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui_test_nested4Level
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_6
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui_test_nested4Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui_test_nested4Level
+ binding_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - binding
+ binding_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - binding
+ network.incoming.bytes_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.bytes
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level
+ feature_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_6
+ memory.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui
+ feature_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_8_test_nested4Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ memory_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_5
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outpoing.packets
+ network.incoming.packets_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_5
+ disk.ephemeral.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui_test_nested4Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets
+ cpu_util_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui
+ network.outgoing.bytes_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outgoing.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.packets
+ binding_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_5
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui
+ memory.resident_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level
+ cpu.delta_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui
+ network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui_test_nested4Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.bytes.rate
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.bytes.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ memory_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui_test_nested4Level
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.device.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_6
+ network.outpoing.packets_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_5
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.root.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_6
+ feature_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_5
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.bytes_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_5
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_7_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui_test_nested4Level
+ disk.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_5
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_5
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.device.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ network.incoming.packets.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.incoming.packets.rate
+ disk.device.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_5
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui_test_nested4Level
+ network.outgoing.bytes_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_6
+ feature_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - feature
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ binding_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_6
+ feature_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - feature
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level
+ disk.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level
+ network.incoming.bytes_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_6
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui_test_nested4Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui_test_nested4Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - network.outgoing.packets.rate
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_5
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - network.outgoing.packets.rate
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui
+ network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_8_test_nested4Level
+ disk.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui_test_nested4Level
+ network.outpoing.packets_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_6
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ instance_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui
+ disk.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui
+ network.incoming.packets_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_6
+ disk.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui_test_nested4Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui_test_nested4Level
+ feature_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - feature_template_VMInt_OAM_lb_6
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level
+ network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui_test_nested4Level
+ requirements:
+ dependency_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_5
+ dependency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui
+ link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_7_test_nested4Level
+ dependency_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_8_test_nested4Level
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_5
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ dependency_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - dependency
+ link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_8_test_nested4Level
+ dependency_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - dependency
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - link
+ dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui_test_nested4Level
+ dependency_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_6
+ link_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - link
+ dependency_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_template_VMInt_OAM_lb_7_test_nested4Level
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ link_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_6
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..67666e3fee
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,556 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ template_VMInt_OAM_lb_5:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ shared_test_net:
+ get_input: shared_test_net
+ template_VMInt_OAM_lb_6:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: shared_test_net
+ - get_input: p2
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - template_VMInt_OAM_lb_5
+ - test_nested4Level
+ - template_VMInt_OAM_lb_6
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ memory_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ instance_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_7
+ disk.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ cpu_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui
+ vcpus_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui
+ binding_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - binding
+ binding_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.bytes_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.bytes
+ network.incoming.packets_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_template_VMInt_OAM_lb_7
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.device.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_8
+ network.incoming.packets_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_template_VMInt_OAM_lb_8
+ network.incoming.bytes_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_8
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outpoing.packets
+ disk.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui
+ network.outgoing.bytes_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outgoing.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outgoing.bytes
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outpoing.packets
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_template_VMInt_OAM_lb_8
+ disk.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ network.outpoing.packets_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_7
+ disk.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outgoing.bytes.rate
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.bytes.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.packets_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_7
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.incoming.packets_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.packets
+ binding_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - binding_template_VMInt_OAM_lb_7
+ feature_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_8
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_7
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_template_VMInt_OAM_lb_8
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ feature_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - feature_template_VMInt_OAM_lb_7
+ network.incoming.packets.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.incoming.packets.rate
+ feature_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - feature
+ network.incoming.packets.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.incoming.packets.rate
+ disk.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - feature
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ cpu.delta_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_template_VMInt_OAM_lb_7
+ memory.resident_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ network.outpoing.packets_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_template_VMInt_OAM_lb_8
+ network.outgoing.bytes_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_template_VMInt_OAM_lb_8
+ disk.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui
+ disk.device.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - network.outgoing.packets.rate
+ feature_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - feature_template_VMInt_OAM_lb_8
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ memory.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.device.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_template_VMInt_OAM_lb_7
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.incoming.bytes_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_template_VMInt_OAM_lb_7
+ binding_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - binding_template_VMInt_OAM_lb_8
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - dependency
+ dependency_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - dependency
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ dependency_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_template_VMInt_OAM_lb_8
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - link_template_VMInt_OAM_lb_8
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui
+ link_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - link
+ dependency_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_template_VMInt_OAM_lb_7
+ link_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - link
+ link_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - link_template_VMInt_OAM_lb_7 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..fbaabc194c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,332 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ template_VMInt_OAM_lb_7:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_8:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: shared_test_net
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - template_VMInt_OAM_lb_7
+ - template_VMInt_OAM_lb_8
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ binding_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - binding
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ binding_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - binding
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.incoming.bytes_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.bytes
+ network.incoming.bytes_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.packets.rate
+ feature_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - feature
+ network.incoming.packets.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.packets.rate
+ feature_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - feature
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outgoing.packets.rate
+ network.outpoing.packets_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outpoing.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.outpoing.packets_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outpoing.packets
+ network.outgoing.bytes_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outgoing.bytes
+ network.outgoing.bytes_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outgoing.bytes
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.outgoing.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.bytes.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.bytes.rate_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.incoming.packets_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - network.incoming.packets
+ network.incoming.packets_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - network.incoming.packets
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - dependency
+ dependency_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - dependency
+ link_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - link
+ link_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - 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/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..2d7942b41a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,37 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "base.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/addOn.yml
new file mode 100644
index 0000000000..bbfd0b9e6f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/addOn.yml
@@ -0,0 +1,44 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ shared_test_net:
+ type: string
+ shared_test_contrailV2_net:
+ type: string
+ shared_test_contrail_net:
+ type: string
+ shared_test_nova:
+ type: string
+
+resources:
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: shared_test_contrailV2_net}
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ shared_test_net: { get_param: shared_test_contrailV2_net }
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNetwork1:
+ type: nested1.yml
+ properties:
+ shared_test_net: { get_param: shared_test_nova}
+
+ test_nestedInvalidConnectionToNetwork2:
+ type: nested1.yml
+ properties:
+ shared_test_net: { get_param: shared_test_contrail_net}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/base.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/base.yml
new file mode 100644
index 0000000000..f14ea1e2c7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/base.yml
@@ -0,0 +1,48 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ type: string
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_contrailV2_net:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_contrail_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+outputs:
+ shared_test_net:
+ value: {get_resource: test_net}
+ shared_test_contrailV2_net:
+ value: { list_join: [':', { get_attr: [ test_contrailV2_net, fq_name ] } ] }
+ shared_test_contrail_net:
+ value: { get_attr: [ test_contrail_net, fq_name ] }
+ shared_test_nova:
+ value: {get_resource: test_nova}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..6fdead1a04
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,86 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_test_net }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: shared_test_net }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: [p2,0]}]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: template_VMInt_OAM_lb_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..c5a9f47c35
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,80 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_test_net }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: shared_test_net }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_3 }
+ - port: { get_resource: template_VMInt_OAM_lb_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: shared_test_net}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..fd9f62f4ec
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,76 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_5:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_6:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_test_net },{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_5 }
+ - port: { get_resource: template_VMInt_OAM_lb_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..fdcbdf0d05
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VMInterfaceToNettworkConnection/sharedNestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,68 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ template_VMInt_OAM_lb_7:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_8:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_test_net }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_7 }
+ - port: { get_resource: template_VMInt_OAM_lb_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..84a2824b76
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,202 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.nested:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ 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/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..e8cb686316
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,95 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nested:
+ type: org.openecomp.resource.abstract.nodes.heat.nested
+ directives:
+ - substitutable
+ properties:
+ p1: test_net
+ service_template_filter:
+ substitute_service_template: nestedServiceTemplate.yaml
+ p2: test_net1
+ requirements:
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_net1
+ - test_net
+ - test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..673fffdaf7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -0,0 +1,319 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ - get_input: p2
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_2
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p1
+ - get_input: p2
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_2
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested.yml
+ description: cmaui server template for vMMSC
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - server_cmaui
+ - template_Vlan_2
+ - template_Vlan_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested
+ capabilities:
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ requirements:
+ link_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - link
+ link_template_Vlan_1:
+ - template_Vlan_1
+ - link
+ link_template_Vlan_2:
+ - template_Vlan_2
+ - 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/services/heattotosca/VlanToNetConnection/nested/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..aca75b5055
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/main.yml
new file mode 100644
index 0000000000..e68f16ec29
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/main.yml
@@ -0,0 +1,27 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+ test_net1:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_nested:
+ type: nested.yml
+ properties:
+ p1: { get_resource: test_net}
+ p2: { get_resource: test_net1}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/nested.yml
new file mode 100644
index 0000000000..b8ec5dd9d3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nested/inputfiles/nested.yml
@@ -0,0 +1,169 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ oam_sec_group_name:
+ type: string
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 }]
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 },{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p1 },{ get_param: p2 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_2 }]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: template_VMInt_OAM_lb_2 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..98c0195c9a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1055 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_4_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_2_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ 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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_VMInt_OAM_lb_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_4_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_3_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_VMInt_OAM_lb_5:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_4_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_VMInt_OAM_lb_7:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_8:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - 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/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..cb4c190ae4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,206 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_net
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_attribute:
+ - test_contrailV2_net
+ - fq_name
+ requirements:
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_4_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_2_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ list_join:
+ - ':'
+ - get_attribute:
+ - test_contrailV2_net
+ - fq_name
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_template_VMInt_OAM_lb_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_4_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_6:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ test_contrailV2_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nestedInvalidConnectionToNetwork2:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_contrail_net
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nestedInvalidConnectionToNetwork1:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_contrail_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_resourceGroup
+ - test_contrailV2_net
+ - test_nestedInvalidConnectionToNetwork2
+ - test_net
+ - test_nestedInvalidConnectionToNetwork1
+ - test_contrail_net
+ - test_nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..ec585edd53
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,381 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: p1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - server_cmaui
+ - template_Vlan_1
+ - test_nested2Level
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ binding_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_4
+ binding_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_5_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ binding_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_6_test_nested3Level
+ binding_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_3
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ requirements:
+ link_template_VMInt_OAM_lb_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_5_test_nested3Level
+ link_template_Vlan_2_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_2
+ link_template_VMInt_OAM_lb_4_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_4
+ link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level
+ link_template_Vlan_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_3_test_nested3Level
+ link_template_VMInt_OAM_lb_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_6_test_nested3Level
+ link_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_3_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_3
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ link_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - link
+ link_template_Vlan_1:
+ - template_Vlan_1
+ - link
+ link_template_Vlan_4_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_4_test_nested4Level_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..e0ac24d1a9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,356 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_4:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: p1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_4
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: p1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_4
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - test_nested3Level
+ - template_VMInt_OAM_lb_3
+ - template_VMInt_OAM_lb_4
+ - server_cmaui
+ - template_Vlan_2
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ binding_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_6
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ binding_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_7_test_nested4Level
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ binding_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_5
+ binding_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_VMInt_OAM_lb_8_test_nested4Level
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ binding_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - binding
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ binding_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - binding
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ requirements:
+ link_template_VMInt_OAM_lb_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_7_test_nested4Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_5_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_5
+ link_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - link
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ link_template_Vlan_2:
+ - template_Vlan_2
+ - link
+ link_template_VMInt_OAM_lb_4:
+ - template_VMInt_OAM_lb_4
+ - link
+ link_template_Vlan_3_test_nested3Level:
+ - test_nested3Level
+ - link_template_Vlan_3
+ link_template_VMInt_OAM_lb_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_8_test_nested4Level
+ link_template_Vlan_4_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_Vlan_4_test_nested4Level
+ link_template_VMInt_OAM_lb_6_test_nested3Level:
+ - test_nested3Level
+ - link_template_VMInt_OAM_lb_6
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..026f5c6933
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,318 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_5:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ template_VMInt_OAM_lb_6:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ - get_input: p2
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ template_Vlan_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_5
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_5
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - template_VMInt_OAM_lb_5
+ - test_nested4Level
+ - template_VMInt_OAM_lb_6
+ - server_cmaui
+ - template_Vlan_3
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ binding_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - binding_template_VMInt_OAM_lb_7
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ binding_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - binding
+ binding_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - binding
+ binding_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - binding_template_VMInt_OAM_lb_8
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ requirements:
+ link_template_VMInt_OAM_lb_8_test_nested4Level:
+ - test_nested4Level
+ - link_template_VMInt_OAM_lb_8
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_5:
+ - template_VMInt_OAM_lb_5
+ - link
+ link_template_Vlan_3:
+ - template_Vlan_3
+ - link
+ link_template_VMInt_OAM_lb_6:
+ - template_VMInt_OAM_lb_6
+ - link
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ link_template_Vlan_4_test_nested4Level:
+ - test_nested4Level
+ - link_template_Vlan_4
+ link_template_VMInt_OAM_lb_7_test_nested4Level:
+ - test_nested4Level
+ - link_template_VMInt_OAM_lb_7 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..ba3c164e3c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_7:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_8:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ template_Vlan_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_8
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_8
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - template_VMInt_OAM_lb_7
+ - template_VMInt_OAM_lb_8
+ - server_cmaui
+ - template_Vlan_4
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ binding_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - binding
+ binding_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - binding
+ requirements:
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_7:
+ - template_VMInt_OAM_lb_7
+ - link
+ link_template_Vlan_4:
+ - template_Vlan_4
+ - link
+ link_template_VMInt_OAM_lb_8:
+ - template_VMInt_OAM_lb_8
+ - 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/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..c7d4122f3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,32 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/main.yml
new file mode 100644
index 0000000000..0d9c6569f6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/main.yml
@@ -0,0 +1,63 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_contrailV2_net:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_contrail_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_net}
+ p2: { get_attr: [ test_contrailV2_net, fq_name ] }
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { list_join: [':', { get_attr: [ test_contrailV2_net, fq_name ] } ] }
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNetwork1:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_nova}
+
+ test_nestedInvalidConnectionToNetwork2:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_contrail_net} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..42d268a681
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,133 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 }]
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: template_VMInt_OAM_lb_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..272d074db8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,138 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: p1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_4 }]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_3 }
+ - port: { get_resource: template_VMInt_OAM_lb_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..ee7c6c746c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,134 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+
+ template_VMInt_OAM_lb_5:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_5 }]
+
+ template_VMInt_OAM_lb_6:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 },{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_5 }
+ - port: { get_resource: template_VMInt_OAM_lb_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..264cbd16d2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/nestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,126 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+
+ template_VMInt_OAM_lb_7:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_8:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_8 }]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_7 }
+ - port: { get_resource: template_VMInt_OAM_lb_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..704468d325
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,427 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ abc_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ abc_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ security_group_name:
+ description: not impotrtant
+ required: true
+ status: SUPPORTED
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_network_id1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ abc_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ abc_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_abc:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_abc_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_abc:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_abc_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_abc:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_abc:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_abc:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_abc_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_abc:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_template_VMInt_OAM_lb_3:
+ 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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ description: not impotrtant
+ required: true
+ status: SUPPORTED
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ abc_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_template_Vlan_3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ 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/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c26430b3aa
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,186 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ shared_network_id1:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ shared_network_id2:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_net2:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nested2:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: shared_network_id1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ requirements:
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_3:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ test_nested3:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ shared_network_id1:
+ get_input: shared_network_id1
+ p2:
+ get_input: shared_network_id2
+ requirements:
+ - link_abc_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_3:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ test_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nested1:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ shared_network_id1:
+ get_input: shared_network_id1
+ p2:
+ get_input: shared_network_id2
+ requirements:
+ - link_abc_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_VMInt_OAM_lb_3:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_3:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_net2
+ - test_net1
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested2
+ - test_nested3
+ - test_nested1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..ecc816a2a1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,471 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.abc:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ abc_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ abc_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ description: not impotrtant
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ shared_network_id1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ abc_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ abc_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ node_templates:
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: shared_network_id1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: shared_network_id1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ server_abc:
+ type: org.openecomp.resource.vfc.nodes.heat.abc
+ properties:
+ flavor:
+ get_input: abc_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: abc_image
+ name:
+ get_input:
+ - abc_names
+ - 0
+ template_Vlan_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_3
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p2
+ - get_input: shared_network_id1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_3
+ relationship: tosca.relationships.network.BindsTo
+ abc_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - abc_oam_ips
+ - 0
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_abc
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_2
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p2
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_2
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: shared_network_id1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: cmaui server template for vMMSC
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - template_VMInt_OAM_lb_3
+ - server_cmaui
+ - server_abc
+ - template_Vlan_3
+ - abc_port_1
+ - template_Vlan_2
+ - template_Vlan_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ scalable_server_abc:
+ - server_abc
+ - scalable
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ binding_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - binding
+ binding_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - binding
+ attachment_abc_port_1:
+ - abc_port_1
+ - attachment
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ host_server_abc:
+ - server_abc
+ - host
+ os_server_abc:
+ - server_abc
+ - os
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ binding_server_abc:
+ - server_abc
+ - binding
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ binding_abc_port_1:
+ - abc_port_1
+ - binding
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ endpoint_server_abc:
+ - server_abc
+ - endpoint
+ binding_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - binding
+ requirements:
+ link_template_VMInt_OAM_lb_1:
+ - template_VMInt_OAM_lb_1
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_template_VMInt_OAM_lb_3:
+ - template_VMInt_OAM_lb_3
+ - link
+ link_template_VMInt_OAM_lb_2:
+ - template_VMInt_OAM_lb_2
+ - link
+ link_template_Vlan_1:
+ - template_Vlan_1
+ - link
+ link_template_Vlan_2:
+ - template_Vlan_2
+ - link
+ link_template_Vlan_3:
+ - template_Vlan_3
+ - link
+ link_abc_port_1:
+ - abc_port_1
+ - link
+ local_storage_server_abc:
+ - server_abc
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
index 242feead83..e4c9eac43b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -1,35 +1,41 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: nested
+ template_name: nested2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
- file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
+- ContrailAbstractSubstituteGlobalTypes:
file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -42,101 +48,68 @@ topology_template:
description: CMAUI1, CMAUI2 server names
entry_schema:
type: string
- cmaui_cinder_volume_size:
- label: CMAUI Cinder volume size
+ p1:
hidden: false
immutable: false
- type: float
- description: the size of the CMAUI Cinder volume
- timezone:
- label: timezone
+ type: string
+ description: UID of OAM network
+ virtual_ip_address:
hidden: false
immutable: false
type: string
- description: timezone
security_group_name:
- label: security group name
hidden: false
immutable: false
- type: string
- description: the name of security group
- cmaui_volume:
- label: CMAUI volume size
+ description: not impotrtant
+ vlan_ids:
hidden: false
immutable: false
type: string
- description: Volume for CMAUI server
- oam_network_netmask:
- label: oam network netmask
- hidden: false
- immutable: false
- type: string
- description: oam network gateway
cmaui_image:
hidden: false
immutable: false
type: string
description: Image for CMAUI server
- vnf_id:
+ virtual_ipv6_address:
hidden: false
immutable: false
type: string
- description: Unique ID for this VNF instance
- default: This_is_ths_MMSC-CMAUI_id
cmaui_flavor:
hidden: false
immutable: false
type: string
description: Flavor for CMAUI server
- oam_network_gateway:
- label: oam network gateway
+ lb_st_vlan_type_oam:
hidden: false
immutable: false
type: string
- description: oam network gateway
- out_cmaui_volume:
- label: CMAUI vm volume type
+ description: dummy
+ mac_address:
hidden: false
immutable: false
type: string
- description: the name of the target volume backend
availability_zone_0:
label: availabilityzone name
hidden: false
immutable: false
type: string
description: availabilityzone name
- cmaui_oam_ips:
- label: CMAUI oam_net IP addresses
- hidden: false
- immutable: false
- type: list
- description: CMAUI oam_net IP addresses
- entry_schema:
- type: string
- external_dns:
- label: dns server
+ abc_oam_ips:
hidden: false
immutable: false
type: string
- description: dns server
- oam_net_name:
+ subinterface_name_prefix:
hidden: false
immutable: false
type: string
- description: UID of OAM network
- external_ntp:
- label: ntp server
+ subinterface_instance_index:
hidden: false
immutable: false
- type: string
- description: ntp server
- CMAUI_volume_type:
- label: CMAUI vm volume type
+ type: float
+ cmaui_oam_ips:
hidden: false
immutable: false
type: string
- description: the name of the target volume backend
node_templates:
server_cmaui:
type: org.openecomp.resource.vfc.nodes.heat.cmaui
@@ -147,26 +120,55 @@ topology_template:
get_input: availability_zone_0
image:
get_input: cmaui_image
- metadata:
- vnf_id:
- get_input: vnf_id
- user_data_format: RAW
name:
get_input:
- cmaui_names
- 0
- requirements:
- - local_storage:
- capability: tosca.capabilities.Attachment
- node: cmaui_volume
- relationship: cmaui_volume_attachment
- cmaui_volume:
- type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ template_Vlan_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
properties:
- volume_type:
- get_input: CMAUI_volume_type
- size: '(get_input : cmaui_cinder_volume_size) * 1024'
- cmaui_port_0:
+ virtual_machine_interface_refs:
+ - cmaui_port_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: p1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: cmaui_port_1
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_1:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
@@ -178,39 +180,24 @@ topology_template:
- cmaui_oam_ips
- 0
network:
- get_input: oam_net_name
+ get_input: p1
requirements:
- binding:
capability: tosca.capabilities.network.Bindable
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
- relationship_templates:
- cmaui_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
- properties:
- volume_id: cmaui_volume
- instance_uuid: server_cmaui
groups:
- a_vol:
+ nested2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/a_vol.yml
- description: volume
- members:
- - cmaui_volume
- nested:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/nested.yml
+ heat_file: ../Artifacts/nested2.yml
description: cmaui server template for vMMSC
members:
- server_cmaui
- - cmaui_port_0
- outputs:
- out_cmaui_volume:
- value: cmaui_volume
+ - template_Vlan_3
+ - cmaui_port_1
substitution_mappings:
- node_type: org.openecomp.resource.abstract.nodes.heat.nested
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
capabilities:
host_server_cmaui:
- server_cmaui
@@ -218,6 +205,9 @@ topology_template:
os_server_cmaui:
- server_cmaui
- os
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
endpoint_server_cmaui:
- server_cmaui
- endpoint
@@ -227,16 +217,16 @@ topology_template:
scalable_server_cmaui:
- server_cmaui
- scalable
- attachment_cmaui_volume:
- - cmaui_volume
- - attachment
- attachment_cmaui_port_0:
- - cmaui_port_0
+ attachment_cmaui_port_1:
+ - cmaui_port_1
- attachment
requirements:
local_storage_server_cmaui:
- server_cmaui
- local_storage
- link_cmaui_port_0:
- - cmaui_port_0
+ link_template_Vlan_3:
+ - template_Vlan_3
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
- 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/services/heattotosca/VlanToNetConnection/shared/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..e593097c44
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/MANIFEST.json
@@ -0,0 +1,27 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/addOn.yml
new file mode 100644
index 0000000000..507bfcaa08
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/addOn.yml
@@ -0,0 +1,32 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ shared_network_id1:
+ type: string
+ description: network name of jsa log network
+
+ shared_network_id2:
+ type: string
+ description: network name of jsa log network
+
+resources:
+
+ test_nested1:
+ type: nested1.yml
+ properties:
+ shared_network_id1: { get_param: shared_network_id1}
+ p2: { get_param: shared_network_id2}
+
+ test_nested2:
+ type: nested2.yml
+ properties:
+ p1: { get_param: shared_network_id1}
+
+ test_nested3:
+ type: nested1.yml
+ properties:
+ shared_network_id1: { get_param: shared_network_id1}
+ p2: { get_param: shared_network_id2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/main.yml
new file mode 100644
index 0000000000..9601c0f86d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/main.yml
@@ -0,0 +1,29 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net1:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_net2:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+outputs:
+ shared_network_id1:
+ value: {get_resource: test_net1}
+
+ shared_network_id2:
+ value: {get_resource: test_net2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested1.yml
new file mode 100644
index 0000000000..6687a32f2a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested1.yml
@@ -0,0 +1,254 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ shared_network_id1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ abc_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ security_group_name:
+ type: not_important
+ description: not impotrtant
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ abc_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ abc_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ abc_oam_ips:
+ type: string
+ oam_sec_group_name:
+ type: string
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_network_id1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: shared_network_id1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 }]
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p2 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_2 }]
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: shared_network_id1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p2 },{ get_param: shared_network_id1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_3 }]
+
+ abc_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [abc_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: template_VMInt_OAM_lb_2 }
+ - port: { get_resource: template_VMInt_OAM_lb_3 }
+
+ server_abc:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [abc_names, 0]}
+ image: { get_param: abc_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: abc_flavor }
+ networks:
+ - port: { get_resource: abc_port_1 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested2.yml
new file mode 100644
index 0000000000..0381298528
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/shared/inputfiles/nested2.yml
@@ -0,0 +1,105 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ security_group_name:
+ type: not_important
+ description: not impotrtant
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ abc_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ template_Vlan_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: p1 }]
+ virtual_machine_interface_refs: [{ get_resource: cmaui_port_1 }]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ab9cc09215
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,393 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ shared_network_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ shared_network_id1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ shared_network_id2:
+ hidden: false
+ immutable: false
+ type: list
+ description: Flavor for CMAUI server
+ entry_schema:
+ type: string
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: shared_network_id
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input: shared_network_id
+ - get_input: shared_network_id1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_input:
+ - shared_network_id2
+ - 0
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ test_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ template_Vlan_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input:
+ - shared_network_id2
+ - 0
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: shared_network_id
+ - get_input: shared_network_id1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: shared_network_id
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_net1
+ - test_net
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: cmaui server template for vMMSC
+ members:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - template_VMInt_OAM_lb_3
+ - server_cmaui
+ - template_Vlan_3
+ - template_Vlan_2
+ - template_Vlan_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/MANIFEST.json
index 1f762d0ccc..1f762d0ccc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/addOn.yml
new file mode 100644
index 0000000000..41c8f74ff3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/addOn.yml
@@ -0,0 +1,230 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ shared_network_id:
+ type: string
+ description: Flavor for CMAUI server
+ shared_network_id1:
+ type: string
+ description: Flavor for CMAUI server
+ shared_network_id2:
+ type: comma_delimited_list
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ oam_sec_group_name:
+ type: string
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+
+resources:
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_network_id }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: shared_network_id }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 }]
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: shared_network_id }, { get_param: shared_network_id1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: shared_network_id }, { get_param: shared_network_id1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 }]
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_param: [ shared_network_id2, 0] }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: [ shared_network_id2, 0] }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 }]
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: template_VMInt_OAM_lb_2 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/main.yml
new file mode 100644
index 0000000000..3bd60fc93e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/VlanToNetConnection/sharedAddOn/inputfiles/main.yml
@@ -0,0 +1,28 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_net1:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+outputs:
+ shared_network_id:
+ value: {get_resource: test_net}
+ shared_network_id1:
+ value: {get_resource: test_net1} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles/MainServiceTemplate.yaml
index 983a71f3b7..3e001149b5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -137,11 +113,6 @@ topology_template:
get_input:
- cmaui_names
- 0
- requirements:
- - dependency:
- capability: tosca.capabilities.Node
- node: cmaui_volume
- relationship: tosca.relationships.DependsOn
server_cmaui:
type: org.openecomp.resource.vfc.nodes.heat.cmaui
properties:
@@ -160,14 +131,6 @@ topology_template:
- cmaui_names
- 0
requirements:
- - dependency:
- capability: tosca.capabilities.Node
- node: cmaui_volume
- relationship: tosca.relationships.DependsOn
- - dependency:
- capability: tosca.capabilities.Node
- node: cmaui_port_0
- relationship: tosca.relationships.DependsOn
- local_storage:
capability: tosca.capabilities.Attachment
node: cmaui_volume
@@ -182,6 +145,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -189,6 +158,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -198,12 +171,12 @@ topology_template:
relationship: tosca.relationships.network.BindsTo
relationship_templates:
cmaui_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: cmaui_volume
instance_uuid: server_cmaui
groups:
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/inputfiles/hot_template.yml
index a3e343b033..fcae3c73dc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/baseResourceTranslation/inputfiles/hot_template.yml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
#################################
#
# Changes from MSO 01/26/2016
-# Updated per ECOMP feedback
+# Updated per OPENECOMP feedback
#
#################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..bbefd39756
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,185 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of tenant to be used
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ base_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The base ID or name of the image to boot with
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_internal_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The servers domain
+ packet_mirror_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ packet_internal_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ packet_mirror_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ packet_internal_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of region to be used
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Name for Manager VM 0
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the manager
+ packet_mirror_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the repository
+ node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ cdr_network_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
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_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
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - packet_mirror_network
+ - QRouter
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/inputfiles/MANIFEST.json
index b2916ccf9c..b2916ccf9c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/inputfiles/hot_template.yml
new file mode 100644
index 0000000000..fcae3c73dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/invalidDependencyCandidate/inputfiles/hot_template.yml
@@ -0,0 +1,131 @@
+heat_template_version: 2013-05-23
+
+#################################
+#
+# Changes from MSO 01/26/2016
+# Updated per OPENECOMP feedback
+#
+#################################
+
+description: cmaui server template for vMMSC
+
+parameters:
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_MMSC-CMAUI_id
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_cinder_volume_size:
+ type: number
+ label: CMAUI Cinder volume size
+ description: the size of the CMAUI Cinder volume
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ description: UID of OAM network
+ oam_network_netmask:
+ type: string
+ label: oam network netmask
+ description: oam network gateway
+ oam_network_gateway:
+ type: string
+ label: oam network gateway
+ description: oam network gateway
+ external_dns:
+ type: string
+ label: dns server
+ description: dns server
+ external_ntp:
+ type: string
+ label: ntp server
+ description: ntp server
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ timezone:
+ type: string
+ label: timezone
+ description: timezone
+ cmaui_oam_ips:
+ type: comma_delimited_list
+ label: CMAUI oam_net IP addresses
+ description: CMAUI oam_net IP addresses
+ CMAUI_volume_type:
+ type: string
+ label: CMAUI vm volume type
+ description: the name of the target volume backend
+
+resources:
+
+ cmaui_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_volume:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: cmaui_cinder_volume_size}
+ volume_type: {get_param: CMAUI_volume_type}
+
+ cmaui_volume_attachment:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_resource: cmaui_volume}
+ instance_uuid: {get_resource: server_cmaui}
+
+ server_cmaui:
+ type: OS::Nova::Server
+ depends_on: [ cmaui_volume,cmaui_port_0]
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_0 }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ user_data:
+ str_replace:
+ template: |
+ cmaui.mgmt.ip=${cmaui.mgmt.ip}
+ cmaui.mgmt.netmask=${cmaui.mgmt.netmask}
+ cmaui.mgmt.gateway=${cmaui.mgmt.gateway}
+ cmaui.external.dns=${cmaui.external.dns}
+ cmaui.external.ntp=${cmaui.external.ntp}
+ cmaui.node=${cmaui.node}
+ cmaui.timezone=${cmaui.timezone}
+ params:
+ ${cmaui.mgmt.ip}: {get_param: [cmaui_oam_ips, 0]}
+ ${cmaui.mgmt.netmask}: {get_param: oam_network_netmask}
+ ${cmaui.mgmt.gateway}: {get_param: oam_network_gateway}
+ ${cmaui.external.dns}: {get_param: external_dns}
+ ${cmaui.external.ntp}: {get_param: external_ntp}
+ ${cmaui.node}: {get_param: [cmaui_names, 0]}
+ ${cmaui.timezone}: {get_param: timezone}
+ user_data_format: RAW
+
+ server_dependOnString:
+ type: OS::Nova::Server
+ depends_on: cmaui_volume
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..6ac9fbc822
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,219 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.Compute_Node_2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of tenant to be used
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ base_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The base ID or name of the image to boot with
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_internal_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The servers domain
+ packet_mirror_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ packet_internal_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ packet_mirror_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ packet_internal_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of region to be used
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Name for Manager VM 0
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the manager
+ packet_mirror_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the repository
+ node_templates:
+ Compute_Node_2:
+ type: org.openecomp.resource.vfc.nodes.heat.Compute_Node_2
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: Compute_Node_2-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_internal_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: QRouter
+ relationship: tosca.relationships.DependsOn
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ cdr_network_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
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: Compute_Node_2
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_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
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: Compute_Node_2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - Compute_Node_2
+ - QRouter
+ - packet_mirror_network
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..cba4436f7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "test",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "file": "input.yaml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/input.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/input.yaml
new file mode 100644
index 0000000000..a165fe17a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/multiplecompute/inputfiles/input.yaml
@@ -0,0 +1,120 @@
+heat_template_version: '2014-10-16'
+
+parameters:
+ base_image_name:
+ description: The base ID or name of the image to boot with
+ type: string
+ cdr_network:
+ description: A string specifying a symbolic name for the network
+ type: string
+ domain_name:
+ description: The servers domain
+ type: string
+ manager_name_0:
+ description: VM Name for Manager VM 0
+ type: string
+ manager_oam_direct_ip_0:
+ description: The public ip address of the manager
+ type: string
+ oam_private_net_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_internal_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_internal_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_internal_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ packet_mirror_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_mirror_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_mirror_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ availability_zone_0:
+ description: Name of the availability zone for server placement
+ type: string
+ region_name:
+ description: Name of region to be used
+ type: string
+ rpmrepository_ip_0:
+ description: The public ip address of the repository
+ type: string
+ tenant_name:
+ description: Name of tenant to be used
+ type: string
+ availability_zone_1:
+ description: Name of the availability zone for server placement
+ type: string
+resources:
+ packet_internal_network:
+ properties:
+ name:
+ get_param: packet_internal_network_name
+ type: OS::Neutron::Net
+ QRouter:
+ depends_on:
+ - packet_internal_network
+ properties:
+ availability_zone: Availability-test
+ config_drive: true
+ flavor: FLAVOR-test
+ image: Image-test
+ name: QRouter-name
+ networks:
+ - port:
+ get_resource: oam_private_net_network_port
+ - port:
+ get_resource: cdr_network_port
+ type: OS::Nova::Server
+ packet_mirror_network:
+ depends_on:
+ - QRouter
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ type: OS::Neutron::Net
+ Compute_Node_2:
+ depends_on:
+ - packet_mirror_network
+ properties:
+ availability_zone: Availability-test
+ config_drive: true
+ flavor: FLAVOR-test
+ image: Image-test
+ name: Compute_Node_2-name
+ networks:
+ - port:
+ get_resource: oam_private_net_network_port
+ - port:
+ get_resource: cdr_network_port
+ type: OS::Nova::Server
+ cdr_network_port:
+ properties:
+ network:
+ get_param: cdr_network
+ type: OS::Neutron::Port
+ oam_private_net_network_port:
+ properties:
+ network:
+ get_param: oam_private_net_name
+ type: OS::Neutron::Port
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..bbefd39756
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,185 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of tenant to be used
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ base_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The base ID or name of the image to boot with
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_internal_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The servers domain
+ packet_mirror_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ packet_internal_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ packet_mirror_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ packet_internal_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of region to be used
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Name for Manager VM 0
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the manager
+ packet_mirror_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the repository
+ node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ cdr_network_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
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_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
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - packet_mirror_network
+ - QRouter
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..cba4436f7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "test",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "file": "input.yaml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/input.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/input.yaml
new file mode 100644
index 0000000000..04e2c58272
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/noDependency/inputfiles/input.yaml
@@ -0,0 +1,101 @@
+heat_template_version: '2014-10-16'
+
+parameters:
+ base_image_name:
+ description: The base ID or name of the image to boot with
+ type: string
+ cdr_network:
+ description: A string specifying a symbolic name for the network
+ type: string
+ domain_name:
+ description: The servers domain
+ type: string
+ manager_name_0:
+ description: VM Name for Manager VM 0
+ type: string
+ manager_oam_direct_ip_0:
+ description: The public ip address of the manager
+ type: string
+ oam_private_net_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_internal_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_internal_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_internal_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ packet_mirror_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_mirror_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_mirror_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ availability_zone_0:
+ description: Name of the availability zone for server placement
+ type: string
+ region_name:
+ description: Name of region to be used
+ type: string
+ rpmrepository_ip_0:
+ description: The public ip address of the repository
+ type: string
+ tenant_name:
+ description: Name of tenant to be used
+ type: string
+ availability_zone_1:
+ description: Name of the availability zone for server placement
+ type: string
+resources:
+ packet_internal_network:
+ properties:
+ name:
+ get_param: packet_internal_network_name
+ type: OS::Neutron::Net
+ packet_mirror_network:
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ type: OS::Neutron::Net
+ QRouter:
+ properties:
+ availability_zone: Availability-test
+ config_drive: true
+ flavor: FLAVOR-test
+ image: Image-test
+ name: QRouter-name
+ networks:
+ - port:
+ get_resource: oam_private_net_network_port
+ - port:
+ get_resource: cdr_network_port
+ type: OS::Nova::Server
+ cdr_network_port:
+ properties:
+ network:
+ get_param: cdr_network
+ type: OS::Neutron::Port
+ oam_private_net_network_port:
+ properties:
+ network:
+ get_param: oam_private_net_name
+ type: OS::Neutron::Port
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..11e0c062c6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,131 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ node_templates:
+ pd01_port_0:
+ 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
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pd_01
+ relationship: tosca.relationships.network.BindsTo
+ resources_with_dependOn:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pd_01
+ relationship: tosca.relationships.DependsOn
+ pd02_port_0:
+ 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
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pd_01
+ relationship: tosca.relationships.network.BindsTo
+ server_pd_01:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ flavor:
+ get_input: pd_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pd_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - pd_server_names
+ - 0
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ description: heat template that creates MOG stack
+ members:
+ - pd01_port_0
+ - resources_with_dependOn
+ - pd02_port_0
+ - server_pd_01 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..cba4436f7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "test",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "file": "input.yaml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/input.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/input.yaml
new file mode 100644
index 0000000000..ba39a40d22
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedIn/inputfiles/input.yaml
@@ -0,0 +1,65 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the oam network
+
+resources:
+
+ resources_with_dependOn:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pd_01
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..38fd7be3d8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,195 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of tenant to be used
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ base_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The base ID or name of the image to boot with
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_internal_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The servers domain
+ packet_mirror_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ packet_internal_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ packet_mirror_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ packet_internal_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of region to be used
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Name for Manager VM 0
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the manager
+ packet_mirror_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the repository
+ node_templates:
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_internal_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: QRouter
+ relationship: tosca.relationships.DependsOn
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ cdr_network_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
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_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
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - QRouter
+ - packet_mirror_network
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..cba4436f7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "test",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "file": "input.yaml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/input.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/input.yaml
new file mode 100644
index 0000000000..1897af57f9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedInOut/inputfiles/input.yaml
@@ -0,0 +1,105 @@
+heat_template_version: '2014-10-16'
+
+parameters:
+ base_image_name:
+ description: The base ID or name of the image to boot with
+ type: string
+ cdr_network:
+ description: A string specifying a symbolic name for the network
+ type: string
+ domain_name:
+ description: The servers domain
+ type: string
+ manager_name_0:
+ description: VM Name for Manager VM 0
+ type: string
+ manager_oam_direct_ip_0:
+ description: The public ip address of the manager
+ type: string
+ oam_private_net_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_internal_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_internal_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_internal_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ packet_mirror_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_mirror_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_mirror_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ availability_zone_0:
+ description: Name of the availability zone for server placement
+ type: string
+ region_name:
+ description: Name of region to be used
+ type: string
+ rpmrepository_ip_0:
+ description: The public ip address of the repository
+ type: string
+ tenant_name:
+ description: Name of tenant to be used
+ type: string
+ availability_zone_1:
+ description: Name of the availability zone for server placement
+ type: string
+resources:
+ packet_internal_network:
+ properties:
+ name:
+ get_param: packet_internal_network_name
+ type: OS::Neutron::Net
+ QRouter:
+ depends_on:
+ - packet_internal_network
+ properties:
+ availability_zone: Availability-test
+ config_drive: true
+ flavor: FLAVOR-test
+ image: Image-test
+ name: QRouter-name
+ networks:
+ - port:
+ get_resource: oam_private_net_network_port
+ - port:
+ get_resource: cdr_network_port
+ type: OS::Nova::Server
+ packet_mirror_network:
+ depends_on:
+ - QRouter
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ type: OS::Neutron::Net
+ cdr_network_port:
+ properties:
+ network:
+ get_param: cdr_network
+ type: OS::Neutron::Port
+ oam_private_net_network_port:
+ properties:
+ network:
+ get_param: oam_private_net_name
+ type: OS::Neutron::Port
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..248998d69e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,194 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of tenant to be used
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ base_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The base ID or name of the image to boot with
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_internal_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The servers domain
+ packet_mirror_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ packet_internal_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ packet_mirror_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ packet_internal_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of region to be used
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Name for Manager VM 0
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the manager
+ packet_mirror_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the repository
+ node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_internal_network
+ relationship: tosca.relationships.DependsOn
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ cdr_network_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
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_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
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - packet_mirror_network
+ - QRouter
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..cba4436f7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "test",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "file": "input.yaml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/input.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/input.yaml
new file mode 100644
index 0000000000..8fabc33f13
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/nodesConnectedOut/inputfiles/input.yaml
@@ -0,0 +1,104 @@
+heat_template_version: '2014-10-16'
+
+parameters:
+ base_image_name:
+ description: The base ID or name of the image to boot with
+ type: string
+ cdr_network:
+ description: A string specifying a symbolic name for the network
+ type: string
+ domain_name:
+ description: The servers domain
+ type: string
+ manager_name_0:
+ description: VM Name for Manager VM 0
+ type: string
+ manager_oam_direct_ip_0:
+ description: The public ip address of the manager
+ type: string
+ oam_private_net_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_internal_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_internal_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_internal_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ packet_mirror_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_mirror_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_mirror_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ availability_zone_0:
+ description: Name of the availability zone for server placement
+ type: string
+ region_name:
+ description: Name of region to be used
+ type: string
+ rpmrepository_ip_0:
+ description: The public ip address of the repository
+ type: string
+ tenant_name:
+ description: Name of tenant to be used
+ type: string
+ availability_zone_1:
+ description: Name of the availability zone for server placement
+ type: string
+resources:
+ packet_internal_network:
+ properties:
+ name:
+ get_param: packet_internal_network_name
+ type: OS::Neutron::Net
+ packet_mirror_network:
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ type: OS::Neutron::Net
+ QRouter:
+ depends_on:
+ - packet_mirror_network
+ - packet_internal_network
+ properties:
+ availability_zone: Availability-test
+ config_drive: true
+ flavor: FLAVOR-test
+ image: Image-test
+ name: QRouter-name
+ networks:
+ - port:
+ get_resource: oam_private_net_network_port
+ - port:
+ get_resource: cdr_network_port
+ type: OS::Nova::Server
+ cdr_network_port:
+ properties:
+ network:
+ get_param: cdr_network
+ type: OS::Neutron::Port
+ oam_private_net_network_port:
+ properties:
+ network:
+ get_param: oam_private_net_name
+ type: OS::Neutron::Port
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..54c47ee20f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,127 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.MASTER:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ MASTER_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: JSA MASTER instance image name
+ MASTER_names:
+ hidden: false
+ immutable: false
+ type: string
+ description: JSA MASTER instance name
+ packet_internal_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: security group name of JSA
+ MASTER_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: the flavor name of JSA MASTER instance
+ oam_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of OAM network
+ node_templates:
+ MASTER_instance_2:
+ type: org.openecomp.resource.vfc.nodes.heat.MASTER
+ properties:
+ flavor:
+ get_input: MASTER_flavor_name
+ image:
+ get_input: MASTER_image_name
+ name:
+ get_input: MASTER_names
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: MASTER_mgmt_port
+ relationship: tosca.relationships.DependsOn
+ MASTER_mgmt_port_2:
+ 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
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ MASTER_mgmt_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
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: MASTER_instance
+ relationship: tosca.relationships.network.BindsTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: MASTER_instance_2
+ relationship: tosca.relationships.network.BindsTo
+ MASTER_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.MASTER
+ properties:
+ flavor:
+ get_input: MASTER_flavor_name
+ image:
+ get_input: MASTER_image_name
+ name:
+ get_input: MASTER_names
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_internal_network
+ relationship: tosca.relationships.DependsOn
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ description: |
+ Version 2.0 02-11-2016 (Authors: John Doe, user PROD)
+ members:
+ - MASTER_instance_2
+ - packet_internal_network
+ - MASTER_mgmt_port_2
+ - MASTER_mgmt_port
+ - MASTER_instance \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..cba4436f7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "test",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "file": "input.yaml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/input.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/input.yaml
new file mode 100644
index 0000000000..883514d49b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/removeInvalidDependencyFromTosca/inputfiles/input.yaml
@@ -0,0 +1,69 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-11-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ oam_net_name:
+ type: string
+ description: network name of OAM network
+ security_group_name:
+ type: string
+ description: security group name of JSA
+ MASTER_names:
+ type: string
+ description: JSA MASTER instance name
+ MASTER_image_name:
+ type: string
+ description: JSA MASTER instance image name
+ MASTER_flavor_name:
+ type: string
+ description: the flavor name of JSA MASTER instance
+ packet_internal_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+
+resources:
+ MASTER_instance:
+ type: OS::Nova::Server
+ depends_on:
+ - MASTER_mgmt_port
+ - packet_internal_network
+ properties:
+ name: {get_param: MASTER_names}
+ image: {get_param: MASTER_image_name}
+ flavor: {get_param: MASTER_flavor_name}
+ networks:
+ - port: {get_resource: MASTER_mgmt_port}
+
+ MASTER_instance_2:
+ type: OS::Nova::Server
+ depends_on:
+ - MASTER_instance
+ properties:
+ name: {get_param: MASTER_names}
+ image: {get_param: MASTER_image_name}
+ flavor: {get_param: MASTER_flavor_name}
+ networks:
+ - port: {get_resource: MASTER_mgmt_port}
+
+ MASTER_mgmt_port:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ MASTER_mgmt_port_2:
+ type: OS::Neutron::Port
+ depends_on:
+ - MASTER_mgmt_port
+ - MASTER_instance
+ properties:
+ network: {get_param: oam_net_name}
+
+ packet_internal_network:
+ depends_on:
+ - MASTER_mgmt_port
+ properties:
+ name:
+ get_param: packet_internal_network_name
+ type: OS::Neutron::Net \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a57daa2f56
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,194 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of tenant to be used
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ base_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The base ID or name of the image to boot with
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_internal_network_subnet_alloc_start:
+ hidden: false
+ immutable: false
+ type: string
+ description: Start address for the allocation pool
+ packet_internal_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The servers domain
+ packet_mirror_network_subnet_alloc_end:
+ hidden: false
+ immutable: false
+ type: string
+ description: End address for the allocation pool
+ packet_internal_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ packet_mirror_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ packet_internal_network_subnet_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: The Classless Inter-Domain Routing
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of region to be used
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for server placement
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Name for Manager VM 0
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the manager
+ packet_mirror_network_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: The name of the subnet
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: The public ip address of the repository
+ node_templates:
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_internal_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ cdr_network_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
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_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
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - QRouter
+ - packet_mirror_network
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..cba4436f7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "test",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "file": "input.yaml",
+ "type": "HEAT",
+ "isBase": "true"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/input.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/input.yaml
new file mode 100644
index 0000000000..91e94c91c0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/dependsonresource/translationorderinvariance/inputfiles/input.yaml
@@ -0,0 +1,104 @@
+heat_template_version: '2014-10-16'
+
+parameters:
+ base_image_name:
+ description: The base ID or name of the image to boot with
+ type: string
+ cdr_network:
+ description: A string specifying a symbolic name for the network
+ type: string
+ domain_name:
+ description: The servers domain
+ type: string
+ manager_name_0:
+ description: VM Name for Manager VM 0
+ type: string
+ manager_oam_direct_ip_0:
+ description: The public ip address of the manager
+ type: string
+ oam_private_net_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_internal_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_internal_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_internal_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_internal_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ packet_mirror_network_name:
+ description: A string specifying a symbolic name for the network
+ type: string
+ packet_mirror_network_subnet_alloc_end:
+ description: End address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_alloc_start:
+ description: Start address for the allocation pool
+ type: string
+ packet_mirror_network_subnet_cidr:
+ description: The Classless Inter-Domain Routing
+ type: string
+ packet_mirror_network_subnet_name:
+ description: The name of the subnet
+ type: string
+ availability_zone_0:
+ description: Name of the availability zone for server placement
+ type: string
+ region_name:
+ description: Name of region to be used
+ type: string
+ rpmrepository_ip_0:
+ description: The public ip address of the repository
+ type: string
+ tenant_name:
+ description: Name of tenant to be used
+ type: string
+ availability_zone_1:
+ description: Name of the availability zone for server placement
+ type: string
+resources:
+ QRouter:
+ depends_on:
+ - packet_mirror_network
+ - packet_internal_network
+ properties:
+ availability_zone: Availability-test
+ config_drive: true
+ flavor: FLAVOR-test
+ image: Image-test
+ name: QRouter-name
+ networks:
+ - port:
+ get_resource: oam_private_net_network_port
+ - port:
+ get_resource: cdr_network_port
+ type: OS::Nova::Server
+ packet_internal_network:
+ properties:
+ name:
+ get_param: packet_internal_network_name
+ type: OS::Neutron::Net
+ packet_mirror_network:
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ type: OS::Neutron::Net
+ cdr_network_port:
+ properties:
+ network:
+ get_param: cdr_network
+ type: OS::Neutron::Port
+ oam_private_net_network_port:
+ properties:
+ network:
+ get_param: oam_private_net_name
+ type: OS::Neutron::Port
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9699fe0770
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,494 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..f0fffa18ed
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/expectedoutputfiles/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/MANIFEST.json
new file mode 100644
index 0000000000..609c38b28e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/MANIFEST.json
@@ -0,0 +1,21 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..78cc03e2ea
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,14 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ availabilityzone_name: nova
+ cps_net_name: int_pcrf_net_0
+ cps_net_ips: 172.26.16.113
+ cps_net_mask: 255.255.255.0
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.239.64.121
+ oam_net_gw: 107.239.64.1
+ oam_net_mask: 255.255.255.0
+ pcm_volumes: 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ security_group_name: nimbus_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..4172fb861f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,93 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ips:
+ type: comma_delimited_list
+ label: OAM network ips
+ description: OAM network ips
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_volumes:
+ type: comma_delimited_list
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ server_compute_get_attr_test:
+ type: OS::Nova::Server
+ properties:
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+ user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
+ user_data: { get_attr: [server_pcm_001]}
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..4e12676aa8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/buildconsolidationdata/getattribute/noneToPortOrCompute/inputs/nested-pcm_v0.1.yaml
@@ -0,0 +1,114 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ network:
+ type: net
+ script_init:
+ type: OS:INIT
+ server_init:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: network}
+ - config: { get_resource: script_init}
+
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ user_data:
+ get_resource: server_init
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ #pcm_vol_attachment:
+ # type: OS::Cinder::VolumeAttachment
+ # properties:
+ # volume_id: { get_param: pcm_vol }
+ # mountpoint: /dev/vdb
+ # instance_uuid: { get_resource: server_pcm }
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/cinder_volume_translation/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/cinder_volume_translation/expectedoutputfiles/MainServiceTemplate.yaml
index fcd6db6103..a9ad3c770e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/cinder_volume_translation/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/cinder_volume_translation/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
volume_type:
@@ -119,7 +95,7 @@ topology_template:
name:
get_input: FSB2_volume_name
groups:
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_flavor_name_diff/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_flavor_name_diff/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..d006cc9771
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_flavor_name_diff/MainServiceTemplate.yaml
@@ -0,0 +1,190 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: diff_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_name_diff/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_name_diff/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..0e58aeb0c1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_image_name_diff/MainServiceTemplate.yaml
@@ -0,0 +1,214 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: [abc, get_input: ps_flavor_name]
+
+ server_pd01:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_attr: [a, b, c, get_input: {get_input: ps_flavor_name}, d, e]
+
+ server_pd02:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_attr: [a, b, c, get_input: {get_input: ps_flavor_name}, d, e]
+
+ server_pd03:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: diff_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_allowed_address_pairs/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_allowed_address_pairs/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..dd5a477d16
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_allowed_address_pairs/MainServiceTemplate.yaml
@@ -0,0 +1,201 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_fixed_ips/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_fixed_ips/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a4e58144de
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_fixed_ips/MainServiceTemplate.yaml
@@ -0,0 +1,201 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_mac_address/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_mac_address/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..1ddd292cf3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/one_port_without_mac_address/MainServiceTemplate.yaml
@@ -0,0 +1,204 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/ports_with_none_of_the_properties/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/ports_with_none_of_the_properties/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..2a5fcb139c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/ports_with_none_of_the_properties/MainServiceTemplate.yaml
@@ -0,0 +1,173 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ name: aaa
+
+ cm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ name: aaa
+
+ cm01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ name: aaa
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_valid/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_valid/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..8095b88d19
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_valid/MainServiceTemplate.yaml
@@ -0,0 +1,190 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_with_same_relations/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_with_same_relations/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3561f35391
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_compute_with_same_relations/MainServiceTemplate.yaml
@@ -0,0 +1,237 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_ps02
+ relationship: tosca.relationships.DependsOn
+
+ cm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_ps01
+ relationship: tosca.relationships.DependsOn
+
+
+ cm01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_ps03
+ relationship: tosca.relationships.DependsOn
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: cmaui_volume
+ relationship: tosca.relationships.DependsOn
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: cmaui_volume
+ relationship: tosca.relationships.DependsOn
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: cmaui_volume
+ relationship: tosca.relationships.DependsOn
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..cf09f4b3ef
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/computeportconsolidation/three_ports_similar_relations/MainServiceTemplate.yaml
@@ -0,0 +1,254 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ sm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ sm01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ cm01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/different_port_types/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/different_port_types/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ea845e8260
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/different_port_types/MainServiceTemplate.yaml
@@ -0,0 +1,195 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cm01
+ relationship: tosca.relationships.network.BindsTo
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ network: csb_net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/more_than_one_port/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/more_than_one_port/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..1086507058
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/more_than_one_port/MainServiceTemplate.yaml
@@ -0,0 +1,193 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ network: csb_net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ sm01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ network: csb_net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_compute_node/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_compute_node/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..22a9564cc1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_compute_node/MainServiceTemplate.yaml
@@ -0,0 +1,181 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cm01
+ relationship: tosca.relationships.network.BindsTo
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ network: csb_net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_instance_for_two_types/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_instance_for_two_types/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..d9fb652110
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/one_instance_for_two_types/MainServiceTemplate.yaml
@@ -0,0 +1,197 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cm01
+ relationship: tosca.relationships.network.BindsTo
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - mog_security_group
+ network: csb_net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_two_similar_one_diff/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_two_similar_one_diff/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..43335d6812
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_two_similar_one_diff/MainServiceTemplate.yaml
@@ -0,0 +1,223 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cm01
+ relationship: tosca.relationships.network.BindsTo
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 2
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_valid/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_valid/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..d85021332a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/three_compute_valid/MainServiceTemplate.yaml
@@ -0,0 +1,200 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cm01
+ relationship: tosca.relationships.network.BindsTo
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name
+ server_ps03:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ image:
+ get_input: ps_image_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/valid_pre_condition/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/valid_pre_condition/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b2c73f9c92
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/consolidation/translatedfiles/pre_condition/valid_pre_condition/MainServiceTemplate.yaml
@@ -0,0 +1,207 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ default: 169.254.1.4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ node_templates:
+ cm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cm01
+ relationship: tosca.relationships.network.BindsTo
+ sm01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - oam_net_ips
+ - 4
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ mac_address:
+ get_input: ncb1_internal1_mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: csb_net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_sm02
+ relationship: tosca.relationships.network.BindsTo
+ server_ps01:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 3
+ server_ps02:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ flavor:
+ get_input: ps_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: ps_image_name
+ user_data_format: RAW
+ name:
+ get_input:
+ - ps_server_names
+ - 2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..4b348b7117
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1089 @@
+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.OCS-fw3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ service_policy_name:
+ type: string
+ description: Policy Name
+ required: true
+ status: SUPPORTED
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ required: true
+ status: SUPPORTED
+ st_type:
+ type: string
+ description: service type
+ required: true
+ status: SUPPORTED
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ st_mode:
+ type: string
+ description: service mode
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ required: true
+ status: SUPPORTED
+ start_dst_ports:
+ type: float
+ description: Start of dst port
+ required: true
+ status: SUPPORTED
+ st_flavor:
+ type: string
+ description: Flavor
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: availability zone
+ required: true
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ required: true
+ status: SUPPORTED
+ max_num_fw_instances:
+ type: float
+ description: maximum number of firewall instances for scaling
+ required: true
+ status: SUPPORTED
+ start_src_ports:
+ type: float
+ description: Start of src port
+ required: true
+ status: SUPPORTED
+ network_param2:
+ type: string
+ required: true
+ status: SUPPORTED
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ required: true
+ status: SUPPORTED
+ network_param1:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_name:
+ type: string
+ description: Name of service template
+ required: true
+ status: SUPPORTED
+ hsl_direct_net3:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net4:
+ type: string
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ required: true
+ status: SUPPORTED
+ hsl_direct_net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ end_src_ports:
+ type: float
+ description: End of src port
+ required: true
+ status: SUPPORTED
+ end_dst_ports:
+ type: float
+ description: End of dst port
+ required: true
+ status: SUPPORTED
+ st_image_name:
+ type: string
+ description: Name of the image
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_service_instance4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_hsl_direct_net:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ link_hsl_direct_net:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.OCS-fw2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ service_policy_name:
+ type: string
+ description: Policy Name
+ required: true
+ status: SUPPORTED
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ required: true
+ status: SUPPORTED
+ st_type:
+ type: string
+ description: service type
+ required: true
+ status: SUPPORTED
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ st_mode:
+ type: string
+ description: service mode
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ required: true
+ status: SUPPORTED
+ start_dst_ports:
+ type: float
+ description: Start of dst port
+ required: true
+ status: SUPPORTED
+ st_flavor:
+ type: string
+ description: Flavor
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: availability zone
+ required: true
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ required: true
+ status: SUPPORTED
+ max_num_fw_instances:
+ type: float
+ description: maximum number of firewall instances for scaling
+ required: true
+ status: SUPPORTED
+ start_src_ports:
+ type: float
+ description: Start of src port
+ required: true
+ status: SUPPORTED
+ network_param2:
+ type: string
+ required: true
+ status: SUPPORTED
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ required: true
+ status: SUPPORTED
+ network_param1:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_name:
+ type: string
+ description: Name of service template
+ required: true
+ status: SUPPORTED
+ hsl_direct_net3:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net4:
+ type: string
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ required: true
+ status: SUPPORTED
+ hsl_direct_net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ end_src_ports:
+ type: float
+ description: End of src port
+ required: true
+ status: SUPPORTED
+ end_dst_ports:
+ type: float
+ description: End of dst port
+ required: true
+ status: SUPPORTED
+ st_image_name:
+ type: string
+ description: Name of the image
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_service_instance1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance4_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance4_test_nested3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance4_test_nested3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance4_test_nested3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_hsl_direct_net_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy_test_nested3:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_hsl_direct_net:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_service_policy:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ feature_service_policy_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance4_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.OCS-fw:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ service_policy_name:
+ type: string
+ description: Policy Name
+ required: true
+ status: SUPPORTED
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ required: true
+ status: SUPPORTED
+ st_type:
+ type: string
+ description: service type
+ required: true
+ status: SUPPORTED
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ st_mode:
+ type: string
+ description: service mode
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ required: true
+ status: SUPPORTED
+ start_dst_ports:
+ type: float
+ description: Start of dst port
+ required: true
+ status: SUPPORTED
+ st_flavor:
+ type: string
+ description: Flavor
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: availability zone
+ required: true
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ required: true
+ status: SUPPORTED
+ max_num_fw_instances:
+ type: float
+ description: maximum number of firewall instances for scaling
+ required: true
+ status: SUPPORTED
+ start_src_ports:
+ type: float
+ description: Start of src port
+ required: true
+ status: SUPPORTED
+ network_param2:
+ type: string
+ required: true
+ status: SUPPORTED
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ required: true
+ status: SUPPORTED
+ network_param1:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_name:
+ type: string
+ description: Name of service template
+ required: true
+ status: SUPPORTED
+ hsl_direct_net3:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net4:
+ type: string
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ required: true
+ status: SUPPORTED
+ hsl_direct_net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ end_src_ports:
+ type: float
+ description: End of src port
+ required: true
+ status: SUPPORTED
+ end_dst_ports:
+ type: float
+ description: End of dst port
+ required: true
+ status: SUPPORTED
+ st_image_name:
+ type: string
+ description: Name of the image
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_service_instance2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_service_instance1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance1_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_hsl_direct_net_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy_test_nested3_test_nested2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_hsl_direct_net_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_service_policy_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy_test_nested2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_hsl_direct_net:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ feature_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance4_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance1_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.service_template:
+ derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute
+ requirements:
+ - link_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ org.openecomp.resource.vfc.nodes.heat.st:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..099462a6d4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,133 @@
+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:
+ Internal1_shared:
+ hidden: false
+ immutable: false
+ type: string
+ Internal1_forwarding_mode:
+ hidden: false
+ immutable: false
+ type: string
+ Internal2_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ Internal2_forwarding_mode:
+ hidden: false
+ immutable: false
+ type: string
+ Internal2_shared:
+ hidden: false
+ immutable: false
+ type: string
+ Internal1_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ Internal2-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ shared:
+ get_input: Internal1_shared
+ forwarding_mode:
+ get_input: Internal1_forwarding_mode
+ network_name:
+ get_input: Internal1_net_name
+ Internal1-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ shared:
+ get_input: Internal1_shared
+ forwarding_mode:
+ get_input: Internal1_forwarding_mode
+ network_name:
+ get_input: Internal1_net_name
+ test_nested:
+ type: org.openecomp.resource.abstract.nodes.heat.OCS-fw
+ directives:
+ - substitutable
+ properties:
+ network_param2: Internal2-net
+ service_template_filter:
+ substitute_service_template: OCS-fwServiceTemplate.yaml
+ network_param1: Internal1-net
+ requirements:
+ - link_port_0_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: ASC External Networks Template
+ members:
+ - Internal2-net
+ - Internal1-net
+ - test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml
new file mode 100644
index 0000000000..4394a3914b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml
@@ -0,0 +1,481 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ service_policy_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Policy Name
+ st_static_routes_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of static routes enabled-disabled
+ st_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service type
+ st_service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of interface types
+ st_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: service mode
+ Cricket_OCS_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ oam_mgmt_net_0_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of OAM network
+ start_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of dst port
+ st_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability zone
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ st_scaling:
+ hidden: false
+ immutable: false
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ hidden: false
+ immutable: false
+ type: float
+ description: maximum number of firewall instances for scaling
+ start_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of src port
+ network_param2:
+ hidden: false
+ immutable: false
+ type: string
+ service_policy_direction:
+ hidden: false
+ immutable: false
+ type: string
+ description: Direction of Policy
+ network_param1:
+ hidden: false
+ immutable: false
+ type: string
+ st_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of service template
+ hsl_direct_net3:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net4:
+ hidden: false
+ immutable: false
+ type: string
+ HSL_direct_net_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network gateway address
+ hsl_direct_net1:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net2:
+ hidden: false
+ immutable: false
+ type: string
+ st_shared_ip_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of shared ip enabled-disabled
+ Cricket_OCS_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ end_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of src port
+ end_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of dst port
+ st_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the image
+ HSL_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ node_templates:
+ service_instance1:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw2_service_instance1ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param2
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ test_nested3:
+ type: org.openecomp.resource.abstract.nodes.heat.OCS-fw3
+ directives:
+ - substitutable
+ properties:
+ network_param2:
+ get_input: network_param1
+ service_template_filter:
+ substitute_service_template: OCS-fw3ServiceTemplate.yaml
+ network_param1:
+ get_input: network_param1
+ hsl_direct_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: HSL_direct_net_id
+ subnets:
+ hsl_ip_subnet:
+ cidr:
+ get_input: HSL_direct_net_cidr
+ gateway_ip:
+ get_input: HSL_direct_net_gateway
+ service_instance3:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw2_service_instance3ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ service_policy:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ policy_rule:
+ - src_ports:
+ - start_port:
+ get_input: start_src_ports
+ end_port:
+ get_input: end_src_ports
+ protocol: any
+ action_list:
+ apply_service:
+ - service_instance3
+ dst_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_direct_net_id
+ dst_ports:
+ - start_port:
+ get_input: start_dst_ports
+ end_port:
+ get_input: end_dst_ports
+ src_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_protected_net_id
+ direction:
+ get_input: service_policy_direction
+ name:
+ get_input: service_policy_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: service_instance3
+ relationship: tosca.relationships.DependsOn
+ groups:
+ OCS-fw2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw2.yml
+ description: |
+ Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+ members:
+ - service_instance1
+ - test_nested3
+ - hsl_direct_net
+ - service_instance3
+ - service_policy
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw2
+ capabilities:
+ feature_service_policy_test_nested3:
+ - test_nested3
+ - feature_service_policy
+ feature_service_instance1:
+ - service_instance1
+ - feature
+ feature_service_instance3:
+ - service_instance3
+ - feature
+ attachment_hsl_direct_net:
+ - hsl_direct_net
+ - attachment
+ end_point_hsl_direct_net:
+ - hsl_direct_net
+ - end_point
+ feature_service_instance4_test_nested3:
+ - test_nested3
+ - feature_service_instance4
+ link_hsl_direct_net:
+ - hsl_direct_net
+ - link
+ feature_service_policy:
+ - service_policy
+ - feature
+ feature_hsl_direct_net_test_nested3:
+ - test_nested3
+ - feature_hsl_direct_net
+ link_hsl_direct_net_test_nested3:
+ - test_nested3
+ - link_hsl_direct_net
+ attachment_hsl_direct_net_test_nested3:
+ - test_nested3
+ - attachment_hsl_direct_net
+ feature_test_nested3:
+ - test_nested3
+ - feature
+ feature_hsl_direct_net:
+ - hsl_direct_net
+ - feature
+ end_point_hsl_direct_net_test_nested3:
+ - test_nested3
+ - end_point_hsl_direct_net
+ requirements:
+ link_port_0_service_instance1:
+ - service_instance1
+ - link_port_0
+ dependency_service_instance3:
+ - service_instance3
+ - dependency
+ dependency_hsl_direct_net:
+ - hsl_direct_net
+ - dependency
+ dependency_hsl_direct_net_test_nested3:
+ - test_nested3
+ - dependency_hsl_direct_net
+ link_port_0_service_instance3:
+ - service_instance3
+ - link_port_0
+ network_service_policy:
+ - service_policy
+ - network
+ link_port_2_service_instance1:
+ - service_instance1
+ - link_port_2
+ link_port_0_service_instance4_test_nested3:
+ - test_nested3
+ - link_port_0_service_instance4
+ dependency_service_policy:
+ - service_policy
+ - dependency
+ link_port_2_service_instance3:
+ - service_instance3
+ - link_port_2
+ network_service_policy_test_nested3:
+ - test_nested3
+ - network_service_policy
+ link_port_2_service_instance4_test_nested3:
+ - test_nested3
+ - link_port_2_service_instance4
+ dependency_test_nested3:
+ - test_nested3
+ - dependency
+ dependency_service_instance4_test_nested3:
+ - test_nested3
+ - dependency_service_instance4
+ dependency_service_policy_test_nested3:
+ - test_nested3
+ - dependency_service_policy
+ link_port_1_service_instance3:
+ - service_instance3
+ - link_port_1
+ link_port_1_service_instance1:
+ - service_instance1
+ - link_port_1
+ link_port_1_service_instance4_test_nested3:
+ - test_nested3
+ - link_port_1_service_instance4
+ dependency_service_instance1:
+ - service_instance1
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml
new file mode 100644
index 0000000000..c47881c827
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw2_service_instance1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ service_instance1:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ service_instance1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw2.yml
+ members:
+ - service_instance1
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance1
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml
new file mode 100644
index 0000000000..b3fd08ad7f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw2_service_instance3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance3
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance3
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance3
+ relationship: tosca.relationships.network.BindsTo
+ service_instance3:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ groups:
+ service_instance3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw2.yml
+ members:
+ - service_instance3
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance3
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance3
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance3
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance3
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw3ServiceTemplate.yaml
index 1f504169ab..c703fdb5d9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw3ServiceTemplate.yaml
@@ -1,35 +1,11 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: OCS-fw
+ template_name: OCS-fw3
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
service_policy_name:
@@ -102,11 +78,19 @@ topology_template:
immutable: false
type: float
description: Start of src port
+ network_param2:
+ hidden: false
+ immutable: false
+ type: string
service_policy_direction:
hidden: false
immutable: false
type: string
description: Direction of Policy
+ network_param1:
+ hidden: false
+ immutable: false
+ type: string
st_name:
hidden: false
immutable: false
@@ -133,11 +117,6 @@ topology_template:
hidden: false
immutable: false
type: string
- st_image:
- hidden: false
- immutable: false
- type: string
- description: Name of the image
st_shared_ip_list:
hidden: false
immutable: false
@@ -148,10 +127,6 @@ topology_template:
immutable: false
type: string
description: Name of Cricket OCS network
- network_param:
- hidden: false
- immutable: false
- type: string
end_src_ports:
hidden: false
immutable: false
@@ -162,6 +137,11 @@ topology_template:
immutable: false
type: float
description: End of dst port
+ st_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the image
HSL_direct_net_id:
hidden: false
immutable: false
@@ -173,18 +153,7 @@ topology_template:
type: string
description: HSL (Logging) network address (CIDR notation)
node_templates:
- hsl_direct_net:
- type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
- properties:
- network_name:
- get_input: HSL_direct_net_id
- subnets:
- hsl_ip_subnet:
- cidr:
- get_input: HSL_direct_net_cidr
- gateway_ip:
- get_input: HSL_direct_net_gateway
- service_instance:
+ service_instance4:
type: org.openecomp.resource.abstract.nodes.heat.service_template
directives:
- substitutable
@@ -194,11 +163,13 @@ topology_template:
availability_zone:
get_input: availability_zone_1
image_name:
- get_input: st_image
+ get_input: st_image_name
service_template_filter:
- substitute_service_template: service_instanceServiceTemplate.yaml
+ substitute_service_template: OCS-fw3_service_instance4ServiceTemplate.yaml
count:
get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
mandatory: false
service_type:
get_input: st_type
@@ -207,6 +178,14 @@ topology_template:
- get_input: st_static_routes_list
- ','
- 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
service_template_name:
get_input: st_name
service_interface_type_list:
@@ -214,11 +193,23 @@ topology_template:
- get_input: st_service_interface_type_list
- ','
- 0
- interface_list:
- - virtual_network:
- get_input: network_param
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
service_instance_name:
get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
service_mode:
get_input: st_mode
shared_ip_list:
@@ -226,11 +217,30 @@ topology_template:
- get_input: st_shared_ip_list
- ','
- 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
requirements:
- dependency:
capability: tosca.capabilities.Node
node: hsl_direct_net
relationship: tosca.relationships.DependsOn
+ hsl_direct_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: HSL_direct_net_id
+ subnets:
+ hsl_ip_subnet:
+ cidr:
+ get_input: HSL_direct_net_cidr
+ gateway_ip:
+ get_input: HSL_direct_net_gateway
service_policy:
type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
properties:
@@ -244,7 +254,7 @@ topology_template:
protocol: any
action_list:
apply_service:
- - service_instance
+ - service_instance4
dst_addresses:
- virtual_network:
get_input: Cricket_OCS_direct_net_id
@@ -263,32 +273,59 @@ topology_template:
requirements:
- dependency:
capability: tosca.capabilities.Node
- node: service_instance
+ node: service_instance4
relationship: tosca.relationships.DependsOn
groups:
- OCS-fw:
+ OCS-fw3_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/OCS-fw.yml
+ heat_file: ../Artifacts/OCS-fw3.yml
description: |
Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
members:
+ - service_instance4
- hsl_direct_net
- - service_instance
- service_policy
substitution_mappings:
- node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw
+ node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw3
capabilities:
link_hsl_direct_net:
- hsl_direct_net
- link
+ feature_service_policy:
+ - service_policy
+ - feature
+ feature_service_instance4:
+ - service_instance4
+ - feature
attachment_hsl_direct_net:
- hsl_direct_net
- attachment
+ feature_hsl_direct_net:
+ - hsl_direct_net
+ - feature
+ end_point_hsl_direct_net:
+ - hsl_direct_net
+ - end_point
requirements:
+ dependency_service_instance4:
+ - service_instance4
+ - dependency
+ dependency_hsl_direct_net:
+ - hsl_direct_net
+ - dependency
+ link_port_0_service_instance4:
+ - service_instance4
+ - link_port_0
+ link_port_1_service_instance4:
+ - service_instance4
+ - link_port_1
network_service_policy:
- service_policy
- network
- link_port_0_service_instance:
- - service_instance
- - link_port_0 \ No newline at end of file
+ dependency_service_policy:
+ - service_policy
+ - dependency
+ link_port_2_service_instance4:
+ - service_instance4
+ - link_port_2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml
new file mode 100644
index 0000000000..031d40e78f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw3_service_instance4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance4
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance4
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance4
+ relationship: tosca.relationships.network.BindsTo
+ service_instance4:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ groups:
+ service_instance4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw3.yml
+ members:
+ - service_instance4
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance4
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance4
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance4
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance4
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml
new file mode 100644
index 0000000000..2bfeeb0797
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml
@@ -0,0 +1,541 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ service_policy_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Policy Name
+ st_static_routes_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of static routes enabled-disabled
+ st_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service type
+ st_service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of interface types
+ st_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: service mode
+ Cricket_OCS_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ oam_mgmt_net_0_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of OAM network
+ start_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of dst port
+ st_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability zone
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ st_scaling:
+ hidden: false
+ immutable: false
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ hidden: false
+ immutable: false
+ type: float
+ description: maximum number of firewall instances for scaling
+ start_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of src port
+ network_param2:
+ hidden: false
+ immutable: false
+ type: string
+ service_policy_direction:
+ hidden: false
+ immutable: false
+ type: string
+ description: Direction of Policy
+ network_param1:
+ hidden: false
+ immutable: false
+ type: string
+ st_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of service template
+ hsl_direct_net3:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net4:
+ hidden: false
+ immutable: false
+ type: string
+ HSL_direct_net_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network gateway address
+ hsl_direct_net1:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net2:
+ hidden: false
+ immutable: false
+ type: string
+ st_shared_ip_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of shared ip enabled-disabled
+ Cricket_OCS_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ end_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of src port
+ end_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of dst port
+ st_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the image
+ HSL_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ node_templates:
+ service_instance2:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw_service_instance2ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param2
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ service_instance1:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw_service_instance1ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ test_nested2:
+ type: org.openecomp.resource.abstract.nodes.heat.OCS-fw2
+ directives:
+ - substitutable
+ properties:
+ network_param2:
+ get_input: network_param2
+ service_template_filter:
+ substitute_service_template: OCS-fw2ServiceTemplate.yaml
+ network_param1:
+ get_input: network_param1
+ hsl_direct_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: HSL_direct_net_id
+ subnets:
+ hsl_ip_subnet:
+ cidr:
+ get_input: HSL_direct_net_cidr
+ gateway_ip:
+ get_input: HSL_direct_net_gateway
+ service_policy:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ policy_rule:
+ - src_ports:
+ - start_port:
+ get_input: start_src_ports
+ end_port:
+ get_input: end_src_ports
+ protocol: any
+ action_list:
+ apply_service:
+ - service_instance1
+ dst_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_direct_net_id
+ dst_ports:
+ - start_port:
+ get_input: start_dst_ports
+ end_port:
+ get_input: end_dst_ports
+ src_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_protected_net_id
+ direction:
+ get_input: service_policy_direction
+ name:
+ get_input: service_policy_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: service_instance1
+ relationship: tosca.relationships.DependsOn
+ groups:
+ OCS-fw_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw.yml
+ description: |
+ Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+ members:
+ - service_instance2
+ - service_instance1
+ - test_nested2
+ - hsl_direct_net
+ - service_policy
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw
+ capabilities:
+ feature_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - feature_hsl_direct_net_test_nested3
+ feature_service_instance1:
+ - service_instance1
+ - feature
+ feature_service_policy_test_nested2:
+ - test_nested2
+ - feature_service_policy
+ feature_service_instance2:
+ - service_instance2
+ - feature
+ feature_test_nested3_test_nested2:
+ - test_nested2
+ - feature_test_nested3
+ attachment_hsl_direct_net:
+ - hsl_direct_net
+ - attachment
+ feature_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - feature_service_instance4_test_nested3
+ feature_service_instance3_test_nested2:
+ - test_nested2
+ - feature_service_instance3
+ feature_hsl_direct_net_test_nested2:
+ - test_nested2
+ - feature_hsl_direct_net
+ end_point_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - end_point_hsl_direct_net_test_nested3
+ end_point_hsl_direct_net:
+ - hsl_direct_net
+ - end_point
+ link_hsl_direct_net:
+ - hsl_direct_net
+ - link
+ feature_service_policy:
+ - service_policy
+ - feature
+ link_hsl_direct_net_test_nested2:
+ - test_nested2
+ - link_hsl_direct_net
+ attachment_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - attachment_hsl_direct_net_test_nested3
+ attachment_hsl_direct_net_test_nested2:
+ - test_nested2
+ - attachment_hsl_direct_net
+ feature_service_instance1_test_nested2:
+ - test_nested2
+ - feature_service_instance1
+ link_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - link_hsl_direct_net_test_nested3
+ feature_test_nested2:
+ - test_nested2
+ - feature
+ feature_hsl_direct_net:
+ - hsl_direct_net
+ - feature
+ feature_service_policy_test_nested3_test_nested2:
+ - test_nested2
+ - feature_service_policy_test_nested3
+ end_point_hsl_direct_net_test_nested2:
+ - test_nested2
+ - end_point_hsl_direct_net
+ requirements:
+ link_port_1_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - link_port_1_service_instance4_test_nested3
+ dependency_hsl_direct_net:
+ - hsl_direct_net
+ - dependency
+ dependency_hsl_direct_net_test_nested2:
+ - test_nested2
+ - dependency_hsl_direct_net
+ dependency_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_hsl_direct_net_test_nested3
+ network_service_policy_test_nested3_test_nested2:
+ - test_nested2
+ - network_service_policy_test_nested3
+ link_port_2_service_instance1:
+ - service_instance1
+ - link_port_2
+ link_port_2_service_instance2:
+ - service_instance2
+ - link_port_2
+ dependency_service_policy:
+ - service_policy
+ - dependency
+ dependency_service_instance1_test_nested2:
+ - test_nested2
+ - dependency_service_instance1
+ link_port_0_service_instance3_test_nested2:
+ - test_nested2
+ - link_port_0_service_instance3
+ link_port_2_service_instance3_test_nested2:
+ - test_nested2
+ - link_port_2_service_instance3
+ dependency_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_service_instance4_test_nested3
+ dependency_service_policy_test_nested2:
+ - test_nested2
+ - dependency_service_policy
+ dependency_test_nested2:
+ - test_nested2
+ - dependency
+ link_port_0_service_instance1_test_nested2:
+ - test_nested2
+ - link_port_0_service_instance1
+ link_port_1_service_instance2:
+ - service_instance2
+ - link_port_1
+ link_port_1_service_instance1:
+ - service_instance1
+ - link_port_1
+ link_port_1_service_instance3_test_nested2:
+ - test_nested2
+ - link_port_1_service_instance3
+ link_port_0_service_instance2:
+ - service_instance2
+ - link_port_0
+ link_port_0_service_instance1:
+ - service_instance1
+ - link_port_0
+ link_port_0_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - link_port_0_service_instance4_test_nested3
+ dependency_service_policy_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_service_policy_test_nested3
+ link_port_1_service_instance1_test_nested2:
+ - test_nested2
+ - link_port_1_service_instance1
+ network_service_policy:
+ - service_policy
+ - network
+ network_service_policy_test_nested2:
+ - test_nested2
+ - network_service_policy
+ dependency_service_instance3_test_nested2:
+ - test_nested2
+ - dependency_service_instance3
+ link_port_2_service_instance1_test_nested2:
+ - test_nested2
+ - link_port_2_service_instance1
+ dependency_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_test_nested3
+ dependency_service_instance2:
+ - service_instance2
+ - dependency
+ link_port_2_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - link_port_2_service_instance4_test_nested3
+ dependency_service_instance1:
+ - service_instance1
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml
new file mode 100644
index 0000000000..a80565137c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw_service_instance1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ service_instance1:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ service_instance1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw.yml
+ members:
+ - service_instance1
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance1
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml
new file mode 100644
index 0000000000..1ba7cd1567
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw_service_instance2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ service_instance2:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance2
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance2
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ service_instance2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw.yml
+ members:
+ - service_instance2
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance2
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance2
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance2
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance2
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..e38ff7a513
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/MANIFEST.json
@@ -0,0 +1,26 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "OCS-fw.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "OCS-fw2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "OCS-fw3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "main.yml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw.yml
new file mode 100644
index 0000000000..261bbf2f36
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw.yml
@@ -0,0 +1,198 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Based on the following reference for the HOT-DMZ-FW template:
+ Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+
+parameters:
+ hsl_direct_net1:
+ type: string
+ hsl_direct_net2:
+ type: string
+ hsl_direct_net3:
+ type: string
+ hsl_direct_net4:
+ type: string
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ service_instance_name:
+ type: string
+ description: Service instance name
+ service_policy_name:
+ type: string
+ description: Policy Name
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ start_src_ports:
+ type: number
+ description: Start of src port
+ end_src_ports:
+ type: number
+ description: End of src port
+ start_dst_ports:
+ type: number
+ description: Start of dst port
+ end_dst_ports:
+ type: number
+ description: End of dst port
+ st_name:
+ type: string
+ description: Name of service template
+ st_mode:
+ type: string
+ description: service mode
+ st_type:
+ type: string
+ description: service type
+ st_image_name:
+ type: string
+ description: Name of the image
+ st_flavor:
+ type: string
+ description: Flavor
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ type: number
+ description: maximum number of firewall instances for scaling
+ availability_zone_1:
+ type: string
+ description: availability zone
+ network_param1:
+ type: string
+ network_param2:
+ type: string
+
+resources:
+
+ hsl_direct_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: HSL_direct_net_id }
+
+ hsl_ip_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: hsl_direct_net }
+ cidr: { get_param: HSL_direct_net_cidr }
+ gateway_ip: { get_param: HSL_direct_net_gateway }
+
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor }
+ service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling }
+
+ service_instance1:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_instance2:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param2 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_policy:
+ type: OS::Contrail::NetworkPolicy
+ depends_on: [ service_instance1 ]
+ properties:
+ name: { get_param: service_policy_name }
+ entries:
+ policy_rule: [
+ {
+ "direction": { get_param: service_policy_direction },
+ "protocol": "any",
+ "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}],
+ "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}],
+ "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}],
+ "action_list": { "apply_service": [{ get_resource: service_instance1 }]},
+ "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}],
+ },
+ ]
+
+ service_policy_attach_direct_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_direct_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ service_policy_attach_protected_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_protected_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ test_nested2:
+ type: OCS-fw2.yml
+ properties:
+ network_param1: { get_param: network_param1}
+ network_param2: { get_param: network_param2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw2.yml
new file mode 100644
index 0000000000..7abef08c97
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw2.yml
@@ -0,0 +1,198 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Based on the following reference for the HOT-DMZ-FW template:
+ Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+
+parameters:
+ hsl_direct_net1:
+ type: string
+ hsl_direct_net2:
+ type: string
+ hsl_direct_net3:
+ type: string
+ hsl_direct_net4:
+ type: string
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ service_instance_name:
+ type: string
+ description: Service instance name
+ service_policy_name:
+ type: string
+ description: Policy Name
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ start_src_ports:
+ type: number
+ description: Start of src port
+ end_src_ports:
+ type: number
+ description: End of src port
+ start_dst_ports:
+ type: number
+ description: Start of dst port
+ end_dst_ports:
+ type: number
+ description: End of dst port
+ st_name:
+ type: string
+ description: Name of service template
+ st_mode:
+ type: string
+ description: service mode
+ st_type:
+ type: string
+ description: service type
+ st_image_name:
+ type: string
+ description: Name of the image
+ st_flavor:
+ type: string
+ description: Flavor
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ type: number
+ description: maximum number of firewall instances for scaling
+ availability_zone_1:
+ type: string
+ description: availability zone
+ network_param1:
+ type: string
+ network_param2:
+ type: string
+
+resources:
+
+ hsl_direct_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: HSL_direct_net_id }
+
+ hsl_ip_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: hsl_direct_net }
+ cidr: { get_param: HSL_direct_net_cidr }
+ gateway_ip: { get_param: HSL_direct_net_gateway }
+
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor }
+ service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling }
+
+ service_instance3:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_instance1:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param2 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_policy:
+ type: OS::Contrail::NetworkPolicy
+ depends_on: [ service_instance3 ]
+ properties:
+ name: { get_param: service_policy_name }
+ entries:
+ policy_rule: [
+ {
+ "direction": { get_param: service_policy_direction },
+ "protocol": "any",
+ "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}],
+ "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}],
+ "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}],
+ "action_list": { "apply_service": [{ get_resource: service_instance3 }]},
+ "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}],
+ },
+ ]
+
+ service_policy_attach_direct_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_direct_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ service_policy_attach_protected_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_protected_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ test_nested3:
+ type: OCS-fw3.yml
+ properties:
+ network_param1: { get_param: network_param1}
+ network_param2: { get_param: network_param1} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/OCS-fw.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw3.yml
index 86c3fcadc8..45563922d6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/OCS-fw.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/OCS-fw3.yml
@@ -61,7 +61,7 @@ parameters:
st_type:
type: string
description: service type
- st_image:
+ st_image_name:
type: string
description: Name of the image
st_flavor:
@@ -85,7 +85,9 @@ parameters:
availability_zone_1:
type: string
description: availability zone
- network_param:
+ network_param1:
+ type: string
+ network_param2:
type: string
resources:
@@ -108,14 +110,14 @@ resources:
name: { get_param: st_name }
service_mode: { get_param: st_mode }
service_type: { get_param: st_type }
- image_name: { get_param: st_image }
+ image_name: { get_param: st_image_name }
flavor: { get_param: st_flavor }
service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] }
shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
service_scaling: { get_param: st_scaling }
- service_instance:
+ service_instance4:
type: OS::Contrail::ServiceInstance
depends_on: [ hsl_ip_subnet]
properties:
@@ -126,13 +128,20 @@ resources:
max_instances: {get_param: max_num_fw_instances}
interface_list: [
{
- virtual_network: { get_param: network_param }
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
}
]
+
service_policy:
type: OS::Contrail::NetworkPolicy
- depends_on: [ service_instance ]
+ depends_on: [ service_instance4 ]
properties:
name: { get_param: service_policy_name }
entries:
@@ -143,7 +152,7 @@ resources:
"src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}],
"dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}],
"dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}],
- "action_list": { "apply_service": [{ get_resource: service_instance }]},
+ "action_list": { "apply_service": [{ get_resource: service_instance4 }]},
"src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}],
},
]
@@ -160,4 +169,5 @@ resources:
depends_on: [ service_policy ]
properties:
network: { get_param: Cricket_OCS_protected_net_id }
- policy: { get_attr: [service_policy, fq_name] } \ No newline at end of file
+ policy: { get_attr: [service_policy, fq_name] }
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/main.yml
index a1f7dc932d..2785688607 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkMultiNested/inputfiles/main.yml
@@ -23,8 +23,15 @@ resources:
name: { get_param: Internal1_net_name }
forwarding_mode: { get_param: Internal1_forwarding_mode }
shared: { get_param: Internal1_shared }
+ Internal2-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+ forwarding_mode: { get_param: Internal1_forwarding_mode }
+ shared: { get_param: Internal1_shared }
test_nested:
type: OCS-fw.yml
properties:
- network_param: { get_resource: Internal1-net} \ No newline at end of file
+ network_param1: { get_resource: Internal1-net}
+ network_param2: { get_resource: Internal2-net} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..4b348b7117
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1089 @@
+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.OCS-fw3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ service_policy_name:
+ type: string
+ description: Policy Name
+ required: true
+ status: SUPPORTED
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ required: true
+ status: SUPPORTED
+ st_type:
+ type: string
+ description: service type
+ required: true
+ status: SUPPORTED
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ st_mode:
+ type: string
+ description: service mode
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ required: true
+ status: SUPPORTED
+ start_dst_ports:
+ type: float
+ description: Start of dst port
+ required: true
+ status: SUPPORTED
+ st_flavor:
+ type: string
+ description: Flavor
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: availability zone
+ required: true
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ required: true
+ status: SUPPORTED
+ max_num_fw_instances:
+ type: float
+ description: maximum number of firewall instances for scaling
+ required: true
+ status: SUPPORTED
+ start_src_ports:
+ type: float
+ description: Start of src port
+ required: true
+ status: SUPPORTED
+ network_param2:
+ type: string
+ required: true
+ status: SUPPORTED
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ required: true
+ status: SUPPORTED
+ network_param1:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_name:
+ type: string
+ description: Name of service template
+ required: true
+ status: SUPPORTED
+ hsl_direct_net3:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net4:
+ type: string
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ required: true
+ status: SUPPORTED
+ hsl_direct_net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ end_src_ports:
+ type: float
+ description: End of src port
+ required: true
+ status: SUPPORTED
+ end_dst_ports:
+ type: float
+ description: End of dst port
+ required: true
+ status: SUPPORTED
+ st_image_name:
+ type: string
+ description: Name of the image
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_service_instance4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_hsl_direct_net:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ link_hsl_direct_net:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.OCS-fw2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ service_policy_name:
+ type: string
+ description: Policy Name
+ required: true
+ status: SUPPORTED
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ required: true
+ status: SUPPORTED
+ st_type:
+ type: string
+ description: service type
+ required: true
+ status: SUPPORTED
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ st_mode:
+ type: string
+ description: service mode
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ required: true
+ status: SUPPORTED
+ start_dst_ports:
+ type: float
+ description: Start of dst port
+ required: true
+ status: SUPPORTED
+ st_flavor:
+ type: string
+ description: Flavor
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: availability zone
+ required: true
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ required: true
+ status: SUPPORTED
+ max_num_fw_instances:
+ type: float
+ description: maximum number of firewall instances for scaling
+ required: true
+ status: SUPPORTED
+ start_src_ports:
+ type: float
+ description: Start of src port
+ required: true
+ status: SUPPORTED
+ network_param2:
+ type: string
+ required: true
+ status: SUPPORTED
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ required: true
+ status: SUPPORTED
+ network_param1:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_name:
+ type: string
+ description: Name of service template
+ required: true
+ status: SUPPORTED
+ hsl_direct_net3:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net4:
+ type: string
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ required: true
+ status: SUPPORTED
+ hsl_direct_net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ end_src_ports:
+ type: float
+ description: End of src port
+ required: true
+ status: SUPPORTED
+ end_dst_ports:
+ type: float
+ description: End of dst port
+ required: true
+ status: SUPPORTED
+ st_image_name:
+ type: string
+ description: Name of the image
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_service_instance1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance4_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance4_test_nested3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance4_test_nested3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance4_test_nested3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_hsl_direct_net_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy_test_nested3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy_test_nested3:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_hsl_direct_net:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_service_policy:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ feature_service_policy_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance4_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net_test_nested3:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.OCS-fw:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ service_policy_name:
+ type: string
+ description: Policy Name
+ required: true
+ status: SUPPORTED
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ required: true
+ status: SUPPORTED
+ st_type:
+ type: string
+ description: service type
+ required: true
+ status: SUPPORTED
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ st_mode:
+ type: string
+ description: service mode
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ required: true
+ status: SUPPORTED
+ start_dst_ports:
+ type: float
+ description: Start of dst port
+ required: true
+ status: SUPPORTED
+ st_flavor:
+ type: string
+ description: Flavor
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: availability zone
+ required: true
+ status: SUPPORTED
+ service_instance_name:
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ required: true
+ status: SUPPORTED
+ max_num_fw_instances:
+ type: float
+ description: maximum number of firewall instances for scaling
+ required: true
+ status: SUPPORTED
+ start_src_ports:
+ type: float
+ description: Start of src port
+ required: true
+ status: SUPPORTED
+ network_param2:
+ type: string
+ required: true
+ status: SUPPORTED
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ required: true
+ status: SUPPORTED
+ network_param1:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_name:
+ type: string
+ description: Name of service template
+ required: true
+ status: SUPPORTED
+ hsl_direct_net3:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net4:
+ type: string
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ required: true
+ status: SUPPORTED
+ hsl_direct_net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ hsl_direct_net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ required: true
+ status: SUPPORTED
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ required: true
+ status: SUPPORTED
+ end_src_ports:
+ type: float
+ description: End of src port
+ required: true
+ status: SUPPORTED
+ end_dst_ports:
+ type: float
+ description: End of dst port
+ required: true
+ status: SUPPORTED
+ st_image_name:
+ type: string
+ description: Name of the image
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ required: true
+ status: SUPPORTED
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_service_instance2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_service_instance1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance1_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_hsl_direct_net_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy_test_nested3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy_test_nested3_test_nested2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_hsl_direct_net_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_instance3_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_port_0_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_service_policy_test_nested2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy_test_nested2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_hsl_direct_net:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_service_policy:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - network_service_policy:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.network.Network
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ feature_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance4_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_instance1_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_hsl_direct_net_test_nested3_test_nested2:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_hsl_direct_net:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_service_policy_test_nested3_test_nested2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_hsl_direct_net_test_nested2:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.service_template:
+ derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute
+ requirements:
+ - link_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ org.openecomp.resource.vfc.nodes.heat.st:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3fc99fd2e7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,142 @@
+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:
+ Internal1_shared:
+ hidden: false
+ immutable: false
+ type: string
+ Internal1_forwarding_mode:
+ hidden: false
+ immutable: false
+ type: string
+ Internal2_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ Internal2_forwarding_mode:
+ hidden: false
+ immutable: false
+ type: string
+ Internal2_shared:
+ hidden: false
+ immutable: false
+ type: string
+ Internal1_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ Internal2-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ shared:
+ get_input: Internal1_shared
+ forwarding_mode:
+ get_input: Internal1_forwarding_mode
+ network_name:
+ get_input: Internal1_net_name
+ Internal1-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ shared:
+ get_input: Internal1_shared
+ forwarding_mode:
+ get_input: Internal1_forwarding_mode
+ network_name:
+ get_input: Internal1_net_name
+ test_nested:
+ type: org.openecomp.resource.abstract.nodes.heat.OCS-fw
+ directives:
+ - substitutable
+ properties:
+ network_param2: Internal2-net
+ service_template_filter:
+ substitute_service_template: OCS-fwServiceTemplate.yaml
+ network_param1: Internal1-net
+ requirements:
+ - link_port_0_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance1_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance4_test_nested3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_0_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_1_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_port_2_service_instance3_test_nested2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ base_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base.yml
+ description: ASC External Networks Template
+ members:
+ - Internal2-net
+ - Internal1-net
+ - test_nested
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: ASC External Networks Template
+ members:
+ - Internal2-net
+ - Internal1-net
+ - test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml
new file mode 100644
index 0000000000..4394a3914b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2ServiceTemplate.yaml
@@ -0,0 +1,481 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ service_policy_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Policy Name
+ st_static_routes_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of static routes enabled-disabled
+ st_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service type
+ st_service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of interface types
+ st_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: service mode
+ Cricket_OCS_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ oam_mgmt_net_0_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of OAM network
+ start_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of dst port
+ st_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability zone
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ st_scaling:
+ hidden: false
+ immutable: false
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ hidden: false
+ immutable: false
+ type: float
+ description: maximum number of firewall instances for scaling
+ start_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of src port
+ network_param2:
+ hidden: false
+ immutable: false
+ type: string
+ service_policy_direction:
+ hidden: false
+ immutable: false
+ type: string
+ description: Direction of Policy
+ network_param1:
+ hidden: false
+ immutable: false
+ type: string
+ st_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of service template
+ hsl_direct_net3:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net4:
+ hidden: false
+ immutable: false
+ type: string
+ HSL_direct_net_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network gateway address
+ hsl_direct_net1:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net2:
+ hidden: false
+ immutable: false
+ type: string
+ st_shared_ip_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of shared ip enabled-disabled
+ Cricket_OCS_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ end_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of src port
+ end_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of dst port
+ st_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the image
+ HSL_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ node_templates:
+ service_instance1:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw2_service_instance1ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param2
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ test_nested3:
+ type: org.openecomp.resource.abstract.nodes.heat.OCS-fw3
+ directives:
+ - substitutable
+ properties:
+ network_param2:
+ get_input: network_param1
+ service_template_filter:
+ substitute_service_template: OCS-fw3ServiceTemplate.yaml
+ network_param1:
+ get_input: network_param1
+ hsl_direct_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: HSL_direct_net_id
+ subnets:
+ hsl_ip_subnet:
+ cidr:
+ get_input: HSL_direct_net_cidr
+ gateway_ip:
+ get_input: HSL_direct_net_gateway
+ service_instance3:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw2_service_instance3ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ service_policy:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ policy_rule:
+ - src_ports:
+ - start_port:
+ get_input: start_src_ports
+ end_port:
+ get_input: end_src_ports
+ protocol: any
+ action_list:
+ apply_service:
+ - service_instance3
+ dst_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_direct_net_id
+ dst_ports:
+ - start_port:
+ get_input: start_dst_ports
+ end_port:
+ get_input: end_dst_ports
+ src_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_protected_net_id
+ direction:
+ get_input: service_policy_direction
+ name:
+ get_input: service_policy_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: service_instance3
+ relationship: tosca.relationships.DependsOn
+ groups:
+ OCS-fw2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw2.yml
+ description: |
+ Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+ members:
+ - service_instance1
+ - test_nested3
+ - hsl_direct_net
+ - service_instance3
+ - service_policy
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw2
+ capabilities:
+ feature_service_policy_test_nested3:
+ - test_nested3
+ - feature_service_policy
+ feature_service_instance1:
+ - service_instance1
+ - feature
+ feature_service_instance3:
+ - service_instance3
+ - feature
+ attachment_hsl_direct_net:
+ - hsl_direct_net
+ - attachment
+ end_point_hsl_direct_net:
+ - hsl_direct_net
+ - end_point
+ feature_service_instance4_test_nested3:
+ - test_nested3
+ - feature_service_instance4
+ link_hsl_direct_net:
+ - hsl_direct_net
+ - link
+ feature_service_policy:
+ - service_policy
+ - feature
+ feature_hsl_direct_net_test_nested3:
+ - test_nested3
+ - feature_hsl_direct_net
+ link_hsl_direct_net_test_nested3:
+ - test_nested3
+ - link_hsl_direct_net
+ attachment_hsl_direct_net_test_nested3:
+ - test_nested3
+ - attachment_hsl_direct_net
+ feature_test_nested3:
+ - test_nested3
+ - feature
+ feature_hsl_direct_net:
+ - hsl_direct_net
+ - feature
+ end_point_hsl_direct_net_test_nested3:
+ - test_nested3
+ - end_point_hsl_direct_net
+ requirements:
+ link_port_0_service_instance1:
+ - service_instance1
+ - link_port_0
+ dependency_service_instance3:
+ - service_instance3
+ - dependency
+ dependency_hsl_direct_net:
+ - hsl_direct_net
+ - dependency
+ dependency_hsl_direct_net_test_nested3:
+ - test_nested3
+ - dependency_hsl_direct_net
+ link_port_0_service_instance3:
+ - service_instance3
+ - link_port_0
+ network_service_policy:
+ - service_policy
+ - network
+ link_port_2_service_instance1:
+ - service_instance1
+ - link_port_2
+ link_port_0_service_instance4_test_nested3:
+ - test_nested3
+ - link_port_0_service_instance4
+ dependency_service_policy:
+ - service_policy
+ - dependency
+ link_port_2_service_instance3:
+ - service_instance3
+ - link_port_2
+ network_service_policy_test_nested3:
+ - test_nested3
+ - network_service_policy
+ link_port_2_service_instance4_test_nested3:
+ - test_nested3
+ - link_port_2_service_instance4
+ dependency_test_nested3:
+ - test_nested3
+ - dependency
+ dependency_service_instance4_test_nested3:
+ - test_nested3
+ - dependency_service_instance4
+ dependency_service_policy_test_nested3:
+ - test_nested3
+ - dependency_service_policy
+ link_port_1_service_instance3:
+ - service_instance3
+ - link_port_1
+ link_port_1_service_instance1:
+ - service_instance1
+ - link_port_1
+ link_port_1_service_instance4_test_nested3:
+ - test_nested3
+ - link_port_1_service_instance4
+ dependency_service_instance1:
+ - service_instance1
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml
new file mode 100644
index 0000000000..c47881c827
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance1ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw2_service_instance1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ service_instance1:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ service_instance1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw2.yml
+ members:
+ - service_instance1
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance1
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml
new file mode 100644
index 0000000000..b3fd08ad7f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw2_service_instance3ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw2_service_instance3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance3
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance3
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance3
+ relationship: tosca.relationships.network.BindsTo
+ service_instance3:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ groups:
+ service_instance3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw2.yml
+ members:
+ - service_instance3
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance3
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance3
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance3
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance3
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance3
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3ServiceTemplate.yaml
new file mode 100644
index 0000000000..c703fdb5d9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3ServiceTemplate.yaml
@@ -0,0 +1,331 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ service_policy_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Policy Name
+ st_static_routes_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of static routes enabled-disabled
+ st_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service type
+ st_service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of interface types
+ st_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: service mode
+ Cricket_OCS_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ oam_mgmt_net_0_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of OAM network
+ start_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of dst port
+ st_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability zone
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ st_scaling:
+ hidden: false
+ immutable: false
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ hidden: false
+ immutable: false
+ type: float
+ description: maximum number of firewall instances for scaling
+ start_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of src port
+ network_param2:
+ hidden: false
+ immutable: false
+ type: string
+ service_policy_direction:
+ hidden: false
+ immutable: false
+ type: string
+ description: Direction of Policy
+ network_param1:
+ hidden: false
+ immutable: false
+ type: string
+ st_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of service template
+ hsl_direct_net3:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net4:
+ hidden: false
+ immutable: false
+ type: string
+ HSL_direct_net_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network gateway address
+ hsl_direct_net1:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net2:
+ hidden: false
+ immutable: false
+ type: string
+ st_shared_ip_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of shared ip enabled-disabled
+ Cricket_OCS_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ end_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of src port
+ end_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of dst port
+ st_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the image
+ HSL_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ node_templates:
+ service_instance4:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw3_service_instance4ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ hsl_direct_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: HSL_direct_net_id
+ subnets:
+ hsl_ip_subnet:
+ cidr:
+ get_input: HSL_direct_net_cidr
+ gateway_ip:
+ get_input: HSL_direct_net_gateway
+ service_policy:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ policy_rule:
+ - src_ports:
+ - start_port:
+ get_input: start_src_ports
+ end_port:
+ get_input: end_src_ports
+ protocol: any
+ action_list:
+ apply_service:
+ - service_instance4
+ dst_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_direct_net_id
+ dst_ports:
+ - start_port:
+ get_input: start_dst_ports
+ end_port:
+ get_input: end_dst_ports
+ src_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_protected_net_id
+ direction:
+ get_input: service_policy_direction
+ name:
+ get_input: service_policy_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: service_instance4
+ relationship: tosca.relationships.DependsOn
+ groups:
+ OCS-fw3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw3.yml
+ description: |
+ Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+ members:
+ - service_instance4
+ - hsl_direct_net
+ - service_policy
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw3
+ capabilities:
+ link_hsl_direct_net:
+ - hsl_direct_net
+ - link
+ feature_service_policy:
+ - service_policy
+ - feature
+ feature_service_instance4:
+ - service_instance4
+ - feature
+ attachment_hsl_direct_net:
+ - hsl_direct_net
+ - attachment
+ feature_hsl_direct_net:
+ - hsl_direct_net
+ - feature
+ end_point_hsl_direct_net:
+ - hsl_direct_net
+ - end_point
+ requirements:
+ dependency_service_instance4:
+ - service_instance4
+ - dependency
+ dependency_hsl_direct_net:
+ - hsl_direct_net
+ - dependency
+ link_port_0_service_instance4:
+ - service_instance4
+ - link_port_0
+ link_port_1_service_instance4:
+ - service_instance4
+ - link_port_1
+ network_service_policy:
+ - service_policy
+ - network
+ dependency_service_policy:
+ - service_policy
+ - dependency
+ link_port_2_service_instance4:
+ - service_instance4
+ - link_port_2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml
new file mode 100644
index 0000000000..031d40e78f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw3_service_instance4ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw3_service_instance4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance4
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance4
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance4
+ relationship: tosca.relationships.network.BindsTo
+ service_instance4:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ groups:
+ service_instance4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw3.yml
+ members:
+ - service_instance4
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance4
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance4
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance4
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance4
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance4
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml
new file mode 100644
index 0000000000..2bfeeb0797
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml
@@ -0,0 +1,541 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ service_policy_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Policy Name
+ st_static_routes_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of static routes enabled-disabled
+ st_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service type
+ st_service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of interface types
+ st_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: service mode
+ Cricket_OCS_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ oam_mgmt_net_0_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of OAM network
+ start_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of dst port
+ st_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability zone
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ st_scaling:
+ hidden: false
+ immutable: false
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ hidden: false
+ immutable: false
+ type: float
+ description: maximum number of firewall instances for scaling
+ start_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: Start of src port
+ network_param2:
+ hidden: false
+ immutable: false
+ type: string
+ service_policy_direction:
+ hidden: false
+ immutable: false
+ type: string
+ description: Direction of Policy
+ network_param1:
+ hidden: false
+ immutable: false
+ type: string
+ st_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of service template
+ hsl_direct_net3:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net4:
+ hidden: false
+ immutable: false
+ type: string
+ HSL_direct_net_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network gateway address
+ hsl_direct_net1:
+ hidden: false
+ immutable: false
+ type: string
+ hsl_direct_net2:
+ hidden: false
+ immutable: false
+ type: string
+ st_shared_ip_list:
+ hidden: false
+ immutable: false
+ type: string
+ description: List of shared ip enabled-disabled
+ Cricket_OCS_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Cricket OCS network
+ end_src_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of src port
+ end_dst_ports:
+ hidden: false
+ immutable: false
+ type: float
+ description: End of dst port
+ st_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the image
+ HSL_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ node_templates:
+ service_instance2:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw_service_instance2ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param2
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ service_instance1:
+ type: org.openecomp.resource.abstract.nodes.heat.service_template
+ directives:
+ - substitutable
+ properties:
+ flavor:
+ get_input: st_flavor
+ availability_zone:
+ get_input: availability_zone_1
+ image_name:
+ get_input: st_image_name
+ service_template_filter:
+ substitute_service_template: OCS-fw_service_instance1ServiceTemplate.yaml
+ count:
+ get_input: max_num_fw_instances
+ scaling_enabled:
+ get_input: st_scaling
+ mandatory: false
+ service_type:
+ get_input: st_type
+ static_routes_list:
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_static_routes_list
+ - ','
+ - 2
+ service_template_name:
+ get_input: st_name
+ service_interface_type_list:
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_service_interface_type_list
+ - ','
+ - 2
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param1
+ - virtual_network:
+ get_input: network_param2
+ service_mode:
+ get_input: st_mode
+ shared_ip_list:
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 0
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 1
+ - token:
+ - get_input: st_shared_ip_list
+ - ','
+ - 2
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: hsl_direct_net
+ relationship: tosca.relationships.DependsOn
+ test_nested2:
+ type: org.openecomp.resource.abstract.nodes.heat.OCS-fw2
+ directives:
+ - substitutable
+ properties:
+ network_param2:
+ get_input: network_param2
+ service_template_filter:
+ substitute_service_template: OCS-fw2ServiceTemplate.yaml
+ network_param1:
+ get_input: network_param1
+ hsl_direct_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: HSL_direct_net_id
+ subnets:
+ hsl_ip_subnet:
+ cidr:
+ get_input: HSL_direct_net_cidr
+ gateway_ip:
+ get_input: HSL_direct_net_gateway
+ service_policy:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ policy_rule:
+ - src_ports:
+ - start_port:
+ get_input: start_src_ports
+ end_port:
+ get_input: end_src_ports
+ protocol: any
+ action_list:
+ apply_service:
+ - service_instance1
+ dst_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_direct_net_id
+ dst_ports:
+ - start_port:
+ get_input: start_dst_ports
+ end_port:
+ get_input: end_dst_ports
+ src_addresses:
+ - virtual_network:
+ get_input: Cricket_OCS_protected_net_id
+ direction:
+ get_input: service_policy_direction
+ name:
+ get_input: service_policy_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: service_instance1
+ relationship: tosca.relationships.DependsOn
+ groups:
+ OCS-fw_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw.yml
+ description: |
+ Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+ members:
+ - service_instance2
+ - service_instance1
+ - test_nested2
+ - hsl_direct_net
+ - service_policy
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw
+ capabilities:
+ feature_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - feature_hsl_direct_net_test_nested3
+ feature_service_instance1:
+ - service_instance1
+ - feature
+ feature_service_policy_test_nested2:
+ - test_nested2
+ - feature_service_policy
+ feature_service_instance2:
+ - service_instance2
+ - feature
+ feature_test_nested3_test_nested2:
+ - test_nested2
+ - feature_test_nested3
+ attachment_hsl_direct_net:
+ - hsl_direct_net
+ - attachment
+ feature_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - feature_service_instance4_test_nested3
+ feature_service_instance3_test_nested2:
+ - test_nested2
+ - feature_service_instance3
+ feature_hsl_direct_net_test_nested2:
+ - test_nested2
+ - feature_hsl_direct_net
+ end_point_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - end_point_hsl_direct_net_test_nested3
+ end_point_hsl_direct_net:
+ - hsl_direct_net
+ - end_point
+ link_hsl_direct_net:
+ - hsl_direct_net
+ - link
+ feature_service_policy:
+ - service_policy
+ - feature
+ link_hsl_direct_net_test_nested2:
+ - test_nested2
+ - link_hsl_direct_net
+ attachment_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - attachment_hsl_direct_net_test_nested3
+ attachment_hsl_direct_net_test_nested2:
+ - test_nested2
+ - attachment_hsl_direct_net
+ feature_service_instance1_test_nested2:
+ - test_nested2
+ - feature_service_instance1
+ link_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - link_hsl_direct_net_test_nested3
+ feature_test_nested2:
+ - test_nested2
+ - feature
+ feature_hsl_direct_net:
+ - hsl_direct_net
+ - feature
+ feature_service_policy_test_nested3_test_nested2:
+ - test_nested2
+ - feature_service_policy_test_nested3
+ end_point_hsl_direct_net_test_nested2:
+ - test_nested2
+ - end_point_hsl_direct_net
+ requirements:
+ link_port_1_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - link_port_1_service_instance4_test_nested3
+ dependency_hsl_direct_net:
+ - hsl_direct_net
+ - dependency
+ dependency_hsl_direct_net_test_nested2:
+ - test_nested2
+ - dependency_hsl_direct_net
+ dependency_hsl_direct_net_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_hsl_direct_net_test_nested3
+ network_service_policy_test_nested3_test_nested2:
+ - test_nested2
+ - network_service_policy_test_nested3
+ link_port_2_service_instance1:
+ - service_instance1
+ - link_port_2
+ link_port_2_service_instance2:
+ - service_instance2
+ - link_port_2
+ dependency_service_policy:
+ - service_policy
+ - dependency
+ dependency_service_instance1_test_nested2:
+ - test_nested2
+ - dependency_service_instance1
+ link_port_0_service_instance3_test_nested2:
+ - test_nested2
+ - link_port_0_service_instance3
+ link_port_2_service_instance3_test_nested2:
+ - test_nested2
+ - link_port_2_service_instance3
+ dependency_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_service_instance4_test_nested3
+ dependency_service_policy_test_nested2:
+ - test_nested2
+ - dependency_service_policy
+ dependency_test_nested2:
+ - test_nested2
+ - dependency
+ link_port_0_service_instance1_test_nested2:
+ - test_nested2
+ - link_port_0_service_instance1
+ link_port_1_service_instance2:
+ - service_instance2
+ - link_port_1
+ link_port_1_service_instance1:
+ - service_instance1
+ - link_port_1
+ link_port_1_service_instance3_test_nested2:
+ - test_nested2
+ - link_port_1_service_instance3
+ link_port_0_service_instance2:
+ - service_instance2
+ - link_port_0
+ link_port_0_service_instance1:
+ - service_instance1
+ - link_port_0
+ link_port_0_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - link_port_0_service_instance4_test_nested3
+ dependency_service_policy_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_service_policy_test_nested3
+ link_port_1_service_instance1_test_nested2:
+ - test_nested2
+ - link_port_1_service_instance1
+ network_service_policy:
+ - service_policy
+ - network
+ network_service_policy_test_nested2:
+ - test_nested2
+ - network_service_policy
+ dependency_service_instance3_test_nested2:
+ - test_nested2
+ - dependency_service_instance3
+ link_port_2_service_instance1_test_nested2:
+ - test_nested2
+ - link_port_2_service_instance1
+ dependency_test_nested3_test_nested2:
+ - test_nested2
+ - dependency_test_nested3
+ dependency_service_instance2:
+ - service_instance2
+ - dependency
+ link_port_2_service_instance4_test_nested3_test_nested2:
+ - test_nested2
+ - link_port_2_service_instance4_test_nested3
+ dependency_service_instance1:
+ - service_instance1
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml
new file mode 100644
index 0000000000..a80565137c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance1ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw_service_instance1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ service_instance1:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ service_instance1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw.yml
+ members:
+ - service_instance1
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance1
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance1
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance1
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml
new file mode 100644
index 0000000000..1ba7cd1567
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/expectedoutputfiles/OCS-fw_service_instance2ServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: OCS-fw_service_instance2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ availability_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone to create servers in
+ required: false
+ status: SUPPORTED
+ static_routes_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Static routes enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ availability_zone_enable:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates availability zone is enabled
+ required: false
+ default: false
+ status: SUPPORTED
+ service_template_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service template name
+ required: false
+ status: SUPPORTED
+ ordered_interfaces:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: Indicates if service interface are ordered
+ required: false
+ default: false
+ status: SUPPORTED
+ flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor
+ required: false
+ status: SUPPORTED
+ image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image name
+ required: true
+ status: SUPPORTED
+ service_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service type
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - firewall
+ - analyzer
+ - source-nat
+ - loadbalancer
+ service_interface_type_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interface types
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ constraints:
+ - valid_values:
+ - management
+ - left
+ - right
+ - other
+ service_instance_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service instance name
+ required: true
+ status: SUPPORTED
+ interface_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of interfaces
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
+ service_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service mode
+ required: true
+ status: SUPPORTED
+ constraints:
+ - valid_values:
+ - transparent
+ - in-network
+ - in-network-nat
+ shared_ip_list:
+ hidden: false
+ immutable: false
+ type: list
+ description: Shared ips enabled
+ required: false
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ node_templates:
+ service_instance2:
+ type: org.openecomp.resource.vfc.nodes.heat.st
+ properties:
+ availability_zone:
+ get_input: availability_zone
+ static_routes_list:
+ get_input: static_routes_list
+ availability_zone_enable:
+ get_input: availability_zone_enable
+ service_template_name:
+ get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
+ service_instance_name:
+ get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
+ service_mode:
+ get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
+ port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 0
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 0
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 0
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 0
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 0
+ ip_address:
+ get_input:
+ - interface_list
+ - 0
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 0
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance2
+ relationship: tosca.relationships.network.BindsTo
+ port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 1
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 1
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 1
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 1
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 1
+ ip_address:
+ get_input:
+ - interface_list
+ - 1
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance2
+ relationship: tosca.relationships.network.BindsTo
+ port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
+ properties:
+ static_routes:
+ get_input:
+ - interface_list
+ - 2
+ - static_routes
+ virtual_network:
+ get_input:
+ - interface_list
+ - 2
+ - virtual_network
+ static_route:
+ get_input:
+ - static_routes_list
+ - 2
+ allowed_address_pairs:
+ get_input:
+ - interface_list
+ - 2
+ - allowed_address_pairs
+ shared_ip:
+ get_input:
+ - shared_ip_list
+ - 2
+ ip_address:
+ get_input:
+ - interface_list
+ - 2
+ - ip_address
+ interface_type:
+ get_input:
+ - service_interface_type_list
+ - 2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: service_instance2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ service_instance2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/OCS-fw.yml
+ members:
+ - service_instance2
+ - port_0
+ - port_1
+ - port_2
+ outputs:
+ tenant_id:
+ description: Tenant id of the Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - tenant_id
+ fq_name:
+ description: The FQ name of the service instance
+ value:
+ get_attribute:
+ - service_instance2
+ - fq_name
+ service_template_name:
+ description: Service Template of the Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - service_template_name
+ show:
+ description: All attributes
+ value:
+ get_attribute:
+ - service_instance2
+ - show
+ active_vms:
+ description: Number of service VMs active for this Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - active_vms
+ service_instance_name:
+ description: The name of the service instance
+ value:
+ get_attribute:
+ - service_instance2
+ - service_instance_name
+ virtual_machines:
+ description: Service VMs for the Service Instance
+ value:
+ get_attribute:
+ - service_instance2
+ - virtual_machines
+ status:
+ description: Status of the service instance
+ value:
+ get_attribute:
+ - service_instance2
+ - status
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.service_template
+ requirements:
+ link_port_0:
+ - port_0
+ - link
+ link_port_1:
+ - port_1
+ - link
+ link_port_2:
+ - port_2
+ - 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/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..55e5730132
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/MANIFEST.json
@@ -0,0 +1,31 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "base.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "OCS-fw.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "OCS-fw2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "OCS-fw3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw.yml
new file mode 100644
index 0000000000..261bbf2f36
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw.yml
@@ -0,0 +1,198 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Based on the following reference for the HOT-DMZ-FW template:
+ Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+
+parameters:
+ hsl_direct_net1:
+ type: string
+ hsl_direct_net2:
+ type: string
+ hsl_direct_net3:
+ type: string
+ hsl_direct_net4:
+ type: string
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ service_instance_name:
+ type: string
+ description: Service instance name
+ service_policy_name:
+ type: string
+ description: Policy Name
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ start_src_ports:
+ type: number
+ description: Start of src port
+ end_src_ports:
+ type: number
+ description: End of src port
+ start_dst_ports:
+ type: number
+ description: Start of dst port
+ end_dst_ports:
+ type: number
+ description: End of dst port
+ st_name:
+ type: string
+ description: Name of service template
+ st_mode:
+ type: string
+ description: service mode
+ st_type:
+ type: string
+ description: service type
+ st_image_name:
+ type: string
+ description: Name of the image
+ st_flavor:
+ type: string
+ description: Flavor
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ type: number
+ description: maximum number of firewall instances for scaling
+ availability_zone_1:
+ type: string
+ description: availability zone
+ network_param1:
+ type: string
+ network_param2:
+ type: string
+
+resources:
+
+ hsl_direct_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: HSL_direct_net_id }
+
+ hsl_ip_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: hsl_direct_net }
+ cidr: { get_param: HSL_direct_net_cidr }
+ gateway_ip: { get_param: HSL_direct_net_gateway }
+
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor }
+ service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling }
+
+ service_instance1:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_instance2:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param2 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_policy:
+ type: OS::Contrail::NetworkPolicy
+ depends_on: [ service_instance1 ]
+ properties:
+ name: { get_param: service_policy_name }
+ entries:
+ policy_rule: [
+ {
+ "direction": { get_param: service_policy_direction },
+ "protocol": "any",
+ "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}],
+ "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}],
+ "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}],
+ "action_list": { "apply_service": [{ get_resource: service_instance1 }]},
+ "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}],
+ },
+ ]
+
+ service_policy_attach_direct_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_direct_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ service_policy_attach_protected_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_protected_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ test_nested2:
+ type: OCS-fw2.yml
+ properties:
+ network_param1: { get_param: network_param1}
+ network_param2: { get_param: network_param2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw2.yml
new file mode 100644
index 0000000000..7abef08c97
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw2.yml
@@ -0,0 +1,198 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Based on the following reference for the HOT-DMZ-FW template:
+ Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+
+parameters:
+ hsl_direct_net1:
+ type: string
+ hsl_direct_net2:
+ type: string
+ hsl_direct_net3:
+ type: string
+ hsl_direct_net4:
+ type: string
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ service_instance_name:
+ type: string
+ description: Service instance name
+ service_policy_name:
+ type: string
+ description: Policy Name
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ start_src_ports:
+ type: number
+ description: Start of src port
+ end_src_ports:
+ type: number
+ description: End of src port
+ start_dst_ports:
+ type: number
+ description: Start of dst port
+ end_dst_ports:
+ type: number
+ description: End of dst port
+ st_name:
+ type: string
+ description: Name of service template
+ st_mode:
+ type: string
+ description: service mode
+ st_type:
+ type: string
+ description: service type
+ st_image_name:
+ type: string
+ description: Name of the image
+ st_flavor:
+ type: string
+ description: Flavor
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ type: number
+ description: maximum number of firewall instances for scaling
+ availability_zone_1:
+ type: string
+ description: availability zone
+ network_param1:
+ type: string
+ network_param2:
+ type: string
+
+resources:
+
+ hsl_direct_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: HSL_direct_net_id }
+
+ hsl_ip_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: hsl_direct_net }
+ cidr: { get_param: HSL_direct_net_cidr }
+ gateway_ip: { get_param: HSL_direct_net_gateway }
+
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor }
+ service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling }
+
+ service_instance3:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_instance1:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param2 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+ service_policy:
+ type: OS::Contrail::NetworkPolicy
+ depends_on: [ service_instance3 ]
+ properties:
+ name: { get_param: service_policy_name }
+ entries:
+ policy_rule: [
+ {
+ "direction": { get_param: service_policy_direction },
+ "protocol": "any",
+ "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}],
+ "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}],
+ "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}],
+ "action_list": { "apply_service": [{ get_resource: service_instance3 }]},
+ "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}],
+ },
+ ]
+
+ service_policy_attach_direct_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_direct_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ service_policy_attach_protected_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_protected_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ test_nested3:
+ type: OCS-fw3.yml
+ properties:
+ network_param1: { get_param: network_param1}
+ network_param2: { get_param: network_param1} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw3.yml
new file mode 100644
index 0000000000..45563922d6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/OCS-fw3.yml
@@ -0,0 +1,173 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Based on the following reference for the HOT-DMZ-FW template:
+ Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two.
+
+parameters:
+ hsl_direct_net1:
+ type: string
+ hsl_direct_net2:
+ type: string
+ hsl_direct_net3:
+ type: string
+ hsl_direct_net4:
+ type: string
+ HSL_direct_net_id:
+ type: string
+ description: Name of HSL (Logging) network
+ HSL_direct_net_cidr:
+ type: string
+ description: HSL (Logging) network address (CIDR notation)
+ HSL_direct_net_gateway:
+ type: string
+ description: HSL (Logging) network gateway address
+ oam_mgmt_net_0_id:
+ type: string
+ description: Name of OAM network
+ Cricket_OCS_direct_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Name of Cricket OCS network
+ service_instance_name:
+ type: string
+ description: Service instance name
+ service_policy_name:
+ type: string
+ description: Policy Name
+ service_policy_direction:
+ type: string
+ description: Direction of Policy
+ start_src_ports:
+ type: number
+ description: Start of src port
+ end_src_ports:
+ type: number
+ description: End of src port
+ start_dst_ports:
+ type: number
+ description: Start of dst port
+ end_dst_ports:
+ type: number
+ description: End of dst port
+ st_name:
+ type: string
+ description: Name of service template
+ st_mode:
+ type: string
+ description: service mode
+ st_type:
+ type: string
+ description: service type
+ st_image_name:
+ type: string
+ description: Name of the image
+ st_flavor:
+ type: string
+ description: Flavor
+ st_service_interface_type_list:
+ type: string
+ description: List of interface types
+ st_shared_ip_list:
+ type: string
+ description: List of shared ip enabled-disabled
+ st_static_routes_list:
+ type: string
+ description: List of static routes enabled-disabled
+ st_scaling:
+ type: string
+ description: Indicates whether service scaling is enabled
+ max_num_fw_instances:
+ type: number
+ description: maximum number of firewall instances for scaling
+ availability_zone_1:
+ type: string
+ description: availability zone
+ network_param1:
+ type: string
+ network_param2:
+ type: string
+
+resources:
+
+ hsl_direct_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: HSL_direct_net_id }
+
+ hsl_ip_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: hsl_direct_net }
+ cidr: { get_param: HSL_direct_net_cidr }
+ gateway_ip: { get_param: HSL_direct_net_gateway }
+
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor }
+ service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling }
+
+ service_instance4:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param1 }
+ },
+ {
+ virtual_network: { get_param: network_param2 }
+ }
+ ]
+
+
+ service_policy:
+ type: OS::Contrail::NetworkPolicy
+ depends_on: [ service_instance4 ]
+ properties:
+ name: { get_param: service_policy_name }
+ entries:
+ policy_rule: [
+ {
+ "direction": { get_param: service_policy_direction },
+ "protocol": "any",
+ "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}],
+ "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}],
+ "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}],
+ "action_list": { "apply_service": [{ get_resource: service_instance4 }]},
+ "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}],
+ },
+ ]
+
+ service_policy_attach_direct_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_direct_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
+ service_policy_attach_protected_net:
+ type: OS::Contrail::AttachPolicy
+ depends_on: [ service_policy ]
+ properties:
+ network: { get_param: Cricket_OCS_protected_net_id }
+ policy: { get_attr: [service_policy, fq_name] }
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/addOn.yml
new file mode 100644
index 0000000000..2785688607
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/addOn.yml
@@ -0,0 +1,37 @@
+heat_template_version: 2013-05-23
+
+description: ASC External Networks Template
+
+parameters:
+ Internal1_net_name:
+ type: string
+ Internal2_net_name:
+ type: string
+ Internal1_forwarding_mode:
+ type: string
+ Internal2_forwarding_mode:
+ type: string
+ Internal1_shared:
+ type: string
+ Internal2_shared:
+ type: string
+
+resources:
+ Internal1-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+ forwarding_mode: { get_param: Internal1_forwarding_mode }
+ shared: { get_param: Internal1_shared }
+ Internal2-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+ forwarding_mode: { get_param: Internal1_forwarding_mode }
+ shared: { get_param: Internal1_shared }
+
+ test_nested:
+ type: OCS-fw.yml
+ properties:
+ network_param1: { get_resource: Internal1-net}
+ network_param2: { get_resource: Internal2-net} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/base.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/base.yml
new file mode 100644
index 0000000000..2785688607
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/connectToNetworkSharedMultiNested/inputfiles/base.yml
@@ -0,0 +1,37 @@
+heat_template_version: 2013-05-23
+
+description: ASC External Networks Template
+
+parameters:
+ Internal1_net_name:
+ type: string
+ Internal2_net_name:
+ type: string
+ Internal1_forwarding_mode:
+ type: string
+ Internal2_forwarding_mode:
+ type: string
+ Internal1_shared:
+ type: string
+ Internal2_shared:
+ type: string
+
+resources:
+ Internal1-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+ forwarding_mode: { get_param: Internal1_forwarding_mode }
+ shared: { get_param: Internal1_shared }
+ Internal2-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+ forwarding_mode: { get_param: Internal1_forwarding_mode }
+ shared: { get_param: Internal1_shared }
+
+ test_nested:
+ type: OCS-fw.yml
+ properties:
+ network_param1: { get_resource: Internal1-net}
+ network_param2: { get_resource: Internal2-net} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index d5a177bddb..d336d8242d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.compute_service_template_1:
derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml
index a96c947d9d..b663dca29a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
service_policy_name:
@@ -190,7 +166,7 @@ topology_template:
image_name:
get_input: st_image
service_template_filter:
- substitute_service_template: service_instance_1ServiceTemplate.yaml
+ substitute_service_template: OCS-fw_service_instance_1ServiceTemplate.yaml
count:
get_input: max_num_fw_instances
scaling_enabled: false
@@ -233,6 +209,8 @@ topology_template:
- management,left,right,other
- ','
- 3
+ service_instance_name:
+ get_input: service_instance_name
interface_list:
- virtual_network:
get_input: oam_mgmt_net_0_id
@@ -248,8 +226,6 @@ topology_template:
get_input: prefix_2
virtual_network:
get_input: oam_mgmt_net_1_id
- service_instance_name:
- get_input: service_instance_name
service_mode:
get_input: st_mode
shared_ip_list:
@@ -290,7 +266,7 @@ topology_template:
image_name:
get_input: st_image_name
service_template_filter:
- substitute_service_template: service_instance_2ServiceTemplate.yaml
+ substitute_service_template: OCS-fw_service_instance_2ServiceTemplate.yaml
count: 9
mandatory: true
service_type:
@@ -315,13 +291,13 @@ topology_template:
- get_input: st_service_interface_type_list
- ','
- 1
+ service_instance_name:
+ get_input: service_instance_name
interface_list:
- virtual_network:
get_input: oam_mgmt_net_0_id
- virtual_network:
get_input: Cricket_OCS_direct_net_id
- service_instance_name:
- get_input: service_instance_name
service_mode:
get_input: st_mode
shared_ip_list:
@@ -388,7 +364,7 @@ topology_template:
node: service_instance_1
relationship: tosca.relationships.DependsOn
groups:
- OCS-fw:
+ OCS-fw_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_1ServiceTemplate.yaml
index d84d6c6889..69d73f9034 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_1ServiceTemplate.yaml
@@ -1,35 +1,11 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: service_instance_1
+ template_name: OCS-fw_service_instance_1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
availability_zone:
@@ -154,22 +130,32 @@ topology_template:
service_instance_1:
type: org.openecomp.resource.vfc.nodes.heat.compute_service_template_1
properties:
- flavor:
- get_input: flavor
- image_name:
- get_input: image_name
availability_zone:
get_input: availability_zone
- service_type:
- get_input: service_type
+ static_routes_list:
+ get_input: static_routes_list
availability_zone_enable:
get_input: availability_zone_enable
service_template_name:
get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
service_instance_name:
get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
service_mode:
get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
port_0:
type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
properties:
@@ -331,7 +317,7 @@ topology_template:
node: service_instance_1
relationship: tosca.relationships.network.BindsTo
groups:
- service_instance_1:
+ service_instance_1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_2ServiceTemplate.yaml
index 3a2de0696f..1a0f590d58 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_2ServiceTemplate.yaml
@@ -1,35 +1,11 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: service_instance_2
+ template_name: OCS-fw_service_instance_2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
availability_zone:
@@ -154,22 +130,32 @@ topology_template:
service_instance_2:
type: org.openecomp.resource.vfc.nodes.heat.st
properties:
- flavor:
- get_input: flavor
- image_name:
- get_input: image_name
availability_zone:
get_input: availability_zone
- service_type:
- get_input: service_type
+ static_routes_list:
+ get_input: static_routes_list
availability_zone_enable:
get_input: availability_zone_enable
service_template_name:
get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
service_instance_name:
get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
service_mode:
get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
port_0:
type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
properties:
@@ -251,7 +237,7 @@ topology_template:
node: service_instance_2
relationship: tosca.relationships.network.BindsTo
groups:
- service_instance_2:
+ service_instance_2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index b00d3d8bc0..f9e128260b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.service_template:
derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute
@@ -60,5 +36,5 @@ node_types:
occurrences:
- 1
- 1
- org.openecomp.resource.vfc.nodes.heat.compute_service_template:
+ org.openecomp.resource.vfc.nodes.heat.st:
derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml
index 016e4d3f70..7b2ef898db 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
protected_net:
@@ -93,12 +69,6 @@ topology_template:
type: float
description: Start of dst port
default: -1
- st_flavor:
- hidden: false
- immutable: false
- type: string
- description: Flavor
- default: lc.medium
st_scaling:
hidden: false
immutable: false
@@ -133,6 +103,12 @@ topology_template:
type: string
description: Direction of Policy
default: <>
+ st_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor
+ default: lc.medium
st_name:
hidden: false
immutable: false
@@ -205,11 +181,11 @@ topology_template:
get_input: st_name
ordered_interfaces: true
flavor:
- get_input: st_flavor
+ get_input: st_flavor_name
image_name:
get_input: st_image
service_template_filter:
- substitute_service_template: service_instanceServiceTemplate.yaml
+ substitute_service_template: lcp1_mss.oam-fw_si_service_instanceServiceTemplate.yaml
count: 5
scaling_enabled:
get_input: st_scaling
@@ -233,6 +209,8 @@ topology_template:
- get_input: st_service_interface_type_list
- ','
- 3
+ service_instance_name:
+ get_input: service_instance_name
interface_list:
- virtual_network:
get_input: oam_mgmt_net_id
@@ -245,8 +223,6 @@ topology_template:
get_input: oam_direct_net_id
- virtual_network:
get_input: oam_hsl_net_id
- service_instance_name:
- get_input: service_instance_name
service_mode:
get_input: st_mode
shared_ip_list:
@@ -289,7 +265,7 @@ topology_template:
node: service_instance
relationship: tosca.relationships.DependsOn
groups:
- lcp1_mss.oam-fw_si:
+ lcp1_mss.oam-fw_si_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/lcp1_mss.oam-fw_si.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/service_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/lcp1_mss.oam-fw_si_service_instanceServiceTemplate.yaml
index e9f2511604..53cb41cc75 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/service_instanceServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/lcp1_mss.oam-fw_si_service_instanceServiceTemplate.yaml
@@ -1,35 +1,11 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: service_instance
+ template_name: lcp1_mss.oam-fw_si_service_instance
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
availability_zone:
@@ -316,26 +292,36 @@ topology_template:
node: service_instance
relationship: tosca.relationships.network.BindsTo
service_instance:
- type: org.openecomp.resource.vfc.nodes.heat.compute_service_template
+ type: org.openecomp.resource.vfc.nodes.heat.st
properties:
- flavor:
- get_input: flavor
- image_name:
- get_input: image_name
availability_zone:
get_input: availability_zone
- service_type:
- get_input: service_type
+ static_routes_list:
+ get_input: static_routes_list
availability_zone_enable:
get_input: availability_zone_enable
service_template_name:
get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
service_instance_name:
get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
service_mode:
get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
groups:
- service_instance:
+ service_instance_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/lcp1_mss.oam-fw_si.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json
index 63989f282b..8209caa91e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json
@@ -1,17 +1,17 @@
{
- "name": "vLCP",
- "description": "",
- "data": [
+ "name": "vLCP",
+ "description": "",
+ "data": [
+ {
+ "file": "lcp1_mss.oam-fw_si.yaml",
+ "type": "HEAT",
+ "isBase": "false",
+ "data": [
{
- "file": "lcp1_mss.oam-fw_si.yaml",
- "type": "HEAT",
- "isBase": "false",
- "data": [
- {
- "file": "lcp1_mss.oam-fw_si_with_comments.env",
- "type": "HEAT_ENV"
- }
- ]
+ "file": "lcp1_mss.oam-fw_si_with_comments.env",
+ "type": "HEAT_ENV"
}
- ]
+ ]
+ }
+ ]
} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml
index 33620a9b91..8b3b637e87 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml
@@ -43,7 +43,7 @@ parameters:
st_image:
type: string
description: Name of the image
- st_flavor:
+ st_flavor_name:
type: string
description: Flavor
st_service_interface_type_list:
@@ -87,7 +87,7 @@ resources:
service_mode: { get_param: st_mode }
service_type: { get_param: st_type }
image_name: { get_param: st_image }
- flavor: { get_param: st_flavor }
+ flavor: { get_param: st_flavor_name }
service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] }
shared_ip_list: [ true, on, no, 0 ]
static_routes_list: { "Fn::Split" : [ ";", "n;false;false;false" ] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env
index 718c5dba17..6313bc6d89 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env
@@ -10,7 +10,7 @@ parameters:
st_mode: in-network-nat
st_type: firewall
st_image: NIMBUS_SRX_151X49-D303
- st_flavor: lc.medium
+ st_flavor_name: lc.medium
st_service_interface_type_list: management,left,right,other
st_shared_ip_list: False,True,False,False
st_static_routes_list: True,True,True,True
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index b00d3d8bc0..f8f68fca5d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.service_template:
derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml
index 942df0b120..f0a62e7984 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
service_policy_name:
@@ -187,7 +163,7 @@ topology_template:
image_name:
get_input: st_image
service_template_filter:
- substitute_service_template: service_instance_1ServiceTemplate.yaml
+ substitute_service_template: OCS-fw_service_instance_1ServiceTemplate.yaml
count: 1
scaling_enabled:
get_input: st_scaling
@@ -230,6 +206,8 @@ topology_template:
- management,left,right,other
- ','
- 3
+ service_instance_name:
+ get_input: service_instance_name
interface_list:
- virtual_network:
get_input: oam_mgmt_net_0_id
@@ -245,8 +223,6 @@ topology_template:
get_input: prefix_2
virtual_network:
get_input: oam_mgmt_net_1_id
- service_instance_name:
- get_input: service_instance_name
service_mode:
get_input: st_mode
shared_ip_list:
@@ -287,7 +263,7 @@ topology_template:
image_name:
get_input: st_image
service_template_filter:
- substitute_service_template: service_instance_2ServiceTemplate.yaml
+ substitute_service_template: OCS-fw_service_instance_2ServiceTemplate.yaml
count:
get_input: max_num_fw_instances
scaling_enabled:
@@ -331,6 +307,8 @@ topology_template:
- management,left,right,other
- ','
- 3
+ service_instance_name:
+ get_input: service_instance_name
interface_list:
- virtual_network:
get_input: oam_mgmt_net_0_id
@@ -346,8 +324,6 @@ topology_template:
get_input: prefix_2
virtual_network:
get_input: oam_mgmt_net_1_id
- service_instance_name:
- get_input: service_instance_name
service_mode:
get_input: st_mode
shared_ip_list:
@@ -427,7 +403,7 @@ topology_template:
node: service_instance_1
relationship: tosca.relationships.DependsOn
groups:
- OCS-fw:
+ OCS-fw_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_1ServiceTemplate.yaml
index 4b53e28b6f..de34c8fba8 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_1ServiceTemplate.yaml
@@ -1,35 +1,11 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: service_instance_1
+ template_name: OCS-fw_service_instance_1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
availability_zone:
@@ -154,22 +130,32 @@ topology_template:
service_instance_1:
type: org.openecomp.resource.vfc.nodes.heat.compute_service_template
properties:
- flavor:
- get_input: flavor
- image_name:
- get_input: image_name
availability_zone:
get_input: availability_zone
- service_type:
- get_input: service_type
+ static_routes_list:
+ get_input: static_routes_list
availability_zone_enable:
get_input: availability_zone_enable
service_template_name:
get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
service_instance_name:
get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
service_mode:
get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
port_0:
type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
properties:
@@ -331,7 +317,7 @@ topology_template:
node: service_instance_1
relationship: tosca.relationships.network.BindsTo
groups:
- service_instance_1:
+ service_instance_1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_2ServiceTemplate.yaml
index f0e67ea99c..818e411705 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/OCS-fw_service_instance_2ServiceTemplate.yaml
@@ -1,35 +1,11 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: service_instance_2
+ template_name: OCS-fw_service_instance_2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
availability_zone:
@@ -154,22 +130,32 @@ topology_template:
service_instance_2:
type: org.openecomp.resource.vfc.nodes.heat.compute_service_template
properties:
- flavor:
- get_input: flavor
- image_name:
- get_input: image_name
availability_zone:
get_input: availability_zone
- service_type:
- get_input: service_type
+ static_routes_list:
+ get_input: static_routes_list
availability_zone_enable:
get_input: availability_zone_enable
service_template_name:
get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
service_instance_name:
get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
service_mode:
get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
port_0:
type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
properties:
@@ -331,7 +317,7 @@ topology_template:
node: service_instance_2
relationship: tosca.relationships.network.BindsTo
groups:
- service_instance_2:
+ service_instance_2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 73abe8ecb0..a1a5a404ba 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.service_template:
derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml
index c6a6364988..108852543e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
Internal1_shared:
@@ -243,7 +219,7 @@ topology_template:
image_name:
get_input: st_image
service_template_filter:
- substitute_service_template: service_instanceServiceTemplate.yaml
+ substitute_service_template: OCS-fw_service_instanceServiceTemplate.yaml
count:
get_input: max_num_fw_instances
scaling_enabled:
@@ -295,6 +271,8 @@ topology_template:
- get_input: st_service_interface_type_list
- ','
- 4
+ service_instance_name:
+ get_input: service_instance_name
interface_list:
- virtual_network:
get_input: hsl_direct_net1
@@ -305,8 +283,6 @@ topology_template:
- virtual_network:
get_input: hsl_direct_net4
- virtual_network: hsl_direct_net
- service_instance_name:
- get_input: service_instance_name
service_mode:
get_input: st_mode
shared_ip_list:
@@ -386,7 +362,7 @@ topology_template:
node: service_instance
relationship: tosca.relationships.DependsOn
groups:
- OCS-fw:
+ OCS-fw_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
@@ -396,7 +372,7 @@ topology_template:
- hsl_direct_net
- service_instance
- service_policy
- network_base:
+ network_base_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/network_base.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/service_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/OCS-fw_service_instanceServiceTemplate.yaml
index 1933f88f6c..1980b18393 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/service_instanceServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/OCS-fw_service_instanceServiceTemplate.yaml
@@ -1,35 +1,11 @@
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
- template_name: service_instance
+ template_name: OCS-fw_service_instance
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
availability_zone:
@@ -354,24 +330,34 @@ topology_template:
service_instance:
type: org.openecomp.resource.vfc.nodes.heat.compute_service_template
properties:
- flavor:
- get_input: flavor
- image_name:
- get_input: image_name
availability_zone:
get_input: availability_zone
- service_type:
- get_input: service_type
+ static_routes_list:
+ get_input: static_routes_list
availability_zone_enable:
get_input: availability_zone_enable
service_template_name:
get_input: service_template_name
+ ordered_interfaces:
+ get_input: ordered_interfaces
+ flavor:
+ get_input: flavor
+ image_name:
+ get_input: image_name
+ service_type:
+ get_input: service_type
+ service_interface_type_list:
+ get_input: service_interface_type_list
service_instance_name:
get_input: service_instance_name
+ interface_list:
+ get_input: interface_list
service_mode:
get_input: service_mode
+ shared_ip_list:
+ get_input: shared_ip_list
groups:
- service_instance:
+ service_instance_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/OCS-fw.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
deleted file mode 100644
index a11b54226b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ /dev/null
@@ -1,154 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: GlobalSubstitutionTypes
-imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.st_image:
- derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute
- org.openecomp.resource.abstract.nodes.heat.service_template:
- derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute
- requirements:
- - link_port_0:
- capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
- relationship: tosca.relationships.network.LinksTo
- occurrences:
- - 1
- - 1
- org.openecomp.resource.abstract.nodes.heat.OCS-fw:
- derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
- properties:
- service_policy_name:
- type: string
- description: Policy Name
- st_static_routes_list:
- type: string
- description: List of static routes enabled-disabled
- st_type:
- type: string
- description: service type
- st_service_interface_type_list:
- type: string
- description: List of interface types
- st_mode:
- type: string
- description: service mode
- Cricket_OCS_protected_net_id:
- type: string
- description: Name of Cricket OCS network
- oam_mgmt_net_0_id:
- type: string
- description: Name of OAM network
- start_dst_ports:
- type: float
- description: Start of dst port
- st_flavor:
- type: string
- description: Flavor
- availability_zone_1:
- type: string
- description: availability zone
- service_instance_name:
- type: string
- description: Service instance name
- st_scaling:
- type: string
- description: Indicates whether service scaling is enabled
- max_num_fw_instances:
- type: float
- description: maximum number of firewall instances for scaling
- start_src_ports:
- type: float
- description: Start of src port
- service_policy_direction:
- type: string
- description: Direction of Policy
- st_name:
- type: string
- description: Name of service template
- hsl_direct_net3:
- type: string
- hsl_direct_net4:
- type: string
- HSL_direct_net_gateway:
- type: string
- description: HSL (Logging) network gateway address
- hsl_direct_net1:
- type: string
- hsl_direct_net2:
- type: string
- st_image:
- type: string
- description: Name of the image
- st_shared_ip_list:
- type: string
- description: List of shared ip enabled-disabled
- Cricket_OCS_direct_net_id:
- type: string
- description: Name of Cricket OCS network
- network_param:
- type: string
- end_src_ports:
- type: float
- description: End of src port
- end_dst_ports:
- type: float
- description: End of dst port
- HSL_direct_net_id:
- type: string
- description: Name of HSL (Logging) network
- HSL_direct_net_cidr:
- type: string
- description: HSL (Logging) network address (CIDR notation)
- requirements:
- - link_port_0_service_instance:
- capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
- relationship: tosca.relationships.network.LinksTo
- occurrences:
- - 1
- - 1
- - network_service_policy:
- capability: tosca.capabilities.Attachment
- node: tosca.nodes.network.Network
- relationship: org.openecomp.relationships.AttachesTo
- occurrences:
- - 0
- - UNBOUNDED
- capabilities:
- link_hsl_direct_net:
- type: tosca.capabilities.network.Linkable
- occurrences:
- - 1
- - UNBOUNDED
- attachment_hsl_direct_net:
- type: tosca.capabilities.Attachment
- 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/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml
deleted file mode 100644
index 53ecba9888..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml
+++ /dev/null
@@ -1,90 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: Main
-imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
- file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
-topology_template:
- inputs:
- Internal1_shared:
- hidden: false
- immutable: false
- type: string
- Internal1_forwarding_mode:
- hidden: false
- immutable: false
- type: string
- Internal2_net_name:
- hidden: false
- immutable: false
- type: string
- Internal2_forwarding_mode:
- hidden: false
- immutable: false
- type: string
- Internal2_shared:
- hidden: false
- immutable: false
- type: string
- Internal1_net_name:
- hidden: false
- immutable: false
- type: string
- node_templates:
- Internal1-net:
- type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
- properties:
- shared:
- get_input: Internal1_shared
- forwarding_mode:
- get_input: Internal1_forwarding_mode
- network_name:
- get_input: Internal1_net_name
- test_nested:
- type: org.openecomp.resource.abstract.nodes.heat.OCS-fw
- directives:
- - substitutable
- properties:
- service_template_filter:
- substitute_service_template: OCS-fwServiceTemplate.yaml
- network_param: Internal1-net
- requirements:
- - link_port_0:
- capability: tosca.capabilities.network.Linkable
- node: Internal1-net
- relationship: tosca.relationships.network.LinksTo
- groups:
- main:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/main.yml
- description: ASC External Networks Template
- members:
- - Internal1-net
- - test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml
deleted file mode 100644
index bbc95728c9..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml
+++ /dev/null
@@ -1,275 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: service_instance
-imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
- file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
-topology_template:
- inputs:
- availability_zone:
- hidden: false
- immutable: false
- type: string
- description: Availability zone to create servers in
- required: false
- status: SUPPORTED
- static_routes_list:
- hidden: false
- immutable: false
- type: list
- description: Static routes enabled
- required: false
- status: SUPPORTED
- entry_schema:
- type: boolean
- availability_zone_enable:
- hidden: false
- immutable: false
- type: boolean
- description: Indicates availability zone is enabled
- required: false
- default: false
- status: SUPPORTED
- service_template_name:
- hidden: false
- immutable: false
- type: string
- description: Service template name
- required: false
- status: SUPPORTED
- ordered_interfaces:
- hidden: false
- immutable: false
- type: boolean
- description: Indicates if service interface are ordered
- required: false
- default: false
- status: SUPPORTED
- flavor:
- hidden: false
- immutable: false
- type: string
- description: flavor
- required: false
- status: SUPPORTED
- image_name:
- hidden: false
- immutable: false
- type: string
- description: Image name
- required: true
- status: SUPPORTED
- service_type:
- hidden: false
- immutable: false
- type: string
- description: Service type
- required: true
- status: SUPPORTED
- constraints:
- - valid_values:
- - firewall
- - analyzer
- - source-nat
- - loadbalancer
- service_interface_type_list:
- hidden: false
- immutable: false
- type: list
- description: List of interface types
- required: true
- status: SUPPORTED
- entry_schema:
- type: string
- constraints:
- - valid_values:
- - management
- - left
- - right
- - other
- service_instance_name:
- hidden: false
- immutable: false
- type: string
- description: Service instance name
- required: true
- status: SUPPORTED
- interface_list:
- hidden: false
- immutable: false
- type: list
- description: List of interfaces
- required: false
- status: SUPPORTED
- entry_schema:
- type: org.openecomp.datatypes.heat.network.contrail.InterfaceData
- service_mode:
- hidden: false
- immutable: false
- type: string
- description: Service mode
- required: true
- status: SUPPORTED
- constraints:
- - valid_values:
- - transparent
- - in-network
- - in-network-nat
- shared_ip_list:
- hidden: false
- immutable: false
- type: list
- description: Shared ips enabled
- required: false
- status: SUPPORTED
- entry_schema:
- type: boolean
- node_templates:
- port_0:
- type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port
- properties:
- static_routes:
- get_input:
- - interface_list
- - 0
- - static_routes
- virtual_network:
- get_input:
- - interface_list
- - 0
- - virtual_network
- static_route:
- get_input:
- - static_routes_list
- - 0
- allowed_address_pairs:
- get_input:
- - interface_list
- - 0
- - allowed_address_pairs
- shared_ip:
- get_input:
- - shared_ip_list
- - 0
- ip_address:
- get_input:
- - interface_list
- - 0
- - ip_address
- interface_type:
- get_input:
- - service_interface_type_list
- - 0
- requirements:
- - binding:
- capability: tosca.capabilities.network.Bindable
- node: service_instance
- relationship: tosca.relationships.network.BindsTo
- service_instance:
- type: org.openecomp.resource.vfc.nodes.heat.st_image
- properties:
- flavor:
- get_input: flavor
- image_name:
- get_input: image_name
- availability_zone:
- get_input: availability_zone
- service_type:
- get_input: service_type
- availability_zone_enable:
- get_input: availability_zone_enable
- service_template_name:
- get_input: service_template_name
- service_instance_name:
- get_input: service_instance_name
- service_mode:
- get_input: service_mode
- groups:
- service_instance:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/OCS-fw.yml
- members:
- - service_instance
- - port_0
- outputs:
- tenant_id:
- description: Tenant id of the Service Instance
- value:
- get_attribute:
- - service_instance
- - tenant_id
- fq_name:
- description: The FQ name of the service instance
- value:
- get_attribute:
- - service_instance
- - fq_name
- service_template_name:
- description: Service Template of the Service Instance
- value:
- get_attribute:
- - service_instance
- - service_template_name
- show:
- description: All attributes
- value:
- get_attribute:
- - service_instance
- - show
- active_vms:
- description: Number of service VMs active for this Service Instance
- value:
- get_attribute:
- - service_instance
- - active_vms
- service_instance_name:
- description: The name of the service instance
- value:
- get_attribute:
- - service_instance
- - service_instance_name
- virtual_machines:
- description: Service VMs for the Service Instance
- value:
- get_attribute:
- - service_instance
- - virtual_machines
- status:
- description: Status of the service instance
- value:
- get_attribute:
- - service_instance
- - status
- substitution_mappings:
- node_type: org.openecomp.resource.abstract.nodes.heat.service_template
- requirements:
- link_port_0:
- - port_0
- - 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/services/heattotosca/contrailv2VMinterface/listNet/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/listNet/expectedoutputfiles/MainServiceTemplate.yaml
index 23c2d851f7..f186c6f7e5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/listNet/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/listNet/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
template_PortTuple_LB1:
@@ -92,7 +68,7 @@ topology_template:
virtual_network_refs: [
]
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -119,7 +95,7 @@ topology_template:
- jsa_net3
- fq_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -129,7 +105,7 @@ topology_template:
security_group_refs:
- get_input: oam_sec_group_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -160,7 +136,7 @@ topology_template:
- jsa_net1
- jsa_net5
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -186,7 +162,7 @@ topology_template:
- jsa_net5
- fq_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -221,7 +197,7 @@ topology_template:
- jsa_net5
- fq_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -240,12 +216,12 @@ topology_template:
- jsa_net4
- fq_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
groups:
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a515f5971f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,71 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+topology_template:
+ inputs:
+ vlc1_Internal2_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ internal_net_id_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal2_net
+ internal_net_id_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal1_net
+ security_group_int2_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ security_group_int1_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ vlc1_Internal1_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc_st_interface_type_int1:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ node_templates:
+ template_VMInt_INT1_VLC_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: security_group_int1_id
+ virtual_network_refs:
+ - get_input: internal_net_id_0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: vlc_st_interface_type_int1
+ virtual_machine_interface_mac_addresses:
+ - get_input: vlc1_Internal1_mac
+ - abc
+ groups:
+ vmme_vlc_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vmme_vlc.yml
+ description: |
+ Module HOT template to create vmme 2 vlc
+ members:
+ - template_VMInt_INT1_VLC_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..93bb84803b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "YY2016-227_vmme_vmme_.zip",
+ "description": "Desc",
+ "version": "0.1",
+ "data": [
+ {
+ "isBase": false,
+ "file": "vmme_vlc.yml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/vmme_vlc.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/vmme_vlc.yml
new file mode 100644
index 0000000000..813565a4d5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressStaticValue/inputfiles/vmme_vlc.yml
@@ -0,0 +1,47 @@
+heat_template_version: 2015-04-30
+
+description: >
+ Module HOT template to create vmme 2 vlc
+
+parameters:
+ vlc1_Internal1_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc1_Internal2_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ vlc_st_interface_type_int1:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ internal_net_id_0:
+ type: string
+ description: UUID of Internal1_net
+ internal_net_id_1:
+ type: string
+ description: UUID of Internal2_net
+ security_group_int1_id:
+ type: string
+ description: Security Group UUID for output
+ security_group_int2_id:
+ type: string
+ description: Security Group UUID for output
+
+resources:
+
+ template_VMInt_INT1_VLC_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: vlc_st_interface_type_int1 }
+ }
+ virtual_network_refs: [{ get_param: internal_net_id_0}]
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: vlc1_Internal1_mac }, "abc"]
+ }
+ security_group_refs: [{get_param: security_group_int1_id}]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a515f5971f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,71 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+topology_template:
+ inputs:
+ vlc1_Internal2_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ internal_net_id_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal2_net
+ internal_net_id_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal1_net
+ security_group_int2_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ security_group_int1_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ vlc1_Internal1_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc_st_interface_type_int1:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ node_templates:
+ template_VMInt_INT1_VLC_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: security_group_int1_id
+ virtual_network_refs:
+ - get_input: internal_net_id_0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: vlc_st_interface_type_int1
+ virtual_machine_interface_mac_addresses:
+ - get_input: vlc1_Internal1_mac
+ - abc
+ groups:
+ vmme_vlc_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vmme_vlc.yml
+ description: |
+ Module HOT template to create vmme 2 vlc
+ members:
+ - template_VMInt_INT1_VLC_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..93bb84803b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "YY2016-227_vmme_vmme_.zip",
+ "description": "Desc",
+ "version": "0.1",
+ "data": [
+ {
+ "isBase": false,
+ "file": "vmme_vlc.yml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/vmme_vlc.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/vmme_vlc.yml
new file mode 100644
index 0000000000..44b60209fb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueInProperForm/inputfiles/vmme_vlc.yml
@@ -0,0 +1,44 @@
+heat_template_version: 2015-04-30
+
+description: >
+ Module HOT template to create vmme 2 vlc
+
+parameters:
+ vlc1_Internal1_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc1_Internal2_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ vlc_st_interface_type_int1:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ internal_net_id_0:
+ type: string
+ description: UUID of Internal1_net
+ internal_net_id_1:
+ type: string
+ description: UUID of Internal2_net
+ security_group_int1_id:
+ type: string
+ description: Security Group UUID for output
+ security_group_int2_id:
+ type: string
+ description: Security Group UUID for output
+
+resources:
+
+ template_VMInt_INT1_VLC_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: vlc_st_interface_type_int1 }
+ }
+ virtual_network_refs: [{ get_param: internal_net_id_0}]
+ virtual_machine_interface_mac_addresses: [{ get_param: vlc1_Internal1_mac }, "abc"]
+ security_group_refs: [{get_param: security_group_int1_id}]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..40a11da8cf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,83 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+topology_template:
+ inputs:
+ vlc1_Internal2_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ internal_net_id_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal2_net
+ internal_net_id_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal1_net
+ security_group_int2_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ security_group_int1_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ vlc1_Internal1_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc_st_interface_type_int1:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ node_templates:
+ template_VMInt_INT2_VLC_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: security_group_int2_id
+ virtual_network_refs:
+ - get_input: internal_net_id_1
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: vlc_st_interface_type_int2
+ virtual_machine_interface_mac_addresses:
+ - get_input: vlc1_Internal2_mac
+ template_VMInt_INT1_VLC_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: security_group_int1_id
+ virtual_network_refs:
+ - get_input: internal_net_id_0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: vlc_st_interface_type_int1
+ virtual_machine_interface_mac_addresses:
+ - get_input: vlc1_Internal1_mac
+ groups:
+ vmme_vlc_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vmme_vlc.yml
+ description: |
+ Module HOT template to create vmme 2 vlc
+ members:
+ - template_VMInt_INT2_VLC_1
+ - template_VMInt_INT1_VLC_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..93bb84803b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "YY2016-227_vmme_vmme_.zip",
+ "description": "Desc",
+ "version": "0.1",
+ "data": [
+ {
+ "isBase": false,
+ "file": "vmme_vlc.yml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/vmme_vlc.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/vmme_vlc.yml
new file mode 100644
index 0000000000..67f4ee3c6c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapOneItem/inputfiles/vmme_vlc.yml
@@ -0,0 +1,61 @@
+heat_template_version: 2015-04-30
+
+description: >
+ Module HOT template to create vmme 2 vlc
+
+parameters:
+ vlc1_Internal1_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc1_Internal2_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ vlc_st_interface_type_int1:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ internal_net_id_0:
+ type: string
+ description: UUID of Internal1_net
+ internal_net_id_1:
+ type: string
+ description: UUID of Internal2_net
+ security_group_int1_id:
+ type: string
+ description: Security Group UUID for output
+ security_group_int2_id:
+ type: string
+ description: Security Group UUID for output
+
+resources:
+
+ template_VMInt_INT1_VLC_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: vlc_st_interface_type_int1 }
+ }
+ virtual_network_refs: [{ get_param: internal_net_id_0}]
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: vlc1_Internal1_mac }]
+ }
+ security_group_refs: [{get_param: security_group_int1_id}]
+
+ template_VMInt_INT2_VLC_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: vlc_st_interface_type_int2 }
+ }
+ virtual_network_refs: [{ get_param: internal_net_id_1 }]
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: vlc1_Internal2_mac }]
+ }
+ security_group_refs: [{get_param: security_group_int2_id}]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..02bcfd23d0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,72 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+topology_template:
+ inputs:
+ vlc1_Internal2_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ internal_net_id_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal2_net
+ internal_net_id_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal1_net
+ security_group_int2_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ security_group_int1_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ vlc1_Internal1_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc_st_interface_type_int1:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ node_templates:
+ template_VMInt_INT1_VLC_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: security_group_int1_id
+ virtual_network_refs:
+ - get_input: internal_net_id_0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: vlc_st_interface_type_int1
+ virtual_machine_interface_mac_addresses:
+ - get_input: vlc1_Internal1_mac
+ - get_input: vlc1_Internal2_mac
+ - abc
+ groups:
+ vmme_vlc_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vmme_vlc.yml
+ description: |
+ Module HOT template to create vmme 2 vlc
+ members:
+ - template_VMInt_INT1_VLC_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..93bb84803b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "YY2016-227_vmme_vmme_.zip",
+ "description": "Desc",
+ "version": "0.1",
+ "data": [
+ {
+ "isBase": false,
+ "file": "vmme_vlc.yml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/vmme_vlc.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/vmme_vlc.yml
new file mode 100644
index 0000000000..7382a08e28
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueMapTwoItems/inputfiles/vmme_vlc.yml
@@ -0,0 +1,47 @@
+heat_template_version: 2015-04-30
+
+description: >
+ Module HOT template to create vmme 2 vlc
+
+parameters:
+ vlc1_Internal1_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc1_Internal2_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ vlc_st_interface_type_int1:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ internal_net_id_0:
+ type: string
+ description: UUID of Internal1_net
+ internal_net_id_1:
+ type: string
+ description: UUID of Internal2_net
+ security_group_int1_id:
+ type: string
+ description: Security Group UUID for output
+ security_group_int2_id:
+ type: string
+ description: Security Group UUID for output
+
+resources:
+
+ template_VMInt_INT1_VLC_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: vlc_st_interface_type_int1 }
+ }
+ virtual_network_refs: [{ get_param: internal_net_id_0}]
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: vlc1_Internal1_mac }, { get_param: vlc1_Internal2_mac }, "abc"]
+ }
+ security_group_refs: [{get_param: security_group_int1_id}]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..2f40129966
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,68 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+topology_template:
+ inputs:
+ vlc1_Internal2_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ internal_net_id_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal2_net
+ internal_net_id_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of Internal1_net
+ security_group_int2_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ security_group_int1_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security Group UUID for output
+ vlc1_Internal1_mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc_st_interface_type_int1:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ node_templates:
+ template_VMInt_INT1_VLC_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: security_group_int1_id
+ virtual_network_refs:
+ - get_input: internal_net_id_0
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: vlc_st_interface_type_int1
+ groups:
+ vmme_vlc_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vmme_vlc.yml
+ description: |
+ Module HOT template to create vmme 2 vlc
+ members:
+ - template_VMInt_INT1_VLC_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..93bb84803b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "YY2016-227_vmme_vmme_.zip",
+ "description": "Desc",
+ "version": "0.1",
+ "data": [
+ {
+ "isBase": false,
+ "file": "vmme_vlc.yml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/vmme_vlc.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/vmme_vlc.yml
new file mode 100644
index 0000000000..07d1db087c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/macAddressesValueNotAList/inputfiles/vmme_vlc.yml
@@ -0,0 +1,47 @@
+heat_template_version: 2015-04-30
+
+description: >
+ Module HOT template to create vmme 2 vlc
+
+parameters:
+ vlc1_Internal1_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal1
+ vlc1_Internal2_mac:
+ type: string
+ description: static mac address assigned to vlc1_Internal2
+ vlc_st_interface_type_int1:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ vlc_st_interface_type_int2:
+ type: string
+ description: service_interface_type for the ServiceTemplate
+ internal_net_id_0:
+ type: string
+ description: UUID of Internal1_net
+ internal_net_id_1:
+ type: string
+ description: UUID of Internal2_net
+ security_group_int1_id:
+ type: string
+ description: Security Group UUID for output
+ security_group_int2_id:
+ type: string
+ description: Security Group UUID for output
+
+resources:
+
+ template_VMInt_INT1_VLC_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: vlc_st_interface_type_int1 }
+ }
+ virtual_network_refs: [{ get_param: internal_net_id_0}]
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: { get_param: vlc1_Internal1_mac }
+ }
+ security_group_refs: [{get_param: security_group_int1_id}]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/expectedoutputfiles/MainServiceTemplate.yaml
index 71dbe1a8c6..0a3846b721 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,15 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
inputs:
+ interface_param:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
template_PortTuple_LB1:
hidden: false
immutable: false
@@ -110,7 +91,7 @@ topology_template:
virtual_network_refs:
- jsa_net1
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -131,7 +112,7 @@ topology_template:
- jsa_net2
- fq_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -163,7 +144,7 @@ topology_template:
- jsa_net3
- fq_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
@@ -182,12 +163,12 @@ topology_template:
- jsa_net4
- fq_name
virtual_machine_interface_properties:
- virtual_machine_interface_properties_service_interface_type:
+ service_interface_type:
get_input: lb_st_interface_type_oam
port_tuple_refs:
- get_input: template_PortTuple_LB1
groups:
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/inputfiles/hot_template.yml
index b771be1c0a..7863cb5f9a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2VMinterface/oneNet/inputfiles/hot_template.yml
@@ -27,6 +27,9 @@ parameters:
nems_traffic_name:
description: dummy
type: string
+ interface_param:
+ description: dummy
+ type: string
resources:
template_VMInt_OAM_lb_1:
@@ -39,6 +42,7 @@ resources:
virtual_network_refs: [{ get_resource: jsa_net1 }]
port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
security_group_refs: [{ get_param: oam_sec_group_name}]
+ virtual_machine_interface_refs: [{ get_param: interface_param }]
jsa_net1:
properties:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..20ee2fb48e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,477 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+topology_template:
+ inputs:
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ nems_traffic_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ network_ipam_refs_data_ipam_subnets_addr_from_start_true:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ node_templates:
+ jsa_net3:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_input: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_name: aaa
+ jsa_net2:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_input: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_name: aaa
+ jsa_net5:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_input: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_name: aaa
+ jsa_net4:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: nems_traffic_name
+ jsa_net1:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_input: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_name: aaa
+ template_VMInt_OAM_lb_5:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs: [
+ ]
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ template_VMInt_OAM_lb_6:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ get_attribute:
+ - jsa_net3
+ - fq_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ template_VMInt_OAM_lb_7:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - jsa_net1
+ - jsa_net5
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - list_join:
+ - ':'
+ - get_attribute:
+ - jsa_net2
+ - fq_name
+ - list_join:
+ - ':'
+ - get_attribute:
+ - jsa_net5
+ - fq_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net2
+ relationship: tosca.relationships.network.LinksTo
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_attribute:
+ - jsa_net3
+ - fq_name
+ - get_attribute:
+ - jsa_net5
+ - fq_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net3
+ relationship: tosca.relationships.network.LinksTo
+ template_VMInt_OAM_lb_4:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_attribute:
+ - jsa_net4
+ - fq_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ template_Vlan_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_attribute:
+ - template_VMInt_OAM_lb_3
+ - fq_name
+ - get_attribute:
+ - template_VMInt_OAM_lb_1
+ - fq_name
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_attribute:
+ - jsa_net3
+ - fq_name
+ - get_attribute:
+ - jsa_net5
+ - fq_name
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net3
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_3
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - list_join:
+ - ':'
+ - get_attribute:
+ - template_VMInt_OAM_lb_1
+ - fq_name
+ - list_join:
+ - ':'
+ - get_attribute:
+ - template_VMInt_OAM_lb_2
+ - fq_name
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - list_join:
+ - ':'
+ - get_attribute:
+ - jsa_net2
+ - fq_name
+ - list_join:
+ - ':'
+ - get_attribute:
+ - jsa_net5
+ - fq_name
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net2
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - jsa_net1
+ - jsa_net5
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ hot_template_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot_template.yml
+ description: cmaui server template for vMMSC
+ members:
+ - jsa_net3
+ - jsa_net2
+ - jsa_net5
+ - jsa_net4
+ - jsa_net1
+ - template_VMInt_OAM_lb_5
+ - template_VMInt_OAM_lb_6
+ - template_VMInt_OAM_lb_7
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - template_VMInt_OAM_lb_3
+ - template_VMInt_OAM_lb_4
+ - template_Vlan_3
+ - template_Vlan_2
+ - template_Vlan_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..70cdc7d237
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/MANIFEST.json
@@ -0,0 +1,11 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volumes",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot_template.yml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/hot_template.yml
new file mode 100644
index 0000000000..d0f5e19499
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/listInterface/inputfiles/hot_template.yml
@@ -0,0 +1,321 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ network_ipam_refs_data_ipam_subnets_addr_from_start_true:
+ description: dummy
+ type: string
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2:
+ description: dummy
+ type: string
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2:
+ description: dummy
+ type: string
+ lb_st_interface_type_oam:
+ description: dummy
+ type: string
+ template_PortTuple_LB1:
+ description: dummy
+ type: string
+ oam_sec_group_name:
+ description: dummy
+ type: string
+ jsa_net_name:
+ description: dummy
+ type: string
+ nems_traffic_name:
+ description: dummy
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+
+resources:
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_resource: jsa_net1 },{ get_resource: jsa_net5 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_resource: jsa_net1 },{ get_resource: jsa_net5 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 },{ get_resource: template_VMInt_OAM_lb_2 }]
+
+ jsa_net1:
+ properties:
+ name: aaa
+ network_ipam_refs_data:
+ -
+ network_ipam_refs_data_ipam_subnets:
+ -
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ type: "OS::ContrailV2::VirtualNetwork"
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [ { list_join: [':', { get_attr: [ jsa_net2, fq_name ] } ] },{ list_join: [':', { get_attr: [ jsa_net5, fq_name ] } ] }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [ { list_join: [':', { get_attr: [ jsa_net2, fq_name ] } ] },{ list_join: [':', { get_attr: [ jsa_net5, fq_name ] } ] }]
+ virtual_machine_interface_refs: [ { list_join: [':', { get_attr: [ template_VMInt_OAM_lb_1, fq_name ] } ] },{ list_join: [':', { get_attr: [ template_VMInt_OAM_lb_2, fq_name ] } ] }]
+
+ jsa_net2:
+ properties:
+ name: aaa
+ network_ipam_refs_data:
+ -
+ network_ipam_refs_data_ipam_subnets:
+ -
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ type: "OS::ContrailV2::VirtualNetwork"
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_attr: [ jsa_net3, fq_name ] } ,{ get_attr: [ jsa_net5, fq_name ] }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_attr: [ jsa_net3, fq_name ] } ,{ get_attr: [ jsa_net5, fq_name ] }]
+ virtual_machine_interface_refs: [ { get_attr: [ template_VMInt_OAM_lb_3, fq_name ] },{ get_attr: [ template_VMInt_OAM_lb_1, fq_name ] }]
+
+ jsa_net3:
+ properties:
+ name: aaa
+ network_ipam_refs_data:
+ -
+ network_ipam_refs_data_ipam_subnets:
+ -
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ type: "OS::ContrailV2::VirtualNetwork"
+
+ template_VMInt_OAM_lb_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_attr: [ jsa_net4, fq_name ] } ] # should not connect to contrail network
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_5:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: []
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_VMInt_OAM_lb_6:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: { get_attr: [ jsa_net3, fq_name ] }
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+
+
+ template_VMInt_OAM_lb_7:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ jsa_net4:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+
+ jsa_net5:
+ properties:
+ name: aaa
+ network_ipam_refs_data:
+ -
+ network_ipam_refs_data_ipam_subnets:
+ -
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ type: "OS::ContrailV2::VirtualNetwork" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3234bd9a56
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,692 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+topology_template:
+ inputs:
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ nems_traffic_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ security_group_name:
+ hidden: false
+ immutable: false
+ description: not impotrtant
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ network_ipam_refs_data_ipam_subnets_addr_from_start_true:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ node_templates:
+ jsa_net3:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_input: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_name: aaa
+ jsa_net2:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_input: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_name:
+ get_attribute:
+ - template_VMInt_OAM_lb_2
+ - virtual_machine_interface_properties
+ - virtual_machine_interface_properties_service_interface_type
+ jsa_net4:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: nems_traffic_name
+ template_Vlan_9:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - jsa_net1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - jsa_net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ 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_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_input: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_name:
+ get_attribute:
+ - template_Vlan_1
+ - virtual_machine_interface_allowed_address_pairs
+ - allowed_address_pair
+ - 1
+ - ip
+ - ip_prefix
+ template_Vlan_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_Vlan_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - jsa_net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ template_Vlan_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ network: jsa_net1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ get_attribute:
+ - template_Vlan_1
+ - virtual_machine_interface_properties
+ - sub_interface_vlan_tag
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - jsa_net1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ template_VMInt_OAM_lb_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - list_join:
+ - ':'
+ - get_attribute:
+ - jsa_net2
+ - fq_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net2
+ relationship: tosca.relationships.network.LinksTo
+ template_VMInt_OAM_lb_3:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_attribute:
+ - jsa_net3
+ - fq_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net3
+ relationship: tosca.relationships.network.LinksTo
+ template_VMInt_OAM_lb_4:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - get_attribute:
+ - jsa_net4
+ - fq_name
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ template_Vlan_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs: [
+ ]
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs: [
+ ]
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs: template_VMInt_OAM_lb_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs: jsa_net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_attribute:
+ - template_VMInt_OAM_lb_3
+ - fq_name
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_attribute:
+ - jsa_net4
+ - fq_name
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_3
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_attribute:
+ - template_VMInt_OAM_lb_3
+ - fq_name
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_attribute:
+ - jsa_net3
+ - fq_name
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net3
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_3
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - list_join:
+ - ':'
+ - get_attribute:
+ - template_VMInt_OAM_lb_2
+ - fq_name
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - list_join:
+ - ':'
+ - get_attribute:
+ - jsa_net2
+ - fq_name
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net2
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_2
+ relationship: tosca.relationships.network.BindsTo
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - cmaui_port_1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - jsa_net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: cmaui_port_1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ hot_template_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot_template.yml
+ description: cmaui server template for vMMSC
+ members:
+ - jsa_net3
+ - jsa_net2
+ - jsa_net4
+ - template_Vlan_9
+ - jsa_net1
+ - template_Vlan_8
+ - template_Vlan_7
+ - cmaui_port_1
+ - template_VMInt_OAM_lb_1
+ - template_VMInt_OAM_lb_2
+ - template_VMInt_OAM_lb_3
+ - template_VMInt_OAM_lb_4
+ - template_Vlan_6
+ - template_Vlan_5
+ - template_Vlan_4
+ - template_Vlan_3
+ - template_Vlan_2
+ - template_Vlan_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..70cdc7d237
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/MANIFEST.json
@@ -0,0 +1,11 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volumes",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot_template.yml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/hot_template.yml
new file mode 100644
index 0000000000..4ac43587cf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrailv2Vlan/oneInterface/inputfiles/hot_template.yml
@@ -0,0 +1,546 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ network_ipam_refs_data_ipam_subnets_addr_from_start_true:
+ description: dummy
+ type: string
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2:
+ description: dummy
+ type: string
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2:
+ description: dummy
+ type: string
+ lb_st_interface_type_oam:
+ description: dummy
+ type: string
+ template_PortTuple_LB1:
+ description: dummy
+ type: string
+ oam_sec_group_name:
+ description: dummy
+ type: string
+ jsa_net_name:
+ description: dummy
+ type: string
+ nems_traffic_name:
+ description: dummy
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+ security_group_name:
+ type: not_important
+ description: not impotrtant
+ cmaui_oam_ips:
+ type: string
+
+resources:
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_resource: jsa_net1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+ name: {get_attr: [template_Vlan_1, virtual_machine_interface_properties,
+ virtual_machine_interface_properties_sub_interface_vlan_tag ]}
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_resource: jsa_net1 }]
+ virtual_machine_interface_refs: [{ get_resource: cmaui_port_1 }]
+
+ jsa_net1:
+ properties:
+ name: {get_attr: [ template_Vlan_1, virtual_machine_interface_allowed_address_pairs,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair, 1,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix ]}
+ network_ipam_refs_data:
+ -
+ network_ipam_refs_data_ipam_subnets:
+ -
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ type: "OS::ContrailV2::VirtualNetwork"
+
+ template_VMInt_OAM_lb_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [ { list_join: [':', { get_attr: [ jsa_net2, fq_name ] } ] }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: jsa_net1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [ { list_join: [':', { get_attr: [ jsa_net2, fq_name ] } ] }]
+ virtual_machine_interface_refs: [ { list_join: [':', { get_attr: [ template_VMInt_OAM_lb_2, fq_name ] } ] }]
+
+ jsa_net2:
+ properties:
+ name: {get_attr: [template_VMInt_OAM_lb_2, virtual_machine_interface_properties,
+ virtual_machine_interface_properties_service_interface_type ]}
+ network_ipam_refs_data:
+ -
+ network_ipam_refs_data_ipam_subnets:
+ -
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ type: "OS::ContrailV2::VirtualNetwork"
+
+ template_VMInt_OAM_lb_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_attr: [ jsa_net3, fq_name ] } ]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ template_Vlan_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_attr: [ jsa_net3, fq_name ] } ]
+ virtual_machine_interface_refs: [ { get_attr: [ template_VMInt_OAM_lb_3, fq_name ] }]
+
+ jsa_net3:
+ properties:
+ name: aaa
+ network_ipam_refs_data:
+ -
+ network_ipam_refs_data_ipam_subnets:
+ -
+ network_ipam_refs_data_ipam_subnets_addr_from_start:
+ get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2
+ type: "OS::ContrailV2::VirtualNetwork"
+
+ template_VMInt_OAM_lb_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_attr: [ jsa_net4, fq_name ] } ] # should not connect to contrail network
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ jsa_net4:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+
+ template_Vlan_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_attr: [ jsa_net4, fq_name ] } ] # should not connect to contrail network
+ virtual_machine_interface_refs: [{ get_attr: [ template_VMInt_OAM_lb_3, fq_name ] }]
+
+ template_Vlan_5:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: { get_resource: jsa_net1 }
+ virtual_machine_interface_refs: { get_resource: template_VMInt_OAM_lb_1 }
+
+ template_Vlan_6:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: []
+ virtual_machine_interface_refs: []
+
+ template_Vlan_7:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+
+ template_Vlan_8:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_resource: jsa_net1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_Vlan_1 }]
+
+ template_Vlan_9:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_resource: jsa_net1 }]
+ virtual_machine_interface_refs: [{ get_resource: jsa_net1 }] \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..e406d9971f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,6 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002, ZRDM1MOGX01MPD003
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ dummy_net_name_1: mog_dummy_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..c23187ef59
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,95 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ diff_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ packet_internal_network_name:
+ type: string
+ label: packet internal network name
+ description: name of the network
+
+resources:
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ server_ps_02:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ server_ps_3:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 2]}
+ image: {get_param: diff_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_2}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: packet_internal_network}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: packet_internal_network}
+ pd01_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: packet_internal_network}
+
+ packet_internal_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_internal_network_name
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..549e488839
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1180 @@
+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.pd_server_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..700ca62ca3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/MainServiceTemplate.yaml
@@ -0,0 +1,208 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: mog_dummy_1
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ packet_internal_network_name:
+ label: packet internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the network
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ - ' ZRDM1MOGX01MPD003'
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ diff_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ node_templates:
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ abstract_pd_server_2:
+ type: org.openecomp.resource.abstract.nodes.pd_server_2
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: diff_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_internal_network
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_internal_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_pd_server_0:
+ type: org.openecomp.resource.abstract.nodes.pd_server_0
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_internal_network
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_internal_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_pd_server_1:
+ type: org.openecomp.resource.abstract.nodes.pd_server_1
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_internal_network
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_internal_network
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - packet_internal_network
+ - abstract_pd_server_0
+ - abstract_pd_server_1
+ - abstract_pd_server_2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..5ef1764a63
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_0
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..a0da89fcd1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_1
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml
new file mode 100644
index 0000000000..8e6fc1636e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeDiffImageName/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_2
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..92443aa097
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,17 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002, ZRDM1MOGX01MPD003
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ dummy_net_name_1: mog_dummy_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..b5cd4ffd61
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,137 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+
+resources:
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ server_ps_02:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ server_ps_03:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_attr: [server_ps_01, show]}
+ networks:
+ - port: {get_resource: pd01_port_2}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..89cc273c46
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1204 @@
+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.pd_server_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_show:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..e320ad820d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/MainServiceTemplate.yaml
@@ -0,0 +1,306 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: mog_dummy_1
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ - ' ZRDM1MOGX01MPD003'
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pd_server_2:
+ type: org.openecomp.resource.abstract.nodes.pd_server_2
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_attribute:
+ - abstract_pd_server_0
+ - pd_server_show
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 2
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ abstract_pd_server_0:
+ type: org.openecomp.resource.abstract.nodes.pd_server_0
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_pd_server_1:
+ type: org.openecomp.resource.abstract.nodes.pd_server_1
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_server
+ - abstract_pd_server_0
+ - abstract_pd_server_1
+ - abstract_pd_server_2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..afa6a85603
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_show:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - show
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_0
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..5b0eb7e992
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_1
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml
new file mode 100644
index 0000000000..1b487934d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypeGetAttrBetweenThem/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_2
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..e406d9971f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,6 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002, ZRDM1MOGX01MPD003
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ dummy_net_name_1: mog_dummy_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..836d3d2bdd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,102 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ packet_internal_network_name:
+ type: string
+ label: packet internal network name
+ description: name of the network
+
+resources:
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ server_ps_02:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ server_ps_3:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_2}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: packet_internal_network}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: packet_internal_network}
+ pd01_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: packet_external_network}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
+ packet_internal_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_internal_network_name
+
+ packet_external_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_internal_network_name
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..549e488839
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1180 @@
+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.pd_server_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..db618f7af0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/MainServiceTemplate.yaml
@@ -0,0 +1,214 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: mog_dummy_1
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ packet_internal_network_name:
+ label: packet internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the network
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ - ' ZRDM1MOGX01MPD003'
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ node_templates:
+ packet_external_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ abstract_pd_server_2:
+ type: org.openecomp.resource.abstract.nodes.pd_server_2
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_external_network
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_external_network
+ relationship: tosca.relationships.network.LinksTo
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ abstract_pd_server_0:
+ type: org.openecomp.resource.abstract.nodes.pd_server_0
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_internal_network
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_internal_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_pd_server_1:
+ type: org.openecomp.resource.abstract.nodes.pd_server_1
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_internal_network
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_internal_network
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - packet_external_network
+ - packet_internal_network
+ - network_policy_server
+ - abstract_pd_server_0
+ - abstract_pd_server_1
+ - abstract_pd_server_2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..5ef1764a63
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_0
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..a0da89fcd1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_1
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml
new file mode 100644
index 0000000000..8e6fc1636e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/catalogInstances/threeComputesSameTypePortsConnectedToDiffNetworks/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_2
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/MANIFEST.json
new file mode 100644
index 0000000000..655e7f89dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/MANIFEST.json
@@ -0,0 +1,19 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-no_vfc_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..3f0f9edaa5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,384 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ a_single_1a_names:
+ type: string
+ oam_net_name:
+ type: string
+ ppds_net_name:
+ type: string
+ b_single_1b_names:
+ type: string
+ 1c1_scalling_instance_names:
+ type: string
+ myIPs:
+ type: string
+ 1c2_catalog_instance_names:
+ type: string
+ pcm_server_names:
+ type: string
+ pcm_image_name:
+ type: string
+ pcm_flavor_name:
+ type: string
+ net_name:
+ type: string
+ security_group_name:
+ type: string
+resources:
+ 1a_single_1A:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [a_single_1a_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1a_t1_port_0}
+ - port: {get_resource: 1a_t2_port_0}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1B01 : {get_attr : [1b01_single_1B, instance_name]},
+ connectivityTo1B02 : {get_attr : [1b02_single_1B, instance_name,{get_attr : [1b01_single_1B, instance_name]}]},
+ connectivityTo1C1_T2_0 : {get_attr : [1c1_t2_port_0, tenant_id]},
+ connectivityTo1C1_T2_1 : {get_attr : [1c1_t2_port_1, tenant_id]},
+ connectivityTo1C2_1 : {get_attr : [1c201_catalog_instance_1C2, instance_name]},
+ connectivityTo1C2_2 : {get_attr : [1c202_scalling_instance_1C2, instance_name]},
+ connectivityTo4PNested : {get_attr : [4p_nested, server_pcm_id]},
+ connectivityToNoUnifiedNested : {get_attr : [nestedNoUnified, portId]}
+ }
+
+
+ 1a_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: a_single_1a_network}
+ 1a_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+
+ a_single_1a_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+
+ 1b01_single_1B:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_1b_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_0}
+ - port: {get_resource: 1b_t2_port_0}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1C1_T1_0 : {get_attr : [1c1_t1_port_0, tenant_id]},
+ connectivityTo1C1_T1_1 : {get_attr : [1c1_t1_port_1, tenant_id]},
+ connectivityTo1C2_1 : {get_attr : [1c201_catalog_instance_1C2, instance_name]},
+ connectivityTo1C2_2 : {get_attr : [1c202_scalling_instance_1C2, instance_name]},
+ connectivityTo4PNested : {get_attr : [4p_nested, server_pcm_id]},
+ connectivityToNoUnifiedNested : {get_attr : [nestedNoUnified, portId]}
+ }
+
+ 1b_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [1b01_single_1B, accessIPv6]}
+
+ 1b_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network}
+
+ b_single_1b_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1b02_single_1B:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_1b_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_1}
+ - port: {get_resource: 1b_t2_port_1}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1b_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ value_specs: {get_attr: [1a_t1_port_0, tenant_id]}
+
+ 1b_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network}
+
+ 1c101_scalling_instance_1C1:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c1_scalling_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_0}
+ - port: {get_resource: 1c1_t2_port_0}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1B01 : {get_attr : [1b01_single_1B, instance_name]},
+ connectivityTo1B02 : {get_attr : [1b02_single_1B, instance_name]},
+ connectivityTo1A : {get_attr : [1a_single_1A, instance_name]},
+ connectivityTo1C2_1 : {get_attr : [1c201_catalog_instance_1C2, instance_name]},
+ connectivityTo1C2_2 : {get_attr : [1c202_scalling_instance_1C2, instance_name]},
+ connectivityTo4PNested : {get_attr : [4p_nested, server_pcm_id]},
+ connectivityToNoUnifiedNested : {get_attr : [nestedNoUnified, portId]}
+ }
+
+ 1c1_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
+ name: 1c1_t1_port_0
+ 1c1_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+ name: 1c1_t2_port_0
+
+ 1c1_scalling_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c102_scalling_instance_1C1:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c1_scalling_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_1}
+ - port: {get_resource: 1c1_t2_port_1}
+ user_data_format: RAW2
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c1_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+ name: 1c1_t1_port_1
+
+ 1c1_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+ name: 1c1_t2_port_1
+
+ 1c201_catalog_instance_1C2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_0}
+ - port: {get_resource: 1c2_t2_port_0}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1B01 : {get_attr : [1b01_single_1B, instance_name]},
+ connectivityTo1B02 : {get_attr : [1b02_single_1B, instance_name]},
+ connectivityTo1A : {get_attr : [1a_single_1A, instance_name]},
+ connectivityTo1C1_T2_0 : {get_attr : [1c1_t2_port_0, tenant_id]},
+ connectivityTo1C1_T2_1 : {get_attr : [1c1_t2_port_1, tenant_id]},
+ connectivityTo4PNested : {get_attr : [4p_nested, server_pcm_id]},
+ connectivityToNoUnifiedNested : {get_attr : [nestedNoUnified, portId]}
+ }
+
+ 1c2_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 1c2_catalog_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c202_scalling_instance_1C2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_1}
+ - port: {get_resource: 1c2_t2_port_1}
+ user_data_format: {get_attr: [1c201_catalog_instance_1C2, instance_name]}
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c2_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 4p_nested:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+ connectivityChk: {connectivityTo1B01 : {get_attr : [1b01_single_1B, instance_name]},
+ connectivityTo1B02 : {get_attr : [1b02_single_1B, instance_name,{get_attr : [1b01_single_1B, instance_name]}]},
+ connectivityTo1C1_T2_0 : {get_attr : [1c1_t2_port_0, tenant_id]},
+ connectivityTo1C1_T2_1 : {get_attr : [1c1_t2_port_1, tenant_id]},
+ connectivityTo1C2_1 : {get_attr : [1c201_catalog_instance_1C2, instance_name]},
+ connectivityTo1C2_2 : {get_attr : [1c202_scalling_instance_1C2, instance_name]},
+ connectivityTo1A : {get_attr : [1a_single_1A, instance_name]}
+ }
+
+
+ nested_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ nestedNoUnified:
+ type: nested-no_vfc_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+ connectivityChk: {connectivityTo1B01 : {get_attr : [1b01_single_1B, instance_name]},
+ connectivityTo1B02 : {get_attr : [1b02_single_1B, instance_name,{get_attr : [1b01_single_1B, instance_name]}]},
+ connectivityTo1C1_T2_0 : {get_attr : [1c1_t2_port_0, tenant_id]},
+ connectivityTo1C1_T2_1 : {get_attr : [1c1_t2_port_1, tenant_id]},
+ connectivityTo1C2_1 : {get_attr : [1c201_catalog_instance_1C2, instance_name]},
+ connectivityTo1C2_2 : {get_attr : [1c202_scalling_instance_1C2, instance_name]},
+ connectivityTo1A : {get_attr : [1a_single_1A, instance_name]}
+ }
+
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ dependsOn_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - nestedNoUnified
+ - 4p_nested
+ - 1c2_t1_port_1
+ - 1c2_t1_port_0
+ - 1c201_catalog_instance_1C2
+ - 1c202_scalling_instance_1C2
+ - 1c101_scalling_instance_1C1
+ - 1c102_scalling_instance_1C1
+ - 1c1_t2_port_0
+ - 1c1_t2_port_1
+ - 1b01_single_1B
+ - 1b02_single_1B
+ - 1b_t1_port_0
+ - 1b_t1_port_1
+ - 1a_single_1A
+ - 1a_t1_port_0
+ properties:
+ name:
+ get_param: net_name
+
+ nodeGetAttIn_network:
+ type: OS::Neutron::Net
+ properties:
+ name: { get_attr: [nestedNoUnified, portId, {get_attr: [4p_nested, server_pcm_id]}]}
+ dhcp_agent_ids: { get_attr: [1c2_t1_port_1, tenant_id, {get_attr: [1c2_t1_port_0, tenant_id, {get_attr: [1c201_catalog_instance_1C2, instance_name, {get_attr: [1c202_scalling_instance_1C2,instance_name]}]}]}]}
+ tenant_id: { get_attr:[1c101_scalling_instance_1C1, instance_name, {get_attr:[1c102_scalling_instance_1C1, instance_name, {get_attr:[1c1_t2_port_0, tenant_id, {get_attr:[1c1_t2_port_1, tenant_id]}]}]}]}
+ value_specs: {get_attr:[1b01_single_1B, instance_name, get_attr:[1b02_single_1B,instance_name, {get_attr:[1b_t1_port_0, tenant_id, {get_attr:[1b_t1_port_1, tenant_id]}]}]] }
+ qos_policy: {get_attr:[1a_single_1A, instance_name]}
+ admin_state_up: {get_attr:[1a_t1_port_0, tenant_id]}
+
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: def
+
+outputs:
+ out1:
+ value: { get_attr: [nestedNoUnified, portId, {get_attr: [4p_nested, server_pcm_id]}]}
+ out2:
+ value: { get_attr: [1c2_t1_port_1, tenant_id, {get_attr: [1c2_t1_port_0, tenant_id, {get_attr: [1c201_catalog_instance_1C2, instance_name, {get_attr: [1c202_scalling_instance_1C2,instance_name]}]}]}]}
+ out3:
+ value: { get_attr:[1c101_scalling_instance_1C1, instance_name, {get_attr:[1c102_scalling_instance_1C1, instance_name, {get_attr:[1c1_t2_port_0, tenant_id, {get_attr:[1c1_t2_port_1, tenant_id]}]}]}]}
+ out4:
+ value: {get_attr:[1b01_single_1B, instance_name, get_attr:[1b02_single_1B,instance_name, {get_attr:[1b_t1_port_0, tenant_id, {get_attr:[1b_t1_port_1, tenant_id]}]}]] }
+ out5:
+ value: {get_attr:[1a_single_1A, instance_name]}
+ out6:
+ value: {get_attr:[1a_t1_port_0, tenant_id]} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-no_vfc_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-no_vfc_v0.1.yaml
new file mode 100644
index 0000000000..f19e84d38d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-no_vfc_v0.1.yaml
@@ -0,0 +1,137 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ pcma_server_name:
+ type: string
+ pcma_image_name:
+ type: string
+ pcma_flavor_name:
+ type: string
+ server_group:
+ type: string
+ connectivityChk:
+ type: json
+
+resources:
+ server_pcma1:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ server_pcma2:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_2}
+ - port: { get_resource: pcm_port_3}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ portId:
+ value: { get_resource: pcm_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..b6b85785cd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,101 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ server_group:
+ type: string
+ connectivityChk:
+ type: json
+
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..da7b5979f9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4527 @@
+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.nested-no_vfc_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ connectivityChk:
+ type: json
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ pcma_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ pcma_server_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ pcma_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ attributes:
+ portId:
+ type: string
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcma2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_pcma1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.latency_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_pcm_port_3:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcma1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcma2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma2:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcma1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcma2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_pcm_port_2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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.usage_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: org.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.usage_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ connectivityChk:
+ type: json
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.1c1_scalling_instance:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c1_scalling_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c1_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t2_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ 1c1_scalling_instance_1c1_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_1c1_t2_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c1_scalling_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c1_scalling_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c1_scalling_instance_1c1_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c1_scalling_instance_1c1_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.latency_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance_1c1_t2_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.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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
+ host_1c1_scalling_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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.a_single_1a:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_a_single_1a_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ a_single_1a_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_a_single_1a:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_a_single_1a:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_a_single_1a:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_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
+ host_a_single_1a:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_a_single_1a:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.delta_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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.b_single_1b_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_value_specs:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.1c2_catalog_instance_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.b_single_1b_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_b_single_1b_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ 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/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..7a12426fa6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/MainServiceTemplate.yaml
@@ -0,0 +1,1045 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ ppds_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ a_single_1a_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_server_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ b_single_1b_names:
+ hidden: false
+ immutable: false
+ type: string
+ 1c1_scalling_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ connectivityChk:
+ connectivityTo1C2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityTo1B02:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1C1_T2_1:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ connectivityTo1C1_T2_0:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c1_scalling_instance:
+ type: org.openecomp.resource.abstract.nodes.1c1_scalling_instance
+ directives:
+ - substitutable
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 3
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 1
+ compute_1c1_scalling_instance_user_data_format:
+ - RAW2
+ - RAW1
+ port_1c1_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_1c1_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ port_1c1_t2_port_network_role_tag:
+ - ppds
+ - ppds
+ port_1c1_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_1c1_scalling_instance_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ port_1c1_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_1c1_t2_port_name:
+ - 1c1_t2_port_1
+ - 1c1_t2_port_0
+ vm_image_name:
+ get_input: pd_image_name
+ compute_1c1_scalling_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ - group: BE_Affinity_group
+ compute_1c1_scalling_instance_metadata:
+ - null
+ - connectivityTo4PNested:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityTo1C2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ connectivityToNoUnifiedNested:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ connectivityTo1B02:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B01:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ compute_1c1_scalling_instance_name:
+ - get_input:
+ - 1c1_scalling_instance_names
+ - 2
+ - get_input:
+ - 1c1_scalling_instance_names
+ - 1
+ port_1c1_t1_port_name:
+ - 1c1_t1_port_1
+ - 1c1_t1_port_0
+ port_1c1_t1_port_network:
+ - 1c1_scalling_instance_network
+ - 1c1_scalling_instance_network
+ port_1c1_t2_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 4
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 2
+ port_1c1_t2_port_network:
+ - get_input: ppds_net_name
+ - get_input: ppds_net_name
+ service_template_filter:
+ substitute_service_template: Nested_1c1_scalling_instanceServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c1_scalling_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_b_single_1b_0:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ compute_b_single_1b_metadata:
+ - connectivityTo4PNested:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ connectivityToNoUnifiedNested:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ connectivityTo1C1_T1_1:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_0:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t1_port_tenant_id
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network
+ compute_b_single_1b_user_data_format:
+ - RAW
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 0
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network
+ relationship: tosca.relationships.network.LinksTo
+ b_single_1b_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ abstract_1c2_catalog_instance_0:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_metadata:
+ - connectivityTo4PNested:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1A:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityToNoUnifiedNested:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ connectivityTo1B02:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B01:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1C1_T2_1:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ connectivityTo1C1_T2_0:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - RAW1
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c2_catalog_instance_1:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ 1c1_scalling_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ nodeGetAttIn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ tenant_id:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ admin_state_up:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ qos_policy:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ network_name:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ value_specs:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ dependsOn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedNoUnified
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c1_scalling_instance
+ node: abstract_1c1_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c1_scalling_instance_1c1_t2_port
+ node: abstract_1c1_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a_1a_t1_port
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ abstract_a_single_1a:
+ type: org.openecomp.resource.abstract.nodes.a_single_1a
+ directives:
+ - substitutable
+ properties:
+ compute_a_single_1a_metadata:
+ - connectivityTo4PNested:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ connectivityToNoUnifiedNested:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ connectivityTo1B02:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1C1_T2_1:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ connectivityTo1C1_T2_0:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ compute_a_single_1a_availability_zone:
+ - get_input: availabilityzone_name
+ compute_a_single_1a_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1a_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_1a_t2_port_network_role_tag:
+ - ppds
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1a_t2_port_network:
+ - get_input: ppds_net_name
+ port_1a_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1a_t1_port_network:
+ - a_single_1a_network
+ vm_image_name:
+ get_input: pd_image_name
+ port_1a_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_a_single_1a_user_data_format:
+ - RAW
+ compute_a_single_1a_name:
+ - get_input:
+ - a_single_1a_names
+ - 0
+ port_1a_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: a_single_1a_network
+ relationship: tosca.relationships.network.LinksTo
+ nestedNoUnified:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-no_vfc_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ connectivityChk:
+ connectivityTo1C2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityTo1B02:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1C1_T2_1:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ connectivityTo1C1_T2_0:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ nested_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pcm_port_0
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_0
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_2
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_3
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_b_single_1b_1:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1b_t1_port_value_specs:
+ - get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ port_1b_t1_port_network_role_tag:
+ - oam
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network
+ compute_b_single_1b_user_data_format:
+ - RAW
+ port_1b_t1_port_network:
+ - get_input: oam_net_name
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 1
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network
+ relationship: tosca.relationships.network.LinksTo
+ a_single_1a_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ 1c2_catalog_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - b_single_1b_network
+ - 1c1_scalling_instance_network
+ - nodeGetAttIn_network
+ - dependsOn_network
+ - nestedNoUnified
+ - nested_network
+ - jsa_security_group
+ - a_single_1a_network
+ - 1c2_catalog_instance_network
+ - abstract_a_single_1a
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_1c1_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ - abstract_pcm_server_0
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_a_single_1a
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_1c1_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ outputs:
+ out2:
+ value:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ out3:
+ value:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ out4:
+ value:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ out5:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ out1:
+ value:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ out6:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
new file mode 100644
index 0000000000..aa6bcaf443
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
@@ -0,0 +1,430 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c1_scalling_instance
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c1_scalling_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_1c1_scalling_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_1c1_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t2_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ 1c1_scalling_instance_1c1_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t1_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t1_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t1_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c1_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c1_scalling_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c1_scalling_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c1_scalling_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_1c1_scalling_instance_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c1_scalling_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c1_scalling_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c1_scalling_instance_user_data_format
+ - index_value
+ 1c1_scalling_instance_1c1_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t2_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c1_t2_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t2_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t2_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t2_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c1_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c1_scalling_instance_1c1_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c1_scalling_instance_1c1_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c1_scalling_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_1c1_t2_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c1_scalling_instance_1c1_t2_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c1_scalling_instance
+ capabilities:
+ disk.device.latency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.latency
+ disk.ephemeral.size_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.ephemeral.size
+ disk.root.size_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.root.size
+ endpoint_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - endpoint
+ disk.read.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.bytes
+ network.outgoing.packets.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.packets.rate
+ disk.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.usage
+ memory.resident_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory.resident
+ network.incoming.bytes.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.bytes.rate
+ cpu_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu
+ disk.write.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.bytes
+ network.incoming.packets.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.packets.rate
+ network.incoming.bytes_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.bytes
+ disk.write.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.bytes.rate
+ disk.device.allocation_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.allocation
+ network.incoming.bytes.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.bytes.rate
+ feature_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - feature
+ disk.device.write.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.requests.rate
+ disk.read.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.bytes.rate
+ network.outpoing.packets_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outpoing.packets
+ scalable_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - scalable
+ disk.device.read.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.bytes
+ binding_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - binding
+ disk.device.write.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.bytes
+ disk.read.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.requests
+ network.incoming.packets_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.packets
+ vcpus_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - vcpus
+ network.outgoing.bytes_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes
+ host_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - host
+ disk.write.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.requests
+ feature_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - feature
+ binding_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - binding
+ disk.device.read.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.requests.rate
+ attachment_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - attachment
+ disk.device.read.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.packets.rate
+ disk.device.iops_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.iops
+ disk.device.capacity_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.capacity
+ disk.capacity_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.capacity
+ disk.write.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.requests.rate
+ cpu_util_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu_util
+ disk.device.read.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.bytes
+ disk.latency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.latency
+ binding_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - binding
+ disk.device.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.usage
+ network.incoming.packets_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.packets
+ disk.allocation_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.allocation
+ feature_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - feature
+ memory.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory.usage
+ network.incoming.bytes_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.bytes.rate
+ os_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - os
+ disk.iops_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.iops
+ network.outpoing.packets_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outpoing.packets
+ attachment_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - attachment
+ cpu.delta_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu.delta
+ memory_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory
+ instance_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - instance
+ requirements:
+ dependency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - dependency
+ link_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - link
+ dependency_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - dependency
+ dependency_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - dependency
+ link_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - link
+ local_storage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..67305b71ce
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -0,0 +1,386 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_1c2_catalog_instance_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..213939c88e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml
new file mode 100644
index 0000000000..409bf1d35f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_a_single_1aServiceTemplate.yaml
@@ -0,0 +1,386 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_a_single_1a
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.a_single_1a:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_a_single_1a_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ a_single_1a_1a_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ a_single_1a:
+ type: org.openecomp.resource.vfc.nodes.heat.a_single_1a
+ properties:
+ availability_zone:
+ get_input:
+ - compute_a_single_1a_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_a_single_1a_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_a_single_1a_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_a_single_1a_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_a_single_1a_user_data_format
+ - index_value
+ a_single_1a_1a_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t2_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1a_t2_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ a_single_1a_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a
+ - instance_name
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a_1a_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.a_single_1a
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes
+ network.incoming.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes.rate
+ disk.usage_a_single_1a:
+ - a_single_1a
+ - disk.usage
+ attachment_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - attachment
+ scalable_a_single_1a:
+ - a_single_1a
+ - scalable
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes.rate
+ host_a_single_1a:
+ - a_single_1a
+ - host
+ endpoint_a_single_1a:
+ - a_single_1a
+ - endpoint
+ disk.root.size_a_single_1a:
+ - a_single_1a
+ - disk.root.size
+ memory.resident_a_single_1a:
+ - a_single_1a
+ - memory.resident
+ network.incoming.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets.rate
+ cpu.delta_a_single_1a:
+ - a_single_1a
+ - cpu.delta
+ disk.device.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests
+ network.incoming.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes.rate
+ disk.iops_a_single_1a:
+ - a_single_1a
+ - disk.iops
+ network.incoming.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes
+ cpu_util_a_single_1a:
+ - a_single_1a
+ - cpu_util
+ os_a_single_1a:
+ - a_single_1a
+ - os
+ disk.device.usage_a_single_1a:
+ - a_single_1a
+ - disk.device.usage
+ network.incoming.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.packets.rate
+ disk.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.read.requests
+ disk.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes.rate
+ disk.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes.rate
+ attachment_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - attachment
+ cpu_a_single_1a:
+ - a_single_1a
+ - cpu
+ memory.usage_a_single_1a:
+ - a_single_1a
+ - memory.usage
+ disk.device.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests.rate
+ binding_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - binding
+ network.incoming.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets
+ disk.device.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests
+ disk.device.latency_a_single_1a:
+ - a_single_1a
+ - disk.device.latency
+ instance_a_single_1a:
+ - a_single_1a
+ - instance
+ binding_a_single_1a:
+ - a_single_1a
+ - binding
+ disk.latency_a_single_1a:
+ - a_single_1a
+ - disk.latency
+ network.outgoing.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes
+ disk.device.allocation_a_single_1a:
+ - a_single_1a
+ - disk.device.allocation
+ disk.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes
+ feature_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - feature
+ network.outpoing.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outpoing.packets
+ network.outpoing.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outpoing.packets
+ disk.device.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes
+ disk.device.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes.rate
+ memory_a_single_1a:
+ - a_single_1a
+ - memory
+ disk.allocation_a_single_1a:
+ - a_single_1a
+ - disk.allocation
+ network.outgoing.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.packets.rate
+ feature_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - feature
+ disk.capacity_a_single_1a:
+ - a_single_1a
+ - disk.capacity
+ disk.device.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes
+ network.incoming.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets
+ feature_a_single_1a:
+ - a_single_1a
+ - feature
+ network.outgoing.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes
+ disk.ephemeral.size_a_single_1a:
+ - a_single_1a
+ - disk.ephemeral.size
+ vcpus_a_single_1a:
+ - a_single_1a
+ - vcpus
+ binding_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - binding
+ disk.device.iops_a_single_1a:
+ - a_single_1a
+ - disk.device.iops
+ disk.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.write.requests
+ disk.device.read.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests.rate
+ disk.device.capacity_a_single_1a:
+ - a_single_1a
+ - disk.device.capacity
+ disk.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.requests.rate
+ network.incoming.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes.rate
+ requirements:
+ link_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - link
+ link_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - link
+ dependency_a_single_1a:
+ - a_single_1a
+ - dependency
+ dependency_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - dependency
+ dependency_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - dependency
+ local_storage_a_single_1a:
+ - a_single_1a
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..97428c699a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -0,0 +1,372 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ compute_b_single_1b_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_b_single_1b_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_attribute:
+ - b_single_1b
+ - accessIPv6
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..78243244fa
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -0,0 +1,386 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1b_t1_port_value_specs:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ value_specs:
+ get_input:
+ - port_1b_t1_port_value_specs
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1b_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-no_vfc_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-no_vfc_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..eca7550f05
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-no_vfc_v0.1ServiceTemplate.yaml
@@ -0,0 +1,675 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-no_vfc_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcma_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ connectivityChk:
+ hidden: false
+ immutable: false
+ type: json
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ pcma_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ pcma_server_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcma_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ pcm_port_2:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_3:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ server_pcma2:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ server_pcma1:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-no_vfc_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-no_vfc_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_2
+ - pcm_port_1
+ - pcm_port_3
+ - server_pcma2
+ - server_pcma1
+ - pcm_port_0
+ outputs:
+ portId:
+ value: pcm_port_3
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ disk.device.iops_server_pcma2:
+ - server_pcma2
+ - disk.device.iops
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_3:
+ - pcm_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_2:
+ - pcm_port_2
+ - network.outpoing.packets
+ disk.device.iops_server_pcma1:
+ - server_pcma1
+ - disk.device.iops
+ disk.device.capacity_server_pcma2:
+ - server_pcma2
+ - disk.device.capacity
+ disk.device.capacity_server_pcma1:
+ - server_pcma1
+ - disk.device.capacity
+ disk.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.read.requests
+ disk.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.read.requests
+ disk.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.requests.rate
+ memory_server_pcma2:
+ - server_pcma2
+ - memory
+ memory_server_pcma1:
+ - server_pcma1
+ - memory
+ disk.device.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes
+ disk.device.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes.rate
+ binding_pcm_port_3:
+ - pcm_port_3
+ - binding
+ disk.device.latency_server_pcma2:
+ - server_pcma2
+ - disk.device.latency
+ disk.device.usage_server_pcma2:
+ - server_pcma2
+ - disk.device.usage
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.device.latency_server_pcma1:
+ - server_pcma1
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ disk.device.usage_server_pcma1:
+ - server_pcma1
+ - disk.device.usage
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ binding_pcm_port_2:
+ - pcm_port_2
+ - binding
+ network.incoming.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes
+ network.outgoing.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.packets.rate
+ disk.device.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests
+ disk.device.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ disk.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes
+ disk.device.read.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests.rate
+ network.outgoing.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.packets.rate
+ disk.device.read.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ binding_server_pcma1:
+ - server_pcma1
+ - binding
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ binding_server_pcma2:
+ - server_pcma2
+ - binding
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes
+ feature_pcm_port_3:
+ - pcm_port_3
+ - feature
+ feature_pcm_port_2:
+ - pcm_port_2
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ disk.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes.rate
+ attachment_pcm_port_2:
+ - pcm_port_2
+ - attachment
+ disk.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes.rate
+ attachment_pcm_port_3:
+ - pcm_port_3
+ - attachment
+ disk.root.size_server_pcma2:
+ - server_pcma2
+ - disk.root.size
+ disk.root.size_server_pcma1:
+ - server_pcma1
+ - disk.root.size
+ disk.iops_server_pcma2:
+ - server_pcma2
+ - disk.iops
+ disk.iops_server_pcma1:
+ - server_pcma1
+ - disk.iops
+ disk.device.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes.rate
+ disk.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes
+ disk.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes
+ cpu_util_server_pcma1:
+ - server_pcma1
+ - cpu_util
+ cpu_util_server_pcma2:
+ - server_pcma2
+ - cpu_util
+ feature_server_pcma2:
+ - server_pcma2
+ - feature
+ memory.usage_server_pcma2:
+ - server_pcma2
+ - memory.usage
+ memory.usage_server_pcma1:
+ - server_pcma1
+ - memory.usage
+ feature_server_pcma1:
+ - server_pcma1
+ - feature
+ disk.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes.rate
+ disk.device.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes
+ endpoint_server_pcma2:
+ - server_pcma2
+ - endpoint
+ disk.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes.rate
+ endpoint_server_pcma1:
+ - server_pcma1
+ - endpoint
+ cpu.delta_server_pcma1:
+ - server_pcma1
+ - cpu.delta
+ cpu.delta_server_pcma2:
+ - server_pcma2
+ - cpu.delta
+ host_server_pcma2:
+ - server_pcma2
+ - host
+ host_server_pcma1:
+ - server_pcma1
+ - host
+ disk.ephemeral.size_server_pcma1:
+ - server_pcma1
+ - disk.ephemeral.size
+ disk.ephemeral.size_server_pcma2:
+ - server_pcma2
+ - disk.ephemeral.size
+ disk.device.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests.rate
+ disk.latency_server_pcma1:
+ - server_pcma1
+ - disk.latency
+ disk.latency_server_pcma2:
+ - server_pcma2
+ - disk.latency
+ disk.device.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests.rate
+ scalable_server_pcma2:
+ - server_pcma2
+ - scalable
+ scalable_server_pcma1:
+ - server_pcma1
+ - scalable
+ disk.device.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests
+ disk.device.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests
+ instance_server_pcma2:
+ - server_pcma2
+ - instance
+ disk.device.allocation_server_pcma1:
+ - server_pcma1
+ - disk.device.allocation
+ disk.device.allocation_server_pcma2:
+ - server_pcma2
+ - disk.device.allocation
+ instance_server_pcma1:
+ - server_pcma1
+ - instance
+ os_server_pcma1:
+ - server_pcma1
+ - os
+ os_server_pcma2:
+ - server_pcma2
+ - os
+ disk.capacity_server_pcma1:
+ - server_pcma1
+ - disk.capacity
+ disk.capacity_server_pcma2:
+ - server_pcma2
+ - disk.capacity
+ disk.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.write.requests
+ disk.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.write.requests
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets
+ disk.usage_server_pcma2:
+ - server_pcma2
+ - disk.usage
+ network.incoming.packets_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes.rate
+ disk.usage_server_pcma1:
+ - server_pcma1
+ - disk.usage
+ vcpus_server_pcma1:
+ - server_pcma1
+ - vcpus
+ memory.resident_server_pcma1:
+ - server_pcma1
+ - memory.resident
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ vcpus_server_pcma2:
+ - server_pcma2
+ - vcpus
+ memory.resident_server_pcma2:
+ - server_pcma2
+ - memory.resident
+ disk.device.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes
+ disk.allocation_server_pcma1:
+ - server_pcma1
+ - disk.allocation
+ disk.allocation_server_pcma2:
+ - server_pcma2
+ - disk.allocation
+ disk.device.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes
+ cpu_server_pcma1:
+ - server_pcma1
+ - cpu
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ cpu_server_pcma2:
+ - server_pcma2
+ - cpu
+ network.incoming.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ dependency_server_pcma2:
+ - server_pcma2
+ - dependency
+ local_storage_server_pcma2:
+ - server_pcma2
+ - local_storage
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ dependency_server_pcma1:
+ - server_pcma1
+ - dependency
+ local_storage_server_pcma1:
+ - server_pcma1
+ - local_storage
+ link_pcm_port_2:
+ - pcm_port_2
+ - link
+ link_pcm_port_3:
+ - pcm_port_3
+ - link
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_pcm_port_3:
+ - pcm_port_3
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
+ dependency_pcm_port_2:
+ - pcm_port_2
+ - 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/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..d6dd992034
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/connectivityBetweenPatterns/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,391 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ connectivityChk:
+ hidden: false
+ immutable: false
+ type: json
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/MANIFEST.json
new file mode 100644
index 0000000000..bd2aedc703
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/MANIFEST.json
@@ -0,0 +1,23 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-no_vfc_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-no-nova.yaml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..ac384f853a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,382 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ a_single_1a_names:
+ type: string
+ oam_net_name:
+ type: string
+ ppds_net_name:
+ type: string
+ b_single_1b_names:
+ type: string
+ 1c1_scalling_instance_names:
+ type: string
+ myIPs:
+ type: string
+ 1c2_catalog_instance_names:
+ type: string
+ pcm_server_names:
+ type: string
+ pcm_image_name:
+ type: string
+ pcm_flavor_name:
+ type: string
+ net_name:
+ type: string
+ security_group_name:
+ type: string
+resources:
+ 1a_single_1A:
+ type: OS::Nova::Server
+ depends_on:
+ - 4p_nested
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ name: {get_param: [a_single_1a_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1a_t1_port_0}
+ - port: {get_resource: 1a_t2_port_0}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1a_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: a_single_1a_network}
+ 1a_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+
+ a_single_1a_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 4p_nested:
+ type: nested-pcm_v0.1.yaml
+ depends_on:
+ - 1a_single_1A
+ - 1b_t1_port_0
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+
+ nested_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1b01_single_1B:
+ type: OS::Nova::Server
+ depends_on:
+ - 1a_single_1A
+ - 4p_nested
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ name: {get_param: [b_single_1b_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_0}
+ - port: {get_resource: 1b_t2_port_0}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1b_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [1b01_single_1B, accessIPv6]}
+
+ 1b_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network}
+
+ b_single_1b_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1b02_single_1B:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_1b_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_1}
+ - port: {get_resource: 1b_t2_port_1}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1b_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ 1b_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network}
+
+ 1c101_scalling_instance_1C1:
+ type: OS::Nova::Server
+ depends_on:
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ name: {get_param: [1c1_scalling_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_0}
+ - port: {get_resource: 1c1_t2_port_0}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c1_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
+ name: 1c1_t1_port_0
+ 1c1_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+ name: 1c1_t2_port_0
+
+ 1c1_scalling_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c102_scalling_instance_1C1:
+ type: OS::Nova::Server
+ depends_on:
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ name: {get_param: [1c1_scalling_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_1}
+ - port: {get_resource: 1c1_t2_port_1}
+ user_data_format: RAW2
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c1_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+ name: 1c1_t1_port_1
+
+ 1c1_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+ name: 1c1_t2_port_1
+
+ 1c201_catalog_instance_1C2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_0}
+ - port: {get_resource: 1c2_t2_port_0}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c2_t1_port_0:
+ type: OS::Neutron::Port
+ depends_on:
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 1c2_catalog_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c202_scalling_instance_1C2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_1}
+ - port: {get_resource: 1c2_t2_port_1}
+ user_data_format: {get_attr: [1c201_catalog_instance_1C2, instance_name]}
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c2_t1_port_1:
+ type: OS::Neutron::Port
+ depends_on:
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+
+ nestedNoUnified:
+ type: nested-no_vfc_v0.1.yaml
+ depends_on:
+ - 1c2_t2_port_1
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+
+ nestedWithNoNova:
+ type: nested-no-nova.yaml
+ depends_on:
+ - 1a_single_1A
+ - 4p_nested
+ - 1b_t1_port_0
+ - 1b_t1_port_1
+ - 1c101_scalling_instance_1C1
+ - 1c102_scalling_instance_1C1
+ - 1c201_catalog_instance_1C2
+ - 1c202_scalling_instance_1C2
+ - nestedNoUnified
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ security_group_name: group1
+ net_name: myNetwork
+
+ nestedWithNoNovaHadDependencyToIt:
+ type: nested-no-nova.yaml
+ properties:
+ security_group_name: group1
+ net_name: myNetwork
+
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ dependsOn_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - nestedNoUnified
+ - 4p_nested
+ - 1c2_t1_port_1
+ - 1c2_t1_port_0
+ - 1c201_catalog_instance_1C2
+ - 1c202_scalling_instance_1C2
+ - 1c101_scalling_instance_1C1
+ - 1c102_scalling_instance_1C1
+ - 1c1_t2_port_0
+ - 1c1_t2_port_1
+ - 1b01_single_1B
+ - 1b02_single_1B
+ - 1b_t1_port_0
+ - 1b_t1_port_1
+ - 1a_single_1A
+ - 1a_t1_port_0
+ - nestedWithNoNovaHadDependencyToIt
+ properties:
+ name:
+ get_param: net_name
+
+ nodeGetAttIn_network:
+ type: OS::Neutron::Net
+ properties:
+ name: { get_attr: [nestedNoUnified, portId, {get_attr: [4p_nested, server_pcm_id]}]}
+ dhcp_agent_ids: { get_attr: [1c2_t1_port_1, tenant_id, {get_attr: [1c2_t1_port_0, tenant_id, {get_attr: [1c201_catalog_instance_1C2, instance_name, {get_attr: [1c202_scalling_instance_1C2,instance_name]}]}]}]}
+ tenant_id: { get_attr:[1c101_scalling_instance_1C1, instance_name, {get_attr:[1c102_scalling_instance_1C1, instance_name, {get_attr:[1c1_t2_port_0, tenant_id, {get_attr:[1c1_t2_port_1, tenant_id]}]}]}]}
+ value_specs: {get_attr:[1b01_single_1B, instance_name, get_attr:[1b02_single_1B,instance_name, {get_attr:[1b_t1_port_0, tenant_id, {get_attr:[1b_t1_port_1, tenant_id]}]}]] }
+ qos_policy: {get_attr:[1a_single_1A, instance_name]}
+ admin_state_up: {get_attr:[1a_t1_port_0, tenant_id]}
+
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: def
+
+outputs:
+ out1:
+ value: { get_attr: [nestedNoUnified, portId, {get_attr: [4p_nested, server_pcm_id]}]}
+ out2:
+ value: { get_attr: [1c2_t1_port_1, tenant_id, {get_attr: [1c2_t1_port_0, tenant_id, {get_attr: [1c201_catalog_instance_1C2, instance_name, {get_attr: [1c202_scalling_instance_1C2,instance_name]}]}]}]}
+ out3:
+ value: { get_attr:[1c101_scalling_instance_1C1, instance_name, {get_attr:[1c102_scalling_instance_1C1, instance_name, {get_attr:[1c1_t2_port_0, tenant_id, {get_attr:[1c1_t2_port_1, tenant_id]}]}]}]}
+ out4:
+ value: {get_attr:[1b01_single_1B, instance_name, get_attr:[1b02_single_1B,instance_name, {get_attr:[1b_t1_port_0, tenant_id, {get_attr:[1b_t1_port_1, tenant_id]}]}]] }
+ out5:
+ value: {get_attr:[1a_single_1A, instance_name]}
+ out6:
+ value: {get_attr:[1a_t1_port_0, tenant_id]}
+ out7:
+ value: {get_attr:[nestedWithNoNovaHadDependencyToIt, output1]}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no-nova.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no-nova.yaml
new file mode 100644
index 0000000000..65a952dcca
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no-nova.yaml
@@ -0,0 +1,40 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ net_name:
+ type: string
+ security_group_name:
+ type: string
+
+resources:
+
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ dependsOn_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+outputs:
+ output1:
+ value: myOutput \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no_vfc_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no_vfc_v0.1.yaml
new file mode 100644
index 0000000000..2548875c75
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-no_vfc_v0.1.yaml
@@ -0,0 +1,135 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ pcma_server_name:
+ type: string
+ pcma_image_name:
+ type: string
+ pcma_flavor_name:
+ type: string
+ server_group:
+ type: string
+
+resources:
+ server_pcma1:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ server_pcma2:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_2}
+ - port: { get_resource: pcm_port_3}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ portId:
+ value: { get_resource: pcm_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..b2695460d0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,98 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ server_group:
+ type: string
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..3213f601da
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4547 @@
+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.nested-no_vfc_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ pcma_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ pcma_server_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ pcma_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ attributes:
+ portId:
+ type: string
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcma2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_pcma1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.latency_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_pcm_port_3:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcma1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcma2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma2:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcma1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcma2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_pcm_port_2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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.usage_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: org.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.usage_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.1c1_scalling_instance:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c1_scalling_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c1_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t2_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ 1c1_scalling_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_1c1_t2_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c1_scalling_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c1_scalling_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c1_scalling_instance_1c1_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c1_scalling_instance_1c1_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.latency_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance_1c1_t2_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.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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
+ host_1c1_scalling_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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.a_single_1a:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ a_single_1a_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_a_single_1a:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_a_single_1a:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_a_single_1a:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_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
+ host_a_single_1a:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_a_single_1a:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.delta_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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.b_single_1b_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.1c2_catalog_instance_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.nested-no-nova:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ security_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ net_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ attributes:
+ output1:
+ type: string
+ status: SUPPORTED
+ requirements:
+ - dependency_dependsOn_network:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_jsa_security_group:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - port_jsa_security_group:
+ capability: tosca.capabilities.Attachment
+ node: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ relationship: org.openecomp.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ end_point_dependsOn_network:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_dependsOn_network:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_jsa_security_group:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_dependsOn_network:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_dependsOn_network:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.b_single_1b_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ 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/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..5108b6f4f0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/MainServiceTemplate.yaml
@@ -0,0 +1,951 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ ppds_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ a_single_1a_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_server_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ b_single_1b_names:
+ hidden: false
+ immutable: false
+ type: string
+ 1c1_scalling_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ abstract_1c1_scalling_instance:
+ type: org.openecomp.resource.abstract.nodes.1c1_scalling_instance
+ directives:
+ - substitutable
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 3
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 1
+ compute_1c1_scalling_instance_user_data_format:
+ - RAW2
+ - RAW1
+ port_1c1_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_1c1_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ port_1c1_t2_port_network_role_tag:
+ - ppds
+ - ppds
+ port_1c1_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_1c1_scalling_instance_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ port_1c1_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_1c1_t2_port_name:
+ - 1c1_t2_port_1
+ - 1c1_t2_port_0
+ vm_image_name:
+ get_input: pd_image_name
+ compute_1c1_scalling_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ - group: BE_Affinity_group
+ compute_1c1_scalling_instance_name:
+ - get_input:
+ - 1c1_scalling_instance_names
+ - 2
+ - get_input:
+ - 1c1_scalling_instance_names
+ - 1
+ port_1c1_t1_port_name:
+ - 1c1_t1_port_1
+ - 1c1_t1_port_0
+ port_1c1_t1_port_network:
+ - 1c1_scalling_instance_network
+ - 1c1_scalling_instance_network
+ port_1c1_t2_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 4
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 2
+ port_1c1_t2_port_network:
+ - get_input: ppds_net_name
+ - get_input: ppds_net_name
+ service_template_filter:
+ substitute_service_template: Nested_1c1_scalling_instanceServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_1c1_scalling_instance:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ - link_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c1_scalling_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_b_single_1b_0:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_b_single_1b_user_data_format:
+ - RAW
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 0
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network
+ relationship: tosca.relationships.network.LinksTo
+ b_single_1b_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ nestedWithNoNovaHadDependencyToIt:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-no-nova
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested-no-novaServiceTemplate.yaml
+ security_group_name: group1
+ net_name: myNetwork
+ abstract_1c2_catalog_instance_0:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - RAW1
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c2_catalog_instance_1:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ nestedWithNoNova:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-no-nova
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested-no-novaServiceTemplate.yaml
+ security_group_name: group1
+ net_name: myNetwork
+ requirements:
+ - dependency:
+ capability: feature_a_single_1a
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c1_scalling_instance
+ node: abstract_1c1_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedNoUnified
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ 1c1_scalling_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ nodeGetAttIn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ tenant_id:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ admin_state_up:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ qos_policy:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ network_name:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ value_specs:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ dependsOn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedNoUnified
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c1_scalling_instance
+ node: abstract_1c1_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c1_scalling_instance_1c1_t2_port
+ node: abstract_1c1_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a_1a_t1_port
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ abstract_a_single_1a:
+ type: org.openecomp.resource.abstract.nodes.a_single_1a
+ directives:
+ - substitutable
+ properties:
+ compute_a_single_1a_availability_zone:
+ - get_input: availabilityzone_name
+ compute_a_single_1a_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1a_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_1a_t2_port_network_role_tag:
+ - ppds
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1a_t2_port_network:
+ - get_input: ppds_net_name
+ port_1a_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1a_t1_port_network:
+ - a_single_1a_network
+ vm_image_name:
+ get_input: pd_image_name
+ port_1a_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_a_single_1a_user_data_format:
+ - RAW
+ compute_a_single_1a_name:
+ - get_input:
+ - a_single_1a_names
+ - 0
+ port_1a_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_a_single_1a:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: a_single_1a_network
+ relationship: tosca.relationships.network.LinksTo
+ nestedNoUnified:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-no_vfc_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedWithNoNovaHadDependencyToIt
+ relationship: tosca.relationships.DependsOn
+ nested_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pcm_port_0
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_0
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_2
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_3
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_b_single_1b_1:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1b_t1_port_network_role_tag:
+ - oam
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network
+ compute_b_single_1b_user_data_format:
+ - RAW
+ port_1b_t1_port_network:
+ - get_input: oam_net_name
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 1
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network
+ relationship: tosca.relationships.network.LinksTo
+ a_single_1a_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ 1c2_catalog_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - b_single_1b_network
+ - nestedWithNoNovaHadDependencyToIt
+ - nestedWithNoNova
+ - 1c1_scalling_instance_network
+ - nodeGetAttIn_network
+ - dependsOn_network
+ - nestedNoUnified
+ - nested_network
+ - jsa_security_group
+ - a_single_1a_network
+ - 1c2_catalog_instance_network
+ - abstract_a_single_1a
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_1c1_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ - abstract_pcm_server_0
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_a_single_1a
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_1c1_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ outputs:
+ out2:
+ value:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ out3:
+ value:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ out4:
+ value:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ out5:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ out1:
+ value:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ out6:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ out7:
+ value:
+ get_attribute:
+ - nestedWithNoNovaHadDependencyToIt
+ - output1
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
new file mode 100644
index 0000000000..2c43ee2c01
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
@@ -0,0 +1,413 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c1_scalling_instance
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c1_scalling_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_1c1_scalling_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_1c1_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t2_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ 1c1_scalling_instance_1c1_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t1_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t1_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t1_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c1_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c1_scalling_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c1_scalling_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c1_scalling_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c1_scalling_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c1_scalling_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c1_scalling_instance_user_data_format
+ - index_value
+ 1c1_scalling_instance_1c1_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t2_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c1_t2_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t2_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t2_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t2_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c1_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c1_scalling_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c1_scalling_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_1c1_t2_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c1_scalling_instance_1c1_t2_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c1_scalling_instance
+ capabilities:
+ disk.device.latency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.latency
+ disk.ephemeral.size_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.ephemeral.size
+ disk.root.size_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.root.size
+ endpoint_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - endpoint
+ disk.read.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.bytes
+ network.outgoing.packets.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.packets.rate
+ disk.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.usage
+ memory.resident_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory.resident
+ network.incoming.bytes.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.bytes.rate
+ cpu_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu
+ disk.write.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.bytes
+ network.incoming.packets.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.packets.rate
+ network.incoming.bytes_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.bytes
+ disk.write.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.bytes.rate
+ disk.device.allocation_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.allocation
+ network.incoming.bytes.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.bytes.rate
+ feature_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - feature
+ disk.device.write.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.requests.rate
+ disk.read.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.bytes.rate
+ network.outpoing.packets_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outpoing.packets
+ scalable_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - scalable
+ disk.device.read.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.bytes
+ binding_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - binding
+ disk.device.write.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.bytes
+ disk.read.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.requests
+ network.incoming.packets_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.packets
+ vcpus_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - vcpus
+ network.outgoing.bytes_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes
+ host_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - host
+ disk.write.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.requests
+ feature_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - feature
+ binding_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - binding
+ disk.device.read.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.requests.rate
+ attachment_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - attachment
+ disk.device.read.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.packets.rate
+ disk.device.iops_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.iops
+ disk.device.capacity_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.capacity
+ disk.capacity_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.capacity
+ disk.write.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.requests.rate
+ cpu_util_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu_util
+ disk.device.read.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.bytes
+ disk.latency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.latency
+ binding_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - binding
+ disk.device.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.usage
+ network.incoming.packets_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.packets
+ disk.allocation_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.allocation
+ feature_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - feature
+ memory.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory.usage
+ network.incoming.bytes_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.bytes.rate
+ os_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - os
+ disk.iops_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.iops
+ network.outpoing.packets_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outpoing.packets
+ attachment_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - attachment
+ cpu.delta_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu.delta
+ memory_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory
+ instance_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - instance
+ requirements:
+ dependency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - dependency
+ link_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - link
+ dependency_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - dependency
+ dependency_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - dependency
+ link_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - link
+ local_storage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..dd75d5837c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..213939c88e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml
new file mode 100644
index 0000000000..dcfab01851
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_a_single_1aServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_a_single_1a
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.a_single_1a:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ a_single_1a_1a_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ a_single_1a:
+ type: org.openecomp.resource.vfc.nodes.heat.a_single_1a
+ properties:
+ availability_zone:
+ get_input:
+ - compute_a_single_1a_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_a_single_1a_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_a_single_1a_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_a_single_1a_user_data_format
+ - index_value
+ a_single_1a_1a_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t2_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1a_t2_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ a_single_1a_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a
+ - instance_name
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a_1a_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.a_single_1a
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes
+ network.incoming.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes.rate
+ disk.usage_a_single_1a:
+ - a_single_1a
+ - disk.usage
+ attachment_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - attachment
+ scalable_a_single_1a:
+ - a_single_1a
+ - scalable
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes.rate
+ host_a_single_1a:
+ - a_single_1a
+ - host
+ endpoint_a_single_1a:
+ - a_single_1a
+ - endpoint
+ disk.root.size_a_single_1a:
+ - a_single_1a
+ - disk.root.size
+ memory.resident_a_single_1a:
+ - a_single_1a
+ - memory.resident
+ network.incoming.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets.rate
+ cpu.delta_a_single_1a:
+ - a_single_1a
+ - cpu.delta
+ disk.device.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests
+ network.incoming.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes.rate
+ disk.iops_a_single_1a:
+ - a_single_1a
+ - disk.iops
+ network.incoming.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes
+ cpu_util_a_single_1a:
+ - a_single_1a
+ - cpu_util
+ os_a_single_1a:
+ - a_single_1a
+ - os
+ disk.device.usage_a_single_1a:
+ - a_single_1a
+ - disk.device.usage
+ network.incoming.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.packets.rate
+ disk.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.read.requests
+ disk.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes.rate
+ disk.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes.rate
+ attachment_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - attachment
+ cpu_a_single_1a:
+ - a_single_1a
+ - cpu
+ memory.usage_a_single_1a:
+ - a_single_1a
+ - memory.usage
+ disk.device.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests.rate
+ binding_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - binding
+ network.incoming.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets
+ disk.device.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests
+ disk.device.latency_a_single_1a:
+ - a_single_1a
+ - disk.device.latency
+ instance_a_single_1a:
+ - a_single_1a
+ - instance
+ binding_a_single_1a:
+ - a_single_1a
+ - binding
+ disk.latency_a_single_1a:
+ - a_single_1a
+ - disk.latency
+ network.outgoing.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes
+ disk.device.allocation_a_single_1a:
+ - a_single_1a
+ - disk.device.allocation
+ disk.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes
+ feature_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - feature
+ network.outpoing.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outpoing.packets
+ network.outpoing.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outpoing.packets
+ disk.device.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes
+ disk.device.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes.rate
+ memory_a_single_1a:
+ - a_single_1a
+ - memory
+ disk.allocation_a_single_1a:
+ - a_single_1a
+ - disk.allocation
+ network.outgoing.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.packets.rate
+ feature_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - feature
+ disk.capacity_a_single_1a:
+ - a_single_1a
+ - disk.capacity
+ disk.device.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes
+ network.incoming.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets
+ feature_a_single_1a:
+ - a_single_1a
+ - feature
+ network.outgoing.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes
+ disk.ephemeral.size_a_single_1a:
+ - a_single_1a
+ - disk.ephemeral.size
+ vcpus_a_single_1a:
+ - a_single_1a
+ - vcpus
+ binding_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - binding
+ disk.device.iops_a_single_1a:
+ - a_single_1a
+ - disk.device.iops
+ disk.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.write.requests
+ disk.device.read.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests.rate
+ disk.device.capacity_a_single_1a:
+ - a_single_1a
+ - disk.device.capacity
+ disk.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.requests.rate
+ network.incoming.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes.rate
+ requirements:
+ link_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - link
+ link_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - link
+ dependency_a_single_1a:
+ - a_single_1a
+ - dependency
+ dependency_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - dependency
+ dependency_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - dependency
+ local_storage_a_single_1a:
+ - a_single_1a
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..cefe2d2db0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -0,0 +1,363 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_attribute:
+ - b_single_1b
+ - accessIPv6
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..158df6fc9f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1b_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no-novaServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no-novaServiceTemplate.yaml
new file mode 100644
index 0000000000..23bca38425
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no-novaServiceTemplate.yaml
@@ -0,0 +1,135 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-no-nova
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ dependsOn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ groups:
+ nested-no-nova_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-no-nova.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - dependsOn_network
+ - jsa_security_group
+ outputs:
+ output1:
+ value: myOutput
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-no-nova
+ capabilities:
+ end_point_dependsOn_network:
+ - dependsOn_network
+ - end_point
+ link_dependsOn_network:
+ - dependsOn_network
+ - link
+ feature_jsa_security_group:
+ - jsa_security_group
+ - feature
+ feature_dependsOn_network:
+ - dependsOn_network
+ - feature
+ attachment_dependsOn_network:
+ - dependsOn_network
+ - attachment
+ requirements:
+ dependency_dependsOn_network:
+ - dependsOn_network
+ - dependency
+ port_jsa_security_group:
+ - jsa_security_group
+ - port
+ dependency_jsa_security_group:
+ - jsa_security_group
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no_vfc_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no_vfc_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..8d8e5cc5cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-no_vfc_v0.1ServiceTemplate.yaml
@@ -0,0 +1,671 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-no_vfc_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcma_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ pcma_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ pcma_server_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcma_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ pcm_port_2:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_3:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ server_pcma2:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ server_pcma1:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-no_vfc_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-no_vfc_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_2
+ - pcm_port_1
+ - pcm_port_3
+ - server_pcma2
+ - server_pcma1
+ - pcm_port_0
+ outputs:
+ portId:
+ value: pcm_port_3
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ disk.device.iops_server_pcma2:
+ - server_pcma2
+ - disk.device.iops
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_3:
+ - pcm_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_2:
+ - pcm_port_2
+ - network.outpoing.packets
+ disk.device.iops_server_pcma1:
+ - server_pcma1
+ - disk.device.iops
+ disk.device.capacity_server_pcma2:
+ - server_pcma2
+ - disk.device.capacity
+ disk.device.capacity_server_pcma1:
+ - server_pcma1
+ - disk.device.capacity
+ disk.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.read.requests
+ disk.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.read.requests
+ disk.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.requests.rate
+ memory_server_pcma2:
+ - server_pcma2
+ - memory
+ memory_server_pcma1:
+ - server_pcma1
+ - memory
+ disk.device.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes
+ disk.device.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes.rate
+ binding_pcm_port_3:
+ - pcm_port_3
+ - binding
+ disk.device.latency_server_pcma2:
+ - server_pcma2
+ - disk.device.latency
+ disk.device.usage_server_pcma2:
+ - server_pcma2
+ - disk.device.usage
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.device.latency_server_pcma1:
+ - server_pcma1
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ disk.device.usage_server_pcma1:
+ - server_pcma1
+ - disk.device.usage
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ binding_pcm_port_2:
+ - pcm_port_2
+ - binding
+ network.incoming.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes
+ network.outgoing.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.packets.rate
+ disk.device.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests
+ disk.device.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ disk.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes
+ disk.device.read.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests.rate
+ network.outgoing.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.packets.rate
+ disk.device.read.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ binding_server_pcma1:
+ - server_pcma1
+ - binding
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ binding_server_pcma2:
+ - server_pcma2
+ - binding
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes
+ feature_pcm_port_3:
+ - pcm_port_3
+ - feature
+ feature_pcm_port_2:
+ - pcm_port_2
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ disk.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes.rate
+ attachment_pcm_port_2:
+ - pcm_port_2
+ - attachment
+ disk.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes.rate
+ attachment_pcm_port_3:
+ - pcm_port_3
+ - attachment
+ disk.root.size_server_pcma2:
+ - server_pcma2
+ - disk.root.size
+ disk.root.size_server_pcma1:
+ - server_pcma1
+ - disk.root.size
+ disk.iops_server_pcma2:
+ - server_pcma2
+ - disk.iops
+ disk.iops_server_pcma1:
+ - server_pcma1
+ - disk.iops
+ disk.device.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes.rate
+ disk.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes
+ disk.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes
+ cpu_util_server_pcma1:
+ - server_pcma1
+ - cpu_util
+ cpu_util_server_pcma2:
+ - server_pcma2
+ - cpu_util
+ feature_server_pcma2:
+ - server_pcma2
+ - feature
+ memory.usage_server_pcma2:
+ - server_pcma2
+ - memory.usage
+ memory.usage_server_pcma1:
+ - server_pcma1
+ - memory.usage
+ feature_server_pcma1:
+ - server_pcma1
+ - feature
+ disk.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes.rate
+ disk.device.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes
+ endpoint_server_pcma2:
+ - server_pcma2
+ - endpoint
+ disk.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes.rate
+ endpoint_server_pcma1:
+ - server_pcma1
+ - endpoint
+ cpu.delta_server_pcma1:
+ - server_pcma1
+ - cpu.delta
+ cpu.delta_server_pcma2:
+ - server_pcma2
+ - cpu.delta
+ host_server_pcma2:
+ - server_pcma2
+ - host
+ host_server_pcma1:
+ - server_pcma1
+ - host
+ disk.ephemeral.size_server_pcma1:
+ - server_pcma1
+ - disk.ephemeral.size
+ disk.ephemeral.size_server_pcma2:
+ - server_pcma2
+ - disk.ephemeral.size
+ disk.device.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests.rate
+ disk.latency_server_pcma1:
+ - server_pcma1
+ - disk.latency
+ disk.latency_server_pcma2:
+ - server_pcma2
+ - disk.latency
+ disk.device.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests.rate
+ scalable_server_pcma2:
+ - server_pcma2
+ - scalable
+ scalable_server_pcma1:
+ - server_pcma1
+ - scalable
+ disk.device.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests
+ disk.device.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests
+ instance_server_pcma2:
+ - server_pcma2
+ - instance
+ disk.device.allocation_server_pcma1:
+ - server_pcma1
+ - disk.device.allocation
+ disk.device.allocation_server_pcma2:
+ - server_pcma2
+ - disk.device.allocation
+ instance_server_pcma1:
+ - server_pcma1
+ - instance
+ os_server_pcma1:
+ - server_pcma1
+ - os
+ os_server_pcma2:
+ - server_pcma2
+ - os
+ disk.capacity_server_pcma1:
+ - server_pcma1
+ - disk.capacity
+ disk.capacity_server_pcma2:
+ - server_pcma2
+ - disk.capacity
+ disk.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.write.requests
+ disk.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.write.requests
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets
+ disk.usage_server_pcma2:
+ - server_pcma2
+ - disk.usage
+ network.incoming.packets_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes.rate
+ disk.usage_server_pcma1:
+ - server_pcma1
+ - disk.usage
+ vcpus_server_pcma1:
+ - server_pcma1
+ - vcpus
+ memory.resident_server_pcma1:
+ - server_pcma1
+ - memory.resident
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ vcpus_server_pcma2:
+ - server_pcma2
+ - vcpus
+ memory.resident_server_pcma2:
+ - server_pcma2
+ - memory.resident
+ disk.device.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes
+ disk.allocation_server_pcma1:
+ - server_pcma1
+ - disk.allocation
+ disk.allocation_server_pcma2:
+ - server_pcma2
+ - disk.allocation
+ disk.device.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes
+ cpu_server_pcma1:
+ - server_pcma1
+ - cpu
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ cpu_server_pcma2:
+ - server_pcma2
+ - cpu
+ network.incoming.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ dependency_server_pcma2:
+ - server_pcma2
+ - dependency
+ local_storage_server_pcma2:
+ - server_pcma2
+ - local_storage
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ dependency_server_pcma1:
+ - server_pcma1
+ - dependency
+ local_storage_server_pcma1:
+ - server_pcma1
+ - local_storage
+ link_pcm_port_2:
+ - pcm_port_2
+ - link
+ link_pcm_port_3:
+ - pcm_port_3
+ - link
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_pcm_port_3:
+ - pcm_port_3
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
+ dependency_pcm_port_2:
+ - pcm_port_2
+ - 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/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..10064c8155
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/dependencyConnectivity/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,387 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/MANIFEST.json
new file mode 100644
index 0000000000..e8e750118e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/MANIFEST.json
@@ -0,0 +1,39 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "base_vota.yml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_vota.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "module_9_lb2_vota.yml",
+ "type": "HEAT",
+ "isBase": "false",
+ "data": [
+ {
+ "file": "module_9_lb2_vota.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "module_8_lb1_vota.yml",
+ "type": "HEAT",
+ "isBase": "false",
+ "data": [
+ {
+ "file": "module_8_lb1_vota.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.env
new file mode 100644
index 0000000000..d433114825
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.env
@@ -0,0 +1,33 @@
+parameters:
+###
+ apps_db_int_net_cidr: 172.26.4.0/24
+ apps_db_int_net_gateway: 172.26.4.1
+ apps_db_int_net_dhcp: "true"
+###
+ app1_kms_int_net_cidr: 172.26.3.0/24
+ app1_kms_int_net_gateway: 172.26.3.1
+ app1_kms_int_net_dhcp: "true"
+###
+ apps_int_net_cidr: 172.26.2.0/24
+ apps_int_net_gateway: 172.26.2.1
+ apps_int_net_dhcp: "true"
+###
+ lb1_gwaf_int_net_cidr: 172.26.0.0/24
+ lb1_gwaf_int_net_gateway: 172.26.0.1
+ lb_gwaf_int_net_dhcp: true
+###
+ gwaf_lb2_int_net_cird: 172.26.1.0/24
+ gwaf_lb2_int_net_gateway: 172.26.1.1
+ gwaf_lb2_int_net_pool_start: 172.26.1.6
+ gwaf_lb2_int_net_pool_end: 172.26.1.200
+###
+ lb3_kms_int_net_cidr: 172.26.5.0/24
+ lb3_kms_int_net_gateway: 172.26.5.1
+ lb3_kms_int_net_dhcp: "true"
+#####
+ int_oam_int_net_cidr: 172.26.13.0/24
+ int_oam_int_net_gateway: 172.26.13.1
+ int_oam_int_net_dhcp: "true"
+####
+
+# vnf_name: vOTA-25348-Lab-03v3-01 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.yml
new file mode 100644
index 0000000000..525c72fb3a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/base_vota.yml
@@ -0,0 +1,495 @@
+heat_template_version: 2015-04-30
+
+description: >
+ HOT template to create network stack
+
+parameters:
+####
+
+ int_oam_int_net_cidr:
+ type: string
+ description: int oam network
+ int_oam_int_net_gateway:
+ type: string
+ description: gateway for int oam
+ int_oam_int_net_dhcp:
+ type: string
+ description: int oam dhcp
+
+#####
+
+ apps_db_int_net_cidr:
+ type: string
+ description: apps db int cidr
+ apps_db_int_net_gateway:
+ type: string
+ description: apps db int gateway
+ apps_db_int_net_dhcp:
+ type: string
+ description: apps db int dhcp
+###
+ lb3_kms_int_net_cidr:
+ type: string
+ description: lb3 network
+ lb3_kms_int_net_gateway:
+ type: string
+ description: lb3 gateway
+ lb3_kms_int_net_dhcp:
+ type: string
+ description: lb3 kms dhcp
+###
+
+ app1_kms_int_net_cidr:
+ type: string
+ description: app1_kms network
+ app1_kms_int_net_gateway:
+ type: string
+ description: app1_kms gateway
+ app1_kms_int_net_dhcp:
+ type: string
+ description: app1_kms dhcp
+####
+
+ apps_int_net_cidr:
+ type: string
+ description: apps int net
+ apps_int_net_gateway:
+ type: string
+ description: apps int gateway
+ apps_int_net_dhcp:
+ type: string
+ description: apps int dhcp
+####
+
+ lb1_gwaf_int_net_cidr:
+ type: string
+ description: lb1 gwaf
+ lb1_gwaf_int_net_gateway:
+ type: string
+ description: lb1 gwaf gateway
+ lb_gwaf_int_net_dhcp:
+ type: string
+ description: lb1 gwaf description
+####
+ gwaf_lb2_int_net_cird:
+ type: string
+ description: epc_sctp_a subnet
+ gwaf_lb2_int_net_gateway:
+ type: string
+ description: GWAF_LB2 network gateway
+ gwaf_lb2_int_net_pool_start:
+ type: string
+ description: GWAF_LB2 network ip pool start IP address
+ gwaf_lb2_int_net_pool_end:
+ type: string
+ description: GWAF_LB2 network ip pool end IP address
+
+####
+ vnf_name:
+ type: string
+ description: vnf name
+
+resources:
+
+ apps_db_int_net:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VF_NAME_apps_db_int_net
+ params:
+ VF_NAME: {get_param: vnf_name}
+
+ apps_db_int_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network: { get_resource: apps_db_int_net }
+ cidr: { get_param: apps_db_int_net_cidr }
+ gateway_ip: { get_param: apps_db_int_net_gateway}
+ enable_dhcp: { get_param: apps_db_int_net_dhcp }
+
+
+ app1_kms_int_net:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VF_NAME_app1_kms_int_net
+ params:
+ VF_NAME: {get_param: vnf_name}
+
+
+ app1_kms_int_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network: { get_resource: app1_kms_int_net }
+ cidr: { get_param: app1_kms_int_net_cidr }
+ gateway_ip: { get_param: app1_kms_int_net_gateway}
+ enable_dhcp: { get_param: app1_kms_int_net_dhcp }
+
+
+
+ apps_int_net:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VF_NAME_apps_int_net
+ params:
+ VF_NAME: {get_param: vnf_name}
+
+
+ apps_int_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network: { get_resource: apps_int_net }
+ cidr: { get_param: apps_int_net_cidr }
+ gateway_ip: { get_param: apps_int_net_gateway }
+ enable_dhcp: { get_param: apps_int_net_dhcp }
+
+ lb1_gwaf_int_net:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VF_NAME_lb1_gwaf_int_net
+ params:
+ VF_NAME: {get_param: vnf_name}
+
+
+ lb1_gwaf_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network: { get_resource: lb1_gwaf_int_net }
+ cidr: { get_param: lb1_gwaf_int_net_cidr }
+ gateway_ip: { get_param: lb1_gwaf_int_net_gateway }
+ enable_dhcp: { get_param: lb_gwaf_int_net_dhcp }
+
+
+ gwaf_lb2_int_net:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VF_NAME_gwaf_lb2_int_net
+ params:
+ VF_NAME: {get_param: vnf_name}
+
+
+ gwaf_lb2_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network: { get_resource: gwaf_lb2_int_net }
+ cidr: { get_param: gwaf_lb2_int_net_cird }
+ gateway_ip: { get_param: gwaf_lb2_int_net_gateway }
+ allocation_pools:
+ - start: { get_param: gwaf_lb2_int_net_pool_start }
+ end: { get_param: gwaf_lb2_int_net_pool_end }
+
+
+ lb3_kms_int_net:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VF_NAME_lb3_kms_int_net
+ params:
+ VF_NAME: {get_param: vnf_name}
+
+
+ LB3_KMS_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network: { get_resource: lb3_kms_int_net }
+ cidr: { get_param: lb3_kms_int_net_cidr }
+ enable_dhcp: { get_param: lb3_kms_int_net_dhcp }
+ gateway_ip: { get_param: lb3_kms_int_net_gateway }
+
+ int_oam_int_net:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: VF_NAME_int_oam_int_net
+ params:
+ VF_NAME: {get_param: vnf_name}
+
+
+ int_oam_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network: { get_resource: int_oam_int_net }
+ cidr: { get_param: int_oam_int_net_cidr }
+ enable_dhcp: { get_param: int_oam_int_net_dhcp }
+ gateway_ip: { get_param: int_oam_int_net_gateway }
+
+
+
+ oam_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: oam security group
+ name:
+ str_replace:
+ template: VF_NAME-oam_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+ int_oam_int_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: oam security group
+ name:
+ str_replace:
+ template: VF_NAME-int_oam_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+
+ db_core_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: db core security group
+ name:
+ str_replace:
+ template: VF_NAME-db_core_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+ otacs_core_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: otacs core security group
+ name:
+ str_replace:
+ template: VF_NAME-otacs_core_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+
+ apps_int_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: apps security group
+ name:
+ str_replace:
+ template: VF_NAME-apps_int_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+ apps_db_int_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: apps db security group
+ name:
+ str_replace:
+ template: VF_NAME-apps_db_int_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+
+ lb1_gwaf_int_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: fromexternal gwaf security group
+ name:
+ str_replace:
+ template: VF_NAME-lb1_gwaf_int_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+
+ gwaf_lb2_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: gwaf1_app1 security group
+ name:
+ str_replace:
+ template: VF_NAME-gwaf_lb2_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+ app1_kms_int_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: app1 kms security group
+ name:
+ str_replace:
+ template: VF_NAME-app1_kms_int_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+
+ lb1_oam_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: LB1 all security group
+ name:
+ str_replace:
+ template: VF_NAME-lb1_oam_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+ lb3_kms_int_sec_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: lb3_kms_int_sec_group
+ name:
+ str_replace:
+ template: VF_NAME-lb3_kms_int_sec_group
+ params:
+ VF_NAME: {get_param: vnf_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}
+ ]
+
+
+outputs:
+
+ apps_db_int_net_id:
+ description: uuid of the network
+ value: {get_resource: apps_db_int_net }
+
+ app1_kms_int_net_id:
+ description: uuid of the network
+ value: {get_resource: app1_kms_int_net }
+
+ apps_int_net_id:
+ description: uuid of the network
+ value: {get_resource: apps_int_net }
+
+ lb1_gwaf_int_net_id:
+ description: uuid of the network
+ value: {get_resource: lb1_gwaf_int_net }
+
+ gwaf_lb2_int_net_id:
+ description: uuid of the network
+ value: {get_resource: gwaf_lb2_int_net }
+
+ lb3_kms_int_net_id:
+ description: uuid of the network
+ value: {get_resource: lb3_kms_int_net }
+
+ int_oam_int_net_id:
+ description: uuid of the network
+ value: {get_resource: int_oam_int_net }
+
+ oam_protected_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: oam_sec_group }
+
+ int_oam_int_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: int_oam_int_sec_group }
+
+ db_core_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: db_core_sec_group }
+
+ otacs_core_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: otacs_core_sec_group }
+
+ apps_int_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: apps_int_sec_group }
+
+ apps_db_int_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: apps_db_int_sec_group }
+
+ lb1_gwaf_int_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: lb1_gwaf_int_sec_group }
+
+ gwaf_lb2_int_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: gwaf_lb2_sec_group }
+
+ app1_kms_int_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: app1_kms_int_sec_group }
+
+ lb1_oam_protected_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: lb1_oam_sec_group }
+
+ lb3_kms_int_sec_group_id:
+ description: uuid of the security group
+ value: {get_resource: lb3_kms_int_sec_group }
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.env
new file mode 100644
index 0000000000..c1c030cb40
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.env
@@ -0,0 +1,50 @@
+parameters:
+# VN config
+# int_oam_int_net_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01_int_oam_int_net'
+# lb1_gwaf_int_net_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01_lb1_gwaf_int_net'
+# oam_protected_net: 'default-domain:vOTA-25348-Lab-03v3:MNS-25180-L-06Shared_OAM_PROTECTED_NET_1'
+# VM config
+ LB1_flavor_name: 'gv.c4r8d320'
+ LB1_image_name: 'LB2_AIC'
+ lb_key_name: vOTA-25348-Lab-03v3-key_pair
+# availability_zone_0: rdm3-kvm-az01
+# availability_zone_0: rdm3-kvm-az02
+# LB1_name_0: 'ZRDM3vOTA03LB0010'
+# LB1_name_1: 'ZRDM3vOTA03LB0011'
+# aap_core
+# aap_core_ip_prefix: 107.239.83.114
+ aap_core_ip_prefix_len: 32
+ aap_core_ha_mode : 'active-standby'
+ aap_core_mac: '00:00:00:00:00:00'
+###ip addresses
+ lb_oam_int_ip_0: 172.26.13.130
+ lb_lb1_gwaf_int_ip_0: 172.26.0.50
+# lb_oam_protected_ip_0: 107.239.83.112
+ lb_oam_int_ip_1: 172.26.13.131
+ lb_lb1_gwaf_int_ip_1: 172.26.0.51
+# lb_oam_protected_ip_1: 107.239.83.113
+ # oam_gw: 107.250.173.1
+##general
+# vnf_id: vOTA
+# vf_module_id: dummy
+###security groups
+# oam_protected_sec_group_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01-lb1_oam_sec_group'
+# lb1_gwaf_int_sec_group_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01-lb1_gwaf_int_sec_group'
+# int_oam_int_sec_group_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01-int_oam_sec_group'
+####health check
+ shc_enabled: True
+ shc_monitor_type: PING
+ shc_delay: 3
+ shc_timeout: 5
+ shc_max_retries: 2
+ shc_url_path: 'local-ip'
+#####ECMP hash
+ ecmp_hashing_include_fields_hashing_configured: True
+ ecmp_hashing_include_fields_source_ip: True
+ ecmp_hashing_include_fields_destination_port: True
+ ecmp_hashing_include_fields_source_port: False
+ ecmp_hashing_include_fields_destination_ip: False
+ ecmp_hashing_include_fields_ip_protocol: False
+#
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.yml
new file mode 100644
index 0000000000..ebc6ed1212
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_8_lb1_vota.yml
@@ -0,0 +1,336 @@
+heat_template_version: 2015-04-30
+
+parameters:
+####
+ int_oam_int_net_id:
+ type: string
+ description: Name of management network to be created
+ lb1_gwaf_int_net_id:
+ type: string
+ description: Name of mirror network to be created
+ oam_protected_net:
+ type: string
+ description: Name of mirror network to be created
+####
+ lb_key_name:
+ type: string
+ LB1_name_0:
+ type: string
+ description: Name of the SVM
+ LB1_name_1:
+ type: string
+ description: Name of the SVM
+ LB1_flavor_name:
+ type: string
+ description: Flavor of the end VMs
+ LB1_image_name:
+ type: string
+ description: Name of the end VM LB_image_name
+# aap_core
+ aap_core_ip_prefix:
+ type: string
+ description: ip_prefix for the ServiceInstance
+ aap_core_ip_prefix_len:
+ type: number
+ description: ip_prefix_len for the ServiceInstance
+ aap_core_ha_mode:
+ type: string
+ description: address_mode for the ServiceInstance
+ aap_core_mac:
+ type: string
+ description: mac for the VirtualMachineInterface
+ lb_oam_int_ip_0:
+ type: string
+ description: lb ip
+ lb_lb1_gwaf_int_ip_0:
+ type: string
+ description: lb ip
+ lb_oam_protected_ip_0:
+ type: string
+ description: lb ip
+ lb_oam_int_ip_1:
+ type: string
+ description: lb ip
+ lb_lb1_gwaf_int_ip_1:
+ type: string
+ description: lb ip
+ lb_oam_protected_ip_1:
+ type: string
+ description: lb ip
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ vnf_id:
+ type: string
+ description: Name of vOTA instance for ECOMP
+ availability_zone_0:
+ type: string
+ description: lb availability zone
+ availability_zone_1:
+ type: string
+ description: lb availability zone
+ int_oam_int_sec_group_id:
+ type: string
+ description: int oam sec group
+ lb1_gwaf_int_sec_group_id:
+ type: string
+ description: lb1 gwaf sec group id
+ oam_protected_sec_group_id:
+ type: string
+ description: oam protected sec group
+ shc_enabled:
+ type: string
+ description: health check
+ shc_monitor_type:
+ type: string
+ description: health check
+ shc_delay:
+ type: string
+ description: health check
+ shc_timeout:
+ type: string
+ description: health check
+ shc_max_retries:
+ type: string
+ description: health check
+ shc_url_path:
+ type: string
+ description: health check
+ ecmp_hashing_include_fields_hashing_configured:
+ type: string
+ description: health check
+ ecmp_hashing_include_fields_source_ip:
+ type: string
+ description: ecmp hash
+ ecmp_hashing_include_fields_destination_port:
+ type: string
+ description: ecmp hash
+ ecmp_hashing_include_fields_source_port:
+ type: string
+ description: ecmp hash
+ ecmp_hashing_include_fields_destination_ip:
+ type: string
+ description: ecmp hash
+ ecmp_hashing_include_fields_ip_protocol:
+ type: string
+ description: ecmp hash
+ oam_gw:
+ type: string
+ description: oam gw
+resources:
+
+
+
+ lb_0_int_oam_int_0_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: int_oam_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ security_group_refs: [{ get_param: int_oam_int_sec_group_id}]
+
+ lb_0_lb1_gwaf_int_1_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb1_gwaf_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
+ security_group_refs: [{ get_param: lb1_gwaf_int_sec_group_id }]
+
+ lb_0_oam_protected_2_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_network_refs: [{ get_param: oam_protected_net }]
+ service_health_check_refs:
+ - get_resource: lb_oam_protected_hc
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured: { get_param: ecmp_hashing_include_fields_hashing_configured }
+ ecmp_hashing_include_fields_source_ip: { get_param: ecmp_hashing_include_fields_source_ip }
+ ecmp_hashing_include_fields_destination_port: { get_param: ecmp_hashing_include_fields_destination_port }
+ ecmp_hashing_include_fields_destination_ip: { get_param: ecmp_hashing_include_fields_destination_ip }
+ ecmp_hashing_include_fields_source_port: { get_param: ecmp_hashing_include_fields_source_port }
+ ecmp_hashing_include_fields_ip_protocol: { get_param: ecmp_hashing_include_fields_ip_protocol }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
+ [{
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: aap_core_ip_prefix },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: { get_param: aap_core_ip_prefix_len },
+ },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: aap_core_mac },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: { get_param: aap_core_ha_mode },
+ }],
+ }
+ security_group_refs: [{ get_param: oam_protected_sec_group_id }]
+
+ lb_1_int_oam_int_0_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: int_oam_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ security_group_refs: [{ get_param: int_oam_int_sec_group_id}]
+
+ lb_1_lb1_gwaf_int_1_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb1_gwaf_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
+ security_group_refs: [{ get_param: lb1_gwaf_int_sec_group_id }]
+
+ lb_1_oam_protected_2_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_network_refs: [{ get_param: oam_protected_net }]
+ service_health_check_refs:
+ - get_resource: lb_oam_protected_hc
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured: { get_param: ecmp_hashing_include_fields_hashing_configured }
+ ecmp_hashing_include_fields_source_ip: { get_param: ecmp_hashing_include_fields_source_ip }
+ ecmp_hashing_include_fields_destination_port: { get_param: ecmp_hashing_include_fields_destination_port }
+ ecmp_hashing_include_fields_destination_ip: { get_param: ecmp_hashing_include_fields_destination_ip }
+ ecmp_hashing_include_fields_source_port: { get_param: ecmp_hashing_include_fields_source_port }
+ ecmp_hashing_include_fields_ip_protocol: { get_param: ecmp_hashing_include_fields_ip_protocol }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
+ [{
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: aap_core_ip_prefix },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: { get_param: aap_core_ip_prefix_len },
+ },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: aap_core_mac },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: { get_param: aap_core_ha_mode },
+ }],
+ }
+ security_group_refs: [{ get_param: oam_protected_sec_group_id }]
+
+ lb_0_int_oam_int_0_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_0_int_oam_int_0_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_0_int_oam_int_0_port }]
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ instance_ip_address: { get_param: lb_oam_int_ip_0 }
+
+
+ lb_0_lb1_gwaf_int_1_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_0_lb1_gwaf_int_1_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_0_lb1_gwaf_int_1_port }]
+ virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
+ instance_ip_address: { get_param: lb_lb1_gwaf_int_ip_0 }
+
+
+ lb_0_oam_protected_2_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_0_oam_protected_2_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_0_oam_protected_2_port }]
+ virtual_network_refs: [{ get_param: oam_protected_net }]
+ instance_ip_address: { get_param: lb_oam_protected_ip_0 }
+
+
+ lb_1_int_oam_int_0_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_1_int_oam_int_0_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_1_int_oam_int_0_port }]
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ instance_ip_address: { get_param: lb_oam_int_ip_1 }
+
+
+ lb_1_lb1_gwaf_int_1_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_1_lb1_gwaf_int_1_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_1_lb1_gwaf_int_1_port }]
+ virtual_network_refs: [{ get_param: lb1_gwaf_int_net_id }]
+ instance_ip_address: { get_param: lb_lb1_gwaf_int_ip_1 }
+
+
+ lb_1_oam_protected_2_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_1_oam_protected_2_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_1_oam_protected_2_port }]
+ virtual_network_refs: [{ get_param: oam_protected_net }]
+ instance_ip_address: { get_param: lb_oam_protected_ip_1 }
+
+
+ lb_oam_protected_hc:
+ type: OS::ContrailV2::ServiceHealthCheck
+ properties:
+ name: oam_protected_hc_PING
+ service_health_check_properties:
+ service_health_check_properties_enabled: { get_param: shc_enabled }
+ service_health_check_properties_monitor_type: { get_param: shc_monitor_type }
+ service_health_check_properties_delay: { get_param: shc_delay }
+ service_health_check_properties_timeout: { get_param: shc_timeout }
+ service_health_check_properties_max_retries: { get_param: shc_max_retries }
+ service_health_check_properties_url_path: { get_param: shc_url_path }
+
+
+
+ LB1_0:
+ type: OS::Nova::Server
+ depends_on: [ lb_0_int_oam_int_0_ip, lb_0_lb1_gwaf_int_1_ip, lb_0_oam_protected_2_ip ]
+ properties:
+ name: {get_param: LB1_name_0 }
+ image: { get_param: LB1_image_name }
+ flavor: { get_param: LB1_flavor_name }
+ key_name: { get_param: lb_key_name }
+ availability_zone: { get_param: availability_zone_0 }
+ networks:
+ - port: { get_resource: lb_0_int_oam_int_0_port }
+ - port: { get_resource: lb_0_lb1_gwaf_int_1_port }
+ - port: { get_resource: lb_0_oam_protected_2_port }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ user_data:
+ str_replace:
+ template: |
+ #!/bin/bash
+ sudo ip route del default
+ sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw $oam_gw
+ params:
+ $oam_gw: { get_param: oam_gw }
+
+ LB1_1:
+ type: OS::Nova::Server
+ depends_on: [ lb_1_int_oam_int_0_ip, lb_1_lb1_gwaf_int_1_ip, lb_1_oam_protected_2_ip ]
+ properties:
+ name: {get_param: LB1_name_1 }
+ image: { get_param: LB1_image_name }
+ flavor: { get_param: LB1_flavor_name }
+ availability_zone: { get_param: availability_zone_1 }
+ key_name: { get_param: lb_key_name }
+ networks:
+ - port: { get_resource: lb_1_int_oam_int_0_port }
+ - port: { get_resource: lb_1_lb1_gwaf_int_1_port }
+ - port: { get_resource: lb_1_oam_protected_2_port }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ user_data:
+ str_replace:
+ template: |
+ #!/bin/bash
+ sudo ip route del default
+ sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw $oam_gw
+ params:
+ $oam_gw: { get_param: oam_gw }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.env
new file mode 100644
index 0000000000..c50ef2c632
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.env
@@ -0,0 +1,47 @@
+parameters:
+#Network names
+# int_oam_int_net_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01_int_oam_int_net'
+# apps_int_net_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01_apps_int_net'
+# gwaf_lb2_int_net_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01_gwaf_lb2_int_net'
+# VM config
+ LB2_flavor_name: 'gv.c4r8d320'
+ LB2_image_name: 'vOTA-25348-Lab-03v3-LB2'
+ lb_key_name: vOTA-25348-Lab-03v3-key_pair
+# availability_zone_0: rdm3-kvm-az01
+# availability_zone_1: rdm3-kvm-az02
+# LB2_name_0: 'ZRDM3vOTA03LB2001'
+# LB2_name_1: 'ZRDM3vOTA03LB2002'
+# aap_core
+ aap_core_ip_prefix: 172.26.200.10
+ aap_core_ip_prefix_len: 32
+ aap_core_ha_mode : 'active-standby'
+ aap_core_mac: '00:00:00:00:00:00'
+###ip addresses
+ lb_oam_int_ip_0: 172.26.13.120
+ lb_apps_int_ip_0: 172.26.2.50
+ gwaf_lb2_int_ip_0: 172.26.1.20
+ lb_oam_int_ip_1: 172.26.13.121
+ lb_apps_int_ip_1: 172.26.2.51
+ gwaf_lb2_int_ip_1: 172.26.1.21
+##general
+# vnf_id: vOTA
+# vf_module_id: dummy
+###security groups
+# gwaf_lb2_int_sec_group_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01-gwaf_lb2_sec_group'
+# apps_int_sec_group_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01-apps_int_sec_group'
+# int_oam_int_sec_group_id: 'default-domain:vOTA:vOTA-25348-Lab-03v3-01-int_oam_sec_group'
+####Health check
+ shc_enabled: True
+ shc_monitor_type: PING
+ shc_delay: 3
+ shc_timeout: 5
+ shc_max_retries: 2
+ shc_url_path: 'local-ip'
+#####Hashing
+ ecmp_hashing_include_fields_hashing_configured: True
+ ecmp_hashing_include_fields_source_ip: True
+ ecmp_hashing_include_fields_destination_port: True
+ ecmp_hashing_include_fields_source_port: False
+ ecmp_hashing_include_fields_destination_ip: False
+ ecmp_hashing_include_fields_ip_protocol: False
+ \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.yml
new file mode 100644
index 0000000000..cfbfdade79
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/duplicateResourceIdsInDiffAddOnFiles/in/module_9_lb2_vota.yml
@@ -0,0 +1,332 @@
+heat_template_version: 2015-04-30
+
+parameters:
+
+###network names
+ int_oam_int_net_id:
+ type: string
+ description: Name of management network to be created
+ apps_int_net_id:
+ type: string
+ description: Name of mirror network to be created
+ gwaf_lb2_int_net_id:
+ type: string
+ description: Name of mirror network to be created
+
+###VM names####
+ LB2_name_0:
+ type: string
+ description: Name of the SVM
+ LB2_name_1:
+ type: string
+ description: Name of the SVM
+#####General##########
+ lb_key_name:
+ type: string
+ LB2_flavor_name:
+ type: string
+ description: Flavor of the end VMs
+ LB2_image_name:
+ type: string
+ description: Name of the end VM LB_image_name
+ availability_zone_0:
+ type: string
+ description: availability zone
+ availability_zone_1:
+ type: string
+ description: availability zone
+# aap_core
+ aap_core_ip_prefix:
+ type: string
+ description: ip_prefix for the ServiceInstance
+ aap_core_ip_prefix_len:
+ type: number
+ description: ip_prefix_len for the ServiceInstance
+ aap_core_ha_mode:
+ type: string
+ description: address_mode for the ServiceInstance
+ aap_core_mac:
+ type: string
+ description: mac for the VirtualMachineInterface
+####Ip addresses
+ lb_oam_int_ip_0:
+ type: string
+ description: lb ip
+ lb_apps_int_ip_0:
+ type: string
+ description: lb ip
+ gwaf_lb2_int_ip_0:
+ type: string
+ description: lb ip
+ lb_oam_int_ip_1:
+ type: string
+ description: lb ip
+ lb_apps_int_ip_1:
+ type: string
+ description: lb ip
+ gwaf_lb2_int_ip_1:
+ type: string
+ description: lb ip
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ vnf_id:
+ type: string
+ description: Name of vOTA instance for ECOMP
+ gwaf_lb2_int_sec_group_id:
+ type: string
+ description: sec group
+ apps_int_sec_group_id:
+ type: string
+ description: sec group
+ int_oam_int_sec_group_id:
+ type: string
+ description: sec group
+####Health check#########
+ shc_enabled:
+ type: string
+ description: health check
+ shc_monitor_type:
+ type: string
+ description: health check
+ shc_delay:
+ type: string
+ description: health check
+ shc_timeout:
+ type: string
+ description: health check
+ shc_max_retries:
+ type: string
+ description: health check
+ shc_url_path:
+ type: string
+ description: health check
+###ECMP hashing#########
+ ecmp_hashing_include_fields_hashing_configured:
+ type: string
+ description: health check
+ ecmp_hashing_include_fields_source_ip:
+ type: string
+ description: health check
+ ecmp_hashing_include_fields_destination_port:
+ type: string
+ description: health check
+ ecmp_hashing_include_fields_source_port:
+ type: string
+ description: health check
+ ecmp_hashing_include_fields_destination_ip:
+ type: string
+ description: health check
+ ecmp_hashing_include_fields_ip_protocol:
+ type: string
+ description: health check
+
+resources:
+
+ lb_0_int_oam_int_0_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: int_oam_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ security_group_refs: [{ get_param: int_oam_int_sec_group_id}]
+
+ lb_0_apps_int_1_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: apps_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: apps_int_net_id }]
+ security_group_refs: [{ get_param: apps_int_sec_group_id }]
+
+ lb_0_gwaf_lb2_int_2_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_network_refs: [{ get_param: gwaf_lb2_int_net_id }]
+ service_health_check_refs:
+ - get_resource: lb_gwaf_lb2_hc
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured: { get_param: ecmp_hashing_include_fields_hashing_configured }
+ ecmp_hashing_include_fields_source_ip: { get_param: ecmp_hashing_include_fields_source_ip }
+ ecmp_hashing_include_fields_destination_port: { get_param: ecmp_hashing_include_fields_destination_port }
+ ecmp_hashing_include_fields_destination_ip: { get_param: ecmp_hashing_include_fields_destination_ip }
+ ecmp_hashing_include_fields_source_port: { get_param: ecmp_hashing_include_fields_source_port }
+ ecmp_hashing_include_fields_ip_protocol: { get_param: ecmp_hashing_include_fields_ip_protocol }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
+ [{
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: aap_core_ip_prefix },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: { get_param: aap_core_ip_prefix_len },
+ },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: aap_core_mac },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: { get_param: aap_core_ha_mode },
+ }],
+ }
+ security_group_refs: [{ get_param: gwaf_lb2_int_sec_group_id }]
+
+ lb_1_int_oam_int_0_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: int_oam_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ security_group_refs: [{ get_param: int_oam_int_sec_group_id}]
+
+ lb_1_apps_int_1_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: apps_int_net_id },
+ }
+ virtual_network_refs: [{ get_param: apps_int_net_id }]
+ security_group_refs: [{ get_param: apps_int_sec_group_id }]
+
+ lb_1_gwaf_lb2_int_2_port:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_network_refs: [{ get_param: gwaf_lb2_int_net_id }]
+ service_health_check_refs:
+ - get_resource: lb_gwaf_lb2_hc
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured: { get_param: ecmp_hashing_include_fields_hashing_configured }
+ ecmp_hashing_include_fields_source_ip: { get_param: ecmp_hashing_include_fields_source_ip }
+ ecmp_hashing_include_fields_destination_port: { get_param: ecmp_hashing_include_fields_destination_port }
+ ecmp_hashing_include_fields_destination_ip: { get_param: ecmp_hashing_include_fields_destination_ip }
+ ecmp_hashing_include_fields_source_port: { get_param: ecmp_hashing_include_fields_source_port }
+ ecmp_hashing_include_fields_ip_protocol: { get_param: ecmp_hashing_include_fields_ip_protocol }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair:
+ [{
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: aap_core_ip_prefix },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: { get_param: aap_core_ip_prefix_len },
+ },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: aap_core_mac },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: { get_param: aap_core_ha_mode },
+ }],
+ }
+ security_group_refs: [{ get_param: gwaf_lb2_int_sec_group_id }]
+
+ lb_0_int_oam_int_0_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_0_int_oam_int_0_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_0_int_oam_int_0_port }]
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ instance_ip_address: { get_param: lb_oam_int_ip_0 }
+
+
+ lb_0_apps_int_1_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_0_apps_int_1_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_0_apps_int_1_port }]
+ virtual_network_refs: [{ get_param: apps_int_net_id }]
+ instance_ip_address: { get_param: lb_apps_int_ip_0 }
+
+
+ lb_0_gwaf_lb2_int_2_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_0_gwaf_lb2_int_2_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_0_gwaf_lb2_int_2_port }]
+ virtual_network_refs: [{ get_param: gwaf_lb2_int_net_id }]
+ instance_ip_address: { get_param: gwaf_lb2_int_ip_0 }
+
+
+ lb_1_int_oam_int_0_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_1_int_oam_int_0_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_1_int_oam_int_0_port }]
+ virtual_network_refs: [{ get_param: int_oam_int_net_id }]
+ instance_ip_address: { get_param: lb_oam_int_ip_1 }
+
+
+ lb_1_apps_int_1_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_1_apps_int_1_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_1_apps_int_1_port }]
+ virtual_network_refs: [{ get_param: apps_int_net_id }]
+ instance_ip_address: { get_param: lb_apps_int_ip_1 }
+
+
+ lb_1_gwaf_lb2_int_2_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ lb_1_gwaf_lb2_int_2_port ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: lb_1_gwaf_lb2_int_2_port }]
+ virtual_network_refs: [{ get_param: gwaf_lb2_int_net_id }]
+ instance_ip_address: { get_param: gwaf_lb2_int_ip_1 }
+
+
+ lb_gwaf_lb2_hc:
+ type: OS::ContrailV2::ServiceHealthCheck
+ properties:
+ name: gwaf_lb2_hc_PING
+ service_health_check_properties:
+ service_health_check_properties_enabled: { get_param: shc_enabled }
+ service_health_check_properties_monitor_type: { get_param: shc_monitor_type }
+ service_health_check_properties_delay: { get_param: shc_delay }
+ service_health_check_properties_timeout: { get_param: shc_timeout }
+ service_health_check_properties_max_retries: { get_param: shc_max_retries }
+ service_health_check_properties_url_path: { get_param: shc_url_path }
+
+
+
+ LB2_0:
+ type: OS::Nova::Server
+ depends_on: [ lb_0_int_oam_int_0_ip, lb_0_apps_int_1_ip, lb_0_gwaf_lb2_int_2_ip ]
+ properties:
+ name: {get_param: LB2_name_0 }
+ image: { get_param: LB2_image_name }
+ flavor: { get_param: LB2_flavor_name }
+ key_name: { get_param: lb_key_name }
+ availability_zone: { get_param: availability_zone_0 }
+ networks:
+ - port: { get_resource: lb_0_int_oam_int_0_port }
+ - port: { get_resource: lb_0_apps_int_1_port }
+ - port: { get_resource: lb_0_gwaf_lb2_int_2_port }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ user_data:
+ str_replace:
+ template: |
+ params:
+ $lb_loopback: { get_param: LB2_image_name }
+
+ LB2_1:
+ type: OS::Nova::Server
+ depends_on: [ lb_1_int_oam_int_0_ip, lb_1_apps_int_1_ip, lb_1_gwaf_lb2_int_2_ip ]
+ properties:
+ name: {get_param: LB2_name_1 }
+ image: { get_param: LB2_image_name }
+ flavor: { get_param: LB2_flavor_name }
+ availability_zone: { get_param: availability_zone_1 }
+ key_name: { get_param: lb_key_name }
+ networks:
+ - port: { get_resource: lb_1_int_oam_int_0_port }
+ - port: { get_resource: lb_1_apps_int_1_port }
+ - port: { get_resource: lb_1_gwaf_lb2_int_2_port }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ user_data:
+ str_replace:
+ template: |
+ params:
+ $lb_loopback: { get_param: LB2_image_name }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/MANIFEST.json
new file mode 100644
index 0000000000..655e7f89dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/MANIFEST.json
@@ -0,0 +1,19 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-no_vfc_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..64c7ca7584
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,334 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ a_single_1a_names:
+ type: string
+ oam_net_name:
+ type: string
+ ppds_net_name:
+ type: string
+ b_single_1b_names:
+ type: string
+ 1c1_scalling_instance_names:
+ type: string
+ myIPs:
+ type: string
+ 1c2_catalog_instance_names:
+ type: string
+ pcm_server_names:
+ type: string
+ pcm_image_name:
+ type: string
+ pcm_flavor_name:
+ type: string
+ net_name:
+ type: string
+ security_group_name:
+ type: string
+resources:
+ 1a_single_1A:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [a_single_1a_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1a_t1_port_0}
+ - port: {get_resource: 1a_t2_port_0}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1a_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: a_single_1a_network}
+ 1a_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+
+ a_single_1a_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+
+ 1b01_single_1B:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_1b_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_0}
+ - port: {get_resource: 1b_t2_port_0}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1b_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [1b01_single_1B, accessIPv6]}
+
+ 1b_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network}
+
+ b_single_1b_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1b02_single_1B:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_1b_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_1}
+ - port: {get_resource: 1b_t2_port_1}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1b_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ 1b_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network}
+
+ 1c101_scalling_instance_1C1:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c1_scalling_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_0}
+ - port: {get_resource: 1c1_t2_port_0}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c1_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
+ name: 1c1_t1_port_0
+ 1c1_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+ name: 1c1_t2_port_0
+
+ 1c1_scalling_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c102_scalling_instance_1C1:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c1_scalling_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_1}
+ - port: {get_resource: 1c1_t2_port_1}
+ user_data_format: RAW2
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c1_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+ name: 1c1_t1_port_1
+
+ 1c1_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+ name: 1c1_t2_port_1
+
+ 1c201_catalog_instance_1C2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_0}
+ - port: {get_resource: 1c2_t2_port_0}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c2_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 1c2_catalog_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c202_scalling_instance_1C2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_1}
+ - port: {get_resource: 1c2_t2_port_1}
+ user_data_format: {get_attr: [1c201_catalog_instance_1C2, instance_name]}
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c2_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 4p_nested:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+
+ nested_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ nestedNoUnified:
+ type: nested-no_vfc_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ dependsOn_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - nestedNoUnified
+ - 4p_nested
+ - 1c2_t1_port_1
+ - 1c2_t1_port_0
+ - 1c201_catalog_instance_1C2
+ - 1c202_scalling_instance_1C2
+ - 1c101_scalling_instance_1C1
+ - 1c102_scalling_instance_1C1
+ - 1c1_t2_port_0
+ - 1c1_t2_port_1
+ - 1b01_single_1B
+ - 1b02_single_1B
+ - 1b_t1_port_0
+ - 1b_t1_port_1
+ - 1a_single_1A
+ - 1a_t1_port_0
+ properties:
+ name:
+ get_param: net_name
+
+ nodeGetAttIn_network:
+ type: OS::Neutron::Net
+ properties:
+ name: { get_attr: [nestedNoUnified, portId, {get_attr: [4p_nested, server_pcm_id]}]}
+ dhcp_agent_ids: { get_attr: [1c2_t1_port_1, tenant_id, {get_attr: [1c2_t1_port_0, tenant_id, {get_attr: [1c201_catalog_instance_1C2, instance_name, {get_attr: [1c202_scalling_instance_1C2,instance_name]}]}]}]}
+ tenant_id: { get_attr:[1c101_scalling_instance_1C1, instance_name, {get_attr:[1c102_scalling_instance_1C1, instance_name, {get_attr:[1c1_t2_port_0, tenant_id, {get_attr:[1c1_t2_port_1, tenant_id]}]}]}]}
+ value_specs: {get_attr:[1b01_single_1B, instance_name, get_attr:[1b02_single_1B,instance_name, {get_attr:[1b_t1_port_0, tenant_id, {get_attr:[1b_t1_port_1, tenant_id]}]}]] }
+ qos_policy: {get_attr:[1a_single_1A, instance_name]}
+ admin_state_up: {get_attr:[1a_t1_port_0, tenant_id]}
+
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: def
+
+outputs:
+ out1:
+ value: { get_attr: [nestedNoUnified, portId, {get_attr: [4p_nested, server_pcm_id]}]}
+ out2:
+ value: { get_attr: [1c2_t1_port_1, tenant_id, {get_attr: [1c2_t1_port_0, tenant_id, {get_attr: [1c201_catalog_instance_1C2, instance_name, {get_attr: [1c202_scalling_instance_1C2,instance_name]}]}]}]}
+ out3:
+ value: { get_attr:[1c101_scalling_instance_1C1, instance_name, {get_attr:[1c102_scalling_instance_1C1, instance_name, {get_attr:[1c1_t2_port_0, tenant_id, {get_attr:[1c1_t2_port_1, tenant_id]}]}]}]}
+ out4:
+ value: {get_attr:[1b01_single_1B, instance_name, get_attr:[1b02_single_1B,instance_name, {get_attr:[1b_t1_port_0, tenant_id, {get_attr:[1b_t1_port_1, tenant_id]}]}]] }
+ out5:
+ value: {get_attr:[1a_single_1A, instance_name]}
+ out6:
+ value: {get_attr:[1a_t1_port_0, tenant_id]}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-no_vfc_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-no_vfc_v0.1.yaml
new file mode 100644
index 0000000000..2548875c75
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-no_vfc_v0.1.yaml
@@ -0,0 +1,135 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ pcma_server_name:
+ type: string
+ pcma_image_name:
+ type: string
+ pcma_flavor_name:
+ type: string
+ server_group:
+ type: string
+
+resources:
+ server_pcma1:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ server_pcma2:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_2}
+ - port: { get_resource: pcm_port_3}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ portId:
+ value: { get_resource: pcm_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..b2695460d0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,98 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ server_group:
+ type: string
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..5b8093e870
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4484 @@
+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.nested-no_vfc_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ pcma_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ pcma_server_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ pcma_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ attributes:
+ portId:
+ type: string
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcma2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_pcma1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.latency_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_pcm_port_3:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcma1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcma2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma2:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcma1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcma2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_pcm_port_2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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.usage_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: org.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.usage_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.1c1_scalling_instance:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c1_scalling_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c1_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t2_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ 1c1_scalling_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_1c1_t2_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c1_scalling_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c1_scalling_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c1_scalling_instance_1c1_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c1_scalling_instance_1c1_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.latency_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance_1c1_t2_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.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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
+ host_1c1_scalling_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance_1c1_t2_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_1c1_scalling_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance_1c1_t1_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_1c1_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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_1c1_scalling_instance:
+ type: org.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.a_single_1a:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ a_single_1a_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_a_single_1a:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_a_single_1a:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_a_single_1a:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_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
+ host_a_single_1a:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_a_single_1a:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.delta_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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.b_single_1b_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.1c2_catalog_instance_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.b_single_1b_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ 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/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..9322fa81fc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/MainServiceTemplate.yaml
@@ -0,0 +1,857 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ ppds_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ a_single_1a_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_server_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ b_single_1b_names:
+ hidden: false
+ immutable: false
+ type: string
+ 1c1_scalling_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c1_scalling_instance:
+ type: org.openecomp.resource.abstract.nodes.1c1_scalling_instance
+ directives:
+ - substitutable
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 3
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 1
+ compute_1c1_scalling_instance_user_data_format:
+ - RAW2
+ - RAW1
+ port_1c1_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_1c1_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ port_1c1_t2_port_network_role_tag:
+ - ppds
+ - ppds
+ port_1c1_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_1c1_scalling_instance_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ port_1c1_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_1c1_t2_port_name:
+ - 1c1_t2_port_1
+ - 1c1_t2_port_0
+ vm_image_name:
+ get_input: pd_image_name
+ compute_1c1_scalling_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ - group: BE_Affinity_group
+ compute_1c1_scalling_instance_name:
+ - get_input:
+ - 1c1_scalling_instance_names
+ - 2
+ - get_input:
+ - 1c1_scalling_instance_names
+ - 1
+ port_1c1_t1_port_name:
+ - 1c1_t1_port_1
+ - 1c1_t1_port_0
+ port_1c1_t1_port_network:
+ - 1c1_scalling_instance_network
+ - 1c1_scalling_instance_network
+ port_1c1_t2_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 4
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 2
+ port_1c1_t2_port_network:
+ - get_input: ppds_net_name
+ - get_input: ppds_net_name
+ service_template_filter:
+ substitute_service_template: Nested_1c1_scalling_instanceServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c1_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c1_scalling_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_b_single_1b_0:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_b_single_1b_user_data_format:
+ - RAW
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 0
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network
+ relationship: tosca.relationships.network.LinksTo
+ b_single_1b_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ abstract_1c2_catalog_instance_0:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - RAW1
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c2_catalog_instance_1:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ 1c1_scalling_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ nodeGetAttIn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ tenant_id:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ admin_state_up:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ qos_policy:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ network_name:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ value_specs:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ dependsOn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedNoUnified
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c1_scalling_instance
+ node: abstract_1c1_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c1_scalling_instance_1c1_t2_port
+ node: abstract_1c1_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a_1a_t1_port
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ abstract_a_single_1a:
+ type: org.openecomp.resource.abstract.nodes.a_single_1a
+ directives:
+ - substitutable
+ properties:
+ compute_a_single_1a_availability_zone:
+ - get_input: availabilityzone_name
+ compute_a_single_1a_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1a_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_1a_t2_port_network_role_tag:
+ - ppds
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1a_t2_port_network:
+ - get_input: ppds_net_name
+ port_1a_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1a_t1_port_network:
+ - a_single_1a_network
+ vm_image_name:
+ get_input: pd_image_name
+ port_1a_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_a_single_1a_user_data_format:
+ - RAW
+ compute_a_single_1a_name:
+ - get_input:
+ - a_single_1a_names
+ - 0
+ port_1a_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: a_single_1a_network
+ relationship: tosca.relationships.network.LinksTo
+ nestedNoUnified:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-no_vfc_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ nested_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pcm_port_0
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_0
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_2
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_3
+ node: nestedNoUnified
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_b_single_1b_1:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1b_t1_port_network_role_tag:
+ - oam
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network
+ compute_b_single_1b_user_data_format:
+ - RAW
+ port_1b_t1_port_network:
+ - get_input: oam_net_name
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 1
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network
+ relationship: tosca.relationships.network.LinksTo
+ a_single_1a_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ 1c2_catalog_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - b_single_1b_network
+ - 1c1_scalling_instance_network
+ - nodeGetAttIn_network
+ - dependsOn_network
+ - nestedNoUnified
+ - nested_network
+ - jsa_security_group
+ - a_single_1a_network
+ - 1c2_catalog_instance_network
+ - abstract_a_single_1a
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_1c1_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ - abstract_pcm_server_0
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_a_single_1a
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_1c1_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ outputs:
+ out2:
+ value:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ out3:
+ value:
+ get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ - get_attribute:
+ - abstract_1c1_scalling_instance
+ - 1c1_scalling_instance_1c1_t2_port_tenant_id
+ out4:
+ value:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ out5:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ out1:
+ value:
+ get_attribute:
+ - nestedNoUnified
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ out6:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
new file mode 100644
index 0000000000..2c43ee2c01
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c1_scalling_instanceServiceTemplate.yaml
@@ -0,0 +1,413 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c1_scalling_instance
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c1_scalling_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_1c1_scalling_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_1c1_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c1_scalling_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t2_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ 1c1_scalling_instance_1c1_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t1_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t1_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t1_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c1_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c1_scalling_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c1_scalling_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c1_scalling_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c1_scalling_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c1_scalling_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c1_scalling_instance_user_data_format
+ - index_value
+ 1c1_scalling_instance_1c1_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t2_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c1_t2_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t2_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t2_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t2_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c1_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c1_scalling_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c1_scalling_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c1_scalling_instance_1c1_t2_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c1_scalling_instance_1c1_t2_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c1_scalling_instance
+ capabilities:
+ disk.device.latency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.latency
+ disk.ephemeral.size_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.ephemeral.size
+ disk.root.size_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.root.size
+ endpoint_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - endpoint
+ disk.read.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.bytes
+ network.outgoing.packets.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.packets.rate
+ disk.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.usage
+ memory.resident_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory.resident
+ network.incoming.bytes.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.bytes.rate
+ cpu_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu
+ disk.write.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.bytes
+ network.incoming.packets.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.packets.rate
+ network.incoming.bytes_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.bytes
+ disk.write.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.bytes.rate
+ disk.device.allocation_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.allocation
+ network.incoming.bytes.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.bytes.rate
+ feature_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - feature
+ disk.device.write.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.requests.rate
+ disk.read.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.bytes.rate
+ network.outpoing.packets_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outpoing.packets
+ scalable_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - scalable
+ disk.device.read.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.bytes
+ binding_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - binding
+ disk.device.write.bytes_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.bytes
+ disk.read.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.read.requests
+ network.incoming.packets_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.packets
+ vcpus_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - vcpus
+ network.outgoing.bytes_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes
+ host_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - host
+ disk.write.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.requests
+ feature_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - feature
+ binding_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - binding
+ disk.device.read.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.requests.rate
+ attachment_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - attachment
+ disk.device.read.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.packets.rate
+ disk.device.iops_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.iops
+ disk.device.capacity_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.capacity
+ disk.capacity_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.capacity
+ disk.write.requests.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.write.requests.rate
+ cpu_util_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu_util
+ disk.device.read.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.bytes
+ disk.latency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.latency
+ binding_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - binding
+ disk.device.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.device.usage
+ network.incoming.packets_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.incoming.packets
+ disk.allocation_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.allocation
+ feature_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - feature
+ memory.usage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory.usage
+ network.incoming.bytes_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - network.outgoing.bytes.rate
+ os_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - os
+ disk.iops_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - disk.iops
+ network.outpoing.packets_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - network.outpoing.packets
+ attachment_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - attachment
+ cpu.delta_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - cpu.delta
+ memory_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - memory
+ instance_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - instance
+ requirements:
+ dependency_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - dependency
+ link_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - link
+ dependency_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - dependency
+ dependency_1c1_scalling_instance_1c1_t1_port:
+ - 1c1_scalling_instance_1c1_t1_port
+ - dependency
+ link_1c1_scalling_instance_1c1_t2_port:
+ - 1c1_scalling_instance_1c1_t2_port
+ - link
+ local_storage_1c1_scalling_instance:
+ - 1c1_scalling_instance
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..dd75d5837c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..213939c88e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml
new file mode 100644
index 0000000000..dcfab01851
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_a_single_1aServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_a_single_1a
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.a_single_1a:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ a_single_1a_1a_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ a_single_1a:
+ type: org.openecomp.resource.vfc.nodes.heat.a_single_1a
+ properties:
+ availability_zone:
+ get_input:
+ - compute_a_single_1a_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_a_single_1a_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_a_single_1a_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_a_single_1a_user_data_format
+ - index_value
+ a_single_1a_1a_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t2_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1a_t2_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ a_single_1a_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a
+ - instance_name
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a_1a_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.a_single_1a
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes
+ network.incoming.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes.rate
+ disk.usage_a_single_1a:
+ - a_single_1a
+ - disk.usage
+ attachment_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - attachment
+ scalable_a_single_1a:
+ - a_single_1a
+ - scalable
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes.rate
+ host_a_single_1a:
+ - a_single_1a
+ - host
+ endpoint_a_single_1a:
+ - a_single_1a
+ - endpoint
+ disk.root.size_a_single_1a:
+ - a_single_1a
+ - disk.root.size
+ memory.resident_a_single_1a:
+ - a_single_1a
+ - memory.resident
+ network.incoming.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets.rate
+ cpu.delta_a_single_1a:
+ - a_single_1a
+ - cpu.delta
+ disk.device.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests
+ network.incoming.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes.rate
+ disk.iops_a_single_1a:
+ - a_single_1a
+ - disk.iops
+ network.incoming.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes
+ cpu_util_a_single_1a:
+ - a_single_1a
+ - cpu_util
+ os_a_single_1a:
+ - a_single_1a
+ - os
+ disk.device.usage_a_single_1a:
+ - a_single_1a
+ - disk.device.usage
+ network.incoming.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.packets.rate
+ disk.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.read.requests
+ disk.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes.rate
+ disk.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes.rate
+ attachment_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - attachment
+ cpu_a_single_1a:
+ - a_single_1a
+ - cpu
+ memory.usage_a_single_1a:
+ - a_single_1a
+ - memory.usage
+ disk.device.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests.rate
+ binding_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - binding
+ network.incoming.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets
+ disk.device.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests
+ disk.device.latency_a_single_1a:
+ - a_single_1a
+ - disk.device.latency
+ instance_a_single_1a:
+ - a_single_1a
+ - instance
+ binding_a_single_1a:
+ - a_single_1a
+ - binding
+ disk.latency_a_single_1a:
+ - a_single_1a
+ - disk.latency
+ network.outgoing.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes
+ disk.device.allocation_a_single_1a:
+ - a_single_1a
+ - disk.device.allocation
+ disk.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes
+ feature_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - feature
+ network.outpoing.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outpoing.packets
+ network.outpoing.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outpoing.packets
+ disk.device.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes
+ disk.device.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes.rate
+ memory_a_single_1a:
+ - a_single_1a
+ - memory
+ disk.allocation_a_single_1a:
+ - a_single_1a
+ - disk.allocation
+ network.outgoing.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.packets.rate
+ feature_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - feature
+ disk.capacity_a_single_1a:
+ - a_single_1a
+ - disk.capacity
+ disk.device.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes
+ network.incoming.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets
+ feature_a_single_1a:
+ - a_single_1a
+ - feature
+ network.outgoing.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes
+ disk.ephemeral.size_a_single_1a:
+ - a_single_1a
+ - disk.ephemeral.size
+ vcpus_a_single_1a:
+ - a_single_1a
+ - vcpus
+ binding_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - binding
+ disk.device.iops_a_single_1a:
+ - a_single_1a
+ - disk.device.iops
+ disk.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.write.requests
+ disk.device.read.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests.rate
+ disk.device.capacity_a_single_1a:
+ - a_single_1a
+ - disk.device.capacity
+ disk.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.requests.rate
+ network.incoming.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes.rate
+ requirements:
+ link_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - link
+ link_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - link
+ dependency_a_single_1a:
+ - a_single_1a
+ - dependency
+ dependency_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - dependency
+ dependency_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - dependency
+ local_storage_a_single_1a:
+ - a_single_1a
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..cefe2d2db0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -0,0 +1,363 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_attribute:
+ - b_single_1b
+ - accessIPv6
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..158df6fc9f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1b_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-no_vfc_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-no_vfc_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..8d8e5cc5cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-no_vfc_v0.1ServiceTemplate.yaml
@@ -0,0 +1,671 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-no_vfc_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcma_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ pcma_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ pcma_server_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcma_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ pcm_port_2:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_3:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ server_pcma2:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ server_pcma1:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-no_vfc_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-no_vfc_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_2
+ - pcm_port_1
+ - pcm_port_3
+ - server_pcma2
+ - server_pcma1
+ - pcm_port_0
+ outputs:
+ portId:
+ value: pcm_port_3
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ disk.device.iops_server_pcma2:
+ - server_pcma2
+ - disk.device.iops
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_3:
+ - pcm_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_2:
+ - pcm_port_2
+ - network.outpoing.packets
+ disk.device.iops_server_pcma1:
+ - server_pcma1
+ - disk.device.iops
+ disk.device.capacity_server_pcma2:
+ - server_pcma2
+ - disk.device.capacity
+ disk.device.capacity_server_pcma1:
+ - server_pcma1
+ - disk.device.capacity
+ disk.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.read.requests
+ disk.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.read.requests
+ disk.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.requests.rate
+ memory_server_pcma2:
+ - server_pcma2
+ - memory
+ memory_server_pcma1:
+ - server_pcma1
+ - memory
+ disk.device.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes
+ disk.device.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes.rate
+ binding_pcm_port_3:
+ - pcm_port_3
+ - binding
+ disk.device.latency_server_pcma2:
+ - server_pcma2
+ - disk.device.latency
+ disk.device.usage_server_pcma2:
+ - server_pcma2
+ - disk.device.usage
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.device.latency_server_pcma1:
+ - server_pcma1
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ disk.device.usage_server_pcma1:
+ - server_pcma1
+ - disk.device.usage
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ binding_pcm_port_2:
+ - pcm_port_2
+ - binding
+ network.incoming.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes
+ network.outgoing.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.packets.rate
+ disk.device.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests
+ disk.device.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ disk.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes
+ disk.device.read.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests.rate
+ network.outgoing.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.packets.rate
+ disk.device.read.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ binding_server_pcma1:
+ - server_pcma1
+ - binding
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ binding_server_pcma2:
+ - server_pcma2
+ - binding
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes
+ feature_pcm_port_3:
+ - pcm_port_3
+ - feature
+ feature_pcm_port_2:
+ - pcm_port_2
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ disk.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes.rate
+ attachment_pcm_port_2:
+ - pcm_port_2
+ - attachment
+ disk.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes.rate
+ attachment_pcm_port_3:
+ - pcm_port_3
+ - attachment
+ disk.root.size_server_pcma2:
+ - server_pcma2
+ - disk.root.size
+ disk.root.size_server_pcma1:
+ - server_pcma1
+ - disk.root.size
+ disk.iops_server_pcma2:
+ - server_pcma2
+ - disk.iops
+ disk.iops_server_pcma1:
+ - server_pcma1
+ - disk.iops
+ disk.device.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes.rate
+ disk.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes
+ disk.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes
+ cpu_util_server_pcma1:
+ - server_pcma1
+ - cpu_util
+ cpu_util_server_pcma2:
+ - server_pcma2
+ - cpu_util
+ feature_server_pcma2:
+ - server_pcma2
+ - feature
+ memory.usage_server_pcma2:
+ - server_pcma2
+ - memory.usage
+ memory.usage_server_pcma1:
+ - server_pcma1
+ - memory.usage
+ feature_server_pcma1:
+ - server_pcma1
+ - feature
+ disk.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes.rate
+ disk.device.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes
+ endpoint_server_pcma2:
+ - server_pcma2
+ - endpoint
+ disk.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes.rate
+ endpoint_server_pcma1:
+ - server_pcma1
+ - endpoint
+ cpu.delta_server_pcma1:
+ - server_pcma1
+ - cpu.delta
+ cpu.delta_server_pcma2:
+ - server_pcma2
+ - cpu.delta
+ host_server_pcma2:
+ - server_pcma2
+ - host
+ host_server_pcma1:
+ - server_pcma1
+ - host
+ disk.ephemeral.size_server_pcma1:
+ - server_pcma1
+ - disk.ephemeral.size
+ disk.ephemeral.size_server_pcma2:
+ - server_pcma2
+ - disk.ephemeral.size
+ disk.device.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests.rate
+ disk.latency_server_pcma1:
+ - server_pcma1
+ - disk.latency
+ disk.latency_server_pcma2:
+ - server_pcma2
+ - disk.latency
+ disk.device.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests.rate
+ scalable_server_pcma2:
+ - server_pcma2
+ - scalable
+ scalable_server_pcma1:
+ - server_pcma1
+ - scalable
+ disk.device.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests
+ disk.device.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests
+ instance_server_pcma2:
+ - server_pcma2
+ - instance
+ disk.device.allocation_server_pcma1:
+ - server_pcma1
+ - disk.device.allocation
+ disk.device.allocation_server_pcma2:
+ - server_pcma2
+ - disk.device.allocation
+ instance_server_pcma1:
+ - server_pcma1
+ - instance
+ os_server_pcma1:
+ - server_pcma1
+ - os
+ os_server_pcma2:
+ - server_pcma2
+ - os
+ disk.capacity_server_pcma1:
+ - server_pcma1
+ - disk.capacity
+ disk.capacity_server_pcma2:
+ - server_pcma2
+ - disk.capacity
+ disk.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.write.requests
+ disk.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.write.requests
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets
+ disk.usage_server_pcma2:
+ - server_pcma2
+ - disk.usage
+ network.incoming.packets_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes.rate
+ disk.usage_server_pcma1:
+ - server_pcma1
+ - disk.usage
+ vcpus_server_pcma1:
+ - server_pcma1
+ - vcpus
+ memory.resident_server_pcma1:
+ - server_pcma1
+ - memory.resident
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ vcpus_server_pcma2:
+ - server_pcma2
+ - vcpus
+ memory.resident_server_pcma2:
+ - server_pcma2
+ - memory.resident
+ disk.device.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes
+ disk.allocation_server_pcma1:
+ - server_pcma1
+ - disk.allocation
+ disk.allocation_server_pcma2:
+ - server_pcma2
+ - disk.allocation
+ disk.device.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes
+ cpu_server_pcma1:
+ - server_pcma1
+ - cpu
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ cpu_server_pcma2:
+ - server_pcma2
+ - cpu
+ network.incoming.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ dependency_server_pcma2:
+ - server_pcma2
+ - dependency
+ local_storage_server_pcma2:
+ - server_pcma2
+ - local_storage
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ dependency_server_pcma1:
+ - server_pcma1
+ - dependency
+ local_storage_server_pcma1:
+ - server_pcma1
+ - local_storage
+ link_pcm_port_2:
+ - pcm_port_2
+ - link
+ link_pcm_port_3:
+ - pcm_port_3
+ - link
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_pcm_port_3:
+ - pcm_port_3
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
+ dependency_pcm_port_2:
+ - pcm_port_2
+ - 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/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..10064c8155
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/oneAppearancePerPattern/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,387 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/MANIFEST.json
new file mode 100644
index 0000000000..655e7f89dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/MANIFEST.json
@@ -0,0 +1,19 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-no_vfc_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..77ef2c835e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,787 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ a_single_1a_names:
+ type: string
+ a_single_2a_names:
+ type: string
+ oam_net_name:
+ type: string
+ ppds_net_name:
+ type: string
+ b_single_1b_names:
+ type: string
+ b_single_2b_names:
+ type: string
+ 1c11_scalling_instance_names:
+ type: string
+ 1c12_scalling_instance_names:
+ type: string
+ myIPs:
+ type: string
+ 1c2_catalog_instance_names:
+ type: string
+ pcm_server_names:
+ type: string
+ pcm_image_name:
+ type: string
+ pcm_flavor_name:
+ type: string
+ net_name:
+ type: string
+ security_group_name:
+ type: string
+resources:
+ 1a_single_1A_1:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [a_single_1a_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1a_t1_port_0}
+ - port: {get_resource: 1a_t2_port_0}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02 : {get_attr : [1b02_single_1B_1, instance_name,{get_attr : [1b01_single_1B_1, instance_name]}]},
+ connectivityTo1C1_T2_01 : {get_attr : [1c1_t2_port_01, tenant_id]},
+ connectivityTo1C1_T2_02 : {get_attr : [1c1_t2_port_02, tenant_id]},
+ connectivityTo1C1_T2_11 : {get_attr : [1c1_t2_port_11, tenant_id]},
+ connectivityTo1C1_T2_12 : {get_attr : [1c1_t2_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 2a_single_1A_2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [a_single_2a_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1a_t1_port_1}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1B01 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02 : {get_attr : [1b02_single_1B_2, instance_name,{get_attr : [1b01_single_1B_2, instance_name]}]},
+ connectivityTo1C1_T2_01 : {get_attr : [1c1_t2_port_01, tenant_id]},
+ connectivityTo1C1_T2_02 : {get_attr : [1c1_t2_port_02, tenant_id]},
+ connectivityTo1C1_T2_11 : {get_attr : [1c1_t2_port_11, tenant_id]},
+ connectivityTo1C1_T2_12 : {get_attr : [1c1_t2_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+
+ 1a_t1_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: a_single_1a_network}
+ 1a_t2_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ 1a_t1_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: a_single_1a_network}
+ a_single_1a_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ ######################################## SINGLE SUBSTITUTION (Pattern 1B) ###################
+
+ 1b01_single_1B_1:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_1b_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_01}
+ - port: {get_resource: 1b_t2_port_01}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1b_t1_port_01:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [1b01_single_1B_1, accessIPv6]}
+
+ 1b_t2_port_01:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network_1}
+
+ b_single_1b_network_1:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1b02_single_1B_1:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_1b_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_11}
+ - port: {get_resource: 1b_t2_port_11}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1b_t1_port_11:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ value_specs: {get_attr: [1a_t1_port_0, tenant_id]}
+
+ 1b_t2_port_11:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network_1}
+
+ 1b01_single_1B_2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_2b_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_02}
+ - port: {get_resource: 1b_t2_port_02}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1b_t1_port_02:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [1b01_single_1B_2, accessIPv6]}
+
+ 1b_t2_port_02:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network_2}
+
+ b_single_1b_network_2:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1b02_single_1B_2:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [b_single_2b_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1b_t1_port_12}
+ - port: {get_resource: 1b_t2_port_12}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1b_t1_port_12:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ value_specs: {get_attr: [1a_t1_port_0, tenant_id]}
+
+ 1b_t2_port_12:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: b_single_1b_network_2}
+
+ ######################################## SCALING INSTANCES (Pattern 1C1) #####################
+
+ 1c101_scalling_instance_1C11:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c11_scalling_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_01}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1c1_t1_port_01:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
+ name: 1c1_t1_port_01
+ 1c1_t2_port_01:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+ name: 1c1_t2_port_01
+
+ 1c1_scalling_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c102_scalling_instance_1C11:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c11_scalling_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_02}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1c1_t1_port_11:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+ name: 1c1_t1_port_11
+
+ 1c1_t2_port_11:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+ name: 1c1_t2_port_11
+
+ 1c101_scalling_instance_1C12:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c12_scalling_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_11}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1c1_t1_port_02:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 1]}}]
+ name: 1c1_t1_port_02
+ 1c1_t2_port_02:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 2]}}]
+ name: 1c1_t2_port_02
+
+ 1c102_scalling_instance_1C12:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c12_scalling_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c1_t1_port_12}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1c1_t1_port_12:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c1_scalling_instance_network}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 3]}}]
+ name: 1c1_t1_port_12
+
+ 1c1_t2_port_12:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: ppds_net_name}
+ fixed_ips: [{"ip_address": {get_param: [myIPs, 4]}}]
+ name: 1c1_t2_port_12
+
+ ######################################## CATALOG INSTANCES (Pattern 1C2) #####################
+
+ 1c201_catalog_instance_1C21:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_02}
+ - port: {get_resource: 1c2_t2_port_02}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1c2_t1_port_02:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_02:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 1c2_catalog_instance_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 1c202_catalog_instance_1C21:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_11}
+ - port: {get_resource: 1c2_t2_port_11}
+ user_data_format: {get_attr: [1c201_catalog_instance_1C21, instance_name]}
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c2_t1_port_11:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_11:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 1c201_catalog_instance_1C22:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_022}
+ - port: {get_resource: 1c2_t2_port_022}
+ user_data_format: RAW1
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ metadata: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ 1c2_t1_port_022:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_022:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ 1c202_catalog_instance_1C22:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [1c2_catalog_instance_names,3]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: 1c2_t1_port_12}
+ - port: {get_resource: 1c2_t2_port_12}
+ user_data_format: {get_attr: [1c201_catalog_instance_1C22, instance_name]}
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+
+ 1c2_t1_port_12:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ 1c2_t2_port_12:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_resource: 1c2_catalog_instance_network}
+
+ ######################################## NESTED PATTERN ##################################
+
+ 4p_nested_1:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+ connectivityChk: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+
+ nested_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: net_name
+
+ 4p_nested_2:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+ connectivityChk: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+
+ nestedNoUnified_1:
+ type: nested-no_vfc_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+ connectivityChk: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_2 : {get_attr : [nestedNoUnified_2, portId]}
+ }
+
+ nestedNoUnified_2:
+ type: nested-no_vfc_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ cps_net_name: { get_resource: nested_network}
+ security_group_name: { get_resource: jsa_security_group}
+ server_group: { get_resource: BE_Affinity }
+ connectivityChk: { connectivityTo1A_1 : {get_attr : [1a_single_1A_1, instance_name]},
+ connectivityTo1A_2 : {get_attr : [2a_single_1A_2, instance_name]},
+ connectivityTo1B01_1 : {get_attr : [1b01_single_1B_1, instance_name]},
+ connectivityTo1B02_1 : {get_attr : [1b02_single_1B_1, instance_name]},
+ connectivityTo1B01_2 : {get_attr : [1b01_single_1B_2, instance_name]},
+ connectivityTo1B02_2 : {get_attr : [1b02_single_1B_2, instance_name]},
+ connectivityTo1C1_T1_01 : {get_attr : [1c1_t1_port_01, tenant_id]},
+ connectivityTo1C1_T1_02 : {get_attr : [1c1_t1_port_02, tenant_id]},
+ connectivityTo1C1_T1_11 : {get_attr : [1c1_t1_port_11, tenant_id]},
+ connectivityTo1C1_T1_12 : {get_attr : [1c1_t1_port_12, tenant_id]},
+ connectivityTo1C2_1_1 : {get_attr : [1c201_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_2_1 : {get_attr : [1c202_catalog_instance_1C21, instance_name]},
+ connectivityTo1C2_1_2 : {get_attr : [1c201_catalog_instance_1C22, instance_name]},
+ connectivityTo1C2_2_2 : {get_attr : [1c202_catalog_instance_1C22, instance_name]},
+ connectivityTo4PNested_1 : {get_attr : [4p_nested_1, server_pcm_id]},
+ connectivityTo4PNested_2 : {get_attr : [4p_nested_2, server_pcm_id]},
+ connectivityToNoUnifiedNested_1 : {get_attr : [nestedNoUnified_1, portId]}
+ }
+
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ dependsOn_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - nestedNoUnified_1
+ - nestedNoUnified_2
+ - 4p_nested_1
+ - 4p_nested_2
+ - 1c2_t1_port_11
+ - 1c2_t1_port_02
+ - 1c201_catalog_instance_1C21
+ - 1c202_catalog_instance_1C21
+ - 1c201_catalog_instance_1C22
+ - 1c202_catalog_instance_1C22
+ - 1c101_scalling_instance_1C11
+ - 1c101_scalling_instance_1C12
+ - 1c102_scalling_instance_1C11
+ - 1c102_scalling_instance_1C12
+ - 1c1_t2_port_02
+ - 1c1_t2_port_12
+ - 1b01_single_1B_1
+ - 1b02_single_1B_1
+ - 1b_t1_port_01
+ - 1b_t1_port_11
+ - 1a_single_1A_1
+ - 2a_single_1A_2
+ - 1a_t1_port_0
+ properties:
+ name:
+ get_param: net_name
+
+ nodeGetAttIn_network:
+ type: OS::Neutron::Net
+ properties:
+ name: { get_attr: [nestedNoUnified_1, portId, {get_attr: [4p_nested_2, server_pcm_id]}]}
+ dhcp_agent_ids: { get_attr: [1c2_t1_port_11, tenant_id, {get_attr: [1c2_t1_port_02, tenant_id, {get_attr: [1c201_catalog_instance_1C22, instance_name, {get_attr: [1c202_catalog_instance_1C21,instance_name]}]}]}]}
+ tenant_id: { get_attr:[1c101_scalling_instance_1C11, instance_name,
+ {get_attr:[1c102_scalling_instance_1C11, instance_name, {get_attr:[1c1_t2_port_02, tenant_id, {get_attr:[1c1_t2_port_11, tenant_id]}, {get_attr:[1c1_t2_port_12, tenant_id]}, {get_attr:[1c102_scalling_instance_1C12, instance_name]}]}]}]}
+ value_specs: {get_attr:[1b01_single_1B_1, instance_name, get_attr:[1b02_single_1B_1,instance_name, {get_attr:[1b_t1_port_01, tenant_id, {get_attr:[1b_t1_port_11, tenant_id]}]}]] }
+ qos_policy: {get_attr:[1a_single_1A_1, instance_name]}
+ admin_state_up: {get_attr:[1a_t1_port_0, tenant_id]}
+
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: def
+
+outputs:
+ out1:
+ value: { get_attr: [nestedNoUnified_1, portId, {get_attr: [4p_nested_2, server_pcm_id]}]}
+ out2:
+ value: { get_attr: [1c2_t1_port_11, tenant_id, {get_attr: [1c2_t1_port_02, tenant_id, {get_attr: [1c201_catalog_instance_1C22, instance_name, {get_attr: [1c202_catalog_instance_1C21,instance_name]}]}]}]}
+ out3:
+ value: { get_attr:[1c101_scalling_instance_1C11, instance_name, {get_attr:[1c102_scalling_instance_1C11, instance_name, {get_attr:[1c1_t2_port_02, tenant_id,{get_attr:[1c1_t2_port_11, tenant_id]}, {get_attr:[1c1_t2_port_12, tenant_id]}, {get_attr:[1c102_scalling_instance_1C12, instance_name]}]}]}]}
+ out4:
+ value: {get_attr:[1b01_single_1B_1, instance_name, get_attr:[1b02_single_1B_1,instance_name, {get_attr:[1b_t1_port_01, tenant_id, {get_attr:[1b_t1_port_11, tenant_id]}]}]] }
+ out5:
+ value: {get_attr:[1a_single_1A_1, instance_name]}
+ out6:
+ value: {get_attr:[1a_t1_port_0, tenant_id]}
+ out7:
+ value: {get_attr:[2a_single_1A_2, instance_name]} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-no_vfc_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-no_vfc_v0.1.yaml
new file mode 100644
index 0000000000..f19e84d38d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-no_vfc_v0.1.yaml
@@ -0,0 +1,137 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ pcma_server_name:
+ type: string
+ pcma_image_name:
+ type: string
+ pcma_flavor_name:
+ type: string
+ server_group:
+ type: string
+ connectivityChk:
+ type: json
+
+resources:
+ server_pcma1:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ server_pcma2:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcma_server_name }
+ image: { get_param: pcma_image_name }
+ flavor: { get_param: pcma_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_2}
+ - port: { get_resource: pcm_port_3}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ portId:
+ value: { get_resource: pcm_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..b6b85785cd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,101 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ server_group:
+ type: string
+ connectivityChk:
+ type: json
+
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ scheduler_hints: { group: { get_param: server_group } }
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..5f4738ca50
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,7251 @@
+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.nested-no_vfc_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ connectivityChk:
+ type: json
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ pcma_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ pcma_server_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ pcma_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ attributes:
+ portId:
+ type: string
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcma2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_pcma1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcma1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.latency_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_pcm_port_3:
+ type: org.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_pcm_port_3:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcma1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcma2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcma1:
+ type: org.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_pcm_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcma2:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcma1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcma1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcma2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_pcm_port_2:
+ type: org.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_pcm_port_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_pcm_port_3:
+ type: org.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.usage_server_pcma2:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_3:
+ type: org.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.usage_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma2:
+ type: org.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_server_pcma1:
+ type: org.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_server_pcma1:
+ type: org.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_pcm_port_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_server_pcma2:
+ type: org.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_pcm_port_3:
+ type: org.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_pcm_port_2:
+ type: org.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_pcm_port_1:
+ type: org.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.1c12_scalling_instance:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_1c12_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c12_scalling_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c12_scalling_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c12_scalling_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c12_scalling_instance_1c1_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c12_scalling_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c12_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c12_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c12_scalling_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c12_scalling_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_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.usage_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_1c12_scalling_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_1c12_scalling_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_1c12_scalling_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_1c12_scalling_instance_1c1_t1_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_1c12_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_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_1c12_scalling_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c12_scalling_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_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.rate_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance_1c1_t1_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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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_1c12_scalling_instance:
+ type: org.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.1c11_scalling_instance:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c11_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_1c11_scalling_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c11_scalling_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c11_scalling_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c11_scalling_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c11_scalling_instance_1c1_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c11_scalling_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c11_scalling_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c11_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c11_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.usage_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_1c11_scalling_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_1c11_scalling_instance:
+ type: org.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.usage_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_1c11_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_1c11_scalling_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_1c11_scalling_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c11_scalling_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance_1c1_t1_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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance_1c1_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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_1c11_scalling_instance:
+ type: org.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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ server_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ connectivityChk:
+ type: json
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.a_single_2a:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_a_single_2a_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_2a_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_2a_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_2a_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_a_single_2a_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ a_single_2a_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_a_single_2a:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_a_single_2a:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_a_single_2a_1a_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_2a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.capacity_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_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.usage_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_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_a_single_2a:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_a_single_2a_1a_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_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_a_single_2a_1a_t1_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_a_single_2a:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_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_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_a_single_2a_1a_t1_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
+ host_a_single_2a:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a:
+ type: org.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_a_single_2a_1a_t1_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.delta_a_single_2a:
+ type: org.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_a_single_2a:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.1c2_catalog_instance_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.a_single_1a:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_a_single_1a_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ a_single_1a_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_a_single_1a:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_a_single_1a:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_a_single_1a_1a_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_a_single_1a:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_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
+ host_a_single_1a:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_a_single_1a:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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.delta_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a_1a_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_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_a_single_1a:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_a_single_1a_1a_t1_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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a:
+ type: org.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_a_single_1a_1a_t2_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_a_single_1a_1a_t1_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.1c2_catalog_instance_3:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.b_single_1b_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_b_single_1b_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.1c2_catalog_instance_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_1c2_catalog_instance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_1c2_catalog_instance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_1c2_catalog_instance_1c2_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_1c2_catalog_instance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_1c2_catalog_instance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_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.usage_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_1c2_catalog_instance:
+ type: org.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_1c2_catalog_instance_1c2_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ type: org.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.b_single_2b_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_b_single_2b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_2b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_b_single_2b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_2b_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_2b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_2b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_2b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_2b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_2b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_2b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_2b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_2b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.usage_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b_1b_t2_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_b_single_2b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_2b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b_1b_t1_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_b_single_2b_1b_t1_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_b_single_2b_1b_t1_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_b_single_2b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_b_single_2b_1b_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_b_single_2b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b_1b_t1_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.b_single_1b_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_value_specs:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_1b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_1b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_1b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_b_single_1b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t2_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_b_single_1b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_1b:
+ type: org.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_b_single_1b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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.usage_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_b_single_1b_1b_t2_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b:
+ type: org.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_b_single_1b_1b_t1_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_b_single_1b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_b_single_1b_1b_t1_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.rate_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b_1b_t2_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_b_single_1b_1b_t1_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.delta_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.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_b_single_1b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_1b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_b_single_1b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_b_single_1b_1b_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.b_single_2b_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_b_single_2b_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_2b_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_value_specs:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_2b_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_b_single_2b_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ b_single_2b_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_b_single_2b:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_b_single_2b:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_b_single_2b_1b_t1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_2b_1b_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_b_single_2b_1b_t2_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_b_single_2b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.usage_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b_1b_t2_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_b_single_2b_1b_t2_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_b_single_2b:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b_1b_t1_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b_1b_t1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t1_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_b_single_2b:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_b_single_2b_1b_t1_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_b_single_2b_1b_t1_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_b_single_2b_1b_t1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_b_single_2b_1b_t2_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_b_single_2b:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b:
+ type: org.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_b_single_2b_1b_t2_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_b_single_2b_1b_t1_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..4c81d27afc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/MainServiceTemplate.yaml
@@ -0,0 +1,2007 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ ppds_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ a_single_1a_names:
+ hidden: false
+ immutable: false
+ type: string
+ a_single_2a_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_server_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ b_single_1b_names:
+ hidden: false
+ immutable: false
+ type: string
+ 1c12_scalling_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ b_single_2b_names:
+ hidden: false
+ immutable: false
+ type: string
+ myIPs:
+ hidden: false
+ immutable: false
+ type: string
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ 1c11_scalling_instance_names:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_1:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ connectivityChk:
+ connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C1_T1_02:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_11:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_01:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_12:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1B01_1:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B02_1:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01_2:
+ get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A_2:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityTo1B02_2:
+ get_attribute:
+ - abstract_b_single_2b_0
+ - b_single_2b_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityTo1A_1:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ connectivityChk:
+ connectivityTo1C1_T1_02:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_11:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T1_01:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_12:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1B01_1:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B02_1:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01_2:
+ get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A_2:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityTo1B02_2:
+ get_attribute:
+ - abstract_b_single_2b_0
+ - b_single_2b_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityTo1A_1:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c2_catalog_instance_2:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_2
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 3
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c2_catalog_instance_3:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_3
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_3ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c2_catalog_instance_0:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_metadata:
+ - connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C1_T1_02:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_11:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T1_01:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_12:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1B01_1:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B02_1:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01_2:
+ get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A_2:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityTo1B02_2:
+ get_attribute:
+ - abstract_b_single_2b_0
+ - b_single_2b_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityTo1A_1:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - RAW1
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c2_catalog_instance_1:
+ type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ directives:
+ - substitutable
+ properties:
+ port_1c2_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1c2_t2_port_network:
+ - 1c2_catalog_instance_network
+ compute_1c2_catalog_instance_availability_zone:
+ - get_input: availabilityzone_name
+ compute_1c2_catalog_instance_name:
+ - get_input:
+ - 1c2_catalog_instance_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1c2_t1_port_network:
+ - get_input: oam_net_name
+ port_1c2_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c2_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_user_data_format:
+ - RAW1
+ port_1c2_t1_port_network_role_tag:
+ - oam
+ port_1c2_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_1c2_catalog_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_1c2_catalog_instance_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c2_catalog_instance_1c2_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c2_catalog_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ nodeGetAttIn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ tenant_id:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_instance_name
+ - get_attribute:
+ - 1c1_t2_port_02
+ - tenant_id
+ - get_attribute:
+ - 1c1_t2_port_11
+ - tenant_id
+ - get_attribute:
+ - 1c1_t2_port_12
+ - tenant_id
+ - get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_instance_name
+ admin_state_up:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ qos_policy:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ network_name:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ value_specs:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ abstract_a_single_1a:
+ type: org.openecomp.resource.abstract.nodes.a_single_1a
+ directives:
+ - substitutable
+ properties:
+ compute_a_single_1a_metadata:
+ - connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1A:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityTo1B02:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B01:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1C1_T2_01:
+ get_attribute:
+ - 1c1_t2_port_01
+ - tenant_id
+ connectivityTo1C1_T2_12:
+ get_attribute:
+ - 1c1_t2_port_12
+ - tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T2_02:
+ get_attribute:
+ - 1c1_t2_port_02
+ - tenant_id
+ connectivityTo1C1_T2_11:
+ get_attribute:
+ - 1c1_t2_port_11
+ - tenant_id
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ compute_a_single_1a_availability_zone:
+ - get_input: availabilityzone_name
+ compute_a_single_1a_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1a_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_1a_t2_port_network_role_tag:
+ - ppds
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1a_t2_port_network:
+ - get_input: ppds_net_name
+ port_1a_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1a_t1_port_network:
+ - a_single_1a_network
+ vm_image_name:
+ get_input: pd_image_name
+ port_1a_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_a_single_1a_user_data_format:
+ - RAW
+ compute_a_single_1a_name:
+ - get_input:
+ - a_single_1a_names
+ - 0
+ port_1a_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_a_single_1aServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_a_single_1a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: a_single_1a_network
+ relationship: tosca.relationships.network.LinksTo
+ nestedNoUnified_1:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-no_vfc_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ connectivityChk:
+ connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C1_T1_02:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_11:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T1_01:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_12:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1B01_1:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B02_1:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01_2:
+ get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A_2:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityTo1B02_2:
+ get_attribute:
+ - abstract_b_single_2b_0
+ - b_single_2b_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityTo1A_1:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_b_single_2b_0:
+ type: org.openecomp.resource.abstract.nodes.b_single_2b_0
+ directives:
+ - substitutable
+ properties:
+ compute_b_single_2b_availability_zone:
+ - get_input: availabilityzone_name
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_b_single_2b_name:
+ - get_input:
+ - b_single_2b_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1b_t1_port_value_specs:
+ - get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ compute_b_single_2b_user_data_format:
+ - RAW
+ port_1b_t1_port_network_role_tag:
+ - oam
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_2b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_network:
+ - b_single_1b_network_2
+ port_1b_t1_port_network:
+ - get_input: oam_net_name
+ service_template_filter:
+ substitute_service_template: Nested_b_single_2b_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_2b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network_2
+ relationship: tosca.relationships.network.LinksTo
+ nestedNoUnified_2:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-no_vfc_v0.1ServiceTemplate.yaml
+ server_group: BE_Affinity_group
+ connectivityChk:
+ connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C1_T1_02:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_11:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T1_01:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_12:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1B01_1:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B02_1:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1B01_2:
+ get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A_2:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityTo1B02_2:
+ get_attribute:
+ - abstract_b_single_2b_0
+ - b_single_2b_instance_name
+ connectivityTo1A_1:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name: jsa_security_group
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name: nested_network
+ requirements:
+ - link_pcm_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: nested_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_1c11_scalling_instance:
+ type: org.openecomp.resource.abstract.nodes.1c11_scalling_instance
+ directives:
+ - substitutable
+ properties:
+ port_1c1_t1_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 1
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 1
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c1_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ port_1c1_t1_port_name:
+ - 1c1_t1_port_01
+ - 1c1_t1_port_02
+ compute_1c11_scalling_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ - group: BE_Affinity_group
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_1c11_scalling_instance_name:
+ - get_input:
+ - 1c11_scalling_instance_names
+ - 1
+ - get_input:
+ - 1c11_scalling_instance_names
+ - 2
+ port_1c1_t1_port_network:
+ - 1c1_scalling_instance_network
+ - 1c1_scalling_instance_network
+ compute_1c11_scalling_instance_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_1c11_scalling_instance_user_data_format:
+ - RAW1
+ - RAW1
+ port_1c1_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_1c11_scalling_instanceServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c11_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c1_scalling_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_b_single_2b_1:
+ type: org.openecomp.resource.abstract.nodes.b_single_2b_1
+ directives:
+ - substitutable
+ properties:
+ compute_b_single_2b_availability_zone:
+ - get_input: availabilityzone_name
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_b_single_2b_name:
+ - get_input:
+ - b_single_2b_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_b_single_2b_user_data_format:
+ - RAW
+ compute_b_single_2b_metadata:
+ - connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C1_T1_02:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_11:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T1_01:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_12:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1B01_1:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ connectivityTo1B02_1:
+ get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A_2:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityTo1A_1:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_2b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_network:
+ - b_single_1b_network_2
+ service_template_filter:
+ substitute_service_template: Nested_b_single_2b_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_2b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network_2
+ relationship: tosca.relationships.network.LinksTo
+ b_single_1b_network_1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ b_single_1b_network_2:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ abstract_1c12_scalling_instance:
+ type: org.openecomp.resource.abstract.nodes.1c12_scalling_instance
+ directives:
+ - substitutable
+ properties:
+ compute_1c12_scalling_instance_scheduler_hints:
+ - group: BE_Affinity_group
+ - group: BE_Affinity_group
+ port_1c1_t1_port_fixed_ips:
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 3
+ - - ip_address:
+ get_input:
+ - myIPs
+ - 3
+ compute_1c12_scalling_instance_name:
+ - get_input:
+ - 1c12_scalling_instance_names
+ - 1
+ - get_input:
+ - 1c12_scalling_instance_names
+ - 2
+ vm_image_name:
+ get_input: pd_image_name
+ port_1c1_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ port_1c1_t1_port_name:
+ - 1c1_t1_port_11
+ - 1c1_t1_port_12
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_1c12_scalling_instance_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ port_1c1_t1_port_network:
+ - 1c1_scalling_instance_network
+ - 1c1_scalling_instance_network
+ compute_1c12_scalling_instance_user_data_format:
+ - RAW1
+ - RAW1
+ port_1c1_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_1c12_scalling_instanceServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_1c12_scalling_instance_1c1_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: 1c1_scalling_instance_network
+ relationship: tosca.relationships.network.LinksTo
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pcm_port_0
+ node: abstract_pcm_server_1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: abstract_pcm_server_1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_0
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_0
+ node: nestedNoUnified_1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: nestedNoUnified_1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_2
+ node: nestedNoUnified_1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_3
+ node: nestedNoUnified_1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_0
+ node: nestedNoUnified_2
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: nestedNoUnified_2
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_2
+ node: nestedNoUnified_2
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_3
+ node: nestedNoUnified_2
+ relationship: org.openecomp.relationships.AttachesTo
+ a_single_1a_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ 1c2_catalog_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ abstract_a_single_2a:
+ type: org.openecomp.resource.abstract.nodes.a_single_2a
+ directives:
+ - substitutable
+ properties:
+ compute_a_single_2a_name:
+ - get_input:
+ - a_single_2a_names
+ - 0
+ compute_a_single_2a_user_data_format:
+ - RAW
+ vm_image_name:
+ get_input: pd_image_name
+ port_1a_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_a_single_2a_scheduler_hints:
+ - group: BE_Affinity_group
+ compute_a_single_2a_availability_zone:
+ - get_input: availabilityzone_name
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_a_single_2a_metadata:
+ - connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1A:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityTo1B02:
+ get_attribute:
+ - abstract_b_single_2b_0
+ - b_single_2b_instance_name
+ - get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1B01:
+ get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1C1_T2_01:
+ get_attribute:
+ - 1c1_t2_port_01
+ - tenant_id
+ connectivityTo1C1_T2_12:
+ get_attribute:
+ - 1c1_t2_port_12
+ - tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T2_02:
+ get_attribute:
+ - 1c1_t2_port_02
+ - tenant_id
+ connectivityTo1C1_T2_11:
+ get_attribute:
+ - 1c1_t2_port_11
+ - tenant_id
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ port_1a_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1a_t1_port_network:
+ - a_single_1a_network
+ service_template_filter:
+ substitute_service_template: Nested_a_single_2aServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_a_single_2a_1a_t1_port:
+ capability: tosca.capabilities.network.Linkable
+ node: a_single_1a_network
+ relationship: tosca.relationships.network.LinksTo
+ abstract_b_single_1b_0:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1b_t1_port_value_specs:
+ - get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ port_1b_t1_port_network_role_tag:
+ - oam
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network_1
+ compute_b_single_1b_user_data_format:
+ - RAW
+ port_1b_t1_port_network:
+ - get_input: oam_net_name
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 1
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network_1
+ relationship: tosca.relationships.network.LinksTo
+ 1c1_t2_port_02:
+ 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
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name: 1c1_t2_port_02
+ network_role_tag: ppds
+ network:
+ get_input: ppds_net_name
+ 1c1_t2_port_01:
+ 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
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name: 1c1_t2_port_01
+ network_role_tag: ppds
+ network:
+ get_input: ppds_net_name
+ 1c1_scalling_instance_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ dependsOn_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedNoUnified_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: nestedNoUnified_2
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_3
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance_1c2_t1_port
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_3
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c2_catalog_instance
+ node: abstract_1c2_catalog_instance_2
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c11_scalling_instance
+ node: abstract_1c11_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_1c12_scalling_instance
+ node: abstract_1c12_scalling_instance
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: 1c1_t2_port_02
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: 1c1_t2_port_12
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_b_single_1b_1b_t1_port
+ node: abstract_b_single_1b_0
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_2a
+ node: abstract_a_single_2a
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_a_single_1a_1a_t1_port
+ node: abstract_a_single_1a
+ relationship: tosca.relationships.DependsOn
+ 1c1_t2_port_12:
+ 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
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name: 1c1_t2_port_12
+ network_role_tag: ppds
+ network:
+ get_input: ppds_net_name
+ 1c1_t2_port_11:
+ 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
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - myIPs
+ - 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name: 1c1_t2_port_11
+ network_role_tag: ppds
+ network:
+ get_input: ppds_net_name
+ nested_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ abstract_b_single_1b_1:
+ type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ directives:
+ - substitutable
+ properties:
+ port_1b_t2_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_b_single_1b_availability_zone:
+ - get_input: availabilityzone_name
+ compute_b_single_1b_scheduler_hints:
+ - group: BE_Affinity_group
+ port_1b_t2_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_1b_t1_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ compute_b_single_1b_metadata:
+ - connectivityTo4PNested_2:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ connectivityTo1C1_T1_02:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_11:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo4PNested_1:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ connectivityTo1C1_T1_01:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1C1_T1_12:
+ get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_1c1_t1_port_tenant_id
+ connectivityTo1B01_2:
+ get_attribute:
+ - abstract_b_single_2b_1
+ - b_single_2b_instance_name
+ connectivityTo1C2_2_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_2
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1A_2:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ connectivityTo1B02_2:
+ get_attribute:
+ - abstract_b_single_2b_0
+ - b_single_2b_instance_name
+ connectivityToNoUnifiedNested_2:
+ get_attribute:
+ - nestedNoUnified_2
+ - portId
+ connectivityTo1A_1:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ connectivityToNoUnifiedNested_1:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ connectivityTo1C2_1_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_2_1:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ connectivityTo1C2_1_2:
+ get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ port_1b_t1_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_1b_t2_port_network:
+ - b_single_1b_network_1
+ compute_b_single_1b_user_data_format:
+ - RAW
+ compute_b_single_1b_name:
+ - get_input:
+ - b_single_1b_names
+ - 0
+ service_template_filter:
+ substitute_service_template: Nested_b_single_1b_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_b_single_1b_1b_t2_port:
+ capability: tosca.capabilities.network.Linkable
+ node: b_single_1b_network_1
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - nodeGetAttIn_network
+ - nestedNoUnified_1
+ - nestedNoUnified_2
+ - b_single_1b_network_1
+ - b_single_1b_network_2
+ - jsa_security_group
+ - a_single_1a_network
+ - 1c2_catalog_instance_network
+ - 1c1_t2_port_02
+ - 1c1_t2_port_01
+ - 1c1_scalling_instance_network
+ - dependsOn_network
+ - 1c1_t2_port_12
+ - 1c1_t2_port_11
+ - nested_network
+ - abstract_a_single_2a
+ - abstract_a_single_1a
+ - abstract_1c11_scalling_instance
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_b_single_2b_0
+ - abstract_b_single_2b_1
+ - abstract_1c12_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ - abstract_1c2_catalog_instance_2
+ - abstract_1c2_catalog_instance_3
+ - abstract_pcm_server_0
+ - abstract_pcm_server_1
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_a_single_2a
+ - abstract_a_single_1a
+ - abstract_1c11_scalling_instance
+ - abstract_b_single_1b_0
+ - abstract_b_single_1b_1
+ - abstract_b_single_2b_0
+ - abstract_b_single_2b_1
+ - abstract_1c12_scalling_instance
+ - abstract_1c2_catalog_instance_0
+ - abstract_1c2_catalog_instance_1
+ - abstract_1c2_catalog_instance_2
+ - abstract_1c2_catalog_instance_3
+ outputs:
+ out2:
+ value:
+ get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_0
+ - 1c2_catalog_instance_1c2_t1_port_tenant_id
+ - get_attribute:
+ - abstract_1c2_catalog_instance_1
+ - 1c2_catalog_instance_instance_name
+ - get_attribute:
+ - abstract_1c2_catalog_instance_3
+ - 1c2_catalog_instance_instance_name
+ out3:
+ value:
+ get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_instance_name
+ - get_attribute:
+ - abstract_1c11_scalling_instance
+ - 1c11_scalling_instance_instance_name
+ - get_attribute:
+ - 1c1_t2_port_02
+ - tenant_id
+ - get_attribute:
+ - 1c1_t2_port_11
+ - tenant_id
+ - get_attribute:
+ - 1c1_t2_port_12
+ - tenant_id
+ - get_attribute:
+ - abstract_1c12_scalling_instance
+ - 1c12_scalling_instance_instance_name
+ out4:
+ value:
+ get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_instance_name
+ - get_attribute:
+ - abstract_b_single_1b_1
+ - b_single_1b_1b_t1_port_tenant_id
+ - get_attribute:
+ - abstract_b_single_1b_0
+ - b_single_1b_1b_t1_port_tenant_id
+ out5:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_instance_name
+ out1:
+ value:
+ get_attribute:
+ - nestedNoUnified_1
+ - portId
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ out6:
+ value:
+ get_attribute:
+ - abstract_a_single_1a
+ - a_single_1a_1a_t1_port_tenant_id
+ out7:
+ value:
+ get_attribute:
+ - abstract_a_single_2a
+ - a_single_2a_instance_name
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml
new file mode 100644
index 0000000000..610b8d7a56
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c11_scalling_instanceServiceTemplate.yaml
@@ -0,0 +1,312 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c11_scalling_instance
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c11_scalling_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c11_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_1c11_scalling_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c11_scalling_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c11_scalling_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c11_scalling_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c11_scalling_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c11_scalling_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c11_scalling_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c11_scalling_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c11_scalling_instance_user_data_format
+ - index_value
+ 1c11_scalling_instance_1c1_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t1_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t1_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t1_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c11_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c11_scalling_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c11_scalling_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c11_scalling_instance_1c1_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c11_scalling_instance_1c1_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c11_scalling_instance
+ capabilities:
+ disk.device.usage_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.usage
+ network.incoming.packets_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.incoming.packets
+ network.incoming.packets.rate_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.incoming.packets.rate
+ disk.allocation_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.allocation
+ disk.device.read.bytes_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.read.bytes
+ disk.device.allocation_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.allocation
+ disk.read.bytes_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.read.bytes
+ binding_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - binding
+ feature_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - feature
+ memory.usage_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - memory.usage
+ disk.usage_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.usage
+ disk.latency_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.latency
+ network.outgoing.packets.rate_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.outgoing.packets.rate
+ vcpus_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - vcpus
+ memory_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - memory
+ cpu_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - cpu
+ endpoint_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - endpoint
+ feature_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - feature
+ scalable_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - scalable
+ os_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - os
+ network.outpoing.packets_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.outpoing.packets
+ disk.ephemeral.size_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.ephemeral.size
+ cpu_util_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - cpu_util
+ disk.write.bytes.rate_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.write.bytes.rate
+ disk.read.bytes.rate_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.read.bytes.rate
+ disk.capacity_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.capacity
+ host_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - host
+ disk.device.write.bytes.rate_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.write.bytes.rate
+ cpu.delta_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - cpu.delta
+ network.outgoing.bytes_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes
+ disk.device.write.requests_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.write.requests
+ network.incoming.bytes.rate_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.incoming.bytes.rate
+ disk.device.capacity_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.capacity
+ binding_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - binding
+ disk.write.bytes_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.write.bytes
+ disk.write.requests_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.write.requests
+ network.incoming.bytes_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.read.requests
+ disk.device.write.bytes_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.write.bytes
+ disk.device.read.bytes.rate_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.read.bytes.rate
+ disk.root.size_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.root.size
+ instance_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - instance
+ disk.read.requests_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.read.requests
+ disk.device.iops_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.iops
+ memory.resident_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - memory.resident
+ attachment_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - attachment
+ disk.write.requests.rate_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.write.requests.rate
+ disk.device.read.requests.rate_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.read.requests.rate
+ disk.device.write.requests.rate_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.write.requests.rate
+ disk.device.latency_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.device.latency
+ disk.iops_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - disk.iops
+ requirements:
+ local_storage_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - local_storage
+ dependency_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - dependency
+ link_1c11_scalling_instance_1c1_t1_port:
+ - 1c11_scalling_instance_1c1_t1_port
+ - link
+ dependency_1c11_scalling_instance:
+ - 1c11_scalling_instance
+ - 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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml
new file mode 100644
index 0000000000..09698482d3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c12_scalling_instanceServiceTemplate.yaml
@@ -0,0 +1,312 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c12_scalling_instance
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c12_scalling_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_1c12_scalling_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c1_t1_port_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c12_scalling_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_1c1_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1c1_t1_port_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_1c12_scalling_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c12_scalling_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c1_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c12_scalling_instance_1c1_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c1_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c1_t1_port_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_1c1_t1_port_fixed_ips
+ - index_value
+ name:
+ get_input:
+ - port_1c1_t1_port_name
+ - index_value
+ network:
+ get_input:
+ - port_1c1_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c12_scalling_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c12_scalling_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c12_scalling_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c12_scalling_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c12_scalling_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c12_scalling_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c12_scalling_instance_user_data_format
+ - index_value
+ outputs:
+ 1c12_scalling_instance_1c1_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c12_scalling_instance_1c1_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ 1c12_scalling_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c12_scalling_instance
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c12_scalling_instance
+ capabilities:
+ cpu_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - cpu
+ disk.device.write.bytes_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.incoming.bytes.rate
+ disk.usage_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.usage
+ disk.device.read.requests_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.read.requests
+ feature_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - feature
+ disk.device.latency_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.latency
+ network.outgoing.bytes_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes
+ cpu_util_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - cpu_util
+ disk.read.bytes_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.read.bytes
+ binding_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - binding
+ endpoint_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - endpoint
+ scalable_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - scalable
+ os_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - os
+ disk.device.usage_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.usage
+ disk.device.allocation_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.allocation
+ binding_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - binding
+ network.incoming.packets_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.incoming.packets
+ attachment_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - attachment
+ disk.latency_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.latency
+ network.incoming.bytes_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.incoming.bytes
+ memory_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - memory
+ host_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - host
+ cpu.delta_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - cpu.delta
+ disk.device.capacity_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.capacity
+ disk.read.requests_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.read.requests
+ disk.write.requests.rate_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.write.requests.rate
+ disk.write.bytes.rate_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.write.bytes.rate
+ disk.write.requests_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.write.requests
+ network.outgoing.bytes.rate_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.outgoing.bytes.rate
+ disk.ephemeral.size_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.ephemeral.size
+ disk.device.read.requests.rate_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.read.requests.rate
+ instance_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - instance
+ disk.device.read.bytes.rate_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.read.bytes.rate
+ disk.iops_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.iops
+ disk.device.iops_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.iops
+ feature_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - feature
+ disk.device.write.bytes.rate_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.write.bytes.rate
+ disk.write.bytes_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.write.bytes
+ disk.device.read.bytes_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.read.bytes
+ vcpus_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - vcpus
+ network.incoming.packets.rate_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.incoming.packets.rate
+ disk.device.write.requests.rate_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.write.requests.rate
+ network.outgoing.packets.rate_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.outgoing.packets.rate
+ disk.device.write.requests_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.device.write.requests
+ network.outpoing.packets_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - network.outpoing.packets
+ disk.allocation_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.allocation
+ disk.root.size_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.root.size
+ disk.capacity_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.capacity
+ memory.resident_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - memory.resident
+ disk.read.bytes.rate_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - disk.read.bytes.rate
+ memory.usage_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - memory.usage
+ requirements:
+ dependency_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_port
+ - dependency
+ local_storage_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - local_storage
+ dependency_1c12_scalling_instance:
+ - 1c12_scalling_instance
+ - dependency
+ link_1c12_scalling_instance_1c1_t1_port:
+ - 1c12_scalling_instance_1c1_t1_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..67305b71ce
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_0ServiceTemplate.yaml
@@ -0,0 +1,386 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_1c2_catalog_instance_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_0
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..278dffc4ff
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_1ServiceTemplate.yaml
@@ -0,0 +1,369 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_1
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml
new file mode 100644
index 0000000000..edff50ac2e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_2ServiceTemplate.yaml
@@ -0,0 +1,369 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_2
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml
new file mode 100644
index 0000000000..5d93924142
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_1c2_catalog_instance_3ServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_1c2_catalog_instance_3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1c2_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1c2_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_1c2_catalog_instance_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_1c2_catalog_instance_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1c2_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1c2_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1c2_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_1c2_catalog_instance_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ 1c2_catalog_instance:
+ type: org.openecomp.resource.vfc.nodes.heat.1c2_catalog_instance
+ properties:
+ availability_zone:
+ get_input:
+ - compute_1c2_catalog_instance_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_1c2_catalog_instance_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_1c2_catalog_instance_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_1c2_catalog_instance_user_data_format
+ - index_value
+ 1c2_catalog_instance_1c2_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ 1c2_catalog_instance_1c2_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1c2_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1c2_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1c2_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1c2_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: 1c2_catalog_instance
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ 1c2_catalog_instance_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance
+ - instance_name
+ entry_schema:
+ type: string
+ 1c2_catalog_instance_1c2_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - 1c2_catalog_instance_1c2_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.1c2_catalog_instance_3
+ capabilities:
+ disk.device.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.capacity
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes.rate
+ memory.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.usage
+ network.outpoing.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outpoing.packets
+ disk.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes.rate
+ binding_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets
+ cpu_util_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu_util
+ network.outpoing.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outpoing.packets
+ feature_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - feature
+ attachment_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - attachment
+ network.incoming.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.bytes
+ cpu_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu
+ disk.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.requests
+ binding_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - binding
+ network.incoming.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.ephemeral.size
+ disk.device.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes
+ memory.resident_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory.resident
+ disk.device.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests.rate
+ network.incoming.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.bytes
+ os_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - os
+ disk.device.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.iops
+ endpoint_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - endpoint
+ disk.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.allocation
+ disk.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.latency
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.bytes
+ disk.iops_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.iops
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.incoming.packets
+ vcpus_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - vcpus
+ disk.device.latency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.latency
+ attachment_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - attachment
+ network.outgoing.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.read.bytes
+ instance_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - instance
+ disk.capacity_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.capacity
+ disk.write.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.bytes
+ disk.device.read.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes.rate
+ disk.device.allocation_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.allocation
+ disk.device.read.bytes_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests
+ disk.device.write.bytes.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.bytes.rate
+ scalable_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - scalable
+ disk.device.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.write.requests
+ host_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - host
+ disk.root.size_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.root.size
+ disk.device.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.usage
+ network.outgoing.bytes_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - network.outgoing.bytes
+ disk.usage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.usage
+ feature_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - feature
+ network.incoming.packets.rate_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - network.incoming.packets.rate
+ memory_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - memory
+ disk.write.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests.rate
+ disk.write.requests_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.write.requests
+ binding_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - binding
+ cpu.delta_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - cpu.delta
+ feature_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - feature
+ disk.device.read.requests.rate_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - disk.device.read.requests.rate
+ requirements:
+ link_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - link
+ dependency_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - dependency
+ local_storage_1c2_catalog_instance:
+ - 1c2_catalog_instance
+ - local_storage
+ dependency_1c2_catalog_instance_1c2_t1_port:
+ - 1c2_catalog_instance_1c2_t1_port
+ - dependency
+ dependency_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_port
+ - dependency
+ link_1c2_catalog_instance_1c2_t2_port:
+ - 1c2_catalog_instance_1c2_t2_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml
new file mode 100644
index 0000000000..409bf1d35f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_1aServiceTemplate.yaml
@@ -0,0 +1,386 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_a_single_1a
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.a_single_1a:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_a_single_1a_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_1a_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t2_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1a_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_1a_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_1a_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_1a_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1a_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ a_single_1a_1a_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ a_single_1a:
+ type: org.openecomp.resource.vfc.nodes.heat.a_single_1a
+ properties:
+ availability_zone:
+ get_input:
+ - compute_a_single_1a_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_a_single_1a_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_a_single_1a_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_a_single_1a_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_a_single_1a_user_data_format
+ - index_value
+ a_single_1a_1a_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t2_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1a_t2_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_1a
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ a_single_1a_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a
+ - instance_name
+ entry_schema:
+ type: string
+ a_single_1a_1a_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - a_single_1a_1a_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.a_single_1a
+ capabilities:
+ disk.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes
+ network.incoming.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes.rate
+ disk.usage_a_single_1a:
+ - a_single_1a
+ - disk.usage
+ attachment_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - attachment
+ scalable_a_single_1a:
+ - a_single_1a
+ - scalable
+ network.outgoing.bytes.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes.rate
+ host_a_single_1a:
+ - a_single_1a
+ - host
+ endpoint_a_single_1a:
+ - a_single_1a
+ - endpoint
+ disk.root.size_a_single_1a:
+ - a_single_1a
+ - disk.root.size
+ memory.resident_a_single_1a:
+ - a_single_1a
+ - memory.resident
+ network.incoming.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets.rate
+ cpu.delta_a_single_1a:
+ - a_single_1a
+ - cpu.delta
+ disk.device.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests
+ network.incoming.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes.rate
+ disk.iops_a_single_1a:
+ - a_single_1a
+ - disk.iops
+ network.incoming.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.bytes
+ cpu_util_a_single_1a:
+ - a_single_1a
+ - cpu_util
+ os_a_single_1a:
+ - a_single_1a
+ - os
+ disk.device.usage_a_single_1a:
+ - a_single_1a
+ - disk.device.usage
+ network.incoming.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.packets.rate
+ disk.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.read.requests
+ disk.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.read.bytes.rate
+ disk.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes.rate
+ attachment_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - attachment
+ cpu_a_single_1a:
+ - a_single_1a
+ - cpu
+ memory.usage_a_single_1a:
+ - a_single_1a
+ - memory.usage
+ disk.device.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.requests.rate
+ binding_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - binding
+ network.incoming.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.packets
+ disk.device.read.requests_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests
+ disk.device.latency_a_single_1a:
+ - a_single_1a
+ - disk.device.latency
+ instance_a_single_1a:
+ - a_single_1a
+ - instance
+ binding_a_single_1a:
+ - a_single_1a
+ - binding
+ disk.latency_a_single_1a:
+ - a_single_1a
+ - disk.latency
+ network.outgoing.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outgoing.bytes
+ disk.device.allocation_a_single_1a:
+ - a_single_1a
+ - disk.device.allocation
+ disk.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.write.bytes
+ feature_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - feature
+ network.outpoing.packets_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.outpoing.packets
+ network.outpoing.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outpoing.packets
+ disk.device.read.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes
+ disk.device.write.bytes.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.write.bytes.rate
+ memory_a_single_1a:
+ - a_single_1a
+ - memory
+ disk.allocation_a_single_1a:
+ - a_single_1a
+ - disk.allocation
+ network.outgoing.packets.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.packets.rate
+ feature_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - feature
+ disk.capacity_a_single_1a:
+ - a_single_1a
+ - disk.capacity
+ disk.device.read.bytes_a_single_1a:
+ - a_single_1a
+ - disk.device.read.bytes
+ network.incoming.packets_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.incoming.packets
+ feature_a_single_1a:
+ - a_single_1a
+ - feature
+ network.outgoing.bytes_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes
+ disk.ephemeral.size_a_single_1a:
+ - a_single_1a
+ - disk.ephemeral.size
+ vcpus_a_single_1a:
+ - a_single_1a
+ - vcpus
+ binding_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - binding
+ disk.device.iops_a_single_1a:
+ - a_single_1a
+ - disk.device.iops
+ disk.write.requests_a_single_1a:
+ - a_single_1a
+ - disk.write.requests
+ disk.device.read.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.device.read.requests.rate
+ disk.device.capacity_a_single_1a:
+ - a_single_1a
+ - disk.device.capacity
+ disk.write.requests.rate_a_single_1a:
+ - a_single_1a
+ - disk.write.requests.rate
+ network.incoming.bytes_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - network.outgoing.bytes.rate
+ requirements:
+ link_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - link
+ link_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - link
+ dependency_a_single_1a:
+ - a_single_1a
+ - dependency
+ dependency_a_single_1a_1a_t2_port:
+ - a_single_1a_1a_t2_port
+ - dependency
+ dependency_a_single_1a_1a_t1_port:
+ - a_single_1a_1a_t1_port
+ - dependency
+ local_storage_a_single_1a:
+ - a_single_1a
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml
new file mode 100644
index 0000000000..cfd54f1688
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_a_single_2aServiceTemplate.yaml
@@ -0,0 +1,295 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_a_single_2a
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.a_single_2a:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_a_single_2a_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_a_single_2a_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1a_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_2a_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_a_single_2a_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_a_single_2a_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1a_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ a_single_2a:
+ type: org.openecomp.resource.vfc.nodes.heat.a_single_2a
+ properties:
+ availability_zone:
+ get_input:
+ - compute_a_single_2a_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_a_single_2a_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_a_single_2a_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_a_single_2a_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_a_single_2a_user_data_format
+ - index_value
+ a_single_2a_1a_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1a_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1a_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1a_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: a_single_2a
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ a_single_2a_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - a_single_2a
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.a_single_2a
+ capabilities:
+ disk.capacity_a_single_2a:
+ - a_single_2a
+ - disk.capacity
+ disk.ephemeral.size_a_single_2a:
+ - a_single_2a
+ - disk.ephemeral.size
+ disk.device.read.bytes_a_single_2a:
+ - a_single_2a
+ - disk.device.read.bytes
+ cpu_util_a_single_2a:
+ - a_single_2a
+ - cpu_util
+ disk.write.requests_a_single_2a:
+ - a_single_2a
+ - disk.write.requests
+ disk.read.requests_a_single_2a:
+ - a_single_2a
+ - disk.read.requests
+ disk.device.iops_a_single_2a:
+ - a_single_2a
+ - disk.device.iops
+ disk.device.usage_a_single_2a:
+ - a_single_2a
+ - disk.device.usage
+ disk.read.bytes.rate_a_single_2a:
+ - a_single_2a
+ - disk.read.bytes.rate
+ disk.device.write.requests.rate_a_single_2a:
+ - a_single_2a
+ - disk.device.write.requests.rate
+ network.incoming.bytes.rate_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.incoming.bytes.rate
+ disk.write.requests.rate_a_single_2a:
+ - a_single_2a
+ - disk.write.requests.rate
+ disk.device.latency_a_single_2a:
+ - a_single_2a
+ - disk.device.latency
+ disk.read.bytes_a_single_2a:
+ - a_single_2a
+ - disk.read.bytes
+ disk.device.read.requests_a_single_2a:
+ - a_single_2a
+ - disk.device.read.requests
+ disk.device.allocation_a_single_2a:
+ - a_single_2a
+ - disk.device.allocation
+ disk.latency_a_single_2a:
+ - a_single_2a
+ - disk.latency
+ network.incoming.packets.rate_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.incoming.packets.rate
+ disk.usage_a_single_2a:
+ - a_single_2a
+ - disk.usage
+ network.incoming.bytes_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.incoming.bytes
+ scalable_a_single_2a:
+ - a_single_2a
+ - scalable
+ feature_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - feature
+ disk.device.write.bytes_a_single_2a:
+ - a_single_2a
+ - disk.device.write.bytes
+ disk.device.read.bytes.rate_a_single_2a:
+ - a_single_2a
+ - disk.device.read.bytes.rate
+ endpoint_a_single_2a:
+ - a_single_2a
+ - endpoint
+ disk.root.size_a_single_2a:
+ - a_single_2a
+ - disk.root.size
+ disk.device.write.requests_a_single_2a:
+ - a_single_2a
+ - disk.device.write.requests
+ attachment_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - attachment
+ disk.iops_a_single_2a:
+ - a_single_2a
+ - disk.iops
+ vcpus_a_single_2a:
+ - a_single_2a
+ - vcpus
+ os_a_single_2a:
+ - a_single_2a
+ - os
+ disk.write.bytes.rate_a_single_2a:
+ - a_single_2a
+ - disk.write.bytes.rate
+ disk.device.capacity_a_single_2a:
+ - a_single_2a
+ - disk.device.capacity
+ cpu_a_single_2a:
+ - a_single_2a
+ - cpu
+ disk.device.read.requests.rate_a_single_2a:
+ - a_single_2a
+ - disk.device.read.requests.rate
+ memory.usage_a_single_2a:
+ - a_single_2a
+ - memory.usage
+ network.outgoing.packets.rate_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.outgoing.packets.rate
+ network.outpoing.packets_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.outpoing.packets
+ binding_a_single_2a:
+ - a_single_2a
+ - binding
+ instance_a_single_2a:
+ - a_single_2a
+ - instance
+ network.outgoing.bytes_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.outgoing.bytes
+ disk.write.bytes_a_single_2a:
+ - a_single_2a
+ - disk.write.bytes
+ binding_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - binding
+ network.incoming.packets_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.incoming.packets
+ host_a_single_2a:
+ - a_single_2a
+ - host
+ disk.device.write.bytes.rate_a_single_2a:
+ - a_single_2a
+ - disk.device.write.bytes.rate
+ memory_a_single_2a:
+ - a_single_2a
+ - memory
+ disk.allocation_a_single_2a:
+ - a_single_2a
+ - disk.allocation
+ memory.resident_a_single_2a:
+ - a_single_2a
+ - memory.resident
+ network.outgoing.bytes.rate_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_a_single_2a:
+ - a_single_2a
+ - cpu.delta
+ feature_a_single_2a:
+ - a_single_2a
+ - feature
+ requirements:
+ dependency_a_single_2a:
+ - a_single_2a
+ - dependency
+ dependency_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - dependency
+ link_a_single_2a_1a_t1_port:
+ - a_single_2a_1a_t1_port
+ - link
+ local_storage_a_single_2a:
+ - a_single_2a
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..b274d6c05d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_0ServiceTemplate.yaml
@@ -0,0 +1,386 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1b_t1_port_value_specs:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ value_specs:
+ get_input:
+ - port_1b_t1_port_value_specs
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1b_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_0
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..36ead5cbaf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_1b_1ServiceTemplate.yaml
@@ -0,0 +1,372 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_1b_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_1b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_1b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_b_single_1b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ compute_b_single_1b_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_1b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_1b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_1b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_1b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_b_single_1b_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_1b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_1b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_1b_user_data_format
+ - index_value
+ b_single_1b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_attribute:
+ - b_single_1b
+ - accessIPv6
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_1b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_1b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_1b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b
+ - instance_name
+ entry_schema:
+ type: string
+ b_single_1b_1b_t1_port_tenant_id:
+ type: list
+ value:
+ get_attribute:
+ - b_single_1b_1b_t1_port
+ - tenant_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_1b_1
+ capabilities:
+ attachment_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - attachment
+ endpoint_b_single_1b:
+ - b_single_1b
+ - endpoint
+ feature_b_single_1b:
+ - b_single_1b
+ - feature
+ disk.iops_b_single_1b:
+ - b_single_1b
+ - disk.iops
+ network.incoming.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes.rate
+ scalable_b_single_1b:
+ - b_single_1b
+ - scalable
+ disk.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes
+ os_b_single_1b:
+ - b_single_1b
+ - os
+ vcpus_b_single_1b:
+ - b_single_1b
+ - vcpus
+ cpu_b_single_1b:
+ - b_single_1b
+ - cpu
+ disk.device.read.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets.rate
+ instance_b_single_1b:
+ - b_single_1b
+ - instance
+ network.incoming.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes.rate
+ disk.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes
+ disk.device.latency_b_single_1b:
+ - b_single_1b
+ - disk.device.latency
+ disk.usage_b_single_1b:
+ - b_single_1b
+ - disk.usage
+ network.incoming.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.bytes
+ disk.device.allocation_b_single_1b:
+ - b_single_1b
+ - disk.device.allocation
+ network.outgoing.packets.rate_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.device.capacity_b_single_1b:
+ - b_single_1b
+ - disk.device.capacity
+ disk.latency_b_single_1b:
+ - b_single_1b
+ - disk.latency
+ network.incoming.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.packets
+ network.incoming.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - attachment
+ disk.device.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests
+ binding_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - binding
+ disk.ephemeral.size_b_single_1b:
+ - b_single_1b
+ - disk.ephemeral.size
+ disk.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.requests.rate
+ network.outpoing.packets_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.iops_b_single_1b:
+ - b_single_1b
+ - disk.device.iops
+ disk.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.read.requests
+ memory.resident_b_single_1b:
+ - b_single_1b
+ - memory.resident
+ disk.root.size_b_single_1b:
+ - b_single_1b
+ - disk.root.size
+ feature_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - feature
+ network.outgoing.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.outgoing.bytes
+ disk.capacity_b_single_1b:
+ - b_single_1b
+ - disk.capacity
+ disk.device.write.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes
+ disk.device.read.bytes_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.read.bytes.rate
+ cpu_util_b_single_1b:
+ - b_single_1b
+ - cpu_util
+ disk.write.requests_b_single_1b:
+ - b_single_1b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_b_single_1b:
+ - b_single_1b
+ - disk.device.usage
+ disk.read.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.read.bytes.rate
+ network.outgoing.bytes_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes
+ disk.device.read.requests_b_single_1b:
+ - b_single_1b
+ - disk.device.read.requests
+ network.incoming.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.incoming.packets
+ binding_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - binding
+ network.outpoing.packets_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.requests.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.requests.rate
+ memory.usage_b_single_1b:
+ - b_single_1b
+ - memory.usage
+ disk.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.write.bytes.rate
+ network.incoming.bytes_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - network.outgoing.bytes.rate
+ cpu.delta_b_single_1b:
+ - b_single_1b
+ - cpu.delta
+ disk.allocation_b_single_1b:
+ - b_single_1b
+ - disk.allocation
+ disk.device.write.bytes.rate_b_single_1b:
+ - b_single_1b
+ - disk.device.write.bytes.rate
+ memory_b_single_1b:
+ - b_single_1b
+ - memory
+ host_b_single_1b:
+ - b_single_1b
+ - host
+ binding_b_single_1b:
+ - b_single_1b
+ - binding
+ feature_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - feature
+ requirements:
+ local_storage_b_single_1b:
+ - b_single_1b
+ - local_storage
+ dependency_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - dependency
+ dependency_b_single_1b:
+ - b_single_1b
+ - dependency
+ link_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_port
+ - link
+ link_b_single_1b_1b_t1_port:
+ - b_single_1b_1b_t1_port
+ - link
+ dependency_b_single_1b_1b_t2_port:
+ - b_single_1b_1b_t2_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..8fb57944db
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_0ServiceTemplate.yaml
@@ -0,0 +1,378 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_2b_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_2b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_b_single_2b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_2b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_1b_t1_port_value_specs:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_2b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_2b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t1_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_2b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_2b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_2b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_2b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_2b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_2b_user_data_format
+ - index_value
+ b_single_2b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ value_specs:
+ get_input:
+ - port_1b_t1_port_value_specs
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_1b_t1_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t1_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_2b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_2b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_2b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_2b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_2b
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_2b_0
+ capabilities:
+ disk.usage_b_single_2b:
+ - b_single_2b
+ - disk.usage
+ network.incoming.bytes.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outgoing.bytes.rate
+ attachment_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - attachment
+ disk.write.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.write.bytes.rate
+ disk.device.capacity_b_single_2b:
+ - b_single_2b
+ - disk.device.capacity
+ cpu.delta_b_single_2b:
+ - b_single_2b
+ - cpu.delta
+ host_b_single_2b:
+ - b_single_2b
+ - host
+ disk.device.write.requests_b_single_2b:
+ - b_single_2b
+ - disk.device.write.requests
+ network.incoming.packets.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes_b_single_2b:
+ - b_single_2b
+ - disk.read.bytes
+ disk.device.iops_b_single_2b:
+ - b_single_2b
+ - disk.device.iops
+ disk.ephemeral.size_b_single_2b:
+ - b_single_2b
+ - disk.ephemeral.size
+ network.incoming.bytes.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.bytes
+ disk.write.requests.rate_b_single_2b:
+ - b_single_2b
+ - disk.write.requests.rate
+ feature_b_single_2b:
+ - b_single_2b
+ - feature
+ memory.resident_b_single_2b:
+ - b_single_2b
+ - memory.resident
+ disk.write.requests_b_single_2b:
+ - b_single_2b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.capacity_b_single_2b:
+ - b_single_2b
+ - disk.capacity
+ disk.device.read.bytes_b_single_2b:
+ - b_single_2b
+ - disk.device.read.bytes
+ network.incoming.packets.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - attachment
+ disk.write.bytes_b_single_2b:
+ - b_single_2b
+ - disk.write.bytes
+ network.incoming.packets_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.packets
+ vcpus_b_single_2b:
+ - b_single_2b
+ - vcpus
+ disk.device.read.requests.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.read.requests.rate
+ binding_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - binding
+ instance_b_single_2b:
+ - b_single_2b
+ - instance
+ network.outpoing.packets_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.read.requests_b_single_2b:
+ - b_single_2b
+ - disk.device.read.requests
+ disk.device.latency_b_single_2b:
+ - b_single_2b
+ - disk.device.latency
+ network.outgoing.bytes_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outgoing.bytes
+ disk.device.allocation_b_single_2b:
+ - b_single_2b
+ - disk.device.allocation
+ disk.latency_b_single_2b:
+ - b_single_2b
+ - disk.latency
+ feature_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - feature
+ disk.device.read.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.read.bytes.rate
+ network.outpoing.packets_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.write.bytes.rate
+ disk.allocation_b_single_2b:
+ - b_single_2b
+ - disk.allocation
+ memory_b_single_2b:
+ - b_single_2b
+ - memory
+ network.outgoing.packets.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outgoing.packets.rate
+ binding_b_single_2b:
+ - b_single_2b
+ - binding
+ network.incoming.packets_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.packets
+ network.outgoing.bytes_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outgoing.bytes
+ binding_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - binding
+ feature_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - feature
+ os_b_single_2b:
+ - b_single_2b
+ - os
+ disk.root.size_b_single_2b:
+ - b_single_2b
+ - disk.root.size
+ disk.read.requests_b_single_2b:
+ - b_single_2b
+ - disk.read.requests
+ endpoint_b_single_2b:
+ - b_single_2b
+ - endpoint
+ disk.iops_b_single_2b:
+ - b_single_2b
+ - disk.iops
+ disk.device.write.bytes_b_single_2b:
+ - b_single_2b
+ - disk.device.write.bytes
+ scalable_b_single_2b:
+ - b_single_2b
+ - scalable
+ memory.usage_b_single_2b:
+ - b_single_2b
+ - memory.usage
+ cpu_util_b_single_2b:
+ - b_single_2b
+ - cpu_util
+ disk.device.usage_b_single_2b:
+ - b_single_2b
+ - disk.device.usage
+ disk.device.write.requests.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.write.requests.rate
+ cpu_b_single_2b:
+ - b_single_2b
+ - cpu
+ disk.read.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.read.bytes.rate
+ network.incoming.bytes_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outgoing.bytes.rate
+ requirements:
+ local_storage_b_single_2b:
+ - b_single_2b
+ - local_storage
+ dependency_b_single_2b:
+ - b_single_2b
+ - dependency
+ link_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - link
+ link_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - link
+ dependency_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - dependency
+ dependency_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..f867345250
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/Nested_b_single_2b_1ServiceTemplate.yaml
@@ -0,0 +1,364 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_b_single_2b_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.b_single_2b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_b_single_2b_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_1b_t2_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_1b_t2_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_2b_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_b_single_2b_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_b_single_2b_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t1_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_1b_t1_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_b_single_2b_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_1b_t2_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ b_single_2b:
+ type: org.openecomp.resource.vfc.nodes.heat.b_single_2b
+ properties:
+ availability_zone:
+ get_input:
+ - compute_b_single_2b_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_b_single_2b_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_b_single_2b_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_b_single_2b_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_b_single_2b_user_data_format
+ - index_value
+ b_single_2b_1b_t1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t1_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t1_port_mac_requirements
+ - index_value
+ network:
+ get_attribute:
+ - b_single_2b
+ - accessIPv6
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_2b
+ relationship: tosca.relationships.network.BindsTo
+ b_single_2b_1b_t2_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_1b_t2_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_1b_t2_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_1b_t2_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: b_single_2b
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ b_single_2b_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - b_single_2b
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.b_single_2b_1
+ capabilities:
+ disk.usage_b_single_2b:
+ - b_single_2b
+ - disk.usage
+ network.incoming.bytes.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outgoing.bytes.rate
+ attachment_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - attachment
+ disk.write.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.write.bytes.rate
+ disk.device.capacity_b_single_2b:
+ - b_single_2b
+ - disk.device.capacity
+ cpu.delta_b_single_2b:
+ - b_single_2b
+ - cpu.delta
+ host_b_single_2b:
+ - b_single_2b
+ - host
+ disk.device.write.requests_b_single_2b:
+ - b_single_2b
+ - disk.device.write.requests
+ network.incoming.packets.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.packets.rate
+ disk.read.bytes_b_single_2b:
+ - b_single_2b
+ - disk.read.bytes
+ disk.device.iops_b_single_2b:
+ - b_single_2b
+ - disk.device.iops
+ disk.ephemeral.size_b_single_2b:
+ - b_single_2b
+ - disk.ephemeral.size
+ network.incoming.bytes.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.bytes
+ disk.write.requests.rate_b_single_2b:
+ - b_single_2b
+ - disk.write.requests.rate
+ feature_b_single_2b:
+ - b_single_2b
+ - feature
+ memory.resident_b_single_2b:
+ - b_single_2b
+ - memory.resident
+ disk.write.requests_b_single_2b:
+ - b_single_2b
+ - disk.write.requests
+ network.outgoing.packets.rate_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outgoing.packets.rate
+ disk.capacity_b_single_2b:
+ - b_single_2b
+ - disk.capacity
+ disk.device.read.bytes_b_single_2b:
+ - b_single_2b
+ - disk.device.read.bytes
+ network.incoming.packets.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.packets.rate
+ attachment_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - attachment
+ disk.write.bytes_b_single_2b:
+ - b_single_2b
+ - disk.write.bytes
+ network.incoming.packets_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.packets
+ vcpus_b_single_2b:
+ - b_single_2b
+ - vcpus
+ disk.device.read.requests.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.read.requests.rate
+ binding_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - binding
+ instance_b_single_2b:
+ - b_single_2b
+ - instance
+ network.outpoing.packets_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outpoing.packets
+ disk.device.read.requests_b_single_2b:
+ - b_single_2b
+ - disk.device.read.requests
+ disk.device.latency_b_single_2b:
+ - b_single_2b
+ - disk.device.latency
+ network.outgoing.bytes_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.outgoing.bytes
+ disk.device.allocation_b_single_2b:
+ - b_single_2b
+ - disk.device.allocation
+ disk.latency_b_single_2b:
+ - b_single_2b
+ - disk.latency
+ feature_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - feature
+ disk.device.read.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.read.bytes.rate
+ network.outpoing.packets_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.write.bytes.rate
+ disk.allocation_b_single_2b:
+ - b_single_2b
+ - disk.allocation
+ memory_b_single_2b:
+ - b_single_2b
+ - memory
+ network.outgoing.packets.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outgoing.packets.rate
+ binding_b_single_2b:
+ - b_single_2b
+ - binding
+ network.incoming.packets_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.incoming.packets
+ network.outgoing.bytes_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outgoing.bytes
+ binding_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - binding
+ feature_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - feature
+ os_b_single_2b:
+ - b_single_2b
+ - os
+ disk.root.size_b_single_2b:
+ - b_single_2b
+ - disk.root.size
+ disk.read.requests_b_single_2b:
+ - b_single_2b
+ - disk.read.requests
+ endpoint_b_single_2b:
+ - b_single_2b
+ - endpoint
+ disk.iops_b_single_2b:
+ - b_single_2b
+ - disk.iops
+ disk.device.write.bytes_b_single_2b:
+ - b_single_2b
+ - disk.device.write.bytes
+ scalable_b_single_2b:
+ - b_single_2b
+ - scalable
+ memory.usage_b_single_2b:
+ - b_single_2b
+ - memory.usage
+ cpu_util_b_single_2b:
+ - b_single_2b
+ - cpu_util
+ disk.device.usage_b_single_2b:
+ - b_single_2b
+ - disk.device.usage
+ disk.device.write.requests.rate_b_single_2b:
+ - b_single_2b
+ - disk.device.write.requests.rate
+ cpu_b_single_2b:
+ - b_single_2b
+ - cpu
+ disk.read.bytes.rate_b_single_2b:
+ - b_single_2b
+ - disk.read.bytes.rate
+ network.incoming.bytes_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - network.outgoing.bytes.rate
+ requirements:
+ local_storage_b_single_2b:
+ - b_single_2b
+ - local_storage
+ dependency_b_single_2b:
+ - b_single_2b
+ - dependency
+ link_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - link
+ link_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_port
+ - link
+ dependency_b_single_2b_1b_t2_port:
+ - b_single_2b_1b_t2_port
+ - dependency
+ dependency_b_single_2b_1b_t1_port:
+ - b_single_2b_1b_t1_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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-no_vfc_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-no_vfc_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..eca7550f05
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-no_vfc_v0.1ServiceTemplate.yaml
@@ -0,0 +1,675 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-no_vfc_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcma_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ connectivityChk:
+ hidden: false
+ immutable: false
+ type: json
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ pcma_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ pcma_server_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcma_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ pcm_port_2:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_3:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma2
+ relationship: tosca.relationships.network.BindsTo
+ server_pcma2:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ server_pcma1:
+ type: org.openecomp.resource.vfc.nodes.heat.pcma_server
+ properties:
+ flavor:
+ get_input: pcma_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcma_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcma_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcma1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-no_vfc_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-no_vfc_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_2
+ - pcm_port_1
+ - pcm_port_3
+ - server_pcma2
+ - server_pcma1
+ - pcm_port_0
+ outputs:
+ portId:
+ value: pcm_port_3
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-no_vfc_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ disk.device.iops_server_pcma2:
+ - server_pcma2
+ - disk.device.iops
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_3:
+ - pcm_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_2:
+ - pcm_port_2
+ - network.outpoing.packets
+ disk.device.iops_server_pcma1:
+ - server_pcma1
+ - disk.device.iops
+ disk.device.capacity_server_pcma2:
+ - server_pcma2
+ - disk.device.capacity
+ disk.device.capacity_server_pcma1:
+ - server_pcma1
+ - disk.device.capacity
+ disk.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.read.requests
+ disk.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.read.requests
+ disk.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.requests.rate
+ memory_server_pcma2:
+ - server_pcma2
+ - memory
+ memory_server_pcma1:
+ - server_pcma1
+ - memory
+ disk.device.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes
+ disk.device.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes.rate
+ binding_pcm_port_3:
+ - pcm_port_3
+ - binding
+ disk.device.latency_server_pcma2:
+ - server_pcma2
+ - disk.device.latency
+ disk.device.usage_server_pcma2:
+ - server_pcma2
+ - disk.device.usage
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.device.latency_server_pcma1:
+ - server_pcma1
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ disk.device.usage_server_pcma1:
+ - server_pcma1
+ - disk.device.usage
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ binding_pcm_port_2:
+ - pcm_port_2
+ - binding
+ network.incoming.bytes_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes
+ network.outgoing.packets.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.packets.rate
+ disk.device.read.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests
+ disk.device.read.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ disk.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes
+ disk.device.read.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.read.requests.rate
+ network.outgoing.packets.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.packets.rate
+ disk.device.read.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ binding_server_pcma1:
+ - server_pcma1
+ - binding
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ binding_server_pcma2:
+ - server_pcma2
+ - binding
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes
+ feature_pcm_port_3:
+ - pcm_port_3
+ - feature
+ feature_pcm_port_2:
+ - pcm_port_2
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ disk.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.write.bytes.rate
+ attachment_pcm_port_2:
+ - pcm_port_2
+ - attachment
+ disk.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.write.bytes.rate
+ attachment_pcm_port_3:
+ - pcm_port_3
+ - attachment
+ disk.root.size_server_pcma2:
+ - server_pcma2
+ - disk.root.size
+ disk.root.size_server_pcma1:
+ - server_pcma1
+ - disk.root.size
+ disk.iops_server_pcma2:
+ - server_pcma2
+ - disk.iops
+ disk.iops_server_pcma1:
+ - server_pcma1
+ - disk.iops
+ disk.device.write.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes.rate
+ disk.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes
+ disk.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes
+ cpu_util_server_pcma1:
+ - server_pcma1
+ - cpu_util
+ cpu_util_server_pcma2:
+ - server_pcma2
+ - cpu_util
+ feature_server_pcma2:
+ - server_pcma2
+ - feature
+ memory.usage_server_pcma2:
+ - server_pcma2
+ - memory.usage
+ memory.usage_server_pcma1:
+ - server_pcma1
+ - memory.usage
+ feature_server_pcma1:
+ - server_pcma1
+ - feature
+ disk.read.bytes.rate_server_pcma1:
+ - server_pcma1
+ - disk.read.bytes.rate
+ disk.device.read.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.read.bytes
+ endpoint_server_pcma2:
+ - server_pcma2
+ - endpoint
+ disk.read.bytes.rate_server_pcma2:
+ - server_pcma2
+ - disk.read.bytes.rate
+ endpoint_server_pcma1:
+ - server_pcma1
+ - endpoint
+ cpu.delta_server_pcma1:
+ - server_pcma1
+ - cpu.delta
+ cpu.delta_server_pcma2:
+ - server_pcma2
+ - cpu.delta
+ host_server_pcma2:
+ - server_pcma2
+ - host
+ host_server_pcma1:
+ - server_pcma1
+ - host
+ disk.ephemeral.size_server_pcma1:
+ - server_pcma1
+ - disk.ephemeral.size
+ disk.ephemeral.size_server_pcma2:
+ - server_pcma2
+ - disk.ephemeral.size
+ disk.device.write.requests.rate_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests.rate
+ disk.latency_server_pcma1:
+ - server_pcma1
+ - disk.latency
+ disk.latency_server_pcma2:
+ - server_pcma2
+ - disk.latency
+ disk.device.write.requests.rate_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests.rate
+ scalable_server_pcma2:
+ - server_pcma2
+ - scalable
+ scalable_server_pcma1:
+ - server_pcma1
+ - scalable
+ disk.device.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.device.write.requests
+ disk.device.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.device.write.requests
+ instance_server_pcma2:
+ - server_pcma2
+ - instance
+ disk.device.allocation_server_pcma1:
+ - server_pcma1
+ - disk.device.allocation
+ disk.device.allocation_server_pcma2:
+ - server_pcma2
+ - disk.device.allocation
+ instance_server_pcma1:
+ - server_pcma1
+ - instance
+ os_server_pcma1:
+ - server_pcma1
+ - os
+ os_server_pcma2:
+ - server_pcma2
+ - os
+ disk.capacity_server_pcma1:
+ - server_pcma1
+ - disk.capacity
+ disk.capacity_server_pcma2:
+ - server_pcma2
+ - disk.capacity
+ disk.write.requests_server_pcma1:
+ - server_pcma1
+ - disk.write.requests
+ disk.write.requests_server_pcma2:
+ - server_pcma2
+ - disk.write.requests
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.packets
+ disk.usage_server_pcma2:
+ - server_pcma2
+ - disk.usage
+ network.incoming.packets_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.packets
+ network.outgoing.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.outgoing.bytes.rate
+ disk.usage_server_pcma1:
+ - server_pcma1
+ - disk.usage
+ vcpus_server_pcma1:
+ - server_pcma1
+ - vcpus
+ memory.resident_server_pcma1:
+ - server_pcma1
+ - memory.resident
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ vcpus_server_pcma2:
+ - server_pcma2
+ - vcpus
+ memory.resident_server_pcma2:
+ - server_pcma2
+ - memory.resident
+ disk.device.write.bytes_server_pcma2:
+ - server_pcma2
+ - disk.device.write.bytes
+ disk.allocation_server_pcma1:
+ - server_pcma1
+ - disk.allocation
+ disk.allocation_server_pcma2:
+ - server_pcma2
+ - disk.allocation
+ disk.device.write.bytes_server_pcma1:
+ - server_pcma1
+ - disk.device.write.bytes
+ cpu_server_pcma1:
+ - server_pcma1
+ - cpu
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ cpu_server_pcma2:
+ - server_pcma2
+ - cpu
+ network.incoming.bytes.rate_pcm_port_3:
+ - pcm_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_2:
+ - pcm_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ dependency_server_pcma2:
+ - server_pcma2
+ - dependency
+ local_storage_server_pcma2:
+ - server_pcma2
+ - local_storage
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ dependency_server_pcma1:
+ - server_pcma1
+ - dependency
+ local_storage_server_pcma1:
+ - server_pcma1
+ - local_storage
+ link_pcm_port_2:
+ - pcm_port_2
+ - link
+ link_pcm_port_3:
+ - pcm_port_3
+ - link
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_pcm_port_3:
+ - pcm_port_3
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
+ dependency_pcm_port_2:
+ - pcm_port_2
+ - 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/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..d6dd992034
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/mixPatterns/twoAppearancePerPatternWithConnectivities/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,391 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ server_group:
+ hidden: false
+ immutable: false
+ type: string
+ connectivityChk:
+ hidden: false
+ immutable: false
+ type: json
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ scheduler_hints:
+ group:
+ get_input: server_group
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/MANIFEST.json
new file mode 100644
index 0000000000..f317bdc15c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/MANIFEST.json
@@ -0,0 +1,25 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.2.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..52146086b7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,5 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..ab2cdb00d7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,61 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_pcm_002:
+ type: nested-pcm_v0.2.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_compute:
+ type: OS::Nova::Server
+ properties:
+ config_drive: {get_attr: [compute_port_0]}
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+ user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
+ user_data: { get_attr: [server_pcm_001]}
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.2.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.2.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/in/nested-pcm_v0.2.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..0138bf7b61
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1276 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.pcm_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ requirements:
+ - dependency_compute:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.usage_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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.usage_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_compute:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.network.Bindable
+ 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/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..2d60fd102c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/MainServiceTemplate.yaml
@@ -0,0 +1,156 @@
+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:
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_1_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server_1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.2ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - abstract_pcm_server_1_0
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - compute_port_0
+ - abstract_compute
+ - abstract_pcm_server_0
+ - abstract_pcm_server_1_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/Nested_computeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/Nested_computeServiceTemplate.yaml
new file mode 100644
index 0000000000..ba0e3fc87b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/Nested_computeServiceTemplate.yaml
@@ -0,0 +1,194 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_compute
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_compute_config_drive:
+ type: list
+ required: true
+ entry_schema:
+ type: boolean
+ node_templates:
+ compute:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ get_input: vm_flavor_name
+ config_drive:
+ get_input:
+ - compute_compute_config_drive
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_compute_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_compute_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.compute
+ capabilities:
+ disk.device.usage_compute:
+ - compute
+ - disk.device.usage
+ disk.write.requests_compute:
+ - compute
+ - disk.write.requests
+ instance_compute:
+ - compute
+ - instance
+ disk.ephemeral.size_compute:
+ - compute
+ - disk.ephemeral.size
+ disk.device.read.bytes.rate_compute:
+ - compute
+ - disk.device.read.bytes.rate
+ disk.latency_compute:
+ - compute
+ - disk.latency
+ memory.resident_compute:
+ - compute
+ - memory.resident
+ memory_compute:
+ - compute
+ - memory
+ disk.iops_compute:
+ - compute
+ - disk.iops
+ disk.root.size_compute:
+ - compute
+ - disk.root.size
+ disk.write.requests.rate_compute:
+ - compute
+ - disk.write.requests.rate
+ disk.read.requests_compute:
+ - compute
+ - disk.read.requests
+ disk.device.read.requests.rate_compute:
+ - compute
+ - disk.device.read.requests.rate
+ disk.read.bytes_compute:
+ - compute
+ - disk.read.bytes
+ disk.device.read.bytes_compute:
+ - compute
+ - disk.device.read.bytes
+ disk.write.bytes_compute:
+ - compute
+ - disk.write.bytes
+ disk.usage_compute:
+ - compute
+ - disk.usage
+ os_compute:
+ - compute
+ - os
+ disk.write.bytes.rate_compute:
+ - compute
+ - disk.write.bytes.rate
+ vcpus_compute:
+ - compute
+ - vcpus
+ disk.capacity_compute:
+ - compute
+ - disk.capacity
+ cpu_util_compute:
+ - compute
+ - cpu_util
+ disk.read.bytes.rate_compute:
+ - compute
+ - disk.read.bytes.rate
+ disk.device.latency_compute:
+ - compute
+ - disk.device.latency
+ disk.device.write.requests_compute:
+ - compute
+ - disk.device.write.requests
+ disk.device.iops_compute:
+ - compute
+ - disk.device.iops
+ disk.device.write.requests.rate_compute:
+ - compute
+ - disk.device.write.requests.rate
+ endpoint_compute:
+ - compute
+ - endpoint
+ memory.usage_compute:
+ - compute
+ - memory.usage
+ host_compute:
+ - compute
+ - host
+ feature_compute:
+ - compute
+ - feature
+ disk.device.write.bytes_compute:
+ - compute
+ - disk.device.write.bytes
+ cpu_compute:
+ - compute
+ - cpu
+ disk.device.write.bytes.rate_compute:
+ - compute
+ - disk.device.write.bytes.rate
+ scalable_compute:
+ - compute
+ - scalable
+ disk.device.read.requests_compute:
+ - compute
+ - disk.device.read.requests
+ disk.allocation_compute:
+ - compute
+ - disk.allocation
+ disk.device.capacity_compute:
+ - compute
+ - disk.device.capacity
+ disk.device.allocation_compute:
+ - compute
+ - disk.device.allocation
+ cpu.delta_compute:
+ - compute
+ - cpu.delta
+ binding_compute:
+ - compute
+ - binding
+ requirements:
+ local_storage_compute:
+ - compute
+ - local_storage
+ dependency_compute:
+ - compute
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..1ab6da631d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server_1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml
new file mode 100644
index 0000000000..a5e41ea4fa
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/diffNestedFilesWithSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.2.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/MANIFEST.json
new file mode 100644
index 0000000000..c7d4122f3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/MANIFEST.json
@@ -0,0 +1,32 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/main.yml
new file mode 100644
index 0000000000..2b177868ae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/main.yml
@@ -0,0 +1,78 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ security_group_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ jsa_security_group1:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ jsa_security_group2:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: jsa_security_group1}
+ p2: { get_resource: jsa_security_group2}
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_resource: jsa_security_group2}
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNova:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_nova} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested1.yml
new file mode 100644
index 0000000000..c73fcf63d7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested1.yml
@@ -0,0 +1,65 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}, {get_param: p2}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+ - port: { get_resource: cmaui_port_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested2.yml
new file mode 100644
index 0000000000..b4655fa35d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested2.yml
@@ -0,0 +1,70 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}, {get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_3 }
+ - port: { get_resource: cmaui_port_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested3.yml
new file mode 100644
index 0000000000..55538833a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested3.yml
@@ -0,0 +1,66 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_5 }
+ - port: { get_resource: cmaui_port_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested4.yml
new file mode 100644
index 0000000000..ce3ffb76a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/in/nested4.yml
@@ -0,0 +1,58 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_7:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_8:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2},{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_7 }
+ - port: { get_resource: cmaui_port_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..fc289a6ac5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4688 @@
+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.jsa:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_jsa_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ requirements:
+ - dependency_jsa:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_jsa:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ instance_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_jsa:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_jsa:
+ type: org.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.usage_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_jsa:
+ type: org.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_jsa:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_jsa:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_jsa:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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_jsa:
+ type: org.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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_4:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ type: org.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.usage_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_8:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_8:
+ type: org.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_cmaui_port_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.allocation_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..2d367f7555
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/MainServiceTemplate.yaml
@@ -0,0 +1,279 @@
+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:
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: jsa_security_group1
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2: jsa_security_group2
+ test_nestedInvalidConnectionToNova:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1: jsa_security_group2
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_jsa:
+ type: org.openecomp.resource.abstract.nodes.jsa
+ directives:
+ - substitutable
+ properties:
+ compute_jsa_name:
+ - get_input: jsa_name
+ vm_image_name: image
+ service_template_filter:
+ substitute_service_template: Nested_jsaServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ jsa_security_group1:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cmaui_port_6_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_3_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_4_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_1
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_5_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ jsa_security_group2:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cmaui_port_3_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_2
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_1
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_7_test_nested4Level
+ node: test_resourceGroup
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_5
+ node: test_resourceGroup
+ relationship: org.openecomp.relationships.AttachesTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_nestedInvalidConnectionToNova
+ - test_resourceGroup
+ - jsa_security_group1
+ - jsa_security_group2
+ - abstract_jsa \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..42b1a26b87
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested1ServiceTemplate.yaml
@@ -0,0 +1,1002 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - cmaui_port_2
+ - server_cmaui
+ - test_nested2Level
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_6_test_nested3Level
+ binding_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_6_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ binding_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_5_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3
+ feature_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui
+ disk.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested3Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ cpu.delta_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_6_test_nested3Level
+ network.incoming.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_4
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui
+ network.incoming.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3
+ attachment_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_6_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_5_test_nested3Level
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested3Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_7_test_nested4Level_test_nested3Level
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_4
+ disk.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_6_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_5_test_nested3Level
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_5_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.device.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_4
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ vcpus_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_5_test_nested3Level
+ cpu_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui
+ network.incoming.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_4
+ feature_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_5_test_nested3Level
+ disk.root.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested3Level
+ memory.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested3Level
+ attachment_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested3Level
+ instance_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui
+ disk.device.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested4Level_test_nested3Level
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ feature_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested3Level
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui
+ network.outgoing.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_4
+ disk.device.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_5_test_nested3Level
+ cpu_util_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested3Level
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_6_test_nested3Level
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ disk.device.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_6_test_nested3Level
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested3Level
+ binding_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_4
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_4
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested3Level
+ vcpus_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ attachment_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_4
+ memory.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_5_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_4
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui
+ feature_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested3Level
+ network.incoming.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ disk.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui
+ feature_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_4
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level
+ attachment_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_7_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_4
+ binding_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ disk.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu.delta_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_6_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested3Level
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_5_test_nested3Level
+ dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_6_test_nested3Level
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level
+ link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_6_test_nested3Level
+ dependency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ link_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_4
+ dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_5_test_nested3Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ link_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_4 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..c2319a006c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested2ServiceTemplate.yaml
@@ -0,0 +1,796 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_3
+ - cmaui_port_4
+ - test_nested3Level
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui_test_nested4Level
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui_test_nested4Level
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui_test_nested4Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui_test_nested4Level
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ instance_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level
+ feature_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_7_test_nested4Level
+ memory.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ memory_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_5
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui_test_nested4Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_6
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_6
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_5
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_6
+ cpu_util_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_6
+ disk.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui
+ memory.resident_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level
+ cpu.delta_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui_test_nested4Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui
+ binding_cmaui_port_4:
+ - cmaui_port_4
+ - binding
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ feature_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_6
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_8_test_nested4Level
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_6
+ memory_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ disk.device.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes.rate
+ binding_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_6
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui_test_nested4Level
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.root.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui_test_nested4Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_7_test_nested4Level
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ network.incoming.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets.rate
+ feature_cmaui_port_4:
+ - cmaui_port_4
+ - feature
+ attachment_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_6
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_6
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.packets.rate
+ disk.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui_test_nested4Level
+ attachment_cmaui_port_4:
+ - cmaui_port_4
+ - attachment
+ disk.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.device.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_5
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level
+ disk.device.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_7_test_nested4Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui_test_nested4Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ network.incoming.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_6
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level
+ disk.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level
+ attachment_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_5
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui_test_nested4Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui_test_nested4Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_5
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_8_test_nested4Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_5
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.outpoing.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_6
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outgoing.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ instance_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui
+ binding_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_5
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_5
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui
+ disk.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.outpoing.packets
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_8_test_nested4Level
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ feature_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_5
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_5
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui_test_nested4Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_5
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui_test_nested4Level
+ requirements:
+ link_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_5
+ dependency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_6
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_7_test_nested4Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_4:
+ - cmaui_port_4
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui_test_nested4Level
+ link_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_6
+ link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_8_test_nested4Level
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_7_test_nested4Level
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_8_test_nested4Level
+ dependency_cmaui_port_4:
+ - cmaui_port_4
+ - dependency
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ dependency_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_5
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..d907a4db05
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested3ServiceTemplate.yaml
@@ -0,0 +1,578 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - test_nested4Level
+ - cmaui_port_5
+ - cmaui_port_6
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ memory_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ instance_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ cpu_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui
+ vcpus_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui
+ disk.device.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_7
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.device.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_8
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui
+ network.incoming.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_7
+ disk.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui
+ network.incoming.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_7
+ disk.device.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_8
+ disk.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_5:
+ - cmaui_port_5
+ - binding
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_8
+ binding_cmaui_port_6:
+ - cmaui_port_6
+ - binding
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_8
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ feature_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_8
+ network.outpoing.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_8
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui
+ feature_cmaui_port_5:
+ - cmaui_port_5
+ - feature
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui
+ feature_cmaui_port_6:
+ - cmaui_port_6
+ - feature
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui
+ attachment_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_7
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui
+ binding_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_8
+ network.incoming.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets.rate
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ attachment_cmaui_port_6:
+ - cmaui_port_6
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_7
+ network.outgoing.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_5:
+ - cmaui_port_5
+ - attachment
+ feature_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_8
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outpoing.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_7
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ attachment_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_8
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_8
+ disk.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_7
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ network.incoming.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets.rate
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ cpu.delta_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui
+ memory.resident_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui
+ binding_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_7
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_7
+ disk.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui
+ disk.device.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui
+ network.incoming.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_7
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_8
+ memory.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui
+ network.outpoing.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.outpoing.packets
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.outgoing.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes
+ network.outpoing.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.outpoing.packets
+ network.outgoing.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.device.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.incoming.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_7
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ requirements:
+ dependency_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_7
+ dependency_cmaui_port_6:
+ - cmaui_port_6
+ - dependency
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_8
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ link_cmaui_port_6:
+ - cmaui_port_6
+ - link
+ link_cmaui_port_5:
+ - cmaui_port_5
+ - link
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_8
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui
+ link_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_7
+ dependency_cmaui_port_5:
+ - cmaui_port_5
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..720662bde6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedMultiLevels/out/nested4ServiceTemplate.yaml
@@ -0,0 +1,350 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_7
+ - cmaui_port_8
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ feature_cmaui_port_7:
+ - cmaui_port_7
+ - feature
+ feature_cmaui_port_8:
+ - cmaui_port_8
+ - feature
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.outgoing.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_7:
+ - cmaui_port_7
+ - attachment
+ attachment_cmaui_port_8:
+ - cmaui_port_8
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.packets.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets.rate
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.incoming.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets
+ network.incoming.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.outgoing.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.outpoing.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.outpoing.packets
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outpoing.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.outpoing.packets
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ binding_cmaui_port_7:
+ - cmaui_port_7
+ - binding
+ network.outgoing.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes
+ binding_cmaui_port_8:
+ - cmaui_port_8
+ - binding
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.incoming.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.outgoing.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes.rate
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ dependency_cmaui_port_8:
+ - cmaui_port_8
+ - dependency
+ dependency_cmaui_port_7:
+ - cmaui_port_7
+ - dependency
+ link_cmaui_port_8:
+ - cmaui_port_8
+ - link
+ link_cmaui_port_7:
+ - cmaui_port_7
+ - link
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/MANIFEST.json
new file mode 100644
index 0000000000..516cc9fc3c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/MANIFEST.json
@@ -0,0 +1,31 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-oam_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/addOn.yml
new file mode 100644
index 0000000000..b1a13069c4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/addOn.yml
@@ -0,0 +1,19 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ shared_security_group_id1:
+ type: string
+ description: network name of jsa log network
+ shared_security_group_id2:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_shared_node_connected_in_nested:
+ type: nested-oam_v0.1.yaml
+ properties:
+ shared_security_group_id1: { get_param: shared_security_group_id1}
+ p2: { get_param: shared_security_group_id2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..41189c6958
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,17 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ oam_server_names: ZRDM1PCRF01PCM001
+ oam_image_name: rhel2
+ oam_flavor_name: cps
+ availabilityzone_name: nova
+ cps_net_name: int_pcrf_net_0
+ cps_net_ips: 172.26.16.113
+ cps_net_mask: 255.255.255.0
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.239.64.121
+ oam_net_gw: 107.239.64.1
+ oam_net_mask: 255.255.255.0
+ pcm_volumes: 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ security_group_name: nimbus_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..ee54fc9c78
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,173 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ shared_security_group_id1:
+ type: string
+ description: network name of jsa log network
+ shared_security_group_id2:
+ type: string
+ description: network name of jsa log network
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ oam_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ oam_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ips:
+ type: comma_delimited_list
+ label: OAM network ips
+ description: OAM network ips
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_volumes:
+ type: comma_delimited_list
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_compute:
+ type: OS::Nova::Server
+ properties:
+ config_drive: {get_attr: [compute_port_0]}
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+ user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
+ metadata: { get_attr: [server_pcm_001]}
+
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ depends_on:
+ - server_compute
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name }
+
+ jsa_security_group1:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: jsa_security_group1_name
+ rules: [{"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}]
+
+ jsa_security_group2:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: jsa_security_group2_name
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0}]
+
+ server_pcm_002:
+ type: nested-pcm_v0.1.yaml
+ depends_on:
+ - server_pcm_001
+ properties:
+ p1: { get_resource: jsa_security_group1}
+ p2: { get_resource: jsa_security_group2}
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+
+ server_oam_001:
+ type: nested-oam_v0.1.yaml
+ depends_on:
+ - server_pcm_001
+ properties:
+ oam_server_name: { get_param: [oam_server_names, 0] }
+ oam_image_name: { get_param: oam_image_name }
+ oam_flavor_name: { get_param: oam_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pcm_001
+ - server_compute
+ properties:
+ name:
+ get_param: net_name
+
+outputs:
+ shared_security_group_id1:
+ value: {get_resource: jsa_security_group1}
+
+ shared_security_group_id2:
+ value: {get_resource: jsa_security_group2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-oam_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-oam_v0.1.yaml
new file mode 100644
index 0000000000..c7da073515
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-oam_v0.1.yaml
@@ -0,0 +1,96 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ p2:
+ type: string
+ description: UID of OAM network
+ shared_security_group_id1:
+ type: string
+ description: UID of OAM network
+ oam_server_name:
+ type: string
+ label: oam server name
+ description: oam server name
+ oam_image_name:
+ type: string
+ label: image name
+ description: oam image name
+ oam_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_oam:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: oam_server_name }
+ image: { get_param: oam_image_name }
+ flavor: { get_param: oam_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: oam_port_0}
+ - port: { get_resource: oam_port_1}
+
+ oam_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: shared_security_group_id1 }]
+
+ oam_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: shared_security_group_id1 }, {get_param: security_group_name }]
+outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: { get_resource: server_oam } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..b3e7aa468d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,107 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{get_param: p1},{get_param: p2}]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{get_param: p1}]
+
+ #pcm_vol_attachment:
+ # type: OS::Cinder::VolumeAttachment
+ # properties:
+ # volume_id: { get_param: pcm_vol }
+ # mountpoint: /dev/vdb
+ # instance_uuid: { get_resource: server_pcm }
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..45251124c8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1302 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.oam_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ oam_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ oam_server_name:
+ type: string
+ description: oam server name
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ oam_image_name:
+ type: string
+ description: oam image name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ shared_security_group_id1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_oam_id:
+ type: string
+ description: the oam nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_oam_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_oam:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_oam:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_oam_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_oam_port_1:
+ type: org.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_oam_port_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_oam_port_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_server_oam:
+ type: org.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_oam_port_1:
+ type: org.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_server_oam:
+ type: org.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_oam_port_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_oam_port_1:
+ type: org.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_server_oam:
+ type: org.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_oam_port_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_server_oam:
+ type: org.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_oam_port_1:
+ type: org.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_server_oam:
+ type: org.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_oam_port_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_oam_port_1:
+ type: org.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.usage_server_oam:
+ type: org.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_server_oam:
+ type: org.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_oam_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_oam_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_oam:
+ type: org.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_server_oam:
+ type: org.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_oam_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_oam:
+ type: org.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_server_oam:
+ type: org.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_oam_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_oam_port_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_server_oam:
+ type: org.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_oam_port_1:
+ type: org.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_server_oam:
+ type: org.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_oam_port_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
+ scalable_server_oam:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_oam:
+ type: org.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_oam_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_oam_port_1:
+ type: org.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_oam_port_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_server_oam:
+ type: org.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_oam_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_oam_port_1:
+ type: org.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_server_oam:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_oam:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_oam:
+ type: org.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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ requirements:
+ - dependency_compute:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.usage_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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.usage_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_compute:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.network.Bindable
+ 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/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..4653c34dcd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,404 @@
+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:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ shared_security_group_id2:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ oam_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ shared_security_group_id1:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_1:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ p1: jsa_security_group1
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ p2: jsa_security_group2
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_1
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_compute
+ node: abstract_compute
+ relationship: tosca.relationships.DependsOn
+ abstract_oam_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ oam_flavor_name:
+ get_input: oam_flavor_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ oam_server_name:
+ get_input:
+ - oam_server_names
+ - 0
+ service_template_filter:
+ substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ oam_image_name:
+ get_input: oam_image_name
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ abstract_oam_server_1:
+ type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
+ p2:
+ get_input: shared_security_group_id2
+ shared_security_group_id1:
+ get_input: shared_security_group_id1
+ jsa_security_group1:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: jsa_security_group1_name
+ description: ems security group
+ rules:
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pcm_port_0
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pcm_port_1
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_oam_port_1
+ node: abstract_oam_server_1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_oam_port_0
+ node: abstract_oam_server_1
+ relationship: org.openecomp.relationships.AttachesTo
+ jsa_security_group2:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: jsa_security_group2_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ requirements:
+ - port:
+ capability: attachment_pcm_port_0
+ node: abstract_pcm_server_0
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - abstract_pcm_server_1
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_metadata:
+ - get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - packet_mirror_network
+ - compute_port_0
+ - jsa_security_group1
+ - jsa_security_group2
+ - abstract_compute
+ - abstract_pcm_server_0
+ - abstract_oam_server_0
+ - abstract_pcm_server_1
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - abstract_oam_server_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/Nested_computeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/Nested_computeServiceTemplate.yaml
new file mode 100644
index 0000000000..22bdef3d42
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/Nested_computeServiceTemplate.yaml
@@ -0,0 +1,203 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_compute
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_compute_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_compute_config_drive:
+ type: list
+ required: true
+ entry_schema:
+ type: boolean
+ node_templates:
+ compute:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_compute_metadata
+ - index_value
+ config_drive:
+ get_input:
+ - compute_compute_config_drive
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_compute_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_compute_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.compute
+ capabilities:
+ disk.device.usage_compute:
+ - compute
+ - disk.device.usage
+ disk.write.requests_compute:
+ - compute
+ - disk.write.requests
+ instance_compute:
+ - compute
+ - instance
+ disk.ephemeral.size_compute:
+ - compute
+ - disk.ephemeral.size
+ disk.device.read.bytes.rate_compute:
+ - compute
+ - disk.device.read.bytes.rate
+ disk.latency_compute:
+ - compute
+ - disk.latency
+ memory.resident_compute:
+ - compute
+ - memory.resident
+ memory_compute:
+ - compute
+ - memory
+ disk.iops_compute:
+ - compute
+ - disk.iops
+ disk.root.size_compute:
+ - compute
+ - disk.root.size
+ disk.write.requests.rate_compute:
+ - compute
+ - disk.write.requests.rate
+ disk.read.requests_compute:
+ - compute
+ - disk.read.requests
+ disk.device.read.requests.rate_compute:
+ - compute
+ - disk.device.read.requests.rate
+ disk.read.bytes_compute:
+ - compute
+ - disk.read.bytes
+ disk.device.read.bytes_compute:
+ - compute
+ - disk.device.read.bytes
+ disk.write.bytes_compute:
+ - compute
+ - disk.write.bytes
+ disk.usage_compute:
+ - compute
+ - disk.usage
+ os_compute:
+ - compute
+ - os
+ disk.write.bytes.rate_compute:
+ - compute
+ - disk.write.bytes.rate
+ vcpus_compute:
+ - compute
+ - vcpus
+ disk.capacity_compute:
+ - compute
+ - disk.capacity
+ cpu_util_compute:
+ - compute
+ - cpu_util
+ disk.read.bytes.rate_compute:
+ - compute
+ - disk.read.bytes.rate
+ disk.device.latency_compute:
+ - compute
+ - disk.device.latency
+ disk.device.write.requests_compute:
+ - compute
+ - disk.device.write.requests
+ disk.device.iops_compute:
+ - compute
+ - disk.device.iops
+ disk.device.write.requests.rate_compute:
+ - compute
+ - disk.device.write.requests.rate
+ endpoint_compute:
+ - compute
+ - endpoint
+ memory.usage_compute:
+ - compute
+ - memory.usage
+ host_compute:
+ - compute
+ - host
+ feature_compute:
+ - compute
+ - feature
+ disk.device.write.bytes_compute:
+ - compute
+ - disk.device.write.bytes
+ cpu_compute:
+ - compute
+ - cpu
+ disk.device.write.bytes.rate_compute:
+ - compute
+ - disk.device.write.bytes.rate
+ scalable_compute:
+ - compute
+ - scalable
+ disk.device.read.requests_compute:
+ - compute
+ - disk.device.read.requests
+ disk.allocation_compute:
+ - compute
+ - disk.allocation
+ disk.device.capacity_compute:
+ - compute
+ - disk.device.capacity
+ disk.device.allocation_compute:
+ - compute
+ - disk.device.allocation
+ cpu.delta_compute:
+ - compute
+ - cpu.delta
+ binding_compute:
+ - compute
+ - binding
+ requirements:
+ local_storage_compute:
+ - compute
+ - local_storage
+ dependency_compute:
+ - compute
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-oam_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-oam_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..007006b550
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-oam_v0.1ServiceTemplate.yaml
@@ -0,0 +1,390 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-oam_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.oam_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ oam_server_name:
+ label: oam server name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam server name
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam image name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ shared_security_group_id1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ oam_port_0:
+ 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: shared_security_group_id1
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ server_oam:
+ type: org.openecomp.resource.vfc.nodes.heat.oam_server
+ properties:
+ flavor:
+ get_input: oam_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: oam_image_name
+ config_drive: true
+ name:
+ get_input: oam_server_name
+ oam_port_1:
+ 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: shared_security_group_id1
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-oam_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-oam_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - oam_port_0
+ - server_oam
+ - oam_port_1
+ outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: server_oam
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ capabilities:
+ cpu_server_oam:
+ - server_oam
+ - cpu
+ memory_server_oam:
+ - server_oam
+ - memory
+ disk.write.requests_server_oam:
+ - server_oam
+ - disk.write.requests
+ network.incoming.bytes.rate_oam_port_1:
+ - oam_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_oam_port_0:
+ - oam_port_0
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_oam_port_0:
+ - oam_port_0
+ - network.outgoing.bytes
+ memory.resident_server_oam:
+ - server_oam
+ - memory.resident
+ network.outgoing.bytes_oam_port_1:
+ - oam_port_1
+ - network.outgoing.bytes
+ disk.device.iops_server_oam:
+ - server_oam
+ - disk.device.iops
+ network.incoming.bytes_oam_port_0:
+ - oam_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_oam_port_1:
+ - oam_port_1
+ - network.incoming.bytes
+ disk.device.write.requests_server_oam:
+ - server_oam
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_oam_port_0:
+ - oam_port_0
+ - network.outgoing.bytes.rate
+ disk.allocation_server_oam:
+ - server_oam
+ - disk.allocation
+ network.outgoing.bytes.rate_oam_port_1:
+ - oam_port_1
+ - network.outgoing.bytes.rate
+ disk.device.usage_server_oam:
+ - server_oam
+ - disk.device.usage
+ network.outgoing.packets.rate_oam_port_0:
+ - oam_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_oam_port_1:
+ - oam_port_1
+ - network.outgoing.packets.rate
+ disk.usage_server_oam:
+ - server_oam
+ - disk.usage
+ disk.device.write.bytes_server_oam:
+ - server_oam
+ - disk.device.write.bytes
+ attachment_oam_port_1:
+ - oam_port_1
+ - attachment
+ attachment_oam_port_0:
+ - oam_port_0
+ - attachment
+ disk.ephemeral.size_server_oam:
+ - server_oam
+ - disk.ephemeral.size
+ disk.device.latency_server_oam:
+ - server_oam
+ - disk.device.latency
+ disk.root.size_server_oam:
+ - server_oam
+ - disk.root.size
+ memory.usage_server_oam:
+ - server_oam
+ - memory.usage
+ disk.read.bytes_server_oam:
+ - server_oam
+ - disk.read.bytes
+ os_server_oam:
+ - server_oam
+ - os
+ disk.read.requests_server_oam:
+ - server_oam
+ - disk.read.requests
+ disk.capacity_server_oam:
+ - server_oam
+ - disk.capacity
+ feature_oam_port_0:
+ - oam_port_0
+ - feature
+ disk.device.read.bytes_server_oam:
+ - server_oam
+ - disk.device.read.bytes
+ endpoint_server_oam:
+ - server_oam
+ - endpoint
+ disk.device.read.requests.rate_server_oam:
+ - server_oam
+ - disk.device.read.requests.rate
+ vcpus_server_oam:
+ - server_oam
+ - vcpus
+ feature_oam_port_1:
+ - oam_port_1
+ - feature
+ disk.read.bytes.rate_server_oam:
+ - server_oam
+ - disk.read.bytes.rate
+ disk.write.bytes_server_oam:
+ - server_oam
+ - disk.write.bytes
+ disk.iops_server_oam:
+ - server_oam
+ - disk.iops
+ network.incoming.packets.rate_oam_port_0:
+ - oam_port_0
+ - network.incoming.packets.rate
+ disk.device.allocation_server_oam:
+ - server_oam
+ - disk.device.allocation
+ network.incoming.packets.rate_oam_port_1:
+ - oam_port_1
+ - network.incoming.packets.rate
+ disk.write.requests.rate_server_oam:
+ - server_oam
+ - disk.write.requests.rate
+ network.outpoing.packets_oam_port_0:
+ - oam_port_0
+ - network.outpoing.packets
+ scalable_server_oam:
+ - server_oam
+ - scalable
+ disk.device.read.bytes.rate_server_oam:
+ - server_oam
+ - disk.device.read.bytes.rate
+ binding_oam_port_0:
+ - oam_port_0
+ - binding
+ network.incoming.packets_oam_port_1:
+ - oam_port_1
+ - network.incoming.packets
+ network.incoming.packets_oam_port_0:
+ - oam_port_0
+ - network.incoming.packets
+ cpu_util_server_oam:
+ - server_oam
+ - cpu_util
+ binding_oam_port_1:
+ - oam_port_1
+ - binding
+ network.outpoing.packets_oam_port_1:
+ - oam_port_1
+ - network.outpoing.packets
+ cpu.delta_server_oam:
+ - server_oam
+ - cpu.delta
+ host_server_oam:
+ - server_oam
+ - host
+ disk.device.write.bytes.rate_server_oam:
+ - server_oam
+ - disk.device.write.bytes.rate
+ binding_server_oam:
+ - server_oam
+ - binding
+ disk.device.capacity_server_oam:
+ - server_oam
+ - disk.device.capacity
+ disk.latency_server_oam:
+ - server_oam
+ - disk.latency
+ instance_server_oam:
+ - server_oam
+ - instance
+ disk.device.read.requests_server_oam:
+ - server_oam
+ - disk.device.read.requests
+ disk.device.write.requests.rate_server_oam:
+ - server_oam
+ - disk.device.write.requests.rate
+ feature_server_oam:
+ - server_oam
+ - feature
+ disk.write.bytes.rate_server_oam:
+ - server_oam
+ - disk.write.bytes.rate
+ requirements:
+ link_oam_port_0:
+ - oam_port_0
+ - link
+ dependency_oam_port_1:
+ - oam_port_1
+ - dependency
+ dependency_oam_port_0:
+ - oam_port_0
+ - dependency
+ local_storage_server_oam:
+ - server_oam
+ - local_storage
+ link_oam_port_1:
+ - oam_port_1
+ - link
+ dependency_server_oam:
+ - server_oam
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..458a0e54bb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,391 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: p1
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: p1
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/MANIFEST.json
new file mode 100644
index 0000000000..d40e43e94e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/MANIFEST.json
@@ -0,0 +1,25 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-oam_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..41189c6958
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,17 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ oam_server_names: ZRDM1PCRF01PCM001
+ oam_image_name: rhel2
+ oam_flavor_name: cps
+ availabilityzone_name: nova
+ cps_net_name: int_pcrf_net_0
+ cps_net_ips: 172.26.16.113
+ cps_net_mask: 255.255.255.0
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.239.64.121
+ oam_net_gw: 107.239.64.1
+ oam_net_mask: 255.255.255.0
+ pcm_volumes: 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ security_group_name: nimbus_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..df4590810b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,146 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ oam_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ oam_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ips:
+ type: comma_delimited_list
+ label: OAM network ips
+ description: OAM network ips
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_volumes:
+ type: comma_delimited_list
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_compute:
+ type: OS::Nova::Server
+ properties:
+ config_drive: {get_attr: [compute_port_0]}
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+ #get attribute from a nested resource
+ user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
+ #get attribute from a regular consolidation entity resource
+ metadata: { get_attr: [compute_port_0, device_id]}
+
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+ #get attribute from another nested resource of same type
+ user_data_format: { get_attr: [server_pcm_002 , oam_net_gw] }
+ #get attribute from another nested resource of different type
+ key_name: { get_attr: [server_oam_001 , accessIPv4] }
+ #get attribute from a regular consolidation entity resource
+ metadata: { get_attr: [compute_port_0, device_id]}
+
+ server_pcm_002:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+
+ server_oam_001:
+ type: nested-oam_v0.1.yaml
+ properties:
+ oam_server_name: { get_param: [oam_server_names, 0] }
+ oam_image_name: { get_param: oam_image_name }
+ oam_flavor_name: { get_param: oam_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name }
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ properties:
+ #get attribute from a nested resource
+ name: { get_attr: [server_pcm_001 , instance_name] }
+ #get attribute from a regular consolidation entity resource
+ tenant_id: { get_attr: [server_compute, instance_name]} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-oam_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-oam_v0.1.yaml
new file mode 100644
index 0000000000..77d7e26b21
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-oam_v0.1.yaml
@@ -0,0 +1,90 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ oam_server_name:
+ type: string
+ label: oam server name
+ description: oam server name
+ oam_image_name:
+ type: string
+ label: image name
+ description: oam image name
+ oam_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_oam:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: oam_server_name }
+ image: { get_param: oam_image_name }
+ flavor: { get_param: oam_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: { get_resource: server_oam } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..431cbbce33
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,113 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ user_data_format:
+ type: string
+ label: user_data_format
+ description: user_data_format
+ metadata:
+ type: string
+ label: metadata
+ description: metadata
+ key_name:
+ type: string
+ label: key_name
+ description: key_name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ #pcm_vol_attachment:
+ # type: OS::Cinder::VolumeAttachment
+ # properties:
+ # volume_id: { get_param: pcm_vol }
+ # mountpoint: /dev/vdb
+ # instance_uuid: { get_resource: server_pcm }
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..0e171ac23c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1303 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ metadata:
+ type: string
+ description: metadata
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ key_name:
+ type: string
+ description: key_name
+ required: true
+ status: SUPPORTED
+ user_data_format:
+ type: string
+ description: user_data_format
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.oam_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ oam_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ oam_server_name:
+ type: string
+ description: oam server name
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ oam_image_name:
+ type: string
+ description: oam image name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_oam_id:
+ type: string
+ description: the oam nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_server_oam:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_oam:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu_server_oam:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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.usage_server_oam:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_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.ephemeral.size_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.read.bytes_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_oam:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_oam:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_oam:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ attributes:
+ compute_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_compute:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.usage_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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.usage_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_compute:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.network.Bindable
+ 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/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c588790442
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,338 @@
+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:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ oam_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_1:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ metadata:
+ get_attribute:
+ - compute_port_0
+ - device_id
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ key_name:
+ get_attribute:
+ - abstract_oam_server_0
+ - accessIPv4
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ user_data_format:
+ get_attribute:
+ - abstract_pcm_server_0
+ - oam_net_gw
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ tenant_id:
+ get_attribute:
+ - abstract_compute
+ - compute_instance_name
+ network_name:
+ get_attribute:
+ - abstract_pcm_server_1
+ - instance_name
+ abstract_oam_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ oam_flavor_name:
+ get_input: oam_flavor_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ oam_server_name:
+ get_input:
+ - oam_server_names
+ - 0
+ service_template_filter:
+ substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ oam_image_name:
+ get_input: oam_image_name
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - abstract_pcm_server_1
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_metadata:
+ - get_attribute:
+ - compute_port_0
+ - device_id
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - packet_mirror_network
+ - compute_port_0
+ - abstract_compute
+ - abstract_pcm_server_0
+ - abstract_oam_server_0
+ - abstract_pcm_server_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/Nested_computeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/Nested_computeServiceTemplate.yaml
new file mode 100644
index 0000000000..7455533f3b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/Nested_computeServiceTemplate.yaml
@@ -0,0 +1,212 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_compute
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_compute_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_compute_config_drive:
+ type: list
+ required: true
+ entry_schema:
+ type: boolean
+ node_templates:
+ compute:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_compute_metadata
+ - index_value
+ config_drive:
+ get_input:
+ - compute_compute_config_drive
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_compute_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_compute_user_data_format
+ - index_value
+ outputs:
+ compute_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - compute
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.compute
+ capabilities:
+ disk.device.usage_compute:
+ - compute
+ - disk.device.usage
+ disk.write.requests_compute:
+ - compute
+ - disk.write.requests
+ instance_compute:
+ - compute
+ - instance
+ disk.ephemeral.size_compute:
+ - compute
+ - disk.ephemeral.size
+ disk.device.read.bytes.rate_compute:
+ - compute
+ - disk.device.read.bytes.rate
+ disk.latency_compute:
+ - compute
+ - disk.latency
+ memory.resident_compute:
+ - compute
+ - memory.resident
+ memory_compute:
+ - compute
+ - memory
+ disk.iops_compute:
+ - compute
+ - disk.iops
+ disk.root.size_compute:
+ - compute
+ - disk.root.size
+ disk.write.requests.rate_compute:
+ - compute
+ - disk.write.requests.rate
+ disk.read.requests_compute:
+ - compute
+ - disk.read.requests
+ disk.device.read.requests.rate_compute:
+ - compute
+ - disk.device.read.requests.rate
+ disk.read.bytes_compute:
+ - compute
+ - disk.read.bytes
+ disk.device.read.bytes_compute:
+ - compute
+ - disk.device.read.bytes
+ disk.write.bytes_compute:
+ - compute
+ - disk.write.bytes
+ disk.usage_compute:
+ - compute
+ - disk.usage
+ os_compute:
+ - compute
+ - os
+ disk.write.bytes.rate_compute:
+ - compute
+ - disk.write.bytes.rate
+ vcpus_compute:
+ - compute
+ - vcpus
+ disk.capacity_compute:
+ - compute
+ - disk.capacity
+ cpu_util_compute:
+ - compute
+ - cpu_util
+ disk.read.bytes.rate_compute:
+ - compute
+ - disk.read.bytes.rate
+ disk.device.latency_compute:
+ - compute
+ - disk.device.latency
+ disk.device.write.requests_compute:
+ - compute
+ - disk.device.write.requests
+ disk.device.iops_compute:
+ - compute
+ - disk.device.iops
+ disk.device.write.requests.rate_compute:
+ - compute
+ - disk.device.write.requests.rate
+ endpoint_compute:
+ - compute
+ - endpoint
+ memory.usage_compute:
+ - compute
+ - memory.usage
+ host_compute:
+ - compute
+ - host
+ feature_compute:
+ - compute
+ - feature
+ disk.device.write.bytes_compute:
+ - compute
+ - disk.device.write.bytes
+ cpu_compute:
+ - compute
+ - cpu
+ disk.device.write.bytes.rate_compute:
+ - compute
+ - disk.device.write.bytes.rate
+ scalable_compute:
+ - compute
+ - scalable
+ disk.device.read.requests_compute:
+ - compute
+ - disk.device.read.requests
+ disk.allocation_compute:
+ - compute
+ - disk.allocation
+ disk.device.capacity_compute:
+ - compute
+ - disk.device.capacity
+ disk.device.allocation_compute:
+ - compute
+ - disk.device.allocation
+ cpu.delta_compute:
+ - compute
+ - cpu.delta
+ binding_compute:
+ - compute
+ - binding
+ requirements:
+ local_storage_compute:
+ - compute
+ - local_storage
+ dependency_compute:
+ - compute
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0a5403054a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml
@@ -0,0 +1,379 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-oam_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.oam_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ oam_server_name:
+ label: oam server name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam server name
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam image name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ server_oam:
+ type: org.openecomp.resource.vfc.nodes.heat.oam_server
+ properties:
+ flavor:
+ get_input: oam_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: oam_image_name
+ config_drive: true
+ name:
+ get_input: oam_server_name
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-oam_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-oam_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_oam
+ - pcm_port_1
+ - pcm_port_0
+ outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: server_oam
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ capabilities:
+ cpu_server_oam:
+ - server_oam
+ - cpu
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_oam:
+ - server_oam
+ - memory
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.write.requests_server_oam:
+ - server_oam
+ - disk.write.requests
+ memory.resident_server_oam:
+ - server_oam
+ - memory.resident
+ disk.device.iops_server_oam:
+ - server_oam
+ - disk.device.iops
+ disk.device.write.requests_server_oam:
+ - server_oam
+ - disk.device.write.requests
+ disk.allocation_server_oam:
+ - server_oam
+ - disk.allocation
+ disk.device.usage_server_oam:
+ - server_oam
+ - disk.device.usage
+ disk.usage_server_oam:
+ - server_oam
+ - disk.usage
+ disk.device.write.bytes_server_oam:
+ - server_oam
+ - disk.device.write.bytes
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.ephemeral.size_server_oam:
+ - server_oam
+ - disk.ephemeral.size
+ disk.device.latency_server_oam:
+ - server_oam
+ - disk.device.latency
+ disk.root.size_server_oam:
+ - server_oam
+ - disk.root.size
+ memory.usage_server_oam:
+ - server_oam
+ - memory.usage
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ disk.read.bytes_server_oam:
+ - server_oam
+ - disk.read.bytes
+ os_server_oam:
+ - server_oam
+ - os
+ disk.read.requests_server_oam:
+ - server_oam
+ - disk.read.requests
+ disk.capacity_server_oam:
+ - server_oam
+ - disk.capacity
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ disk.device.read.bytes_server_oam:
+ - server_oam
+ - disk.device.read.bytes
+ endpoint_server_oam:
+ - server_oam
+ - endpoint
+ disk.device.read.requests.rate_server_oam:
+ - server_oam
+ - disk.device.read.requests.rate
+ vcpus_server_oam:
+ - server_oam
+ - vcpus
+ disk.read.bytes.rate_server_oam:
+ - server_oam
+ - disk.read.bytes.rate
+ disk.write.bytes_server_oam:
+ - server_oam
+ - disk.write.bytes
+ disk.iops_server_oam:
+ - server_oam
+ - disk.iops
+ disk.device.allocation_server_oam:
+ - server_oam
+ - disk.device.allocation
+ disk.write.requests.rate_server_oam:
+ - server_oam
+ - disk.write.requests.rate
+ scalable_server_oam:
+ - server_oam
+ - scalable
+ disk.device.read.bytes.rate_server_oam:
+ - server_oam
+ - disk.device.read.bytes.rate
+ cpu_util_server_oam:
+ - server_oam
+ - cpu_util
+ cpu.delta_server_oam:
+ - server_oam
+ - cpu.delta
+ host_server_oam:
+ - server_oam
+ - host
+ disk.device.write.bytes.rate_server_oam:
+ - server_oam
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_oam:
+ - server_oam
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_oam:
+ - server_oam
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ disk.latency_server_oam:
+ - server_oam
+ - disk.latency
+ instance_server_oam:
+ - server_oam
+ - instance
+ disk.device.read.requests_server_oam:
+ - server_oam
+ - disk.device.read.requests
+ disk.device.write.requests.rate_server_oam:
+ - server_oam
+ - disk.device.write.requests.rate
+ feature_server_oam:
+ - server_oam
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_oam:
+ - server_oam
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_oam:
+ - server_oam
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_oam:
+ - server_oam
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..a9df9055cd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,398 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ metadata:
+ label: metadata
+ hidden: false
+ immutable: false
+ type: string
+ description: metadata
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ key_name:
+ label: key_name
+ hidden: false
+ immutable: false
+ type: string
+ description: key_name
+ user_data_format:
+ label: user_data_format
+ hidden: false
+ immutable: false
+ type: string
+ description: user_data_format
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/MANIFEST.json
new file mode 100644
index 0000000000..d40e43e94e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/MANIFEST.json
@@ -0,0 +1,25 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-oam_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..41189c6958
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,17 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ oam_server_names: ZRDM1PCRF01PCM001
+ oam_image_name: rhel2
+ oam_flavor_name: cps
+ availabilityzone_name: nova
+ cps_net_name: int_pcrf_net_0
+ cps_net_ips: 172.26.16.113
+ cps_net_mask: 255.255.255.0
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.239.64.121
+ oam_net_gw: 107.239.64.1
+ oam_net_mask: 255.255.255.0
+ pcm_volumes: 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ security_group_name: nimbus_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..63b4f81bda
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,152 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ oam_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ oam_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ips:
+ type: comma_delimited_list
+ label: OAM network ips
+ description: OAM network ips
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_volumes:
+ type: comma_delimited_list
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_compute:
+ type: OS::Nova::Server
+ properties:
+ config_drive: {get_attr: [compute_port_0]}
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ server_pcm_002:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+
+ server_oam_001:
+ type: nested-oam_v0.1.yaml
+ properties:
+ oam_server_name: { get_param: [oam_server_names, 0] }
+ oam_image_name: { get_param: oam_image_name }
+ oam_flavor_name: { get_param: oam_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name }
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ properties:
+ #get attribute from a nested resource
+ name: { get_attr: [server_pcm_001 , instance_name] }
+ #get attribute from a regular consolidation entity resource
+ tenant_id: { get_attr: [server_compute, instance_name]}
+
+outputs:
+ output_attr_nested_resource1:
+ value: {get_attr: [server_pcm_001 , server_pcm_id] }
+ output_attr_nested_resource2:
+ value: {get_attr: [server_pcm_002 , server_pcm_id] }
+ output_attr_nested_resource_same_type:
+ value: {get_attr: [server_pcm_001 , server_pcm_id] }
+ output_attr_nested_resource_different_type:
+ value: {get_attr: [server_oam_001 , server_oam_id] }
+ output_attr_non_nested_compute:
+ value: {get_attr: [server_compute , instance_name] }
+ output_attr_non_consolidation_entity:
+ value: {get_attr: [packet_mirror_network , status] } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-oam_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-oam_v0.1.yaml
new file mode 100644
index 0000000000..77d7e26b21
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-oam_v0.1.yaml
@@ -0,0 +1,90 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ oam_server_name:
+ type: string
+ label: oam server name
+ description: oam server name
+ oam_image_name:
+ type: string
+ label: image name
+ description: oam image name
+ oam_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_oam:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: oam_server_name }
+ image: { get_param: oam_image_name }
+ flavor: { get_param: oam_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: { get_resource: server_oam } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..c085af8c02
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,109 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ user_data_format:
+ type: string
+ label: user_data_format
+ description: user_data_format
+ metadata:
+ type: string
+ label: metadata
+ description: metadata
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ #pcm_vol_attachment:
+ # type: OS::Cinder::VolumeAttachment
+ # properties:
+ # volume_id: { get_param: pcm_vol }
+ # mountpoint: /dev/vdb
+ # instance_uuid: { get_resource: server_pcm }
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..98d483a970
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1286 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ metadata:
+ type: string
+ description: metadata
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ user_data_format:
+ type: string
+ description: user_data_format
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.oam_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ oam_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ oam_server_name:
+ type: string
+ description: oam server name
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ oam_image_name:
+ type: string
+ description: oam image name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_oam_id:
+ type: string
+ description: the oam nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_server_oam:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_oam:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu_server_oam:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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.usage_server_oam:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_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.ephemeral.size_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.read.bytes_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_oam:
+ type: org.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_server_oam:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_oam:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_oam:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: org.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_server_oam:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_oam:
+ type: org.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_pcm_port_1:
+ type: org.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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ attributes:
+ compute_instance_name:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_compute:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.usage_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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.usage_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_compute:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.network.Bindable
+ 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/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..f1c5ca1158
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,351 @@
+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:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ oam_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_1:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ tenant_id:
+ get_attribute:
+ - abstract_compute
+ - compute_instance_name
+ network_name:
+ get_attribute:
+ - abstract_pcm_server_1
+ - instance_name
+ abstract_oam_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ oam_flavor_name:
+ get_input: oam_flavor_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ oam_server_name:
+ get_input:
+ - oam_server_names
+ - 0
+ service_template_filter:
+ substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ oam_image_name:
+ get_input: oam_image_name
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - packet_mirror_network
+ - compute_port_0
+ - abstract_compute
+ - abstract_pcm_server_0
+ - abstract_oam_server_0
+ - abstract_pcm_server_1
+ outputs:
+ output_attr_nested_resource_same_type:
+ value:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ output_attr_non_nested_compute:
+ value:
+ get_attribute:
+ - abstract_compute
+ - compute_instance_name
+ output_attr_nested_resource_different_type:
+ value:
+ get_attribute:
+ - abstract_oam_server_0
+ - server_oam_id
+ output_attr_nested_resource1:
+ value:
+ get_attribute:
+ - abstract_pcm_server_1
+ - server_pcm_id
+ output_attr_non_consolidation_entity:
+ value:
+ get_attribute:
+ - packet_mirror_network
+ - status
+ output_attr_nested_resource2:
+ value:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/Nested_computeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/Nested_computeServiceTemplate.yaml
new file mode 100644
index 0000000000..ddac2173cc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/Nested_computeServiceTemplate.yaml
@@ -0,0 +1,194 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_compute
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_compute_config_drive:
+ type: list
+ required: true
+ entry_schema:
+ type: boolean
+ node_templates:
+ compute:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ get_input: vm_flavor_name
+ config_drive:
+ get_input:
+ - compute_compute_config_drive
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_compute_name
+ - index_value
+ outputs:
+ compute_instance_name:
+ type: list
+ value:
+ get_attribute:
+ - compute
+ - instance_name
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.compute
+ capabilities:
+ disk.device.usage_compute:
+ - compute
+ - disk.device.usage
+ disk.write.requests_compute:
+ - compute
+ - disk.write.requests
+ instance_compute:
+ - compute
+ - instance
+ disk.ephemeral.size_compute:
+ - compute
+ - disk.ephemeral.size
+ disk.device.read.bytes.rate_compute:
+ - compute
+ - disk.device.read.bytes.rate
+ disk.latency_compute:
+ - compute
+ - disk.latency
+ memory.resident_compute:
+ - compute
+ - memory.resident
+ memory_compute:
+ - compute
+ - memory
+ disk.iops_compute:
+ - compute
+ - disk.iops
+ disk.root.size_compute:
+ - compute
+ - disk.root.size
+ disk.write.requests.rate_compute:
+ - compute
+ - disk.write.requests.rate
+ disk.read.requests_compute:
+ - compute
+ - disk.read.requests
+ disk.device.read.requests.rate_compute:
+ - compute
+ - disk.device.read.requests.rate
+ disk.read.bytes_compute:
+ - compute
+ - disk.read.bytes
+ disk.device.read.bytes_compute:
+ - compute
+ - disk.device.read.bytes
+ disk.write.bytes_compute:
+ - compute
+ - disk.write.bytes
+ disk.usage_compute:
+ - compute
+ - disk.usage
+ os_compute:
+ - compute
+ - os
+ disk.write.bytes.rate_compute:
+ - compute
+ - disk.write.bytes.rate
+ vcpus_compute:
+ - compute
+ - vcpus
+ disk.capacity_compute:
+ - compute
+ - disk.capacity
+ cpu_util_compute:
+ - compute
+ - cpu_util
+ disk.read.bytes.rate_compute:
+ - compute
+ - disk.read.bytes.rate
+ disk.device.latency_compute:
+ - compute
+ - disk.device.latency
+ disk.device.write.requests_compute:
+ - compute
+ - disk.device.write.requests
+ disk.device.iops_compute:
+ - compute
+ - disk.device.iops
+ disk.device.write.requests.rate_compute:
+ - compute
+ - disk.device.write.requests.rate
+ endpoint_compute:
+ - compute
+ - endpoint
+ memory.usage_compute:
+ - compute
+ - memory.usage
+ host_compute:
+ - compute
+ - host
+ feature_compute:
+ - compute
+ - feature
+ disk.device.write.bytes_compute:
+ - compute
+ - disk.device.write.bytes
+ cpu_compute:
+ - compute
+ - cpu
+ disk.device.write.bytes.rate_compute:
+ - compute
+ - disk.device.write.bytes.rate
+ scalable_compute:
+ - compute
+ - scalable
+ disk.device.read.requests_compute:
+ - compute
+ - disk.device.read.requests
+ disk.allocation_compute:
+ - compute
+ - disk.allocation
+ disk.device.capacity_compute:
+ - compute
+ - disk.device.capacity
+ disk.device.allocation_compute:
+ - compute
+ - disk.device.allocation
+ cpu.delta_compute:
+ - compute
+ - cpu.delta
+ binding_compute:
+ - compute
+ - binding
+ requirements:
+ local_storage_compute:
+ - compute
+ - local_storage
+ dependency_compute:
+ - compute
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0a5403054a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-oam_v0.1ServiceTemplate.yaml
@@ -0,0 +1,379 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-oam_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.oam_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ oam_server_name:
+ label: oam server name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam server name
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam image name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ server_oam:
+ type: org.openecomp.resource.vfc.nodes.heat.oam_server
+ properties:
+ flavor:
+ get_input: oam_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: oam_image_name
+ config_drive: true
+ name:
+ get_input: oam_server_name
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-oam_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-oam_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_oam
+ - pcm_port_1
+ - pcm_port_0
+ outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: server_oam
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ capabilities:
+ cpu_server_oam:
+ - server_oam
+ - cpu
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_oam:
+ - server_oam
+ - memory
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.write.requests_server_oam:
+ - server_oam
+ - disk.write.requests
+ memory.resident_server_oam:
+ - server_oam
+ - memory.resident
+ disk.device.iops_server_oam:
+ - server_oam
+ - disk.device.iops
+ disk.device.write.requests_server_oam:
+ - server_oam
+ - disk.device.write.requests
+ disk.allocation_server_oam:
+ - server_oam
+ - disk.allocation
+ disk.device.usage_server_oam:
+ - server_oam
+ - disk.device.usage
+ disk.usage_server_oam:
+ - server_oam
+ - disk.usage
+ disk.device.write.bytes_server_oam:
+ - server_oam
+ - disk.device.write.bytes
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.ephemeral.size_server_oam:
+ - server_oam
+ - disk.ephemeral.size
+ disk.device.latency_server_oam:
+ - server_oam
+ - disk.device.latency
+ disk.root.size_server_oam:
+ - server_oam
+ - disk.root.size
+ memory.usage_server_oam:
+ - server_oam
+ - memory.usage
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ disk.read.bytes_server_oam:
+ - server_oam
+ - disk.read.bytes
+ os_server_oam:
+ - server_oam
+ - os
+ disk.read.requests_server_oam:
+ - server_oam
+ - disk.read.requests
+ disk.capacity_server_oam:
+ - server_oam
+ - disk.capacity
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ disk.device.read.bytes_server_oam:
+ - server_oam
+ - disk.device.read.bytes
+ endpoint_server_oam:
+ - server_oam
+ - endpoint
+ disk.device.read.requests.rate_server_oam:
+ - server_oam
+ - disk.device.read.requests.rate
+ vcpus_server_oam:
+ - server_oam
+ - vcpus
+ disk.read.bytes.rate_server_oam:
+ - server_oam
+ - disk.read.bytes.rate
+ disk.write.bytes_server_oam:
+ - server_oam
+ - disk.write.bytes
+ disk.iops_server_oam:
+ - server_oam
+ - disk.iops
+ disk.device.allocation_server_oam:
+ - server_oam
+ - disk.device.allocation
+ disk.write.requests.rate_server_oam:
+ - server_oam
+ - disk.write.requests.rate
+ scalable_server_oam:
+ - server_oam
+ - scalable
+ disk.device.read.bytes.rate_server_oam:
+ - server_oam
+ - disk.device.read.bytes.rate
+ cpu_util_server_oam:
+ - server_oam
+ - cpu_util
+ cpu.delta_server_oam:
+ - server_oam
+ - cpu.delta
+ host_server_oam:
+ - server_oam
+ - host
+ disk.device.write.bytes.rate_server_oam:
+ - server_oam
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_oam:
+ - server_oam
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_oam:
+ - server_oam
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ disk.latency_server_oam:
+ - server_oam
+ - disk.latency
+ instance_server_oam:
+ - server_oam
+ - instance
+ disk.device.read.requests_server_oam:
+ - server_oam
+ - disk.device.read.requests
+ disk.device.write.requests.rate_server_oam:
+ - server_oam
+ - disk.device.write.requests.rate
+ feature_server_oam:
+ - server_oam
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_oam:
+ - server_oam
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_oam:
+ - server_oam
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_oam:
+ - server_oam
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..102cd3617d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,392 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ metadata:
+ label: metadata
+ hidden: false
+ immutable: false
+ type: string
+ description: metadata
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ user_data_format:
+ label: user_data_format
+ hidden: false
+ immutable: false
+ type: string
+ description: user_data_format
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/MANIFEST.json
new file mode 100644
index 0000000000..609c38b28e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/MANIFEST.json
@@ -0,0 +1,21 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..78cc03e2ea
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,14 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ availabilityzone_name: nova
+ cps_net_name: int_pcrf_net_0
+ cps_net_ips: 172.26.16.113
+ cps_net_mask: 255.255.255.0
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.239.64.121
+ oam_net_gw: 107.239.64.1
+ oam_net_mask: 255.255.255.0
+ pcm_volumes: 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ security_group_name: nimbus_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..dea5d4296c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,103 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ips:
+ type: comma_delimited_list
+ label: OAM network ips
+ description: OAM network ips
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_volumes:
+ type: comma_delimited_list
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ server_compute:
+ type: OS::Nova::Server
+ properties:
+ config_drive: {get_attr: [compute_port_0]}
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+ user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
+ metadata: { get_attr: [server_pcm_001]}
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name }
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pcm_001
+ properties:
+ name:
+ get_param: net_name
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..c6bfbb5ad9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,101 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ #pcm_vol_attachment:
+ # type: OS::Cinder::VolumeAttachment
+ # properties:
+ # volume_id: { get_param: pcm_vol }
+ # mountpoint: /dev/vdb
+ # instance_uuid: { get_resource: server_pcm }
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..0f6c0e9f7a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,795 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ requirements:
+ - dependency_compute:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.usage_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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.usage_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_compute:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.network.Bindable
+ 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/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..03d069f43d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/MainServiceTemplate.yaml
@@ -0,0 +1,243 @@
+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:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_0
+ relationship: tosca.relationships.DependsOn
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - abstract_pcm_server_0
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_metadata:
+ - get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - packet_mirror_network
+ - compute_port_0
+ - abstract_compute
+ - abstract_pcm_server_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/Nested_computeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/Nested_computeServiceTemplate.yaml
new file mode 100644
index 0000000000..22bdef3d42
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/Nested_computeServiceTemplate.yaml
@@ -0,0 +1,203 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_compute
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_compute_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_compute_config_drive:
+ type: list
+ required: true
+ entry_schema:
+ type: boolean
+ node_templates:
+ compute:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_compute_metadata
+ - index_value
+ config_drive:
+ get_input:
+ - compute_compute_config_drive
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_compute_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_compute_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.compute
+ capabilities:
+ disk.device.usage_compute:
+ - compute
+ - disk.device.usage
+ disk.write.requests_compute:
+ - compute
+ - disk.write.requests
+ instance_compute:
+ - compute
+ - instance
+ disk.ephemeral.size_compute:
+ - compute
+ - disk.ephemeral.size
+ disk.device.read.bytes.rate_compute:
+ - compute
+ - disk.device.read.bytes.rate
+ disk.latency_compute:
+ - compute
+ - disk.latency
+ memory.resident_compute:
+ - compute
+ - memory.resident
+ memory_compute:
+ - compute
+ - memory
+ disk.iops_compute:
+ - compute
+ - disk.iops
+ disk.root.size_compute:
+ - compute
+ - disk.root.size
+ disk.write.requests.rate_compute:
+ - compute
+ - disk.write.requests.rate
+ disk.read.requests_compute:
+ - compute
+ - disk.read.requests
+ disk.device.read.requests.rate_compute:
+ - compute
+ - disk.device.read.requests.rate
+ disk.read.bytes_compute:
+ - compute
+ - disk.read.bytes
+ disk.device.read.bytes_compute:
+ - compute
+ - disk.device.read.bytes
+ disk.write.bytes_compute:
+ - compute
+ - disk.write.bytes
+ disk.usage_compute:
+ - compute
+ - disk.usage
+ os_compute:
+ - compute
+ - os
+ disk.write.bytes.rate_compute:
+ - compute
+ - disk.write.bytes.rate
+ vcpus_compute:
+ - compute
+ - vcpus
+ disk.capacity_compute:
+ - compute
+ - disk.capacity
+ cpu_util_compute:
+ - compute
+ - cpu_util
+ disk.read.bytes.rate_compute:
+ - compute
+ - disk.read.bytes.rate
+ disk.device.latency_compute:
+ - compute
+ - disk.device.latency
+ disk.device.write.requests_compute:
+ - compute
+ - disk.device.write.requests
+ disk.device.iops_compute:
+ - compute
+ - disk.device.iops
+ disk.device.write.requests.rate_compute:
+ - compute
+ - disk.device.write.requests.rate
+ endpoint_compute:
+ - compute
+ - endpoint
+ memory.usage_compute:
+ - compute
+ - memory.usage
+ host_compute:
+ - compute
+ - host
+ feature_compute:
+ - compute
+ - feature
+ disk.device.write.bytes_compute:
+ - compute
+ - disk.device.write.bytes
+ cpu_compute:
+ - compute
+ - cpu
+ disk.device.write.bytes.rate_compute:
+ - compute
+ - disk.device.write.bytes.rate
+ scalable_compute:
+ - compute
+ - scalable
+ disk.device.read.requests_compute:
+ - compute
+ - disk.device.read.requests
+ disk.allocation_compute:
+ - compute
+ - disk.allocation
+ disk.device.capacity_compute:
+ - compute
+ - disk.device.capacity
+ disk.device.allocation_compute:
+ - compute
+ - disk.device.allocation
+ cpu.delta_compute:
+ - compute
+ - cpu.delta
+ binding_compute:
+ - compute
+ - binding
+ requirements:
+ local_storage_compute:
+ - compute
+ - local_storage
+ dependency_compute:
+ - compute
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..05a21ce6d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/MANIFEST.json
new file mode 100644
index 0000000000..609c38b28e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/MANIFEST.json
@@ -0,0 +1,21 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..78cc03e2ea
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,14 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ availabilityzone_name: nova
+ cps_net_name: int_pcrf_net_0
+ cps_net_ips: 172.26.16.113
+ cps_net_mask: 255.255.255.0
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.239.64.121
+ oam_net_gw: 107.239.64.1
+ oam_net_mask: 255.255.255.0
+ pcm_volumes: 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ security_group_name: nimbus_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..56ce196ef1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,115 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ips:
+ type: comma_delimited_list
+ label: OAM network ips
+ description: OAM network ips
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_volumes:
+ type: comma_delimited_list
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ server_pcm_002:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 1
+ resource_def:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 1] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ server_compute:
+ type: OS::Nova::Server
+ properties:
+ config_drive: {get_attr: [compute_port_0]}
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+ user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
+ user_data: { get_attr: [server_pcm_001]}
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..0c3eda5acc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,112 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm_1:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ server_pcm_2:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id_1:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm_1 }
+
+ server_pcm_id_2:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm_2 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..e04e1d754b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1049 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id_2:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ server_pcm_id_1:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm_2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_pcm_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm_1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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.usage_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_pcm_port_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.usage_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pcm_port_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_pcm_port_1:
+ type: org.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_server_pcm_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_pcm_2:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_pcm_1:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm_2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm_2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm_1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_pcm_2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm_1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcm_2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcm_1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm_2:
+ type: org.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_pcm_port_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_server_pcm_1:
+ type: org.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_pcm_port_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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm_2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_pcm_1:
+ type: org.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_server_pcm_2:
+ type: org.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_server_pcm_1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_pcm_port_1:
+ type: org.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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ requirements:
+ - dependency_compute:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.usage_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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.usage_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_compute:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.network.Bindable
+ 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/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..280d7da19f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/MainServiceTemplate.yaml
@@ -0,0 +1,272 @@
+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:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ server_pcm_002:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ count: 1
+ mandatory: true
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 1
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ server_pcm_001:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - server_pcm_001
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_002
+ - server_pcm_001
+ - compute_port_0
+ - abstract_compute \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/Nested_computeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/Nested_computeServiceTemplate.yaml
new file mode 100644
index 0000000000..ba0e3fc87b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/Nested_computeServiceTemplate.yaml
@@ -0,0 +1,194 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_compute
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_compute_config_drive:
+ type: list
+ required: true
+ entry_schema:
+ type: boolean
+ node_templates:
+ compute:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ get_input: vm_flavor_name
+ config_drive:
+ get_input:
+ - compute_compute_config_drive
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_compute_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_compute_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.compute
+ capabilities:
+ disk.device.usage_compute:
+ - compute
+ - disk.device.usage
+ disk.write.requests_compute:
+ - compute
+ - disk.write.requests
+ instance_compute:
+ - compute
+ - instance
+ disk.ephemeral.size_compute:
+ - compute
+ - disk.ephemeral.size
+ disk.device.read.bytes.rate_compute:
+ - compute
+ - disk.device.read.bytes.rate
+ disk.latency_compute:
+ - compute
+ - disk.latency
+ memory.resident_compute:
+ - compute
+ - memory.resident
+ memory_compute:
+ - compute
+ - memory
+ disk.iops_compute:
+ - compute
+ - disk.iops
+ disk.root.size_compute:
+ - compute
+ - disk.root.size
+ disk.write.requests.rate_compute:
+ - compute
+ - disk.write.requests.rate
+ disk.read.requests_compute:
+ - compute
+ - disk.read.requests
+ disk.device.read.requests.rate_compute:
+ - compute
+ - disk.device.read.requests.rate
+ disk.read.bytes_compute:
+ - compute
+ - disk.read.bytes
+ disk.device.read.bytes_compute:
+ - compute
+ - disk.device.read.bytes
+ disk.write.bytes_compute:
+ - compute
+ - disk.write.bytes
+ disk.usage_compute:
+ - compute
+ - disk.usage
+ os_compute:
+ - compute
+ - os
+ disk.write.bytes.rate_compute:
+ - compute
+ - disk.write.bytes.rate
+ vcpus_compute:
+ - compute
+ - vcpus
+ disk.capacity_compute:
+ - compute
+ - disk.capacity
+ cpu_util_compute:
+ - compute
+ - cpu_util
+ disk.read.bytes.rate_compute:
+ - compute
+ - disk.read.bytes.rate
+ disk.device.latency_compute:
+ - compute
+ - disk.device.latency
+ disk.device.write.requests_compute:
+ - compute
+ - disk.device.write.requests
+ disk.device.iops_compute:
+ - compute
+ - disk.device.iops
+ disk.device.write.requests.rate_compute:
+ - compute
+ - disk.device.write.requests.rate
+ endpoint_compute:
+ - compute
+ - endpoint
+ memory.usage_compute:
+ - compute
+ - memory.usage
+ host_compute:
+ - compute
+ - host
+ feature_compute:
+ - compute
+ - feature
+ disk.device.write.bytes_compute:
+ - compute
+ - disk.device.write.bytes
+ cpu_compute:
+ - compute
+ - cpu
+ disk.device.write.bytes.rate_compute:
+ - compute
+ - disk.device.write.bytes.rate
+ scalable_compute:
+ - compute
+ - scalable
+ disk.device.read.requests_compute:
+ - compute
+ - disk.device.read.requests
+ disk.allocation_compute:
+ - compute
+ - disk.allocation
+ disk.device.capacity_compute:
+ - compute
+ - disk.device.capacity
+ disk.device.allocation_compute:
+ - compute
+ - disk.device.allocation
+ cpu.delta_compute:
+ - compute
+ - cpu.delta
+ binding_compute:
+ - compute
+ - binding
+ requirements:
+ local_storage_compute:
+ - compute
+ - local_storage
+ dependency_compute:
+ - compute
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..802d2c2310
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoComputesOfSameType/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,526 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm_2
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm_2:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ server_pcm_1:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm_1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm_2
+ - server_pcm_1
+ - pcm_port_0
+ outputs:
+ server_pcm_id_2:
+ description: the pcm nova service id
+ value: server_pcm_2
+ server_pcm_id_1:
+ description: the pcm nova service id
+ value: server_pcm_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.usage_server_pcm_2:
+ - server_pcm_2
+ - disk.usage
+ disk.capacity_server_pcm_1:
+ - server_pcm_1
+ - disk.capacity
+ disk.capacity_server_pcm_2:
+ - server_pcm_2
+ - disk.capacity
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.usage_server_pcm_1:
+ - server_pcm_1
+ - disk.usage
+ vcpus_server_pcm_1:
+ - server_pcm_1
+ - vcpus
+ memory.resident_server_pcm_1:
+ - server_pcm_1
+ - memory.resident
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ vcpus_server_pcm_2:
+ - server_pcm_2
+ - vcpus
+ memory.resident_server_pcm_2:
+ - server_pcm_2
+ - memory.resident
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ cpu_server_pcm_2:
+ - server_pcm_2
+ - cpu
+ feature_server_pcm_1:
+ - server_pcm_1
+ - feature
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_server_pcm_2:
+ - server_pcm_2
+ - feature
+ disk.device.iops_server_pcm_2:
+ - server_pcm_2
+ - disk.device.iops
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ cpu_server_pcm_1:
+ - server_pcm_1
+ - cpu
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ host_server_pcm_2:
+ - server_pcm_2
+ - host
+ endpoint_server_pcm_2:
+ - server_pcm_2
+ - endpoint
+ endpoint_server_pcm_1:
+ - server_pcm_1
+ - endpoint
+ disk.device.capacity_server_pcm_2:
+ - server_pcm_2
+ - disk.device.capacity
+ host_server_pcm_1:
+ - server_pcm_1
+ - host
+ disk.device.capacity_server_pcm_1:
+ - server_pcm_1
+ - disk.device.capacity
+ disk.latency_server_pcm_1:
+ - server_pcm_1
+ - disk.latency
+ disk.latency_server_pcm_2:
+ - server_pcm_2
+ - disk.latency
+ disk.write.requests.rate_server_pcm_2:
+ - server_pcm_2
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_pcm_1:
+ - server_pcm_1
+ - disk.write.requests.rate
+ memory_server_pcm_2:
+ - server_pcm_2
+ - memory
+ disk.device.read.bytes.rate_server_pcm_2:
+ - server_pcm_2
+ - disk.device.read.bytes.rate
+ memory_server_pcm_1:
+ - server_pcm_1
+ - memory
+ disk.device.read.bytes.rate_server_pcm_1:
+ - server_pcm_1
+ - disk.device.read.bytes.rate
+ disk.write.bytes_server_pcm_2:
+ - server_pcm_2
+ - disk.write.bytes
+ disk.write.bytes_server_pcm_1:
+ - server_pcm_1
+ - disk.write.bytes
+ instance_server_pcm_2:
+ - server_pcm_2
+ - instance
+ instance_server_pcm_1:
+ - server_pcm_1
+ - instance
+ disk.device.read.requests.rate_server_pcm_1:
+ - server_pcm_1
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_pcm_2:
+ - server_pcm_2
+ - disk.device.read.requests.rate
+ disk.write.bytes.rate_server_pcm_2:
+ - server_pcm_2
+ - disk.write.bytes.rate
+ binding_server_pcm_1:
+ - server_pcm_1
+ - binding
+ binding_server_pcm_2:
+ - server_pcm_2
+ - binding
+ disk.write.bytes.rate_server_pcm_1:
+ - server_pcm_1
+ - disk.write.bytes.rate
+ disk.device.allocation_server_pcm_1:
+ - server_pcm_1
+ - disk.device.allocation
+ disk.device.allocation_server_pcm_2:
+ - server_pcm_2
+ - disk.device.allocation
+ disk.root.size_server_pcm_1:
+ - server_pcm_1
+ - disk.root.size
+ disk.root.size_server_pcm_2:
+ - server_pcm_2
+ - disk.root.size
+ disk.iops_server_pcm_2:
+ - server_pcm_2
+ - disk.iops
+ disk.iops_server_pcm_1:
+ - server_pcm_1
+ - disk.iops
+ disk.device.write.bytes.rate_server_pcm_1:
+ - server_pcm_1
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_pcm_2:
+ - server_pcm_2
+ - disk.device.write.bytes.rate
+ disk.write.requests_server_pcm_2:
+ - server_pcm_2
+ - disk.write.requests
+ disk.write.requests_server_pcm_1:
+ - server_pcm_1
+ - disk.write.requests
+ disk.read.bytes_server_pcm_1:
+ - server_pcm_1
+ - disk.read.bytes
+ disk.read.bytes_server_pcm_2:
+ - server_pcm_2
+ - disk.read.bytes
+ cpu_util_server_pcm_1:
+ - server_pcm_1
+ - cpu_util
+ cpu_util_server_pcm_2:
+ - server_pcm_2
+ - cpu_util
+ disk.device.write.bytes_server_pcm_2:
+ - server_pcm_2
+ - disk.device.write.bytes
+ disk.allocation_server_pcm_1:
+ - server_pcm_1
+ - disk.allocation
+ disk.allocation_server_pcm_2:
+ - server_pcm_2
+ - disk.allocation
+ disk.device.write.bytes_server_pcm_1:
+ - server_pcm_1
+ - disk.device.write.bytes
+ memory.usage_server_pcm_1:
+ - server_pcm_1
+ - memory.usage
+ memory.usage_server_pcm_2:
+ - server_pcm_2
+ - memory.usage
+ disk.device.read.bytes_server_pcm_2:
+ - server_pcm_2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_pcm_1:
+ - server_pcm_1
+ - disk.device.read.bytes
+ disk.read.bytes.rate_server_pcm_2:
+ - server_pcm_2
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_pcm_1:
+ - server_pcm_1
+ - disk.read.bytes.rate
+ disk.device.iops_server_pcm_1:
+ - server_pcm_1
+ - disk.device.iops
+ cpu.delta_server_pcm_1:
+ - server_pcm_1
+ - cpu.delta
+ cpu.delta_server_pcm_2:
+ - server_pcm_2
+ - cpu.delta
+ disk.device.write.requests.rate_server_pcm_2:
+ - server_pcm_2
+ - disk.device.write.requests.rate
+ disk.read.requests_server_pcm_2:
+ - server_pcm_2
+ - disk.read.requests
+ disk.read.requests_server_pcm_1:
+ - server_pcm_1
+ - disk.read.requests
+ disk.device.write.requests.rate_server_pcm_1:
+ - server_pcm_1
+ - disk.device.write.requests.rate
+ disk.ephemeral.size_server_pcm_1:
+ - server_pcm_1
+ - disk.ephemeral.size
+ disk.ephemeral.size_server_pcm_2:
+ - server_pcm_2
+ - disk.ephemeral.size
+ scalable_server_pcm_2:
+ - server_pcm_2
+ - scalable
+ scalable_server_pcm_1:
+ - server_pcm_1
+ - scalable
+ disk.device.latency_server_pcm_2:
+ - server_pcm_2
+ - disk.device.latency
+ disk.device.latency_server_pcm_1:
+ - server_pcm_1
+ - disk.device.latency
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ disk.device.usage_server_pcm_2:
+ - server_pcm_2
+ - disk.device.usage
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ disk.device.usage_server_pcm_1:
+ - server_pcm_1
+ - disk.device.usage
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_server_pcm_2:
+ - server_pcm_2
+ - disk.device.write.requests
+ disk.device.write.requests_server_pcm_1:
+ - server_pcm_1
+ - disk.device.write.requests
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ os_server_pcm_2:
+ - server_pcm_2
+ - os
+ disk.device.read.requests_server_pcm_1:
+ - server_pcm_1
+ - disk.device.read.requests
+ disk.device.read.requests_server_pcm_2:
+ - server_pcm_2
+ - disk.device.read.requests
+ os_server_pcm_1:
+ - server_pcm_1
+ - os
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ dependency_server_pcm_2:
+ - server_pcm_2
+ - dependency
+ dependency_server_pcm_1:
+ - server_pcm_1
+ - dependency
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
+ local_storage_server_pcm_2:
+ - server_pcm_2
+ - local_storage
+ local_storage_server_pcm_1:
+ - server_pcm_1
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/MANIFEST.json
new file mode 100644
index 0000000000..609c38b28e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/MANIFEST.json
@@ -0,0 +1,21 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..7d5922e469
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,17 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ pd_server_names: ZRDM1PCRF01PCM001
+ pd_image_name: rhel2
+ pd_flavor_name: cps
+ availabilityzone_name: nova
+ cps_net_name: int_pcrf_net_0
+ cps_net_ips: 172.26.16.113
+ cps_net_mask: 255.255.255.0
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.239.64.121
+ oam_net_gw: 107.239.64.1
+ oam_net_mask: 255.255.255.0
+ pcm_volumes: 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ security_group_name: nimbus_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..c1597faeff
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,113 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ pd_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pd_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pd_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ips:
+ type: comma_delimited_list
+ label: OAM network ips
+ description: OAM network ips
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_volumes:
+ type: comma_delimited_list
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ server_pd:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pd_server_names, 1] }
+ pcm_image_name: { get_param: pd_image_name }
+ pcm_flavor_name: { get_param: pd_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+ pcm_vol: { get_param: [pcm_volumes, 0] }
+ cps_net_name: { get_param: cps_net_name }
+ cps_net_ip: { get_param: [cps_net_ips, 0] }
+ cps_net_mask: { get_param: cps_net_mask }
+ oam_net_name: { get_param: oam_net_name }
+ oam_net_ip: { get_param: [oam_net_ips, 0] }
+ oam_net_mask: { get_param: oam_net_mask }
+ oam_net_gw: { get_param: oam_net_gw }
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..443a6886dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,124 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ pd_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pd_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pd_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ server_pd:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pd_server_name }
+ image: { get_param: pd_image_name }
+ flavor: { get_param: pd_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id_1:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm }
+
+ server_pcm_id_2:
+ description: the pcm nova service id
+ value: { get_resource: server_pd } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..227c1af00a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,769 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ pd_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ pd_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pd_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id_2:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ server_pcm_id_1:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pd:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pd:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pd:
+ type: org.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_server_pd:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_server_pd:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.read.requests_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pd:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_pcm:
+ type: org.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_server_pd:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_pcm:
+ type: org.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_server_pd:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_pd:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_pd:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pd:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_pd:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_server_pd:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_pcm:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: org.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_server_pd:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pd:
+ type: org.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_server_pd:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..e51dba5a7c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/MainServiceTemplate.yaml
@@ -0,0 +1,252 @@
+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:
+ pd_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ pd_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pd_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ server_pcm:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ server_pd:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pd_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pd_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pd_server_names
+ - 1
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm
+ - compute_port_0
+ - server_pd \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..dce37eb21a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/nestedWithTwoDiffComputeTypes/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,546 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ pd_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pd_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pd
+ relationship: tosca.relationships.network.BindsTo
+ server_pd:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ flavor:
+ get_input: pd_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pd_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pd_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm
+ - pcm_port_1
+ - server_pd
+ - pcm_port_0
+ outputs:
+ server_pcm_id_2:
+ description: the pcm nova service id
+ value: server_pd
+ server_pcm_id_1:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ disk.iops_server_pd:
+ - server_pd
+ - disk.iops
+ disk.device.read.bytes.rate_server_pd:
+ - server_pd
+ - disk.device.read.bytes.rate
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.read.requests_server_pd:
+ - server_pd
+ - disk.device.read.requests
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ disk.device.allocation_server_pd:
+ - server_pd
+ - disk.device.allocation
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ memory.usage_server_pd:
+ - server_pd
+ - memory.usage
+ disk.read.bytes.rate_server_pd:
+ - server_pd
+ - disk.read.bytes.rate
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ memory_server_pd:
+ - server_pd
+ - memory
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ disk.device.write.requests_server_pd:
+ - server_pd
+ - disk.device.write.requests
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ disk.read.bytes_server_pd:
+ - server_pd
+ - disk.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ disk.device.read.bytes_server_pd:
+ - server_pd
+ - disk.device.read.bytes
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ host_server_pd:
+ - server_pd
+ - host
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ vcpus_server_pd:
+ - server_pd
+ - vcpus
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ disk.ephemeral.size_server_pd:
+ - server_pd
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_pd:
+ - server_pd
+ - disk.write.requests.rate
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests_server_pd:
+ - server_pd
+ - disk.write.requests
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ binding_server_pd:
+ - server_pd
+ - binding
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ disk.root.size_server_pd:
+ - server_pd
+ - disk.root.size
+ disk.device.read.requests.rate_server_pd:
+ - server_pd
+ - disk.device.read.requests.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_pd:
+ - server_pd
+ - disk.device.write.bytes
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ memory.resident_server_pd:
+ - server_pd
+ - memory.resident
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ cpu_util_server_pd:
+ - server_pd
+ - cpu_util
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.usage_server_pd:
+ - server_pd
+ - disk.usage
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.capacity_server_pd:
+ - server_pd
+ - disk.capacity
+ endpoint_server_pd:
+ - server_pd
+ - endpoint
+ disk.device.capacity_server_pd:
+ - server_pd
+ - disk.device.capacity
+ disk.allocation_server_pd:
+ - server_pd
+ - disk.allocation
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.usage_server_pd:
+ - server_pd
+ - disk.device.usage
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ instance_server_pd:
+ - server_pd
+ - instance
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ cpu.delta_server_pd:
+ - server_pd
+ - cpu.delta
+ disk.latency_server_pd:
+ - server_pd
+ - disk.latency
+ disk.device.write.bytes.rate_server_pd:
+ - server_pd
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ disk.device.iops_server_pd:
+ - server_pd
+ - disk.device.iops
+ disk.read.requests_server_pd:
+ - server_pd
+ - disk.read.requests
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ os_server_pd:
+ - server_pd
+ - os
+ disk.device.latency_server_pd:
+ - server_pd
+ - disk.device.latency
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ scalable_server_pd:
+ - server_pd
+ - scalable
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.write.bytes_server_pd:
+ - server_pd
+ - disk.write.bytes
+ disk.write.bytes.rate_server_pd:
+ - server_pd
+ - disk.write.bytes.rate
+ feature_server_pd:
+ - server_pd
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.device.write.requests.rate_server_pd:
+ - server_pd
+ - disk.device.write.requests.rate
+ cpu_server_pd:
+ - server_pd
+ - cpu
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pd:
+ - server_pd
+ - local_storage
+ dependency_server_pd:
+ - server_pd
+ - dependency
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/MANIFEST.json
new file mode 100644
index 0000000000..b4050269a2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/MANIFEST.json
@@ -0,0 +1,29 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.2.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.3.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..52146086b7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,5 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..8a05d2164c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,59 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_pcm_002:
+ type: nested-pcm_v0.2.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_pcm_003:
+ type: nested-pcm_v0.3.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.2.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.2.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.2.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.3.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.3.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/in/nested-pcm_v0.3.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..18acb4f442
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1468 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.pcm_server_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.pcm_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c19623e0b9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/MainServiceTemplate.yaml
@@ -0,0 +1,132 @@
+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:
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_1_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server_1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.2ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ abstract_pcm_server_2_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server_2
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.3ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - compute_port_0
+ - abstract_pcm_server_0
+ - abstract_pcm_server_1_0
+ - abstract_pcm_server_2_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..1ab6da631d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server_1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml
new file mode 100644
index 0000000000..a5e41ea4fa
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.2ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.2.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.3ServiceTemplate.yaml
new file mode 100644
index 0000000000..9002b35770
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedPointingToThreeDiffNestedFilesSameComputeType/out/nested-pcm_v0.3ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.3.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server_2
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/MANIFEST.json
new file mode 100644
index 0000000000..f317bdc15c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/MANIFEST.json
@@ -0,0 +1,25 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nested-pcm_v0.2.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..52146086b7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,5 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..9618971b50
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,59 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_pcm_002:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_pcm_003:
+ type: nested-pcm_v0.2.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.2.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.2.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/in/nested-pcm_v0.2.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..daaf03d55e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,981 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.pcm_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..bfd33fce29
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/MainServiceTemplate.yaml
@@ -0,0 +1,132 @@
+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:
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_1:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ abstract_pcm_server_1_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server_1
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.2ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - compute_port_0
+ - abstract_pcm_server_0
+ - abstract_pcm_server_1
+ - abstract_pcm_server_1_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..05a21ce6d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.2ServiceTemplate.yaml
new file mode 100644
index 0000000000..a788426a41
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/threeNestedSameTypeTwoPointingOnSameNestedFile/out/nested-pcm_v0.2ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.2.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server_1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/MANIFEST.json
new file mode 100644
index 0000000000..609c38b28e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/MANIFEST.json
@@ -0,0 +1,21 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: John Doe, user PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pcm_v0.4.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env
new file mode 100644
index 0000000000..52146086b7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.env
@@ -0,0 +1,5 @@
+parameters:
+ pcm_server_names: ZRDM1PCRF01PCM001
+ pcm_image_name: rhel2
+ pcm_flavor_name: cps
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml
new file mode 100644
index 0000000000..62166c45ea
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/hot-nimbus-pcm_v0.4.yaml
@@ -0,0 +1,61 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_names:
+ type: comma_delimited_list
+ label: PCRF CM server names
+ description: name of the PCRF CM instance
+ pcm_image_name:
+ type: string
+ label: PCRF CM image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ compute_image_name:
+ type: string
+ net_name:
+ type: string
+
+resources:
+ server_pcm_001:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_pcm_002:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ pcm_server_name: { get_param: [pcm_server_names, 0] }
+ pcm_image_name: { get_param: pcm_image_name }
+ pcm_flavor_name: { get_param: pcm_flavor_name }
+ availabilityzone_name: { get_param: availabilityzone_name }
+
+ server_compute:
+ type: OS::Nova::Server
+ properties:
+ config_drive: {get_attr: [compute_port_0]}
+ name: { compute_name }
+ image: { get_param: compute_image_name }
+ flavor: { compute_flavor_name }
+ user_data_format: { get_attr: [server_pcm_001 , oam_net_gw] }
+ user_data: { get_attr: [server_pcm_001]}
+
+ compute_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net_name } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..01f875739a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..14d9ffa1f4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,789 @@
+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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: boolean
+ requirements:
+ - dependency_compute:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.usage_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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.usage_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_compute:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: org.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_compute:
+ type: tosca.capabilities.network.Bindable
+ 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/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..f81b5470ce
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/MainServiceTemplate.yaml
@@ -0,0 +1,156 @@
+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:
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ abstract_pcm_server_1:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ pcm_image_name:
+ get_input: pcm_image_name
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ compute_port_0:
+ 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
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - abstract_pcm_server_1
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - compute_port_0
+ - abstract_compute
+ - abstract_pcm_server_0
+ - abstract_pcm_server_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/Nested_computeServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/Nested_computeServiceTemplate.yaml
new file mode 100644
index 0000000000..ba0e3fc87b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/Nested_computeServiceTemplate.yaml
@@ -0,0 +1,194 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_compute
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_compute_config_drive:
+ type: list
+ required: true
+ entry_schema:
+ type: boolean
+ node_templates:
+ compute:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ get_input: vm_flavor_name
+ config_drive:
+ get_input:
+ - compute_compute_config_drive
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_compute_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_compute_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.compute
+ capabilities:
+ disk.device.usage_compute:
+ - compute
+ - disk.device.usage
+ disk.write.requests_compute:
+ - compute
+ - disk.write.requests
+ instance_compute:
+ - compute
+ - instance
+ disk.ephemeral.size_compute:
+ - compute
+ - disk.ephemeral.size
+ disk.device.read.bytes.rate_compute:
+ - compute
+ - disk.device.read.bytes.rate
+ disk.latency_compute:
+ - compute
+ - disk.latency
+ memory.resident_compute:
+ - compute
+ - memory.resident
+ memory_compute:
+ - compute
+ - memory
+ disk.iops_compute:
+ - compute
+ - disk.iops
+ disk.root.size_compute:
+ - compute
+ - disk.root.size
+ disk.write.requests.rate_compute:
+ - compute
+ - disk.write.requests.rate
+ disk.read.requests_compute:
+ - compute
+ - disk.read.requests
+ disk.device.read.requests.rate_compute:
+ - compute
+ - disk.device.read.requests.rate
+ disk.read.bytes_compute:
+ - compute
+ - disk.read.bytes
+ disk.device.read.bytes_compute:
+ - compute
+ - disk.device.read.bytes
+ disk.write.bytes_compute:
+ - compute
+ - disk.write.bytes
+ disk.usage_compute:
+ - compute
+ - disk.usage
+ os_compute:
+ - compute
+ - os
+ disk.write.bytes.rate_compute:
+ - compute
+ - disk.write.bytes.rate
+ vcpus_compute:
+ - compute
+ - vcpus
+ disk.capacity_compute:
+ - compute
+ - disk.capacity
+ cpu_util_compute:
+ - compute
+ - cpu_util
+ disk.read.bytes.rate_compute:
+ - compute
+ - disk.read.bytes.rate
+ disk.device.latency_compute:
+ - compute
+ - disk.device.latency
+ disk.device.write.requests_compute:
+ - compute
+ - disk.device.write.requests
+ disk.device.iops_compute:
+ - compute
+ - disk.device.iops
+ disk.device.write.requests.rate_compute:
+ - compute
+ - disk.device.write.requests.rate
+ endpoint_compute:
+ - compute
+ - endpoint
+ memory.usage_compute:
+ - compute
+ - memory.usage
+ host_compute:
+ - compute
+ - host
+ feature_compute:
+ - compute
+ - feature
+ disk.device.write.bytes_compute:
+ - compute
+ - disk.device.write.bytes
+ cpu_compute:
+ - compute
+ - cpu
+ disk.device.write.bytes.rate_compute:
+ - compute
+ - disk.device.write.bytes.rate
+ scalable_compute:
+ - compute
+ - scalable
+ disk.device.read.requests_compute:
+ - compute
+ - disk.device.read.requests
+ disk.allocation_compute:
+ - compute
+ - disk.allocation
+ disk.device.capacity_compute:
+ - compute
+ - disk.device.capacity
+ disk.device.allocation_compute:
+ - compute
+ - disk.device.allocation
+ cpu.delta_compute:
+ - compute
+ - cpu.delta
+ binding_compute:
+ - compute
+ - binding
+ requirements:
+ local_storage_compute:
+ - compute
+ - local_storage
+ dependency_compute:
+ - compute
+ - 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/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..05a21ce6d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/nestedSingleCompute/twoNestedNodeTemplatesWithSameComputeType/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,380 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..5e25e96923
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,54 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW_SERVER_PD_1
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ replacement_policy: AUTO_PORT_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..f3b983e920
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,404 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..7997fe0a81
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/MainServiceTemplate.yaml
@@ -0,0 +1,103 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-1
+ - Network-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO_PORT_1
+ - AUTO_PORT_0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW_SERVER_PD_2
+ - RAW_SERVER_PD_1
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..45fd36f894
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePort/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..1a753deeb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,66 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW_SERVER_PD_1
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ replacement_policy: AUTO_PORT_1
+ network_policy_server_pd_01:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_attr: [server_pd_01, accessIPv4]}
+ network_policy_server_pd_02:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_attr: [server_pd_02, accessIPv6]}
+ network_policy_port0:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ entries: {get_attr: [pd01_port_0, device_owner]} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..2080edef46
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,420 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv6:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_owner:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c87498fa1d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,127 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ node_templates:
+ network_policy_server_pd_01:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ network_policy_server_pd_02:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv6
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-1
+ - Network-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO_PORT_1
+ - AUTO_PORT_0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW_SERVER_PD_2
+ - RAW_SERVER_PD_1
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_port0:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_device_owner
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_server_pd_01
+ - network_policy_server_pd_02
+ - network_policy_port0
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..9923db380e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,302 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv6:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv6
+ entry_schema:
+ type: string
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_owner:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port
+ - device_owner
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..8a93286e0d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,6 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ dummy_net_name_1: Network-1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..09cabbf097
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,62 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ dummy_net_name_1:
+ type: string
+ label: dummy net name
+ description: dummy net name
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: {get_attr: [network_policy_server, name]}
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ metadata: {get_attr: [network_policy_server, name]}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ replacement_policy: {get_attr: [network_policy_server, name]}
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..84dba74e5c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,410 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b31071fa0a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/MainServiceTemplate.yaml
@@ -0,0 +1,125 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ dummy_net_name_1:
+ label: dummy net name
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy net name
+ default: Network-1
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-1
+ - Network-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - get_attribute:
+ - network_policy_server
+ - name
+ - AUTO_PORT_0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW_SERVER_PD_2
+ - get_attribute:
+ - network_policy_server
+ - name
+ compute_pd_server_metadata:
+ - get_attribute:
+ - network_policy_server
+ - name
+ - null
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_server
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..c588df7d89
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_pd_server_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..fe0b9b1c39
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,54 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: {get_attr: [pd01_port_0, device_id]}
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: {get_attr: [pd01_port_1, device_id]}
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ replacement_policy: {get_attr: [server_pd_01, accessIPv4]}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ replacement_policy: {get_attr: [server_pd_02, accessIPv4]} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..36bd7af7d6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,392 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..bd65262adb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/MainServiceTemplate.yaml
@@ -0,0 +1,97 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-1
+ - Network-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..1ebbdaa7f0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortGetAttrOutComputePort/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,267 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_attribute:
+ - pd_server_pd01_port
+ - device_id
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..f949b8e431
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,73 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the oam network
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW_SERVER_PD_1
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ security_groups: [{get_resource: jsa_security_group}]
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ security_groups: [{get_resource: jsa_security_group}]
+ replacement_policy: AUTO_PORT_1
+ resource_with_dependOn:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pd_01
+ - server_pd_02
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: Test-SecurityGroup
+ rules: [{"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}] \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..1acef555cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,410 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ae7dd92592
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,139 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ node_templates:
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: Test-SecurityGroup
+ description: ems security group
+ rules:
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pd_server_pd01_port
+ node: abstract_pd_server
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-1
+ - Network-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO_PORT_1
+ - AUTO_PORT_0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_security_groups:
+ - - jsa_security_group
+ - - jsa_security_group
+ compute_pd_server_user_data_format:
+ - RAW_SERVER_PD_2
+ - RAW_SERVER_PD_1
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ resource_with_dependOn:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: feature_pd_server
+ node: abstract_pd_server
+ relationship: tosca.relationships.DependsOn
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - jsa_security_group
+ - resource_with_dependOn
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..a71e2c4593
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd01_port_security_groups
+ - index_value
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..b8d704178f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,89 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the network
+ pd01_volume_type:
+ type: string
+ label: volume type
+ description: volume type
+ pd01_cinder_volume_size:
+ type: string
+ label: volume size
+ description: volume size
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ depends_on:
+ - packet_mirror_network
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW_SERVER_PD_1
+ server_pd_02:
+ type: OS::Nova::Server
+ depends_on:
+ - packet_mirror_network
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: packet_mirror_network }
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: packet_mirror_network }
+ replacement_policy: AUTO_PORT_1
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ pd01_volume:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: pd01_cinder_volume_size}
+ volume_type: {get_param: pd01_volume_type}
+ pd01_volume_attachment:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_resource: pd01_volume}
+ instance_uuid: {get_resource: server_pd_01}
+ pd02_volume_attachment:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_resource: pd01_volume}
+ instance_uuid: {get_resource: server_pd_02} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..f3b983e920
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,404 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..4ef370388a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/MainServiceTemplate.yaml
@@ -0,0 +1,162 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd01_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: string
+ description: volume size
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the network
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ pd01_volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type
+ node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ pd01_volume:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: pd01_volume_type
+ size: '(get_input : pd01_cinder_volume_size) * 1024'
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_mirror_network
+ - packet_mirror_network
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO_PORT_1
+ - AUTO_PORT_0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW_SERVER_PD_2
+ - RAW_SERVER_PD_1
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_mirror_network
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: pd01_volume
+ relationship: pd02_volume_attachment
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: pd01_volume
+ relationship: pd01_volume_attachment
+ relationship_templates:
+ pd01_volume_attachment:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: pd01_volume
+ instance_uuid: abstract_pd_server
+ pd02_volume_attachment:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: pd01_volume
+ instance_uuid: abstract_pd_server
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - packet_mirror_network
+ - pd01_volume
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..45fd36f894
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..200fe3cf09
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,61 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW_SERVER_PD_1
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ replacement_policy: AUTO_PORT_1
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: Policy_BE_Affinity \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..96d645f0e2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,410 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_pd_server_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..baf0b4a3b2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/MainServiceTemplate.yaml
@@ -0,0 +1,118 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ compute_pd_server_scheduler_hints:
+ - group: BE_Affinity_group
+ - group: BE_Affinity_group
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-1
+ - Network-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO_PORT_1
+ - AUTO_PORT_0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW_SERVER_PD_2
+ - RAW_SERVER_PD_1
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_pd_server
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: Policy_BE_Affinity
+ affinity: host
+ targets:
+ - BE_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..0d1df3e26b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOneGroup/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_pd_server_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_pd_server_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..1180cb6e8e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,65 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW_SERVER_PD_1
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ replacement_policy: AUTO_PORT_1
+outputs:
+ output_attr_server_pd_1:
+ description: output attr pd1
+ value: {get_attr: [server_pd_01, accessIPv4]}
+ output_attr_server_pd_2:
+ description: output attr pd2
+ value: {get_attr: [server_pd_02, accessIPv6]}
+ output_attr_port_pd_0:
+ description: output attr port0
+ value:
+ get_attr: [pd01_port_0, device_id] \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..cf7b8e5315
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,420 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv6:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..38f0073e5d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,122 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-1
+ - Network-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO_PORT_1
+ - AUTO_PORT_0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW_SERVER_PD_2
+ - RAW_SERVER_PD_1
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ outputs:
+ output_attr_port_pd_0:
+ description: output attr port0
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_device_id
+ output_attr_server_pd_1:
+ description: output attr pd1
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ output_attr_server_pd_2:
+ description: output attr pd2
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv6 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..f49877e3d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/oneComputeTypeOnePortOutputParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,302 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv6:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv6
+ entry_schema:
+ type: string
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_id:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port
+ - device_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..32b0e1ca9c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,8 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..8d21459478
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ ps_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ ps_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [ps_server_names, 0]}
+ image: {get_param: ps_image_name}
+ flavor: {get_param: ps_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: ps01_port_0}
+ server_ps_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [ps_server_names, 1]}
+ image: {get_param: ps_image_name}
+ flavor: {get_param: ps_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: ps01_port_1}
+ user_data_format: RAW
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PD-0
+ replacement_policy: AUTO
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PD-1
+ replacement_policy: AUTO
+ ps01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PS-0
+ replacement_policy: AUTO
+ ps01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PS-1
+ replacement_policy: AUTO \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..cf85c2d08a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,801 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.ps_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_ps_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_ps_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_ps_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_ps_server_ps01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_ps_server_ps01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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
+ host_ps_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_ps_server_ps01_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.delta_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_ps_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_ps_server_ps01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_ps_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a1c581355c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/MainServiceTemplate.yaml
@@ -0,0 +1,183 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ ps_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ ps_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-PD-1
+ - Network-PD-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO
+ - AUTO
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - null
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_ps_server:
+ type: org.openecomp.resource.abstract.nodes.ps_server
+ directives:
+ - substitutable
+ properties:
+ compute_ps_server_name:
+ - get_input:
+ - ps_server_names
+ - 0
+ - get_input:
+ - ps_server_names
+ - 1
+ vm_image_name:
+ get_input: ps_image_name
+ compute_ps_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_ps_server_user_data_format:
+ - null
+ - RAW
+ port_ps01_port_replacement_policy:
+ - AUTO
+ - AUTO
+ port_ps01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ port_ps01_port_network:
+ - Network-PS-0
+ - Network-PS-1
+ vm_flavor_name:
+ get_input: ps_flavor_name
+ port_ps01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_ps_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ - abstract_ps_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..45fd36f894
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..3de2a46d80
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePort/out/Nested_ps_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_ps_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_ps_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ ps_server:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_ps_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_ps_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_ps_server_user_data_format
+ - index_value
+ ps_server_ps01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_ps01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_ps01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_ps01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_ps01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ps_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.ps_server
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets.rate
+ instance_ps_server:
+ - ps_server
+ - instance
+ network.outpoing.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outpoing.packets
+ host_ps_server:
+ - ps_server
+ - host
+ network.incoming.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets
+ cpu.delta_ps_server:
+ - ps_server
+ - cpu.delta
+ disk.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.write.bytes.rate
+ feature_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - feature
+ feature_ps_server:
+ - ps_server
+ - feature
+ disk.root.size_ps_server:
+ - ps_server
+ - disk.root.size
+ disk.device.read.requests.rate_ps_server:
+ - ps_server
+ - disk.device.read.requests.rate
+ cpu_ps_server:
+ - ps_server
+ - cpu
+ disk.device.write.bytes_ps_server:
+ - ps_server
+ - disk.device.write.bytes
+ disk.device.read.bytes_ps_server:
+ - ps_server
+ - disk.device.read.bytes
+ disk.read.bytes_ps_server:
+ - ps_server
+ - disk.read.bytes
+ disk.device.iops_ps_server:
+ - ps_server
+ - disk.device.iops
+ network.outgoing.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.packets.rate
+ disk.device.latency_ps_server:
+ - ps_server
+ - disk.device.latency
+ disk.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.read.bytes.rate
+ memory_ps_server:
+ - ps_server
+ - memory
+ scalable_ps_server:
+ - ps_server
+ - scalable
+ disk.write.requests.rate_ps_server:
+ - ps_server
+ - disk.write.requests.rate
+ disk.write.requests_ps_server:
+ - ps_server
+ - disk.write.requests
+ disk.latency_ps_server:
+ - ps_server
+ - disk.latency
+ disk.ephemeral.size_ps_server:
+ - ps_server
+ - disk.ephemeral.size
+ disk.device.capacity_ps_server:
+ - ps_server
+ - disk.device.capacity
+ disk.iops_ps_server:
+ - ps_server
+ - disk.iops
+ disk.device.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.read.bytes.rate
+ cpu_util_ps_server:
+ - ps_server
+ - cpu_util
+ memory.resident_ps_server:
+ - ps_server
+ - memory.resident
+ network.incoming.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes
+ disk.device.read.requests_ps_server:
+ - ps_server
+ - disk.device.read.requests
+ disk.write.bytes_ps_server:
+ - ps_server
+ - disk.write.bytes
+ network.outgoing.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes.rate
+ disk.device.write.requests.rate_ps_server:
+ - ps_server
+ - disk.device.write.requests.rate
+ disk.read.requests_ps_server:
+ - ps_server
+ - disk.read.requests
+ disk.allocation_ps_server:
+ - ps_server
+ - disk.allocation
+ memory.usage_ps_server:
+ - ps_server
+ - memory.usage
+ binding_ps_server:
+ - ps_server
+ - binding
+ attachment_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - attachment
+ os_ps_server:
+ - ps_server
+ - os
+ disk.device.usage_ps_server:
+ - ps_server
+ - disk.device.usage
+ binding_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - binding
+ disk.device.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.write.bytes.rate
+ vcpus_ps_server:
+ - ps_server
+ - vcpus
+ disk.usage_ps_server:
+ - ps_server
+ - disk.usage
+ disk.device.write.requests_ps_server:
+ - ps_server
+ - disk.device.write.requests
+ endpoint_ps_server:
+ - ps_server
+ - endpoint
+ disk.capacity_ps_server:
+ - ps_server
+ - disk.capacity
+ network.incoming.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes.rate
+ disk.device.allocation_ps_server:
+ - ps_server
+ - disk.device.allocation
+ network.outgoing.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes
+ requirements:
+ dependency_ps_server:
+ - ps_server
+ - dependency
+ link_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - link
+ dependency_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - dependency
+ local_storage_ps_server:
+ - ps_server
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..32b0e1ca9c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,8 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..79db7ad66b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,94 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ ps_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ ps_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: {get_attr: [server_ps_01, accessIPv4]}
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [ps_server_names, 0]}
+ image: {get_param: ps_image_name}
+ flavor: {get_param: ps_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: ps01_port_0}
+ user_data_format: {get_attr: [server_pd_01, accessIPv4]}
+ server_ps_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [ps_server_names, 1]}
+ image: {get_param: ps_image_name}
+ flavor: {get_param: ps_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: ps01_port_1}
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PD-0
+ replacement_policy: AUTO
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PD-1
+ replacement_policy: AUTO
+ ps01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PS-0
+ replacement_policy: AUTO
+ ps01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-PS-1
+ replacement_policy: AUTO \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..c814e074c2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,813 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.ps_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_ps_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ ps_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_ps_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_ps_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_ps_server_ps01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_ps_server_ps01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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
+ host_ps_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_ps_server_ps01_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.delta_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_ps_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_ps_server_ps01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_ps_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..871efb849a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/MainServiceTemplate.yaml
@@ -0,0 +1,187 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ ps_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ ps_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - Network-PD-1
+ - Network-PD-0
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO
+ - AUTO
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - null
+ - get_attribute:
+ - abstract_ps_server
+ - ps_server_accessIPv4
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_ps_server:
+ type: org.openecomp.resource.abstract.nodes.ps_server
+ directives:
+ - substitutable
+ properties:
+ compute_ps_server_name:
+ - get_input:
+ - ps_server_names
+ - 0
+ - get_input:
+ - ps_server_names
+ - 1
+ vm_image_name:
+ get_input: ps_image_name
+ compute_ps_server_availability_zone:
+ - get_input: availabilityzone_name
+ - get_input: availabilityzone_name
+ compute_ps_server_user_data_format:
+ - get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ - null
+ port_ps01_port_replacement_policy:
+ - AUTO
+ - AUTO
+ port_ps01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ - mac_count_required:
+ is_required: false
+ port_ps01_port_network:
+ - Network-PS-0
+ - Network-PS-1
+ vm_flavor_name:
+ get_input: ps_flavor_name
+ port_ps01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_ps_serverServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ - abstract_ps_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..dc5f1e5474
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..be9be2ceb6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/scalingInstances/twoComputeTypesOnePortWithGetAttr/out/Nested_ps_serverServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_ps_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_ps_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ ps_server:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_ps_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_ps_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_ps_server_user_data_format
+ - index_value
+ ps_server_ps01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_ps01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_ps01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_ps01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_ps01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ps_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ ps_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - ps_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.ps_server
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets.rate
+ instance_ps_server:
+ - ps_server
+ - instance
+ network.outpoing.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outpoing.packets
+ host_ps_server:
+ - ps_server
+ - host
+ network.incoming.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets
+ cpu.delta_ps_server:
+ - ps_server
+ - cpu.delta
+ disk.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.write.bytes.rate
+ feature_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - feature
+ feature_ps_server:
+ - ps_server
+ - feature
+ disk.root.size_ps_server:
+ - ps_server
+ - disk.root.size
+ disk.device.read.requests.rate_ps_server:
+ - ps_server
+ - disk.device.read.requests.rate
+ cpu_ps_server:
+ - ps_server
+ - cpu
+ disk.device.write.bytes_ps_server:
+ - ps_server
+ - disk.device.write.bytes
+ disk.device.read.bytes_ps_server:
+ - ps_server
+ - disk.device.read.bytes
+ disk.read.bytes_ps_server:
+ - ps_server
+ - disk.read.bytes
+ disk.device.iops_ps_server:
+ - ps_server
+ - disk.device.iops
+ network.outgoing.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.packets.rate
+ disk.device.latency_ps_server:
+ - ps_server
+ - disk.device.latency
+ disk.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.read.bytes.rate
+ memory_ps_server:
+ - ps_server
+ - memory
+ scalable_ps_server:
+ - ps_server
+ - scalable
+ disk.write.requests.rate_ps_server:
+ - ps_server
+ - disk.write.requests.rate
+ disk.write.requests_ps_server:
+ - ps_server
+ - disk.write.requests
+ disk.latency_ps_server:
+ - ps_server
+ - disk.latency
+ disk.ephemeral.size_ps_server:
+ - ps_server
+ - disk.ephemeral.size
+ disk.device.capacity_ps_server:
+ - ps_server
+ - disk.device.capacity
+ disk.iops_ps_server:
+ - ps_server
+ - disk.iops
+ disk.device.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.read.bytes.rate
+ cpu_util_ps_server:
+ - ps_server
+ - cpu_util
+ memory.resident_ps_server:
+ - ps_server
+ - memory.resident
+ network.incoming.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes
+ disk.device.read.requests_ps_server:
+ - ps_server
+ - disk.device.read.requests
+ disk.write.bytes_ps_server:
+ - ps_server
+ - disk.write.bytes
+ network.outgoing.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes.rate
+ disk.device.write.requests.rate_ps_server:
+ - ps_server
+ - disk.device.write.requests.rate
+ disk.read.requests_ps_server:
+ - ps_server
+ - disk.read.requests
+ disk.allocation_ps_server:
+ - ps_server
+ - disk.allocation
+ memory.usage_ps_server:
+ - ps_server
+ - memory.usage
+ binding_ps_server:
+ - ps_server
+ - binding
+ attachment_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - attachment
+ os_ps_server:
+ - ps_server
+ - os
+ disk.device.usage_ps_server:
+ - ps_server
+ - disk.device.usage
+ binding_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - binding
+ disk.device.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.write.bytes.rate
+ vcpus_ps_server:
+ - ps_server
+ - vcpus
+ disk.usage_ps_server:
+ - ps_server
+ - disk.usage
+ disk.device.write.requests_ps_server:
+ - ps_server
+ - disk.device.write.requests
+ endpoint_ps_server:
+ - ps_server
+ - endpoint
+ disk.capacity_ps_server:
+ - ps_server
+ - disk.capacity
+ network.incoming.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes.rate
+ disk.device.allocation_ps_server:
+ - ps_server
+ - disk.device.allocation
+ network.outgoing.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes
+ requirements:
+ dependency_ps_server:
+ - ps_server
+ - dependency
+ link_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - link
+ dependency_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - dependency
+ local_storage_ps_server:
+ - ps_server
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..60bc925633
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,230 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..73f2c6fad8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,506 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd02_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_pd_server_pd01_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd02_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_pd_server_pd02_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pd_server_pd02_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server_pd02_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server_pd02_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..19b518f0ad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/MainServiceTemplate.yaml
@@ -0,0 +1,480 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd02_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd02_port_network_role_tag:
+ - oam
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ port_pd02_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network_role_tag:
+ - oam
+ port_pd02_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..e9da306669
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortType/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd02_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd02_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd02_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd02_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd02_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ binding_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - binding
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.packets.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes
+ feature_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - feature
+ network.incoming.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.outpoing.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outpoing.packets
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ attachment_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - attachment
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ network.incoming.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets.rate
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ network.incoming.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - link
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd02_port:
+ - pd_server_pd02_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/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..06bfb932dd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,8 @@
+parameters:
+ availability_zone_0: zone_1
+ vnf_id: This_is_ths_SCP_id
+ port_name: port_name
+ flavor_smp_name: m3.xlarge
+ image_smp_name: asc_base_image_smp
+ smp_name_1: vSMP2
+ lab_name: Lab-1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..47aaa8e535
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,65 @@
+heat_template_version: 2013-05-23
+
+description: ASC Template
+
+parameters:
+ availability_zone_0:
+ type: string
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+ port_name:
+ type: string
+ description: port name
+ default: port_name
+ flavor_smp_name:
+ type: string
+ description: SCP SMP Flavor
+ default: a1.Small
+ image_smp_name:
+ type: string
+ description: SCP SMP image
+ default: asc_base_image_smp
+ smp_name_1:
+ type: string
+ default: vSMP2
+ description: name of VM
+ lab_name:
+ type: string
+ description: Lab name
+
+resources:
+ server_smp1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: smp_name_1 }
+ image: { get_param: image_smp_name }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: flavor_smp_name }
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ networks:
+ - port: { get_resource: port1 }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ jx_lab_name: {get_param: lab_name}
+ jx_vm_role: smp2
+ user_data_format: RAW
+
+ port1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: port_name}
+ replacement_policy: AUTO
+
+ port2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: port_name}
+ replacement_policy: AUTO
+
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: def \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..33a9362697
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,416 @@
+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.smp:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_smp_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_smp_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_smp_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_smp_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_smp_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_smp_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_smp_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_smp:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_smp:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ scalable_smp:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_smp:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_smp:
+ type: org.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.usage_smp:
+ type: org.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_smp:
+ type: org.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_smp_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_smp_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_smp:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_smp_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_smp:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_smp:
+ type: org.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_smp:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_smp:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_smp:
+ type: org.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_smp_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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp_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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp_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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp_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_smp_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_smp_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.iops_smp:
+ type: org.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_smp:
+ type: org.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_smp_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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: org.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_smp:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_smp:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..9a471a91a9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/MainServiceTemplate.yaml
@@ -0,0 +1,132 @@
+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:
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: port name
+ default: port_name
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+ smp_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSMP2
+ flavor_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP Flavor
+ default: m3.xlarge
+ image_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP image
+ default: asc_base_image_smp
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ default: zone_1
+ lab_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Lab name
+ default: Lab-1
+ node_templates:
+ abstract_smp:
+ type: org.openecomp.resource.abstract.nodes.smp
+ directives:
+ - substitutable
+ properties:
+ port_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: image_smp_name
+ port_port_network:
+ - get_input: port_name
+ compute_smp_name:
+ - get_input: smp_name_1
+ compute_smp_availability_zone:
+ - get_input: availability_zone_0
+ vm_flavor_name:
+ get_input: flavor_smp_name
+ compute_smp_metadata:
+ - jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ compute_smp_user_data_format:
+ - RAW
+ port_port_replacement_policy:
+ - AUTO
+ compute_smp_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_smpServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ port2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ 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
+ network:
+ get_input: port_name
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: ASC Template
+ members:
+ - port2
+ - abstract_smp
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_smp
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml
new file mode 100644
index 0000000000..79e0b10db2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeAndServerGroup/out/Nested_smpServiceTemplate.yaml
@@ -0,0 +1,295 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_smp
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.smp:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_smp_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_smp_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_smp_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_smp_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_smp_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ smp_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: smp
+ relationship: tosca.relationships.network.BindsTo
+ smp:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ availability_zone:
+ get_input:
+ - compute_smp_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_smp_metadata
+ - index_value
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_smp_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_smp_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_smp_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.smp
+ capabilities:
+ scalable_smp:
+ - smp
+ - scalable
+ feature_smp:
+ - smp
+ - feature
+ memory.resident_smp:
+ - smp
+ - memory.resident
+ disk.usage_smp:
+ - smp
+ - disk.usage
+ disk.device.write.bytes_smp:
+ - smp
+ - disk.device.write.bytes
+ network.outpoing.packets_smp_port:
+ - smp_port
+ - network.outpoing.packets
+ attachment_smp_port:
+ - smp_port
+ - attachment
+ os_smp:
+ - smp
+ - os
+ network.incoming.bytes_smp_port:
+ - smp_port
+ - network.incoming.bytes
+ binding_smp:
+ - smp
+ - binding
+ disk.allocation_smp:
+ - smp
+ - disk.allocation
+ instance_smp:
+ - smp
+ - instance
+ host_smp:
+ - smp
+ - host
+ disk.device.usage_smp:
+ - smp
+ - disk.device.usage
+ network.outgoing.packets.rate_smp_port:
+ - smp_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_smp:
+ - smp
+ - disk.read.bytes
+ disk.ephemeral.size_smp:
+ - smp
+ - disk.ephemeral.size
+ disk.write.bytes.rate_smp:
+ - smp
+ - disk.write.bytes.rate
+ network.incoming.packets_smp_port:
+ - smp_port
+ - network.incoming.packets
+ disk.device.write.bytes.rate_smp:
+ - smp
+ - disk.device.write.bytes.rate
+ disk.capacity_smp:
+ - smp
+ - disk.capacity
+ disk.device.read.bytes.rate_smp:
+ - smp
+ - disk.device.read.bytes.rate
+ disk.device.latency_smp:
+ - smp
+ - disk.device.latency
+ disk.device.write.requests.rate_smp:
+ - smp
+ - disk.device.write.requests.rate
+ feature_smp_port:
+ - smp_port
+ - feature
+ disk.root.size_smp:
+ - smp
+ - disk.root.size
+ disk.write.requests_smp:
+ - smp
+ - disk.write.requests
+ cpu.delta_smp:
+ - smp
+ - cpu.delta
+ disk.device.write.requests_smp:
+ - smp
+ - disk.device.write.requests
+ memory_smp:
+ - smp
+ - memory
+ disk.device.iops_smp:
+ - smp
+ - disk.device.iops
+ network.outgoing.bytes_smp_port:
+ - smp_port
+ - network.outgoing.bytes
+ disk.device.allocation_smp:
+ - smp
+ - disk.device.allocation
+ disk.device.read.requests.rate_smp:
+ - smp
+ - disk.device.read.requests.rate
+ disk.device.read.bytes_smp:
+ - smp
+ - disk.device.read.bytes
+ vcpus_smp:
+ - smp
+ - vcpus
+ disk.write.requests.rate_smp:
+ - smp
+ - disk.write.requests.rate
+ disk.latency_smp:
+ - smp
+ - disk.latency
+ network.incoming.packets.rate_smp_port:
+ - smp_port
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_smp_port:
+ - smp_port
+ - network.incoming.bytes.rate
+ binding_smp_port:
+ - smp_port
+ - binding
+ disk.iops_smp:
+ - smp
+ - disk.iops
+ disk.read.bytes.rate_smp:
+ - smp
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_smp_port:
+ - smp_port
+ - network.outgoing.bytes.rate
+ cpu_util_smp:
+ - smp
+ - cpu_util
+ disk.write.bytes_smp:
+ - smp
+ - disk.write.bytes
+ memory.usage_smp:
+ - smp
+ - memory.usage
+ disk.read.requests_smp:
+ - smp
+ - disk.read.requests
+ disk.device.capacity_smp:
+ - smp
+ - disk.device.capacity
+ cpu_smp:
+ - smp
+ - cpu
+ endpoint_smp:
+ - smp
+ - endpoint
+ disk.device.read.requests_smp:
+ - smp
+ - disk.device.read.requests
+ requirements:
+ link_smp_port:
+ - smp_port
+ - link
+ dependency_smp:
+ - smp
+ - dependency
+ dependency_smp_port:
+ - smp_port
+ - dependency
+ local_storage_smp:
+ - smp
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..88b7464451
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,8 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ packet_mirror_network_name: packet-net-1
+ oam_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..306be69d01
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,71 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the oam network
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+ resources_with_dependOn:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pd_01
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: Test-SecurityGroup
+ rules: [{"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}]
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ security_groups: [{get_resource: jsa_security_group}]
+ replacement_policy: AUTO
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ security_groups: [{get_resource: jsa_security_group}]
+ replacement_policy: AUTO
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..b6c7aa061c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,530 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd02_port_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd02_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd02_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_pd_server_pd01_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd02_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_pd_server_pd02_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pd_server_pd02_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server_pd02_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server_pd02_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ea3d41d97c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,162 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: packet-net-1
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ resources_with_dependOn:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: feature_pd_server
+ node: abstract_pd_server
+ relationship: tosca.relationships.DependsOn
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: Test-SecurityGroup
+ description: ems security group
+ rules:
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pd_server_pd01_port
+ node: abstract_pd_server
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pd_server_pd02_port
+ node: abstract_pd_server
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO
+ port_pd02_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_security_groups:
+ - - jsa_security_group
+ port_pd02_port_network_role_tag:
+ - oam
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd02_port_security_groups:
+ - - jsa_security_group
+ port_pd02_port_replacement_policy:
+ - AUTO
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ port_pd02_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network_role_tag:
+ - oam
+ port_pd02_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - resources_with_dependOn
+ - jsa_security_group
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..cefeecf3ff
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,396 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd02_port_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd02_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd01_port_security_groups
+ - index_value
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd02_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd02_port_security_groups
+ - index_value
+ replacement_policy:
+ get_input:
+ - port_pd02_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd02_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd02_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd02_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd02_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ binding_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - binding
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.packets.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes
+ feature_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - feature
+ network.incoming.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.outpoing.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outpoing.packets
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ attachment_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - attachment
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ network.incoming.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets.rate
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ network.incoming.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - link
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd02_port:
+ - pd_server_pd02_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/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..32b9237438
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,10 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ packet_mirror_network_name: packet-net-1
+ pd01_volume_type: volume_type_1
+ pd01_cinder_volume_size: 1024
+ oam_flavor_name: m3.xlarge
+ oam_net_name: oam_protected_net_0
+ availabilityzone_name: nova
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..d2be206b75
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,81 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the network
+ pd01_volume_type:
+ type: string
+ label: volume type
+ description: volume type
+ pd01_cinder_volume_size:
+ type: string
+ label: volume size
+ description: volume size
+
+resources:
+ server_pd_01:
+ depends_on:
+ - packet_mirror_network
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: packet_mirror_network }
+ replacement_policy: AUTO
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: packet_mirror_network }
+ replacement_policy: AUTO
+ pd01_volume:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: pd01_cinder_volume_size}
+ volume_type: {get_param: pd01_volume_type}
+ pd01_volume_attachment:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_resource: pd01_volume}
+ instance_uuid: {get_resource: server_pd_01} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..c2a86696e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,506 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd02_port_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd02_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd02_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_pd_server_pd01_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd02_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_pd_server_pd02_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pd_server_pd02_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server_pd02_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server_pd02_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..8bc75d63cf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
@@ -0,0 +1,173 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd01_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: string
+ description: volume size
+ default: 1024
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the network
+ default: packet-net-1
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ pd01_volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type
+ default: volume_type_1
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ pd01_volume:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: pd01_volume_type
+ size: '(get_input : pd01_cinder_volume_size) * 1024'
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_replacement_policy:
+ - AUTO
+ port_pd02_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd02_port_replacement_policy:
+ - AUTO
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - packet_mirror_network
+ port_pd02_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd02_port_network:
+ - packet_mirror_network
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_mirror_network
+ relationship: tosca.relationships.network.LinksTo
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_mirror_network
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: pd01_volume
+ relationship: pd01_volume_attachment
+ relationship_templates:
+ pd01_volume_attachment:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: pd01_volume
+ instance_uuid: abstract_pd_server
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - packet_mirror_network
+ - pd01_volume
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..9d86566e4f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithDiffPortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd02_port_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd02_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd02_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd02_port_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd02_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd02_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd02_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ binding_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - binding
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.packets.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes
+ feature_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - feature
+ network.incoming.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.outpoing.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outpoing.packets
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ attachment_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - attachment
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ network.incoming.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets.rate
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ network.incoming.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - link
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd02_port:
+ - pd_server_pd02_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/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..88b7464451
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,8 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ packet_mirror_network_name: packet-net-1
+ oam_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..cff32cbcf3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,71 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the oam network
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+ resources_with_dependOn:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_pd_01
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: Test-SecurityGroup
+ rules: [{"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}]
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ security_groups: [{get_resource: jsa_security_group}]
+ replacement_policy: AUTO
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ security_groups: [{get_resource: jsa_security_group}]
+ replacement_policy: AUTO
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..cd7b7cd904
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,530 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_1_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..215f5c0b83
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,162 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: packet-net-1
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ resources_with_dependOn:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: feature_pd_server
+ node: abstract_pd_server
+ relationship: tosca.relationships.DependsOn
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: Test-SecurityGroup
+ description: ems security group
+ rules:
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_pd_server_pd01_port_0
+ node: abstract_pd_server
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pd_server_pd01_port_1
+ node: abstract_pd_server
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_1_security_groups:
+ - - jsa_security_group
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_0_replacement_policy:
+ - AUTO
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_replacement_policy:
+ - AUTO
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ port_pd01_port_0_security_groups:
+ - - jsa_security_group
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - resources_with_dependOn
+ - jsa_security_group
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..cc1724133c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,396 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_1_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd01_port_1_security_groups
+ - index_value
+ replacement_policy:
+ get_input:
+ - port_pd01_port_1_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_1_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_1_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd01_port_0_security_groups
+ - index_value
+ replacement_policy:
+ get_input:
+ - port_pd01_port_0_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_0_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_0_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_0_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - 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/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..32b9237438
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,10 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ packet_mirror_network_name: packet-net-1
+ pd01_volume_type: volume_type_1
+ pd01_cinder_volume_size: 1024
+ oam_flavor_name: m3.xlarge
+ oam_net_name: oam_protected_net_0
+ availabilityzone_name: nova
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..ec4bb05ba4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,90 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the network
+ packet_internal_network_name:
+ type: string
+ label: packet internal network name
+ description: name of the network
+ pd01_volume_type:
+ type: string
+ label: volume type
+ description: volume type
+ pd01_cinder_volume_size:
+ type: string
+ label: volume size
+ description: volume size
+
+resources:
+ server_pd_01:
+ depends_on:
+ - packet_mirror_network
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+ packet_internal_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_internal_network_name
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: packet_mirror_network }
+ replacement_policy: AUTO
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: packet_internal_network }
+ replacement_policy: AUTO
+ pd01_volume:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: pd01_cinder_volume_size}
+ volume_type: {get_param: pd01_volume_type}
+ pd01_volume_attachment:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_resource: pd01_volume}
+ instance_uuid: {get_resource: server_pd_01} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..00cd6b4b90
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,506 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_replacement_policy:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..7a45084d24
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/MainServiceTemplate.yaml
@@ -0,0 +1,185 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ packet_internal_network_name:
+ label: packet internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the network
+ pd01_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: string
+ description: volume size
+ default: 1024
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the network
+ default: packet-net-1
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ pd01_volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type
+ default: volume_type_1
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ pd01_volume:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: pd01_volume_type
+ size: '(get_input : pd01_cinder_volume_size) * 1024'
+ packet_internal_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_internal_network_name
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_0_network:
+ - packet_mirror_network
+ port_pd01_port_0_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd01_port_0_replacement_policy:
+ - AUTO
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_replacement_policy:
+ - AUTO
+ port_pd01_port_1_network:
+ - packet_internal_network
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_mirror_network
+ relationship: tosca.relationships.network.LinksTo
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: packet_internal_network
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: pd01_volume
+ relationship: pd01_volume_attachment
+ relationship_templates:
+ pd01_volume_attachment:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: pd01_volume
+ instance_uuid: abstract_pd_server
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - packet_mirror_network
+ - pd01_volume
+ - packet_internal_network
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..44d11b66e1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computeWithSamePortTypeNodeConnectedOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_replacement_policy:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_1_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy:
+ get_input:
+ - port_pd01_port_0_replacement_policy
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_0_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_0_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - 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/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/MANIFEST.json
new file mode 100644
index 0000000000..0f690dde7d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/MANIFEST.json
@@ -0,0 +1,21 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pcm_v0.1.yaml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..3622d1fa1a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,237 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+
+ server_pcm_003:
+ type: nested-pcm_v0.1.yaml
+ properties:
+ availabilityzone_name: { get_param: availabilityzone_name }
+ security_group_name: { get_param: security_group_name }
+
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/nested-pcm_v0.1.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/nested-pcm_v0.1.yaml
new file mode 100644
index 0000000000..05ee8d7de0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/in/nested-pcm_v0.1.yaml
@@ -0,0 +1,129 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Cluman stack
+
+parameters:
+ pcm_server_name:
+ type: string
+ label: PCRF CM server name
+ description: PCRF CM server name
+ pcm_image_name:
+ type: string
+ label: image name
+ description: PCRF CM image name
+ pcm_flavor_name:
+ type: string
+ label: PCRF CM flavor name
+ description: flavor name of PCRF CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_ips:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ oam_net_name:
+ type: string
+ label: OAM network name
+ description: OAM network name
+ oam_net_ip:
+ type: string
+ label: OAM network ip
+ description: OAM network ip
+ oam_net_gw:
+ type: string
+ label: CPS network gateway
+ description: CPS network gateway
+ oam_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcm_vol:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ pcm_volumes:
+ type: string
+ label: CPS Cluman Cinder Volume
+ description: CPS Cluman Cinder Volume
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+
+resources:
+ server_init:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: network}
+ - config: { get_resource: script_init}
+
+ script_init:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: network}
+
+ network:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: cps_net_name}
+
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ user_data:
+ get_resource: server_init
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ #pcm_vol_attachment:
+ # type: OS::Cinder::VolumeAttachment
+ # properties:
+ # volume_id: { get_param: pcm_vol }
+ # mountpoint: /dev/vdb
+ # instance_uuid: { get_resource: server_pcm }
+outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: { get_resource: server_pcm } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..058fb9d6bd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1030 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd02_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_pd_server_pd01_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd02_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_pd_server_pd02_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pd_server_pd02_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server_pd02_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server_pd02_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.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ cps_net_ips:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_volumes:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_network:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_network:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ end_point_network:
+ type: tosca.capabilities.Endpoint
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_pcm:
+ type: org.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_network:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_network:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..01a5711243
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/MainServiceTemplate.yaml
@@ -0,0 +1,492 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ security_group_name:
+ get_input: security_group_name
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd02_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd02_port_network_role_tag:
+ - oam
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ port_pd02_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network_role_tag:
+ - oam
+ port_pd02_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ - abstract_pcm_server_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..e9da306669
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd02_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd02_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd02_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd02_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd02_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ binding_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - binding
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.packets.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes
+ feature_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - feature
+ network.incoming.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.outpoing.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outpoing.packets
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ attachment_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - attachment
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ network.incoming.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets.rate
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ network.incoming.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - link
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd02_port:
+ - pd_server_pd02_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/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..ba350ce357
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwodiffporttypesandnested/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,413 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ cps_net_ips:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ network:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: cps_net_name
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ - network
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ link_network:
+ - network
+ - link
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ end_point_network:
+ - network
+ - end_point
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ attachment_network:
+ - network
+ - attachment
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ feature_network:
+ - network
+ - feature
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ dependency_network:
+ - network
+ - dependency
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..57479ff130
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,230 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..af15bfb115
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,506 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ad9cf3e5d2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/MainServiceTemplate.yaml
@@ -0,0 +1,480 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..236dc97e62
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/computewithtwosameporttypes/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_1_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_1_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_0_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_0_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_0_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - 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/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..cadc70182f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,241 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+outputs:
+ out1:
+ description: output_regula
+ value: {get_attr: [server_pd_01, accessIPv4]}
+ out2:
+ description: output_regula
+ value: {get_attr: [pd02_port_0, device_owner]}
+ out3:
+ description: output_regula
+ value:
+ get_attr: [pd01_port_0, device_id]
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..8d72374fc5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,522 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd02_port_device_owner:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd02_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_pd_server_pd01_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd02_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_pd_server_pd02_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pd_server_pd02_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server_pd02_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server_pd02_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..46dda5fff5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,499 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd02_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd02_port_network_role_tag:
+ - oam
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ port_pd02_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network_role_tag:
+ - oam
+ port_pd02_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ outputs:
+ out2:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd02_port_device_owner
+ out3:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_device_id
+ out1:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..073e86d1cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/diffPortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,385 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd02_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd02_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd02_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd02_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd02_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ pd_server_pd02_port_device_owner:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd02_port
+ - device_owner
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_id:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port
+ - device_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ binding_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - binding
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.packets.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes
+ feature_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - feature
+ network.incoming.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.outpoing.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outpoing.packets
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ attachment_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - attachment
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ network.incoming.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets.rate
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ network.incoming.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - link
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd02_port:
+ - pd_server_pd02_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/services/heattotosca/fulltest/singleSubstitution/generalVf/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/MANIFEST.json
new file mode 100644
index 0000000000..71259e1116
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/MANIFEST.json
@@ -0,0 +1,27 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "vmme_small.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "vmme_small.env",
+ "type": "HEAT_ENV"
+ },
+ {
+ "file": "vmme_small_create_fsb.yml",
+ "type": "HEAT_VOL",
+ "data": [
+ {
+ "file": "vmme_small_create_fsb.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.env
new file mode 100644
index 0000000000..e46cfd2a2d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.env
@@ -0,0 +1,97 @@
+parameters:
+ oam_net_id: 47bf4cca-0961-422f-bcd6-d5a4fbb1a351
+ fsb1-name: ZRDM1MMEX33FSB001
+ fsb2-name: ZRDM1MMEX33FSB002
+ ncb1-name: ZRDM1MMEX33NCB001
+ ncb2-name: ZRDM1MMEX33NCB002
+ vlc1-name: ZRDM1MMEX33VLC002
+ vlc2-name: ZRDM1MMEX33VLC002
+ gpb1-name: ZRDM1MMEX33GPB001
+ gpb2-name: ZRDM1MMEX33GPB002
+ epc-sctp-a-net-name: EPC-SCTP-A
+ epc-sctp-a-net-rt: 13979:105717
+ epc-sctp-a-net-cidr: 107.243.37.0/27
+ epc-sctp-a-net-gateway: 107.243.37.1
+ epc-sctp-a-pool-start: 107.243.37.3
+ epc-sctp-a-pool-end: 107.243.37.30
+ epc-sctp-b-net-name: EPC-SCTP-B
+ epc-sctp-b-net-rt: 13979:105719
+ epc-sctp-b-net-cidr: 107.243.37.32/24
+ epc-sctp-b-net-gateway: 107.243.37.33
+ epc-sctp-b-pool-start: 107.243.37.35
+ epc-sctp-b-pool-end: 107.243.37.62
+ epc-gtp-net-name: EPC-GTP
+ epc-gtp-net-rt: 13979:105715
+ epc-gtp-net-cidr: 107.243.37.64/27
+ epc-gtp-net-gateway: 107.243.37.65
+ epc-gtp-pool-start: 107.243.37.67
+ epc-gtp-pool-end: 107.243.37.94
+ fsb1-image: MME_FSB1_15B-CP04-r5a01
+ fsb2-image: MME_FSB2_15B-CP04-r5a01
+ fsb1-flavor: m4.xlarge4
+ fsb2-flavor: m4.xlarge4
+ fsb_zone: nova
+ fsb1-Internal1-mac: 00:80:37:0E:0B:12
+ fsb1-Internal2-mac: 00:81:37:0E:0B:12
+ fsb1-oam-ip: 107.250.172.221
+ fsb2-Internal1-mac: 00:80:37:0E:0D:12
+ fsb2-Internal2-mac: 00:81:37:0E:0D:12
+ fsb2-oam-ip: 107.250.172.222
+ pxe-image: MME_PXE-BOOT_cxp9025898_2r5a01.qcow2
+ ncb-flavor: m4.xlarge4
+ ncb_zone: nova
+ ncb1-Internal1-mac: 00:80:37:0E:09:12
+ ncb1-Internal2-mac: 00:81:37:0E:09:12
+ ncb2-Internal1-mac: 00:80:37:0E:0F:12
+ ncb2-Internal2-mac: 00:81:37:0E:0F:12
+ gpb-flavor: m4.xlarge4
+ gpb_zone: nova
+ gpb1-Internal1-mac: 00:80:37:0E:01:22
+ gpb1-Internal1-ip: 169.254.0.101
+ gpb1-Internal2-mac: 00:81:37:0E:01:22
+ gpb2-Internal1-mac: 00:80:37:0E:02:22
+ gpb2-Internal2-mac: 00:81:37:0E:02:22
+ vlc-flavor: m4.xlarge4
+ vlc_zone: nova
+ vlc1-sctp-a-ip: 107.243.37.3
+ vlc1-sctp-b-ip: 107.243.37.35
+ vlc1-gtp-ip: 107.243.37.67
+ vlc1-oam-ip: 107.250.172.227
+ vlc2-sctp-a-ip: 107.243.37.4
+ vlc2-sctp-b-ip: 107.243.37.36
+ vlc2-gtp-ip: 107.243.37.68
+ vlc2-oam-ip: 107.250.172.228
+ vlc1-Internal1-mac: 00:80:37:0E:01:12
+ vlc1-Internal2-mac: 00:81:37:0E:01:12
+ vlc2-Internal1-mac: 00:80:37:0E:02:12
+ vlc2-Internal2-mac: 00:81:37:0E:02:12
+ Internal1_net_name: vmme_int_int_1
+ Internal1_subnet_name: vmme_int_int_sub_1
+ Internal1_ipam_name: vmme_ipam_int1
+ Internal1_cidr: 169.253.0.0/17
+ Internal1_forwarding_mode: "l2"
+ Internal1_dhcp: "False"
+ Internal1_shared: "False"
+ Internal1_external: "False"
+ Internal1_name: "Internal1-subnet"
+ Internal1_default_gateway: 169.253.0.3
+ Internal1_net_pool_start: 169.253.0.100
+ Internal1_net_pool_end: 169.253.0.254
+ Internal2_net_name: vmme_int_int_2
+ Internal2_subnet_name: vmme_int_int_sub_2
+ Internal2_ipam_name: vmme_ipam_int2
+ Internal2_cidr: 169.255.0.0/17
+ Internal2_shared: "False"
+ Internal2_external: "False"
+ Internal2_forwarding_mode: "l2"
+ Internal2_dhcp: "False"
+ Internal2_name: "Internal2-subnet"
+ Internal2_default_gateway: 169.255.0.3
+ Internal2_net_pool_start: 169.255.0.100
+ Internal2_net_pool_end: 169.255.0.254
+ static_prefix_sctp_a_1: 107.239.40.32/30
+ static_prefix_gtp_1: 107.239.40.96/30
+ static_prefix_sctp_b_1: 107.239.40.64/30
+ VMME_FSB1_boot_volume: 8248e794-6173-4b49-b9c3-8219b0b56f4e
+ VMME_FSB2_boot_volume: 089a0d11-4b15-4370-8343-3f90907b1221
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.yml
new file mode 100644
index 0000000000..d7ad9a84d0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small.yml
@@ -0,0 +1,644 @@
+heat_template_version: 2013-05-23
+
+description: HOT template to create vmme 2 fsb 2 ncb 2 gbp 2 vlc
+
+parameters:
+ fsb1-oam-ip:
+ type: string
+ fsb2-oam-ip:
+ type: string
+ vlc1-oam-ip:
+ type: string
+ vlc2-oam-ip:
+ type: string
+ Internal1_net_pool_start:
+ type: string
+ Internal1_net_pool_end:
+ type: string
+ Internal2_net_pool_start:
+ type: string
+ Internal2_net_pool_end:
+ type: string
+ Internal1_default_gateway:
+ type: string
+ Internal2_default_gateway:
+ type: string
+ Internal1_shared:
+ type: string
+ Internal1_external:
+ type: string
+ Internal1_net_name:
+ type: string
+ Internal1_subnet_name:
+ type: string
+ Internal1_ipam_name:
+ type: string
+ Internal1_cidr:
+ type: string
+ Internal1_forwarding_mode:
+ type: string
+ Internal1_dhcp:
+ type: string
+ Internal1_name:
+ type: string
+ Internal2_net_name:
+ type: string
+ Internal2_subnet_name:
+ type: string
+ Internal2_ipam_name:
+ type: string
+ Internal2_cidr:
+ type: string
+ Internal2_forwarding_mode:
+ type: string
+ Internal2_dhcp:
+ type: string
+ Internal2_name:
+ type: string
+ Internal2_shared:
+ type: string
+ Internal2_external:
+ type: string
+ vlc1-sctp-a-ip:
+ type: string
+ vlc1-sctp-b-ip:
+ type: string
+ vlc1-gtp-ip:
+ type: string
+ vlc2-sctp-a-ip:
+ type: string
+ vlc2-sctp-b-ip:
+ type: string
+ vlc2-gtp-ip:
+ type: string
+ fsb1-name:
+ type: string
+ description: Name of fsb1
+ fsb2-name:
+ type: string
+ description: Name of fsb1
+ ncb1-name:
+ type: string
+ description: Name of ncb1
+ ncb2-name:
+ type: string
+ description: Name of ncb2
+ vlc1-name:
+ type: string
+ description: Name of vlc1
+ vlc2-name:
+ type: string
+ description: Name of vlc2
+ gpb1-name:
+ type: string
+ description: Name of gpb1
+ gpb2-name:
+ type: string
+ description: Name of gpb2
+ fsb_zone:
+ type: string
+ description: cluster for spawnning fsb instances
+ fsb1-image:
+ type: string
+ description: Name of image to use for server fsb1
+ fsb1-flavor:
+ type: string
+ description: Flavor to use for servers fsb1
+ oam_net_id:
+ type: string
+ description: uuid of oam network
+ fsb1-Internal1-mac:
+ type: string
+ description: static mac address assigned to fsb1-Internal1
+ fsb1-Internal2-mac:
+ type: string
+ description: static mac address assigned to fsb1-Internal2
+ fsb2-image:
+ type: string
+ description: Name of image to use for server fsb2
+ fsb2-flavor:
+ type: string
+ description: Flavor to use for servers fsb2
+ fsb2-Internal1-mac:
+ type: string
+ description: static mac address assigned to fsb2-Internal1
+ fsb2-Internal2-mac:
+ type: string
+ description: static mac address assigned to fsb2-Internal2
+ pxe-image:
+ type: string
+ description: Name of image to use for server ncb
+ ncb-flavor:
+ type: string
+ description: Flavor to use for servers ncb
+ ncb_zone:
+ type: string
+ description: cluster for spawnning ncb instances
+ ncb1-Internal1-mac:
+ type: string
+ description: static mac address assigned to ncb1-Internal1
+ ncb1-Internal2-mac:
+ type: string
+ description: static mac address assigned to ncb1-Internal2
+ ncb2-Internal1-mac:
+ type: string
+ description: static mac address assigned to ncb2-Internal1
+ ncb2-Internal2-mac:
+ type: string
+ description: static mac address assigned to ncb2-Internal2
+ gpb-flavor:
+ type: string
+ description: Flavor to use for servers gpb
+ gpb_zone:
+ type: string
+ description: cluster for spawnning gpb instances
+ gpb1-Internal1-ip:
+ type: string
+ gpb1-Internal1-mac:
+ type: string
+ description: static mac address assigned to gpb1-Internal1
+ gpb1-Internal2-mac:
+ type: string
+ description: static mac address assigned to gpb1-Internal2
+ gpb2-Internal1-mac:
+ type: string
+ description: static mac address assigned to gpb2-Internal1
+ gpb2-Internal2-mac:
+ type: string
+ description: static mac address assigned to gpb2-Internal2
+ vlc-flavor:
+ type: string
+ description: Flavor to use for servers vlc
+ vlc_zone:
+ type: string
+ description: cluster for spawnning vlc instances
+ vlc1-Internal1-mac:
+ type: string
+ description: static mac address assigned to vlc1-Internal1
+ vlc1-Internal2-mac:
+ type: string
+ description: static mac address assigned to vlc1-Internal2
+ vlc2-Internal1-mac:
+ type: string
+ description: static mac address assigned to vlc2-Internal1
+ vlc2-Internal2-mac:
+ type: string
+ description: static mac address assigned to vlc2-Internal2
+ epc-sctp-a-net-name:
+ type: string
+ description: epc-sctp-a net name
+ epc-sctp-a-net-rt:
+ type: string
+ description: epc-sctp-a route target
+ epc-sctp-a-net-cidr:
+ type: string
+ description: epc-sctp-a subnet
+ epc-sctp-a-net-gateway:
+ type: string
+ description: epc-sctp-a-net network gateway
+ epc-sctp-a-pool-start:
+ type: string
+ description: epc-sctp-a-net network ip pool start IP address
+ epc-sctp-a-pool-end:
+ type: string
+ description: epc-sctp-a-net network ip pool end IP address
+ epc-sctp-b-net-name:
+ type: string
+ description: epc-sctp-b net name
+ epc-sctp-b-net-rt:
+ type: string
+ description: epc-sctp-b route target
+ epc-sctp-b-net-cidr:
+ type: string
+ description: epc-sctp-b subnet
+ epc-sctp-b-net-gateway:
+ type: string
+ description: epc-sctp-b-net network gateway
+ epc-sctp-b-pool-start:
+ type: string
+ description: epc-sctp-b-net network ip pool start IP address
+ epc-sctp-b-pool-end:
+ type: string
+ description: epc-sctp-b-net network ip pool end IP address
+ epc-gtp-net-name:
+ type: string
+ description: gtp net name
+ epc-gtp-net-rt:
+ type: string
+ description: gtp route target
+ epc-gtp-net-cidr:
+ type: string
+ description: gtp stubnet
+ epc-gtp-net-gateway:
+ type: string
+ description: gtp network gateway
+ epc-gtp-pool-start:
+ type: string
+ description: gtp network ip pool start IP address
+ epc-gtp-pool-end:
+ type: string
+ description: gtp network ip pool end IP address
+ static_prefix_sctp_a_1:
+ type: string
+ description: Static Prefix
+ static_prefix_sctp_b_1:
+ type: string
+ description: Static Prefix
+ static_prefix_gtp_1:
+ type: string
+ description: Static Prefix
+ VMME_FSB1_boot_volume:
+ type: string
+ VMME_FSB2_boot_volume:
+ type: string
+
+resources:
+
+ Internal1_ipam:
+ type: OS::Contrail::NetworkIpam
+ properties:
+ name: { get_param: Internal1_ipam_name }
+
+ Internal2_ipam:
+ type: OS::Contrail::NetworkIpam
+ properties:
+ name: { get_param: Internal2_ipam_name }
+
+ Internal1-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+ forwarding_mode: { get_param: Internal1_forwarding_mode }
+ shared: { get_param: Internal1_shared }
+ external: { get_param: Internal1_external }
+# route_targets: { "Fn::Split" : [ ",", Ref: route_targets ] }
+
+ Internal1-subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: Internal1-net }
+ cidr: { get_param: Internal1_cidr }
+ gateway_ip: { get_param: Internal1_default_gateway }
+ enable_dhcp: { get_param: Internal1_dhcp }
+
+
+# Internal1-subnet:
+# type: OS::Contrail::VnSubnet
+# properties:
+# name: { get_param: Internal1_subnet_name }
+# network: { get_resource: Internal1-net }
+# ip_prefix: { get_param: Internal1_cidr }
+ # ipam: { get_resource: Internal1_ipam }
+ # enable_dhcp: { get_param: Internal1_dhcp }
+ # default_gateway: { get_param: Internal1_default_gateway }
+ # allocation_pools:
+ # - start: { get_param: Internal1_net_pool_start }
+ # end: { get_param: Internal1_net_pool_end }
+
+
+
+ Internal2-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal2_name }
+ forwarding_mode: { get_param: Internal2_forwarding_mode }
+ shared: { get_param: Internal2_shared }
+ external: { get_param: Internal2_external }
+# route_targets: { "Fn::Split" : [ ",", Ref: route_targets ] }
+
+# Internal2-subnet:
+# type: OS::Contrail::VnSubnet
+# properties:
+# name: { get_param: Internal2_subnet_name }
+# network: { get_resource: Internal2-net }
+# ip_prefix: { get_param: Internal2_cidr }
+# ipam: { get_resource: Internal2_ipam }
+# enable_dhcp: { get_param: Internal2_dhcp }
+# default_gateway: { get_param: Internal2_default_gateway }
+# allocation_pools:
+# - start: { get_param: Internal2_net_pool_start }
+# end: { get_param: Internal2_net_pool_end }
+
+ Internal2-subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: Internal2-net }
+ cidr: { get_param: Internal2_cidr }
+ gateway_ip: { get_param: Internal2_default_gateway }
+ enable_dhcp: { get_param: Internal2_dhcp }
+
+ epc-sctp-a-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: epc-sctp-a-net-name }
+ route_targets: [ get_param: epc-sctp-a-net-rt ]
+
+
+ epc-sctp-a-subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: epc-sctp-a-net }
+ cidr: { get_param: epc-sctp-a-net-cidr }
+ gateway_ip: { get_param: epc-sctp-a-net-gateway }
+ allocation_pools:
+ - start: { get_param: epc-sctp-a-pool-start }
+ end: { get_param: epc-sctp-a-pool-end }
+
+ epc-sctp-b-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: epc-sctp-b-net-name }
+ route_targets: [ get_param: epc-sctp-b-net-rt ]
+
+ epc-sctp-b-subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: epc-sctp-b-net }
+ cidr: { get_param: epc-sctp-b-net-cidr }
+ gateway_ip: { get_param: epc-sctp-b-net-gateway }
+ allocation_pools:
+ - start: { get_param: epc-sctp-b-pool-start }
+ end: { get_param: epc-sctp-b-pool-end }
+
+ epc-gtp-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: epc-gtp-net-name }
+ route_targets: [ get_param: epc-gtp-net-rt ]
+
+ epc-gtp-subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: epc-gtp-net }
+ cidr: { get_param: epc-gtp-net-cidr }
+ gateway_ip: { get_param: epc-gtp-net-gateway }
+ allocation_pools:
+ - start: { get_param: epc-gtp-pool-start }
+ end: { get_param: epc-gtp-pool-end }
+
+ FSB1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: fsb1-name }
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB1_boot_volume }, delete_on_termination: "false" }]
+ flavor: { get_param: fsb1-flavor }
+ availability_zone: { get_param: fsb_zone }
+ networks:
+ - port: { get_resource: FSB1_Internal1 }
+ - port: { get_resource: FSB1_Internal2 }
+ - port: { get_resource: FSB1_OAM }
+
+ FSB1_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: Internal1-net }
+ mac_address: { get_param: fsb1-Internal1-mac }
+
+ FSB1_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: fsb1-Internal2-mac }
+
+ FSB1_OAM:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_id }
+ fixed_ips:
+ - ip_address: { get_param: fsb1-oam-ip }
+
+ FSB2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: fsb2-name }
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
+ flavor: { get_param: fsb2-flavor }
+ availability_zone: { get_param: fsb_zone }
+ networks:
+ - port: { get_resource: FSB2_Internal1 }
+ - port: { get_resource: FSB2_Internal2 }
+ - port: { get_resource: FSB2_OAM }
+
+ FSB2_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal1-net }
+ mac_address: { get_param: fsb2-Internal1-mac }
+
+
+ FSB2_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: fsb2-Internal2-mac }
+
+ FSB2_OAM:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_id }
+ fixed_ips:
+ - ip_address: { get_param: fsb2-oam-ip }
+
+ NCB1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: ncb1-name }
+ image: { get_param: pxe-image }
+ flavor: { get_param: ncb-flavor }
+ availability_zone: { get_param: ncb_zone }
+ networks:
+ - port: { get_resource: NCB1_Internal1 }
+ - port: { get_resource: NCB1_Internal2 }
+
+ NCB1_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal1-net }
+ mac_address: { get_param: ncb1-Internal1-mac }
+
+ NCB1_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: ncb1-Internal2-mac }
+
+ NCB2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: ncb2-name }
+ image: { get_param: pxe-image }
+ flavor: { get_param: ncb-flavor }
+ availability_zone: { get_param: ncb_zone }
+ networks:
+ - port: { get_resource: NCB2_Internal1 }
+ - port: { get_resource: NCB2_Internal2 }
+
+ NCB2_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal1-net }
+ mac_address: { get_param: ncb2-Internal1-mac }
+
+ NCB2_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: ncb2-Internal2-mac }
+
+ GPB1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: gpb1-name }
+ image: { get_param: pxe-image }
+ flavor: { get_param: gpb-flavor }
+ availability_zone: { get_param: gpb_zone }
+ networks:
+ - port: { get_resource: GPB1_Internal1 }
+ - port: { get_resource: GPB1_Internal2 }
+
+ GPB1_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal1-net }
+ mac_address: { get_param: gpb1-Internal1-mac }
+
+ GPB1_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: gpb1-Internal2-mac }
+
+ GPB2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: gpb2-name }
+ image: { get_param: pxe-image }
+ flavor: { get_param: gpb-flavor }
+ availability_zone: { get_param: gpb_zone }
+ networks:
+ - port: { get_resource: GPB2_Internal1 }
+ - port: { get_resource: GPB2_Internal2 }
+
+ GPB2_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal1-net }
+ mac_address: { get_param: gpb2-Internal1-mac }
+
+ GPB2_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: gpb2-Internal2-mac }
+
+ VLC1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: vlc1-name }
+ image: { get_param: pxe-image }
+ flavor: { get_param: vlc-flavor }
+ availability_zone: { get_param: vlc_zone }
+ networks:
+ - port: { get_resource: VLC1_Internal1 }
+ - port: { get_resource: VLC1_Internal2 }
+ - port: { get_resource: VLC1_OAM }
+ - port: { get_resource: VLC1_SCTP_A }
+ - port: { get_resource: VLC1_SCTP_B }
+ - port: { get_resource: VLC1_GTP }
+
+ VLC1_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal1-net }
+ mac_address: { get_param: vlc1-Internal1-mac }
+
+ VLC1_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: vlc1-Internal2-mac }
+
+ VLC1_OAM:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_id }
+ fixed_ips:
+ - ip_address: { get_param: vlc1-oam-ip }
+
+ VLC1_SCTP_A:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: epc-sctp-a-net }
+ fixed_ips:
+ - ip_address: { get_param: vlc1-sctp-a-ip }
+
+ VLC1_SCTP_B:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: epc-sctp-b-net }
+ fixed_ips:
+ - ip_address: { get_param: vlc1-sctp-b-ip }
+
+ VLC1_GTP:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: epc-gtp-net }
+ fixed_ips:
+ - ip_address: { get_param: vlc1-gtp-ip }
+
+ VLC2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: vlc2-name }
+ image: { get_param: pxe-image }
+ flavor: { get_param: vlc-flavor }
+ availability_zone: { get_param: vlc_zone }
+ networks:
+ - port: { get_resource: VLC2_Internal1 }
+ - port: { get_resource: VLC2_Internal2 }
+ - port: { get_resource: VLC2_OAM }
+ - port: { get_resource: VLC2_SCTP_A }
+ - port: { get_resource: VLC2_SCTP_B }
+ - port: { get_resource: VLC2_GTP }
+
+
+ VLC2_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal1-net }
+ mac_address: { get_param: vlc2-Internal1-mac }
+
+ VLC2_OAM:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_id }
+ fixed_ips:
+ - ip_address: { get_param: vlc2-oam-ip }
+
+ VLC2_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: Internal2-net }
+ mac_address: { get_param: vlc2-Internal2-mac }
+
+ VLC2_SCTP_A:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: epc-sctp-a-net }
+ fixed_ips:
+ - ip_address: { get_param: vlc2-sctp-a-ip }
+
+ VLC2_SCTP_B:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: epc-sctp-b-net }
+ fixed_ips:
+ - ip_address: { get_param: vlc2-sctp-b-ip }
+
+ VLC2_GTP:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: epc-gtp-net }
+ fixed_ips:
+ - ip_address: { get_param: vlc2-gtp-ip }
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.env
new file mode 100644
index 0000000000..750bb2dd44
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.env
@@ -0,0 +1,8 @@
+parameters:
+ volume_type: Gold
+ volume_size: 320
+ FSB_1_image: MME_FSB1_15B-CP04-r5a01
+ FSB_2_image: MME_FSB2_15B-CP04-r5a01
+ FSB1_volume_name: vFSB1_1_Vol_1
+ FSB2_volume_name: vFSB2_1_Vol_1
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.yml
new file mode 100644
index 0000000000..2d695a50c1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/in/vmme_small_create_fsb.yml
@@ -0,0 +1,54 @@
+heat_template_version: 2013-05-23
+
+description: server template for vMME
+
+parameters:
+
+ volume_type:
+ type: string
+ label: volume type
+ description: volume type Gold
+
+ volume_size:
+ type: number
+ label: volume size
+ description: my volume size 320GB
+
+ FSB_1_image:
+ type: string
+ label: MME_FSB1
+ description: MME_FSB1_15B-CP04-r5a01
+
+ FSB_2_image:
+ type: string
+ label: MME_FSB2
+ description: MME_FSB2_15B-CP04-r5a01
+
+ FSB1_volume_name:
+ type: string
+ label: FSB1_volume
+ description: FSB1_volume_1
+
+ FSB2_volume_name:
+ type: string
+ label: FSB2_volume
+ description: FSB2_volume_1
+
+resources:
+
+ FSB1_volume:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: volume_size}
+ volume_type: {get_param: volume_type}
+ name: {get_param: FSB1_volume_name}
+ image: {get_param: FSB_1_image}
+
+ FSB2_volume:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: volume_size}
+ volume_type: {get_param: volume_type}
+ name: {get_param: FSB2_volume_name}
+ image: {get_param: FSB_2_image}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..d1f7bb0857
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4987 @@
+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.FSB2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB_OAM_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB2_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB_OAM_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB2_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_FSB2_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB2_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB2_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB2_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB2_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB2_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB2_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB2_FSB_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB2_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_FSB2_FSB2_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB2_FSB2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB2_FSB2_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB2_FSB2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.outgoing.bytes.rate_FSB2_FSB2_Internal1:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB_OAM:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB_OAM:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: org.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_FSB2_FSB2_Internal1:
+ type: org.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_FSB2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB_OAM:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: org.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_FSB2_FSB2_Internal1:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: org.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_FSB2_FSB2_Internal1:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_FSB2_FSB2_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB2:
+ type: org.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_FSB2_FSB2_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_FSB2_FSB_OAM:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_FSB2_FSB_OAM:
+ type: org.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_FSB2_FSB_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_FSB2_FSB2_Internal2:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: org.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_FSB2_FSB_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB2:
+ type: org.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_FSB2_FSB2_Internal1:
+ type: org.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_FSB2_FSB2_Internal1:
+ type: org.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_FSB2_FSB_OAM:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.allocation_FSB2:
+ type: org.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_FSB2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_FSB2_FSB2_Internal2:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_FSB2_FSB_OAM:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB2_FSB2_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_FSB2_FSB2_Internal1:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB_OAM:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB_OAM:
+ type: org.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_FSB2:
+ type: org.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_FSB2_FSB2_Internal2:
+ type: org.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_FSB2_FSB2_Internal1:
+ type: org.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_FSB2:
+ type: org.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_FSB2:
+ type: org.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.VLC2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_VLC_SCTP_A_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_OAM_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_GTP_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC2_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_VLC_SCTP_B_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_OAM_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC2_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_VLC2_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC2_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC2_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_B_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_GTP_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC2_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_VLC2_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_VLC_SCTP_B_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_GTP_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC2_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_VLC2_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_GTP_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_OAM_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_SCTP_B_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC2_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_VLC2_VLC2_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC2_VLC2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC2_VLC_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC2_VLC_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC2_VLC2_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC2_VLC2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC2_VLC_SCTP_A:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC2_VLC_SCTP_A:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC2_VLC_SCTP_B:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC2_VLC_SCTP_B:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC2_VLC_GTP:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC2_VLC_GTP:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_VLC2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.incoming.bytes_VLC2_VLC_GTP:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_OAM:
+ type: org.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_VLC2_VLC_GTP:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_VLC2_VLC_GTP:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_VLC2_VLC_SCTP_B:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_VLC2_VLC_OAM:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_VLC2:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_VLC2_VLC2_Internal1:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_VLC2_VLC_GTP:
+ type: org.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_VLC2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_VLC2:
+ type: org.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_VLC2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_VLC2_VLC_OAM:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_VLC2:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_OAM:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_GTP:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_VLC2_VLC2_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_OAM:
+ type: org.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_VLC2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_VLC2_VLC2_Internal2:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_VLC2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_VLC2:
+ type: org.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_VLC2_VLC_OAM:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_VLC2:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: org.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_VLC2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_VLC2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_VLC2_VLC2_Internal2:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: org.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_VLC2_VLC_GTP:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_VLC2:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2_VLC_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_VLC2_VLC2_Internal1:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: org.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_VLC2:
+ type: org.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.usage_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_VLC2_VLC_GTP:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: org.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_VLC2_VLC2_Internal1:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_OAM:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_GTP:
+ type: org.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_VLC2_VLC_SCTP_A:
+ type: org.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_VLC2_VLC_SCTP_B:
+ type: org.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_VLC2_VLC_OAM:
+ type: org.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_VLC2_VLC_GTP:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_VLC2:
+ type: org.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_VLC2_VLC_GTP:
+ type: org.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_VLC2_VLC_GTP:
+ type: org.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_VLC2_VLC2_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_VLC2_VLC2_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2:
+ type: org.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_VLC2_VLC_OAM:
+ 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.NCB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_NCB1_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_NCB1_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_NCB1_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_NCB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_NCB1_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_NCB1_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_NCB1_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_NCB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_NCB1_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_NCB1_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_NCB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_NCB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_NCB1_NCB1_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_NCB1_NCB1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_NCB1_NCB1_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_NCB1_NCB1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.write.bytes.rate_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_NCB1_NCB1_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu.delta_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_NCB1:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: org.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_NCB1_NCB1_Internal2:
+ type: org.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_NCB1:
+ type: org.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.usage_NCB1:
+ type: org.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_NCB1_NCB1_Internal2:
+ type: org.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_NCB1_NCB1_Internal2:
+ type: org.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_NCB1:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: org.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_NCB1_NCB1_Internal2:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: org.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_NCB1:
+ type: org.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_NCB1_NCB1_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_NCB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_NCB1_NCB1_Internal2:
+ type: org.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_NCB1:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: org.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_NCB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_NCB1_NCB1_Internal2:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1_NCB1_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_NCB1_NCB1_Internal2:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_NCB1_NCB1_Internal1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_NCB1:
+ type: org.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_NCB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_NCB1_NCB1_Internal2:
+ type: org.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_NCB1_NCB1_Internal1:
+ type: org.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_NCB1:
+ type: org.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_NCB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_NCB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_NCB1:
+ type: org.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_NCB1:
+ type: org.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.NCB2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_NCB2_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_NCB2_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_NCB2_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_NCB2_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_NCB2_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_NCB2_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_NCB2_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_NCB2_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_NCB2_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_NCB2_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_NCB2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_NCB2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_NCB2_NCB2_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_NCB2_NCB2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_NCB2_NCB2_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_NCB2_NCB2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.write.bytes.rate_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_NCB2:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_NCB2_NCB2_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_NCB2_NCB2_Internal2:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: org.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_NCB2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_NCB2_NCB2_Internal1:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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.usage_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_NCB2_NCB2_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_NCB2_NCB2_Internal1:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: org.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_NCB2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_NCB2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2_NCB2_Internal1:
+ type: org.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_NCB2_NCB2_Internal2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_NCB2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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_NCB2:
+ type: org.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.GPB2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_GPB2_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_GPB2_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_GPB2_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_GPB2_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_GPB2_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_GPB2_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_GPB2_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_GPB2_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_GPB2_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_GPB2_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_GPB2_GPB2_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_GPB2_GPB2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_GPB2_GPB2_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_GPB2_GPB2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_GPB2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_GPB2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ endpoint_GPB2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: org.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_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: org.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_GPB2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: org.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_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_GPB2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_GPB2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_GPB2_GPB2_Internal2:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_GPB2_GPB2_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_GPB2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: org.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_GPB2_GPB2_Internal2:
+ type: org.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_GPB2_GPB2_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_GPB2_GPB2_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_GPB2:
+ type: org.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_GPB2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_GPB2:
+ type: org.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.VLC1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_VLC1_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC1_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_SCTP_A_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_OAM_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC1_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_GTP_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_VLC1_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_SCTP_B_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_OAM_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC1_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_VLC_SCTP_A_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_B_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_GTP_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_VLC1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_VLC1_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC1_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_SCTP_B_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_GTP_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_GTP_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_OAM_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_VLC1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_VLC_SCTP_B_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_VLC1_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_VLC1_VLC_SCTP_B:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC1_VLC_SCTP_B:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC1_VLC1_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC1_VLC1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC1_VLC1_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC1_VLC1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC1_VLC_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC1_VLC_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC1_VLC_SCTP_A:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC1_VLC_SCTP_A:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_VLC1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_VLC1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_VLC1_VLC_GTP:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_VLC1_VLC_GTP:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.bytes_VLC1_VLC_OAM:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_VLC1_VLC1_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_VLC1_VLC1_Internal2:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_VLC1_VLC_OAM:
+ type: org.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_VLC1_VLC_GTP:
+ type: org.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_VLC1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_VLC1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_VLC1:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_VLC1_VLC_GTP:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_VLC1:
+ type: org.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_VLC1_VLC_GTP:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_VLC1_VLC_SCTP_B:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_VLC1:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_OAM:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_VLC1_VLC_OAM:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_VLC1:
+ type: org.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_VLC1_VLC_GTP:
+ type: org.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_VLC1_VLC_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_VLC1_VLC_OAM:
+ type: org.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_VLC1_VLC_GTP:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_VLC1_VLC1_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: org.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_VLC1_VLC_GTP:
+ type: org.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_VLC1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_VLC1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_VLC1_VLC_GTP:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: org.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_VLC1_VLC_OAM:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1_VLC_GTP:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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.usage_VLC1:
+ type: org.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_VLC1_VLC_GTP:
+ type: org.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_VLC1_VLC_OAM:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1_VLC_OAM:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes.rate_VLC1:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_OAM:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: org.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_VLC1_VLC_GTP:
+ type: org.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_VLC1:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: org.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_VLC1:
+ type: org.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_VLC1_VLC_SCTP_A:
+ type: org.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_VLC1_VLC1_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu.delta_VLC1:
+ type: org.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_VLC1_VLC1_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.read.bytes_VLC1:
+ type: org.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_VLC1_VLC_SCTP_B:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_VLC1_VLC_SCTP_A:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_VLC1_VLC_GTP:
+ 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.FSB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB1_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB1_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB1_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_FSB1_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB1_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB1_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB1_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB1_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB1_FSB1_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB1_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_FSB1_FSB_OAM:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_FSB1_FSB1_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1_FSB1_Internal1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: org.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_FSB1_FSB1_Internal1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_FSB1_FSB1_Internal1:
+ type: org.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.usage_FSB1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: org.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_FSB1_FSB1_Internal1:
+ type: org.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_FSB1_FSB1_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_FSB1_FSB1_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal2:
+ type: org.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_FSB1_FSB1_Internal1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB1_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_FSB1_FSB1_Internal2:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_FSB1_FSB1_Internal1:
+ type: org.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_FSB1_FSB1_Internal2:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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.GPB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_GPB1_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_GPB1_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_GPB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_GPB1_Internal2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_GPB1_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_GPB1_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_GPB1_Internal1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_GPB1_Internal1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_GPB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_GPB1_Internal2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_GPB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_GPB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_GPB1_GPB1_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_GPB1_GPB1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_GPB1_GPB1_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_GPB1_GPB1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.outgoing.packets.rate_GPB1_GPB1_Internal2:
+ type: org.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_GPB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_GPB1_GPB1_Internal1:
+ type: org.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_GPB1:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_GPB1_GPB1_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_GPB1_GPB1_Internal2:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: org.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_GPB1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_GPB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_GPB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_GPB1_GPB1_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_GPB1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: org.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_GPB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1:
+ type: org.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_GPB1_GPB1_Internal1:
+ type: org.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_GPB1_GPB1_Internal2:
+ type: org.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_GPB1:
+ type: org.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.usage_GPB1:
+ type: org.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_GPB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_GPB1:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..8e78b6635d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/MainServiceTemplate.yaml
@@ -0,0 +1,1346 @@
+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:
+ Internal2_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: Internal2-subnet
+ vlc2-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc2-Internal2
+ default: 00:81:37:0E:02:12
+ epc-sctp-a-net-rt:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-a route target
+ default: 13979:105717
+ epc-sctp-b-net-rt:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-b route target
+ default: 13979:105719
+ gpb-flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for servers gpb
+ default: m4.xlarge4
+ Internal1_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.253.0.0/17
+ epc-sctp-a-pool-start:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-a-net network ip pool start IP address
+ default: 107.243.37.3
+ Internal2_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: vmme_int_int_sub_2
+ Internal1_subnet_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: vmme_int_int_sub_1
+ gpb1-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to gpb1-Internal1
+ default: 00:80:37:0E:01:22
+ gpb1-Internal1-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.254.0.101
+ FSB_1_image:
+ label: MME_FSB1
+ hidden: false
+ immutable: false
+ type: string
+ description: MME_FSB1_15B-CP04-r5a01
+ default: MME_FSB1_15B-CP04-r5a01
+ fsb1-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to fsb1-Internal2
+ default: 00:81:37:0E:0B:12
+ ncb_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: cluster for spawnning ncb instances
+ default: nova
+ Internal2_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: vmme_int_int_2
+ epc-sctp-a-pool-end:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-a-net network ip pool end IP address
+ default: 107.243.37.30
+ Internal1_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: Internal1-subnet
+ gpb2-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of gpb2
+ default: ZRDM1MMEX33GPB002
+ fsb2-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to fsb2-Internal1
+ default: 00:80:37:0E:0D:12
+ fsb2-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of fsb1
+ default: ZRDM1MMEX33FSB002
+ static_prefix_sctp_b_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Static Prefix
+ default: 107.239.40.64/30
+ fsb2-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.250.172.222
+ fsb2-flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for servers fsb2
+ default: m4.xlarge4
+ fsb2-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to fsb2-Internal2
+ default: 00:81:37:0E:0D:12
+ ncb2-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to ncb2-Internal1
+ default: 00:80:37:0E:0F:12
+ ncb2-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of ncb2
+ default: ZRDM1MMEX33NCB002
+ epc-sctp-b-pool-end:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-b-net network ip pool end IP address
+ default: 107.243.37.62
+ vlc1-gtp-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.243.37.67
+ epc-sctp-b-pool-start:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-b-net network ip pool start IP address
+ default: 107.243.37.35
+ Internal2_shared:
+ hidden: false
+ immutable: false
+ type: string
+ default: 'False'
+ Internal1_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: vmme_int_int_1
+ vlc2-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of vlc2
+ default: ZRDM1MMEX33VLC002
+ Internal2_ipam_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: vmme_ipam_int2
+ vlc1-sctp-b-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.243.37.35
+ Internal1_net_pool_end:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.253.0.254
+ Internal1_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.253.0.3
+ ncb1-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to ncb1-Internal1
+ default: 00:80:37:0E:09:12
+ epc-gtp-net-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: gtp net name
+ default: EPC-GTP
+ vlc1-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1-Internal1
+ default: 00:80:37:0E:01:12
+ gpb2-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to gpb2-Internal1
+ default: 00:80:37:0E:02:22
+ epc-gtp-net-cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: gtp stubnet
+ default: 107.243.37.64/27
+ oam_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: uuid of oam network
+ default: 47bf4cca-0961-422f-bcd6-d5a4fbb1a351
+ vlc_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: cluster for spawnning vlc instances
+ default: nova
+ vlc2-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc2-Internal1
+ default: 00:80:37:0E:02:12
+ epc-sctp-a-net-cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-a subnet
+ default: 107.243.37.0/27
+ Internal1_forwarding_mode:
+ hidden: false
+ immutable: false
+ type: string
+ default: l2
+ Internal2_dhcp:
+ hidden: false
+ immutable: false
+ type: boolean
+ default: false
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.250.172.221
+ FSB_2_image:
+ label: MME_FSB2
+ hidden: false
+ immutable: false
+ type: string
+ description: MME_FSB2_15B-CP04-r5a01
+ default: MME_FSB2_15B-CP04-r5a01
+ vlc1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.250.172.227
+ epc-sctp-a-net-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-a net name
+ default: EPC-SCTP-A
+ vlc2-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.250.172.228
+ Internal2_net_pool_start:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.255.0.100
+ FSB1_volume_name:
+ label: FSB1_volume
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_volume_1
+ default: vFSB1_1_Vol_1
+ vlc1-sctp-a-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.243.37.3
+ Internal1_ipam_name:
+ hidden: false
+ immutable: false
+ type: string
+ default: vmme_ipam_int1
+ Internal1_dhcp:
+ hidden: false
+ immutable: false
+ type: boolean
+ default: false
+ Internal2_external:
+ hidden: false
+ immutable: false
+ type: string
+ default: 'False'
+ Internal2_forwarding_mode:
+ hidden: false
+ immutable: false
+ type: string
+ default: l2
+ vlc1-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of vlc1
+ default: ZRDM1MMEX33VLC002
+ vlc-flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for servers vlc
+ default: m4.xlarge4
+ epc-gtp-net-rt:
+ hidden: false
+ immutable: false
+ type: string
+ description: gtp route target
+ default: 13979:105715
+ gpb_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: cluster for spawnning gpb instances
+ default: nova
+ gpb1-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to gpb1-Internal2
+ default: 00:81:37:0E:01:22
+ fsb1-Internal1-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to fsb1-Internal1
+ default: 00:80:37:0E:0B:12
+ FSB2_volume_name:
+ label: FSB2_volume
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_volume_1
+ default: vFSB2_1_Vol_1
+ VMME_FSB2_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ default: 089a0d11-4b15-4370-8343-3f90907b1221
+ fsb_zone:
+ hidden: false
+ immutable: false
+ type: string
+ description: cluster for spawnning fsb instances
+ default: nova
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ default: 8248e794-6173-4b49-b9c3-8219b0b56f4e
+ Internal2_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.255.0.3
+ Internal1_external:
+ hidden: false
+ immutable: false
+ type: string
+ default: 'False'
+ vlc2-sctp-a-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.243.37.4
+ ncb-flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for servers ncb
+ default: m4.xlarge4
+ Internal1_shared:
+ hidden: false
+ immutable: false
+ type: string
+ default: 'False'
+ fsb1-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of fsb1
+ default: ZRDM1MMEX33FSB001
+ static_prefix_gtp_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Static Prefix
+ default: 107.239.40.96/30
+ epc-sctp-b-net-gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-b-net network gateway
+ default: 107.243.37.33
+ epc-sctp-b-net-cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-b subnet
+ default: 107.243.37.32/24
+ epc-gtp-pool-end:
+ hidden: false
+ immutable: false
+ type: string
+ description: gtp network ip pool end IP address
+ default: 107.243.37.94
+ epc-sctp-a-net-gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-a-net network gateway
+ default: 107.243.37.1
+ vlc2-gtp-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.243.37.68
+ vlc2-sctp-b-ip:
+ hidden: false
+ immutable: false
+ type: string
+ default: 107.243.37.36
+ Internal1_net_pool_start:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.253.0.100
+ volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ default: 320
+ fsb2-image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of image to use for server fsb2
+ default: MME_FSB2_15B-CP04-r5a01
+ ncb2-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to ncb2-Internal2
+ default: 00:81:37:0E:0F:12
+ ncb1-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of ncb1
+ default: ZRDM1MMEX33NCB001
+ fsb1-image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of image to use for server fsb1
+ default: MME_FSB1_15B-CP04-r5a01
+ fsb1-flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for servers fsb1
+ default: m4.xlarge4
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ default: Gold
+ Internal2_net_pool_end:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.255.0.254
+ epc-sctp-b-net-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: epc-sctp-b net name
+ default: EPC-SCTP-B
+ Internal2_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ default: 169.255.0.0/17
+ epc-gtp-net-gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: gtp network gateway
+ default: 107.243.37.65
+ gpb2-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to gpb2-Internal2
+ default: 00:81:37:0E:02:22
+ ncb1-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to ncb1-Internal2
+ default: 00:81:37:0E:09:12
+ epc-gtp-pool-start:
+ hidden: false
+ immutable: false
+ type: string
+ description: gtp network ip pool start IP address
+ default: 107.243.37.67
+ static_prefix_sctp_a_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Static Prefix
+ default: 107.239.40.32/30
+ gpb1-name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of gpb1
+ default: ZRDM1MMEX33GPB001
+ pxe-image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of image to use for server ncb
+ default: MME_PXE-BOOT_cxp9025898_2r5a01.qcow2
+ vlc1-Internal2-mac:
+ hidden: false
+ immutable: false
+ type: string
+ description: static mac address assigned to vlc1-Internal2
+ default: 00:81:37:0E:01:12
+ node_templates:
+ epc-gtp-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ route_targets:
+ - get_input: epc-gtp-net-rt
+ network_name:
+ get_input: epc-gtp-net-name
+ subnets:
+ epc-gtp-subnet:
+ cidr:
+ get_input: epc-gtp-net-cidr
+ gateway_ip:
+ get_input: epc-gtp-net-gateway
+ allocation_pools:
+ - start:
+ get_input: epc-gtp-pool-start
+ end:
+ get_input: epc-gtp-pool-end
+ FSB1_volume:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ image:
+ get_input: FSB_1_image
+ volume_type:
+ get_input: volume_type
+ size: '(get_input : volume_size) * 1024'
+ name:
+ get_input: FSB1_volume_name
+ FSB2_volume:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ image:
+ get_input: FSB_2_image
+ volume_type:
+ get_input: volume_type
+ size: '(get_input : volume_size) * 1024'
+ name:
+ get_input: FSB2_volume_name
+ abstract_VLC2:
+ type: org.openecomp.resource.abstract.nodes.VLC2
+ directives:
+ - substitutable
+ properties:
+ port_VLC_SCTP_A_network:
+ - epc-sctp-a-net
+ port_VLC_OAM_network_role_tag:
+ - oam
+ port_VLC_GTP_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC2_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_VLC_SCTP_A_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: vlc-flavor
+ port_VLC_SCTP_B_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC_SCTP_A_fixed_ips:
+ - - ip_address:
+ get_input: vlc2-sctp-a-ip
+ port_VLC_OAM_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC2_Internal2_mac_address:
+ - get_input: vlc2-Internal2-mac
+ port_VLC_OAM_fixed_ips:
+ - - ip_address:
+ get_input: vlc2-oam-ip
+ vm_image_name:
+ get_input: pxe-image
+ port_VLC2_Internal1_mac_address:
+ - get_input: vlc2-Internal1-mac
+ port_VLC2_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_VLC2_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_VLC_SCTP_A_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC_SCTP_B_network:
+ - epc-sctp-b-net
+ port_VLC_GTP_network:
+ - epc-gtp-net
+ port_VLC2_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_VLC2_name:
+ - get_input: vlc2-name
+ port_VLC_SCTP_B_fixed_ips:
+ - - ip_address:
+ get_input: vlc2-sctp-b-ip
+ port_VLC_GTP_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_VLC2_Internal1_network:
+ - Internal1-net
+ compute_VLC2_availability_zone:
+ - get_input: vlc_zone
+ port_VLC_GTP_fixed_ips:
+ - - ip_address:
+ get_input: vlc2-gtp-ip
+ port_VLC_OAM_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_VLC_OAM_network:
+ - get_input: oam_net_id
+ port_VLC_SCTP_B_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_VLC2_Internal2_network:
+ - Internal2-net
+ service_template_filter:
+ substitute_service_template: Nested_VLC2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_VLC2_VLC2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC2_VLC2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC2_VLC_SCTP_B:
+ capability: tosca.capabilities.network.Linkable
+ node: epc-sctp-b-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC2_VLC_SCTP_A:
+ capability: tosca.capabilities.network.Linkable
+ node: epc-sctp-a-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC2_VLC_GTP:
+ capability: tosca.capabilities.network.Linkable
+ node: epc-gtp-net
+ relationship: tosca.relationships.network.LinksTo
+ abstract_VLC1:
+ type: org.openecomp.resource.abstract.nodes.VLC1
+ directives:
+ - substitutable
+ properties:
+ port_VLC1_Internal2_mac_address:
+ - get_input: vlc1-Internal2-mac
+ port_VLC1_Internal1_network:
+ - Internal1-net
+ port_VLC_SCTP_A_network:
+ - epc-sctp-a-net
+ port_VLC_OAM_network_role_tag:
+ - oam
+ port_VLC1_Internal1_mac_address:
+ - get_input: vlc1-Internal1-mac
+ port_VLC_GTP_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC_SCTP_A_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: vlc-flavor
+ port_VLC1_Internal2_network:
+ - Internal2-net
+ port_VLC_SCTP_B_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC_SCTP_A_fixed_ips:
+ - - ip_address:
+ get_input: vlc1-sctp-a-ip
+ port_VLC_OAM_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC1_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_VLC_OAM_fixed_ips:
+ - - ip_address:
+ get_input: vlc1-oam-ip
+ vm_image_name:
+ get_input: pxe-image
+ port_VLC_SCTP_A_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_VLC_SCTP_B_network:
+ - epc-sctp-b-net
+ port_VLC_GTP_network:
+ - epc-gtp-net
+ compute_VLC1_availability_zone:
+ - get_input: vlc_zone
+ port_VLC1_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_VLC1_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_VLC_SCTP_B_fixed_ips:
+ - - ip_address:
+ get_input: vlc1-sctp-b-ip
+ port_VLC_GTP_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_VLC_GTP_fixed_ips:
+ - - ip_address:
+ get_input: vlc1-gtp-ip
+ port_VLC_OAM_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_VLC_OAM_network:
+ - get_input: oam_net_id
+ compute_VLC1_name:
+ - get_input: vlc1-name
+ port_VLC_SCTP_B_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_VLC1_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_VLC1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_VLC1_VLC1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC1_VLC1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC1_VLC_SCTP_B:
+ capability: tosca.capabilities.network.Linkable
+ node: epc-sctp-b-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC1_VLC_SCTP_A:
+ capability: tosca.capabilities.network.Linkable
+ node: epc-sctp-a-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_VLC1_VLC_GTP:
+ capability: tosca.capabilities.network.Linkable
+ node: epc-gtp-net
+ relationship: tosca.relationships.network.LinksTo
+ Internal1-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ dhcp_enabled:
+ get_input: Internal1_dhcp
+ shared:
+ get_input: Internal1_shared
+ forwarding_mode:
+ get_input: Internal1_forwarding_mode
+ external:
+ get_input: Internal1_external
+ network_name:
+ get_input: Internal1_net_name
+ subnets:
+ Internal1-subnet:
+ enable_dhcp:
+ get_input: Internal1_dhcp
+ cidr:
+ get_input: Internal1_cidr
+ gateway_ip:
+ get_input: Internal1_default_gateway
+ abstract_GPB1:
+ type: org.openecomp.resource.abstract.nodes.GPB1
+ directives:
+ - substitutable
+ properties:
+ port_GPB1_Internal2_network:
+ - Internal2-net
+ port_GPB1_Internal1_network:
+ - Internal1-net
+ compute_GPB1_name:
+ - get_input: gpb1-name
+ vm_flavor_name:
+ get_input: gpb-flavor
+ port_GPB1_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_GPB1_Internal1_mac_address:
+ - get_input: gpb1-Internal1-mac
+ port_GPB1_Internal2_mac_address:
+ - get_input: gpb1-Internal2-mac
+ vm_image_name:
+ get_input: pxe-image
+ port_GPB1_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_GPB1_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ compute_GPB1_availability_zone:
+ - get_input: gpb_zone
+ port_GPB1_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_GPB1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_GPB1_GPB1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_GPB1_GPB1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ abstract_GPB2:
+ type: org.openecomp.resource.abstract.nodes.GPB2
+ directives:
+ - substitutable
+ properties:
+ port_GPB2_Internal2_mac_address:
+ - get_input: gpb2-Internal2-mac
+ port_GPB2_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_GPB2_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_GPB2_Internal1_network:
+ - Internal1-net
+ compute_GPB2_availability_zone:
+ - get_input: gpb_zone
+ vm_flavor_name:
+ get_input: gpb-flavor
+ port_GPB2_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_GPB2_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pxe-image
+ compute_GPB2_name:
+ - get_input: gpb2-name
+ port_GPB2_Internal1_mac_address:
+ - get_input: gpb2-Internal1-mac
+ port_GPB2_Internal2_network:
+ - Internal2-net
+ service_template_filter:
+ substitute_service_template: Nested_GPB2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_GPB2_GPB2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_GPB2_GPB2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ Internal2-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ dhcp_enabled:
+ get_input: Internal2_dhcp
+ shared:
+ get_input: Internal2_shared
+ forwarding_mode:
+ get_input: Internal2_forwarding_mode
+ external:
+ get_input: Internal2_external
+ network_name:
+ get_input: Internal2_name
+ subnets:
+ Internal2-subnet:
+ enable_dhcp:
+ get_input: Internal2_dhcp
+ cidr:
+ get_input: Internal2_cidr
+ gateway_ip:
+ get_input: Internal2_default_gateway
+ epc-sctp-a-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ route_targets:
+ - get_input: epc-sctp-a-net-rt
+ network_name:
+ get_input: epc-sctp-a-net-name
+ subnets:
+ epc-sctp-a-subnet:
+ cidr:
+ get_input: epc-sctp-a-net-cidr
+ gateway_ip:
+ get_input: epc-sctp-a-net-gateway
+ allocation_pools:
+ - start:
+ get_input: epc-sctp-a-pool-start
+ end:
+ get_input: epc-sctp-a-pool-end
+ abstract_NCB1:
+ type: org.openecomp.resource.abstract.nodes.NCB1
+ directives:
+ - substitutable
+ properties:
+ port_NCB1_Internal2_mac_address:
+ - get_input: ncb1-Internal2-mac
+ port_NCB1_Internal1_mac_address:
+ - get_input: ncb1-Internal1-mac
+ port_NCB1_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: ncb-flavor
+ compute_NCB1_name:
+ - get_input: ncb1-name
+ port_NCB1_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_NCB1_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_NCB1_Internal1_network:
+ - Internal1-net
+ compute_NCB1_availability_zone:
+ - get_input: ncb_zone
+ vm_image_name:
+ get_input: pxe-image
+ port_NCB1_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_NCB1_Internal2_network:
+ - Internal2-net
+ service_template_filter:
+ substitute_service_template: Nested_NCB1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_NCB1_NCB1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_NCB1_NCB1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ abstract_NCB2:
+ type: org.openecomp.resource.abstract.nodes.NCB2
+ directives:
+ - substitutable
+ properties:
+ port_NCB2_Internal1_network:
+ - Internal1-net
+ compute_NCB2_availability_zone:
+ - get_input: ncb_zone
+ port_NCB2_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: ncb-flavor
+ port_NCB2_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_NCB2_Internal2_network:
+ - Internal2-net
+ port_NCB2_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_NCB2_Internal1_mac_address:
+ - get_input: ncb2-Internal1-mac
+ port_NCB2_Internal2_mac_address:
+ - get_input: ncb2-Internal2-mac
+ vm_image_name:
+ get_input: pxe-image
+ compute_NCB2_name:
+ - get_input: ncb2-name
+ port_NCB2_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_NCB2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_NCB2_NCB2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_NCB2_NCB2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ epc-sctp-b-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ route_targets:
+ - get_input: epc-sctp-b-net-rt
+ network_name:
+ get_input: epc-sctp-b-net-name
+ subnets:
+ epc-sctp-b-subnet:
+ cidr:
+ get_input: epc-sctp-b-net-cidr
+ gateway_ip:
+ get_input: epc-sctp-b-net-gateway
+ allocation_pools:
+ - start:
+ get_input: epc-sctp-b-pool-start
+ end:
+ get_input: epc-sctp-b-pool-end
+ abstract_FSB1:
+ type: org.openecomp.resource.abstract.nodes.FSB1
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal1_mac_address:
+ - get_input: fsb1-Internal1-mac
+ port_FSB_OAM_network_role_tag:
+ - oam
+ port_FSB1_Internal2_network:
+ - Internal2-net
+ port_FSB_OAM_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_FSB1_availability_zone:
+ - get_input: fsb_zone
+ port_FSB1_Internal1_network:
+ - Internal1-net
+ vm_flavor_name:
+ get_input: fsb1-flavor
+ port_FSB1_Internal2_mac_address:
+ - get_input: fsb1-Internal2-mac
+ port_FSB_OAM_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_FSB1_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_FSB1_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb1-oam-ip
+ compute_FSB1_name:
+ - get_input: fsb1-name
+ port_FSB1_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_FSB1_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_FSB_OAM_network:
+ - get_input: oam_net_id
+ service_template_filter:
+ substitute_service_template: Nested_FSB1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_FSB1_FSB1_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB1_FSB1_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ abstract_FSB2:
+ type: org.openecomp.resource.abstract.nodes.FSB2
+ directives:
+ - substitutable
+ properties:
+ port_FSB_OAM_network_role_tag:
+ - oam
+ port_FSB2_Internal2_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_FSB_OAM_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_FSB2_Internal2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_FSB2_Internal2_network:
+ - Internal2-net
+ vm_flavor_name:
+ get_input: fsb2-flavor
+ compute_FSB2_availability_zone:
+ - get_input: fsb_zone
+ port_FSB_OAM_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ port_FSB2_Internal1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_FSB2_name:
+ - get_input: fsb2-name
+ port_FSB2_Internal1_mac_address:
+ - get_input: fsb2-Internal1-mac
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb2-oam-ip
+ port_FSB2_Internal1_mac_requirements:
+ - mac_count_required:
+ is_required: true
+ port_FSB_OAM_network:
+ - get_input: oam_net_id
+ port_FSB2_Internal1_network:
+ - Internal1-net
+ port_FSB2_Internal2_mac_address:
+ - get_input: fsb2-Internal2-mac
+ service_template_filter:
+ substitute_service_template: Nested_FSB2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_FSB2_FSB2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB2_FSB2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ vmme_small_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vmme_small.yml
+ description: HOT template to create vmme 2 fsb 2 ncb 2 gbp 2 vlc
+ members:
+ - epc-gtp-net
+ - Internal1-net
+ - Internal2-net
+ - epc-sctp-a-net
+ - epc-sctp-b-net
+ - abstract_NCB1
+ - abstract_GPB2
+ - abstract_NCB2
+ - abstract_GPB1
+ - abstract_FSB2
+ - abstract_VLC1
+ - abstract_FSB1
+ - abstract_VLC2
+ vmme_small_create_fsb_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vmme_small_create_fsb.yml
+ description: server template for vMME
+ members:
+ - FSB1_volume
+ - FSB2_volume \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml
new file mode 100644
index 0000000000..4331ecaa03
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB1ServiceTemplate.yaml
@@ -0,0 +1,438 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB1_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB1_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB1_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_FSB1_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB1_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB1_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB1_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB1_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB1_FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_FSB1_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_FSB1_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_FSB1_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB1_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_FSB1_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_FSB1_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_FSB1_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB1_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_FSB_OAM_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_FSB_OAM_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_FSB_OAM_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_FSB_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_FSB_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ name:
+ get_input:
+ - compute_FSB1_name
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.packets.rate
+ attachment_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - attachment
+ binding_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - binding
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ binding_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - binding
+ binding_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - binding
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ network.outgoing.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes.rate
+ feature_FSB1:
+ - FSB1
+ - feature
+ feature_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - feature
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ instance_FSB1:
+ - FSB1
+ - instance
+ network.incoming.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ network.incoming.packets_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.incoming.packets
+ network.incoming.packets_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.incoming.packets
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ network.outgoing.bytes_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.outgoing.bytes
+ network.outgoing.bytes_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.outgoing.bytes
+ network.incoming.bytes.rate_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.incoming.bytes.rate
+ network.outpoing.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outpoing.packets
+ memory_FSB1:
+ - FSB1
+ - memory
+ network.incoming.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes.rate
+ network.outgoing.packets.rate_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.outgoing.packets.rate
+ network.outgoing.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ network.incoming.packets.rate_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.incoming.packets.rate
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ network.incoming.packets.rate_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.incoming.packets.rate
+ network.outpoing.packets_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.outpoing.packets
+ attachment_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - attachment
+ attachment_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - attachment
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.outgoing.bytes.rate
+ host_FSB1:
+ - FSB1
+ - host
+ feature_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - feature
+ network.outpoing.packets_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.outpoing.packets
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ feature_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - feature
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ network.incoming.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets.rate
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ network.incoming.bytes_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - network.incoming.bytes
+ network.incoming.bytes_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - network.incoming.bytes
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ network.incoming.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ link_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - link
+ link_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - link
+ dependency_FSB1_FSB1_Internal2:
+ - FSB1_FSB1_Internal2
+ - dependency
+ dependency_FSB1_FSB1_Internal1:
+ - FSB1_FSB1_Internal1
+ - dependency
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
+ dependency_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - dependency
+ link_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - 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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml
new file mode 100644
index 0000000000..a4d2f79275
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_FSB2ServiceTemplate.yaml
@@ -0,0 +1,438 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB_OAM_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB2_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB_OAM_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB2_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_FSB2_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB2_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB2_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB2_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB2_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB2_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB2_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB2_FSB_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_FSB_OAM_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_FSB_OAM_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_FSB_OAM_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_FSB_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_FSB_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2
+ relationship: tosca.relationships.network.BindsTo
+ FSB2:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB2
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB2_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ name:
+ get_input:
+ - compute_FSB2_name
+ - index_value
+ FSB2_FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_FSB2_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_FSB2_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_FSB2_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_FSB2_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_FSB2_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_FSB2_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB2
+ capabilities:
+ network.outgoing.bytes.rate_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.outgoing.bytes.rate
+ disk.device.write.requests.rate_FSB2:
+ - FSB2
+ - disk.device.write.requests.rate
+ disk.read.bytes.rate_FSB2:
+ - FSB2
+ - disk.read.bytes.rate
+ disk.read.bytes_FSB2:
+ - FSB2
+ - disk.read.bytes
+ disk.capacity_FSB2:
+ - FSB2
+ - disk.capacity
+ disk.device.latency_FSB2:
+ - FSB2
+ - disk.device.latency
+ network.incoming.bytes.rate_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.incoming.bytes.rate
+ disk.allocation_FSB2:
+ - FSB2
+ - disk.allocation
+ disk.device.capacity_FSB2:
+ - FSB2
+ - disk.device.capacity
+ cpu_util_FSB2:
+ - FSB2
+ - cpu_util
+ network.outgoing.bytes_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.outgoing.bytes
+ network.incoming.bytes_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.incoming.bytes
+ network.incoming.bytes_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.incoming.bytes
+ feature_FSB2:
+ - FSB2
+ - feature
+ memory.resident_FSB2:
+ - FSB2
+ - memory.resident
+ disk.write.requests.rate_FSB2:
+ - FSB2
+ - disk.write.requests.rate
+ network.incoming.packets.rate_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.incoming.packets.rate
+ instance_FSB2:
+ - FSB2
+ - instance
+ cpu_FSB2:
+ - FSB2
+ - cpu
+ network.outgoing.bytes_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.outgoing.bytes
+ network.outgoing.bytes_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.outgoing.bytes
+ disk.device.read.bytes.rate_FSB2:
+ - FSB2
+ - disk.device.read.bytes.rate
+ network.incoming.packets.rate_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.incoming.packets.rate
+ disk.root.size_FSB2:
+ - FSB2
+ - disk.root.size
+ cpu.delta_FSB2:
+ - FSB2
+ - cpu.delta
+ disk.write.bytes_FSB2:
+ - FSB2
+ - disk.write.bytes
+ disk.device.read.requests.rate_FSB2:
+ - FSB2
+ - disk.device.read.requests.rate
+ binding_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - binding
+ binding_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - binding
+ disk.ephemeral.size_FSB2:
+ - FSB2
+ - disk.ephemeral.size
+ disk.device.read.requests_FSB2:
+ - FSB2
+ - disk.device.read.requests
+ binding_FSB2:
+ - FSB2
+ - binding
+ disk.device.write.bytes_FSB2:
+ - FSB2
+ - disk.device.write.bytes
+ attachment_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - attachment
+ network.incoming.packets_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.incoming.packets
+ attachment_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - attachment
+ network.outgoing.packets.rate_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.outgoing.packets.rate
+ attachment_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - attachment
+ memory_FSB2:
+ - FSB2
+ - memory
+ disk.device.read.bytes_FSB2:
+ - FSB2
+ - disk.device.read.bytes
+ scalable_FSB2:
+ - FSB2
+ - scalable
+ disk.write.bytes.rate_FSB2:
+ - FSB2
+ - disk.write.bytes.rate
+ disk.device.usage_FSB2:
+ - FSB2
+ - disk.device.usage
+ disk.write.requests_FSB2:
+ - FSB2
+ - disk.write.requests
+ os_FSB2:
+ - FSB2
+ - os
+ network.incoming.bytes.rate_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.incoming.bytes.rate
+ network.incoming.packets_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.incoming.packets
+ feature_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - feature
+ disk.usage_FSB2:
+ - FSB2
+ - disk.usage
+ network.incoming.bytes.rate_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.incoming.bytes.rate
+ network.incoming.packets_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.incoming.packets
+ binding_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - binding
+ disk.device.allocation_FSB2:
+ - FSB2
+ - disk.device.allocation
+ vcpus_FSB2:
+ - FSB2
+ - vcpus
+ host_FSB2:
+ - FSB2
+ - host
+ network.outpoing.packets_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_FSB2:
+ - FSB2
+ - disk.device.write.bytes.rate
+ endpoint_FSB2:
+ - FSB2
+ - endpoint
+ network.outgoing.bytes.rate_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.outgoing.bytes.rate
+ feature_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - feature
+ feature_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - feature
+ network.outpoing.packets_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.outpoing.packets
+ disk.latency_FSB2:
+ - FSB2
+ - disk.latency
+ network.outpoing.packets_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.outpoing.packets
+ disk.read.requests_FSB2:
+ - FSB2
+ - disk.read.requests
+ disk.device.iops_FSB2:
+ - FSB2
+ - disk.device.iops
+ network.incoming.bytes_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - network.incoming.bytes
+ disk.device.write.requests_FSB2:
+ - FSB2
+ - disk.device.write.requests
+ network.outgoing.packets.rate_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - network.outgoing.packets.rate
+ memory.usage_FSB2:
+ - FSB2
+ - memory.usage
+ disk.iops_FSB2:
+ - FSB2
+ - disk.iops
+ requirements:
+ dependency_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - dependency
+ link_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - link
+ dependency_FSB2_FSB2_Internal1:
+ - FSB2_FSB2_Internal1
+ - dependency
+ dependency_FSB2:
+ - FSB2
+ - dependency
+ link_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - link
+ dependency_FSB2_FSB_OAM:
+ - FSB2_FSB_OAM
+ - dependency
+ local_storage_FSB2:
+ - FSB2
+ - local_storage
+ link_FSB2_FSB2_Internal2:
+ - FSB2_FSB2_Internal2
+ - 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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml
new file mode 100644
index 0000000000..b8e6141f9b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB1ServiceTemplate.yaml
@@ -0,0 +1,351 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_GPB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.GPB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_GPB1_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_GPB1_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_GPB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_GPB1_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_GPB1_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_GPB1_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_GPB1_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_GPB1_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_GPB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_GPB1_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ GPB1:
+ type: org.openecomp.resource.vfc.nodes.heat.GPB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_GPB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_GPB1_name
+ - index_value
+ GPB1_GPB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_GPB1_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_GPB1_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_GPB1_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_GPB1_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: GPB1
+ relationship: tosca.relationships.network.BindsTo
+ GPB1_GPB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_GPB1_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_GPB1_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_GPB1_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_GPB1_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: GPB1
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.GPB1
+ capabilities:
+ network.outgoing.packets.rate_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.outgoing.packets.rate
+ endpoint_GPB1:
+ - GPB1
+ - endpoint
+ network.outgoing.packets.rate_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.outgoing.packets.rate
+ disk.read.requests_GPB1:
+ - GPB1
+ - disk.read.requests
+ attachment_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - attachment
+ attachment_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - attachment
+ disk.device.read.requests_GPB1:
+ - GPB1
+ - disk.device.read.requests
+ cpu_util_GPB1:
+ - GPB1
+ - cpu_util
+ feature_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - feature
+ disk.device.write.bytes_GPB1:
+ - GPB1
+ - disk.device.write.bytes
+ disk.device.iops_GPB1:
+ - GPB1
+ - disk.device.iops
+ memory.usage_GPB1:
+ - GPB1
+ - memory.usage
+ network.outpoing.packets_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.outpoing.packets
+ feature_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - feature
+ network.outgoing.bytes.rate_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.incoming.bytes
+ network.incoming.bytes_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.incoming.bytes
+ disk.ephemeral.size_GPB1:
+ - GPB1
+ - disk.ephemeral.size
+ network.outpoing.packets_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.outpoing.packets
+ network.incoming.packets.rate_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.incoming.packets.rate
+ host_GPB1:
+ - GPB1
+ - host
+ scalable_GPB1:
+ - GPB1
+ - scalable
+ disk.device.write.requests.rate_GPB1:
+ - GPB1
+ - disk.device.write.requests.rate
+ memory_GPB1:
+ - GPB1
+ - memory
+ disk.device.read.requests.rate_GPB1:
+ - GPB1
+ - disk.device.read.requests.rate
+ disk.read.bytes_GPB1:
+ - GPB1
+ - disk.read.bytes
+ vcpus_GPB1:
+ - GPB1
+ - vcpus
+ disk.root.size_GPB1:
+ - GPB1
+ - disk.root.size
+ memory.resident_GPB1:
+ - GPB1
+ - memory.resident
+ disk.write.requests_GPB1:
+ - GPB1
+ - disk.write.requests
+ disk.capacity_GPB1:
+ - GPB1
+ - disk.capacity
+ disk.read.bytes.rate_GPB1:
+ - GPB1
+ - disk.read.bytes.rate
+ os_GPB1:
+ - GPB1
+ - os
+ cpu.delta_GPB1:
+ - GPB1
+ - cpu.delta
+ disk.device.read.bytes.rate_GPB1:
+ - GPB1
+ - disk.device.read.bytes.rate
+ binding_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - binding
+ binding_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - binding
+ instance_GPB1:
+ - GPB1
+ - instance
+ network.incoming.bytes.rate_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.incoming.bytes.rate
+ binding_GPB1:
+ - GPB1
+ - binding
+ disk.write.bytes_GPB1:
+ - GPB1
+ - disk.write.bytes
+ disk.device.usage_GPB1:
+ - GPB1
+ - disk.device.usage
+ disk.latency_GPB1:
+ - GPB1
+ - disk.latency
+ disk.device.read.bytes_GPB1:
+ - GPB1
+ - disk.device.read.bytes
+ network.incoming.packets_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.incoming.packets
+ network.incoming.packets_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.incoming.packets
+ cpu_GPB1:
+ - GPB1
+ - cpu
+ disk.write.requests.rate_GPB1:
+ - GPB1
+ - disk.write.requests.rate
+ disk.iops_GPB1:
+ - GPB1
+ - disk.iops
+ disk.write.bytes.rate_GPB1:
+ - GPB1
+ - disk.write.bytes.rate
+ disk.device.capacity_GPB1:
+ - GPB1
+ - disk.device.capacity
+ disk.device.write.requests_GPB1:
+ - GPB1
+ - disk.device.write.requests
+ disk.allocation_GPB1:
+ - GPB1
+ - disk.allocation
+ disk.device.latency_GPB1:
+ - GPB1
+ - disk.device.latency
+ network.outgoing.bytes_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - network.outgoing.bytes
+ network.outgoing.bytes_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - network.outgoing.bytes
+ disk.device.write.bytes.rate_GPB1:
+ - GPB1
+ - disk.device.write.bytes.rate
+ disk.usage_GPB1:
+ - GPB1
+ - disk.usage
+ feature_GPB1:
+ - GPB1
+ - feature
+ disk.device.allocation_GPB1:
+ - GPB1
+ - disk.device.allocation
+ requirements:
+ link_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - link
+ dependency_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - dependency
+ dependency_GPB1_GPB1_Internal2:
+ - GPB1_GPB1_Internal2
+ - dependency
+ dependency_GPB1:
+ - GPB1
+ - dependency
+ local_storage_GPB1:
+ - GPB1
+ - local_storage
+ link_GPB1_GPB1_Internal1:
+ - GPB1_GPB1_Internal1
+ - 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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml
new file mode 100644
index 0000000000..3598778212
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_GPB2ServiceTemplate.yaml
@@ -0,0 +1,351 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_GPB2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.GPB2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_GPB2_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_GPB2_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_GPB2_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_GPB2_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_GPB2_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_GPB2_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_GPB2_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ compute_GPB2_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_GPB2_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_GPB2_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ GPB2_GPB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_GPB2_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_GPB2_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_GPB2_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_GPB2_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: GPB2
+ relationship: tosca.relationships.network.BindsTo
+ GPB2_GPB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_GPB2_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_GPB2_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_GPB2_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_GPB2_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: GPB2
+ relationship: tosca.relationships.network.BindsTo
+ GPB2:
+ type: org.openecomp.resource.vfc.nodes.heat.GPB2
+ properties:
+ availability_zone:
+ get_input:
+ - compute_GPB2_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_GPB2_name
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.GPB2
+ capabilities:
+ endpoint_GPB2:
+ - GPB2
+ - endpoint
+ disk.read.requests_GPB2:
+ - GPB2
+ - disk.read.requests
+ network.incoming.packets_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.incoming.packets
+ network.incoming.packets_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.incoming.packets
+ cpu_util_GPB2:
+ - GPB2
+ - cpu_util
+ disk.device.read.requests_GPB2:
+ - GPB2
+ - disk.device.read.requests
+ memory.usage_GPB2:
+ - GPB2
+ - memory.usage
+ disk.device.write.bytes_GPB2:
+ - GPB2
+ - disk.device.write.bytes
+ disk.ephemeral.size_GPB2:
+ - GPB2
+ - disk.ephemeral.size
+ network.outgoing.bytes_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.outgoing.bytes
+ network.outgoing.bytes_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.outgoing.bytes
+ disk.device.iops_GPB2:
+ - GPB2
+ - disk.device.iops
+ network.incoming.bytes.rate_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.incoming.bytes.rate
+ scalable_GPB2:
+ - GPB2
+ - scalable
+ disk.read.bytes_GPB2:
+ - GPB2
+ - disk.read.bytes
+ network.outgoing.packets.rate_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.outgoing.packets.rate
+ memory_GPB2:
+ - GPB2
+ - memory
+ disk.device.read.requests.rate_GPB2:
+ - GPB2
+ - disk.device.read.requests.rate
+ disk.device.write.requests.rate_GPB2:
+ - GPB2
+ - disk.device.write.requests.rate
+ disk.root.size_GPB2:
+ - GPB2
+ - disk.root.size
+ vcpus_GPB2:
+ - GPB2
+ - vcpus
+ network.outpoing.packets_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.outgoing.bytes.rate
+ disk.read.bytes.rate_GPB2:
+ - GPB2
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.outgoing.bytes.rate
+ os_GPB2:
+ - GPB2
+ - os
+ memory.resident_GPB2:
+ - GPB2
+ - memory.resident
+ feature_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - feature
+ disk.capacity_GPB2:
+ - GPB2
+ - disk.capacity
+ host_GPB2:
+ - GPB2
+ - host
+ network.outpoing.packets_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.outpoing.packets
+ feature_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - feature
+ disk.write.requests_GPB2:
+ - GPB2
+ - disk.write.requests
+ cpu_GPB2:
+ - GPB2
+ - cpu
+ cpu.delta_GPB2:
+ - GPB2
+ - cpu.delta
+ disk.device.read.bytes.rate_GPB2:
+ - GPB2
+ - disk.device.read.bytes.rate
+ instance_GPB2:
+ - GPB2
+ - instance
+ network.incoming.bytes_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.incoming.bytes
+ network.incoming.bytes_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.incoming.bytes
+ disk.device.usage_GPB2:
+ - GPB2
+ - disk.device.usage
+ disk.write.bytes_GPB2:
+ - GPB2
+ - disk.write.bytes
+ binding_GPB2:
+ - GPB2
+ - binding
+ disk.latency_GPB2:
+ - GPB2
+ - disk.latency
+ disk.device.read.bytes_GPB2:
+ - GPB2
+ - disk.device.read.bytes
+ disk.write.requests.rate_GPB2:
+ - GPB2
+ - disk.write.requests.rate
+ disk.iops_GPB2:
+ - GPB2
+ - disk.iops
+ disk.write.bytes.rate_GPB2:
+ - GPB2
+ - disk.write.bytes.rate
+ disk.device.write.requests_GPB2:
+ - GPB2
+ - disk.device.write.requests
+ disk.device.capacity_GPB2:
+ - GPB2
+ - disk.device.capacity
+ disk.allocation_GPB2:
+ - GPB2
+ - disk.allocation
+ disk.device.latency_GPB2:
+ - GPB2
+ - disk.device.latency
+ binding_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - binding
+ binding_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - binding
+ disk.usage_GPB2:
+ - GPB2
+ - disk.usage
+ network.incoming.packets.rate_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - network.incoming.packets.rate
+ attachment_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - attachment
+ attachment_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - attachment
+ disk.device.write.bytes.rate_GPB2:
+ - GPB2
+ - disk.device.write.bytes.rate
+ feature_GPB2:
+ - GPB2
+ - feature
+ disk.device.allocation_GPB2:
+ - GPB2
+ - disk.device.allocation
+ requirements:
+ link_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - link
+ link_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - link
+ dependency_GPB2:
+ - GPB2
+ - dependency
+ local_storage_GPB2:
+ - GPB2
+ - local_storage
+ dependency_GPB2_GPB2_Internal2:
+ - GPB2_GPB2_Internal2
+ - dependency
+ dependency_GPB2_GPB2_Internal1:
+ - GPB2_GPB2_Internal1
+ - 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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml
new file mode 100644
index 0000000000..f0a3aaf507
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB1ServiceTemplate.yaml
@@ -0,0 +1,351 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_NCB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.NCB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_NCB1_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_NCB1_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_NCB1_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_NCB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_NCB1_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_NCB1_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_NCB1_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_NCB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_NCB1_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_NCB1_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ NCB1:
+ type: org.openecomp.resource.vfc.nodes.heat.NCB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_NCB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_NCB1_name
+ - index_value
+ NCB1_NCB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_NCB1_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_NCB1_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_NCB1_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_NCB1_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: NCB1
+ relationship: tosca.relationships.network.BindsTo
+ NCB1_NCB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_NCB1_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_NCB1_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_NCB1_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_NCB1_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: NCB1
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.NCB1
+ capabilities:
+ disk.device.write.bytes.rate_NCB1:
+ - NCB1
+ - disk.device.write.bytes.rate
+ memory.resident_NCB1:
+ - NCB1
+ - memory.resident
+ disk.root.size_NCB1:
+ - NCB1
+ - disk.root.size
+ instance_NCB1:
+ - NCB1
+ - instance
+ disk.device.read.bytes.rate_NCB1:
+ - NCB1
+ - disk.device.read.bytes.rate
+ disk.write.requests.rate_NCB1:
+ - NCB1
+ - disk.write.requests.rate
+ cpu_NCB1:
+ - NCB1
+ - cpu
+ binding_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - binding
+ binding_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - binding
+ cpu.delta_NCB1:
+ - NCB1
+ - cpu.delta
+ disk.device.capacity_NCB1:
+ - NCB1
+ - disk.device.capacity
+ binding_NCB1:
+ - NCB1
+ - binding
+ disk.device.read.bytes_NCB1:
+ - NCB1
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.outgoing.bytes.rate
+ disk.device.allocation_NCB1:
+ - NCB1
+ - disk.device.allocation
+ disk.usage_NCB1:
+ - NCB1
+ - disk.usage
+ network.incoming.bytes.rate_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.incoming.bytes.rate
+ network.incoming.packets_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.incoming.packets
+ disk.ephemeral.size_NCB1:
+ - NCB1
+ - disk.ephemeral.size
+ network.incoming.bytes.rate_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.incoming.bytes.rate
+ network.incoming.packets_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.incoming.packets
+ disk.allocation_NCB1:
+ - NCB1
+ - disk.allocation
+ disk.write.bytes_NCB1:
+ - NCB1
+ - disk.write.bytes
+ disk.device.latency_NCB1:
+ - NCB1
+ - disk.device.latency
+ network.outpoing.packets_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.outpoing.packets
+ network.incoming.packets.rate_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.incoming.packets.rate
+ vcpus_NCB1:
+ - NCB1
+ - vcpus
+ feature_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - feature
+ endpoint_NCB1:
+ - NCB1
+ - endpoint
+ network.outgoing.bytes_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.outgoing.bytes
+ disk.device.iops_NCB1:
+ - NCB1
+ - disk.device.iops
+ network.outgoing.bytes_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.outgoing.bytes
+ feature_NCB1:
+ - NCB1
+ - feature
+ network.outpoing.packets_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.outpoing.packets
+ feature_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - feature
+ disk.read.requests_NCB1:
+ - NCB1
+ - disk.read.requests
+ disk.device.write.requests_NCB1:
+ - NCB1
+ - disk.device.write.requests
+ memory.usage_NCB1:
+ - NCB1
+ - memory.usage
+ attachment_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - attachment
+ network.outgoing.packets.rate_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.outgoing.packets.rate
+ attachment_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - attachment
+ network.outgoing.packets.rate_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.outgoing.packets.rate
+ disk.write.bytes.rate_NCB1:
+ - NCB1
+ - disk.write.bytes.rate
+ disk.device.read.requests_NCB1:
+ - NCB1
+ - disk.device.read.requests
+ memory_NCB1:
+ - NCB1
+ - memory
+ disk.device.write.bytes_NCB1:
+ - NCB1
+ - disk.device.write.bytes
+ disk.device.read.requests.rate_NCB1:
+ - NCB1
+ - disk.device.read.requests.rate
+ disk.read.bytes_NCB1:
+ - NCB1
+ - disk.read.bytes
+ disk.read.bytes.rate_NCB1:
+ - NCB1
+ - disk.read.bytes.rate
+ disk.capacity_NCB1:
+ - NCB1
+ - disk.capacity
+ disk.device.write.requests.rate_NCB1:
+ - NCB1
+ - disk.device.write.requests.rate
+ scalable_NCB1:
+ - NCB1
+ - scalable
+ disk.iops_NCB1:
+ - NCB1
+ - disk.iops
+ os_NCB1:
+ - NCB1
+ - os
+ network.incoming.bytes_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - network.incoming.bytes
+ network.incoming.bytes_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - network.incoming.bytes
+ disk.write.requests_NCB1:
+ - NCB1
+ - disk.write.requests
+ disk.latency_NCB1:
+ - NCB1
+ - disk.latency
+ host_NCB1:
+ - NCB1
+ - host
+ cpu_util_NCB1:
+ - NCB1
+ - cpu_util
+ disk.device.usage_NCB1:
+ - NCB1
+ - disk.device.usage
+ requirements:
+ link_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - link
+ local_storage_NCB1:
+ - NCB1
+ - local_storage
+ link_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - link
+ dependency_NCB1_NCB1_Internal1:
+ - NCB1_NCB1_Internal1
+ - dependency
+ dependency_NCB1:
+ - NCB1
+ - dependency
+ dependency_NCB1_NCB1_Internal2:
+ - NCB1_NCB1_Internal2
+ - 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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml
new file mode 100644
index 0000000000..7cfca623fa
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_NCB2ServiceTemplate.yaml
@@ -0,0 +1,351 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_NCB2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.NCB2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_NCB2_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_NCB2_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_NCB2_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_NCB2_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_NCB2_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_NCB2_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_NCB2_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_NCB2_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_NCB2_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_NCB2_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ NCB2:
+ type: org.openecomp.resource.vfc.nodes.heat.NCB2
+ properties:
+ availability_zone:
+ get_input:
+ - compute_NCB2_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_NCB2_name
+ - index_value
+ NCB2_NCB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_NCB2_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_NCB2_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_NCB2_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_NCB2_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: NCB2
+ relationship: tosca.relationships.network.BindsTo
+ NCB2_NCB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_NCB2_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_NCB2_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_NCB2_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_NCB2_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: NCB2
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.NCB2
+ capabilities:
+ disk.device.write.bytes.rate_NCB2:
+ - NCB2
+ - disk.device.write.bytes.rate
+ memory.resident_NCB2:
+ - NCB2
+ - memory.resident
+ network.outgoing.packets.rate_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.outgoing.packets.rate
+ disk.root.size_NCB2:
+ - NCB2
+ - disk.root.size
+ instance_NCB2:
+ - NCB2
+ - instance
+ cpu_NCB2:
+ - NCB2
+ - cpu
+ attachment_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - attachment
+ disk.write.requests.rate_NCB2:
+ - NCB2
+ - disk.write.requests.rate
+ attachment_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - attachment
+ feature_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - feature
+ disk.device.read.bytes.rate_NCB2:
+ - NCB2
+ - disk.device.read.bytes.rate
+ cpu.delta_NCB2:
+ - NCB2
+ - cpu.delta
+ network.outpoing.packets_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.outpoing.packets
+ disk.device.capacity_NCB2:
+ - NCB2
+ - disk.device.capacity
+ feature_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - feature
+ network.outgoing.bytes.rate_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.incoming.bytes
+ network.incoming.bytes_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.incoming.bytes
+ network.outpoing.packets_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.outpoing.packets
+ binding_NCB2:
+ - NCB2
+ - binding
+ network.incoming.packets.rate_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.incoming.packets.rate
+ disk.read.bytes_NCB2:
+ - NCB2
+ - disk.read.bytes
+ disk.device.read.bytes_NCB2:
+ - NCB2
+ - disk.device.read.bytes
+ disk.usage_NCB2:
+ - NCB2
+ - disk.usage
+ disk.device.allocation_NCB2:
+ - NCB2
+ - disk.device.allocation
+ disk.ephemeral.size_NCB2:
+ - NCB2
+ - disk.ephemeral.size
+ network.outgoing.bytes_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.outgoing.bytes
+ network.outgoing.bytes_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.outgoing.bytes
+ disk.allocation_NCB2:
+ - NCB2
+ - disk.allocation
+ disk.write.bytes_NCB2:
+ - NCB2
+ - disk.write.bytes
+ disk.device.latency_NCB2:
+ - NCB2
+ - disk.device.latency
+ binding_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - binding
+ binding_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - binding
+ network.incoming.bytes.rate_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.incoming.bytes.rate
+ vcpus_NCB2:
+ - NCB2
+ - vcpus
+ memory.usage_NCB2:
+ - NCB2
+ - memory.usage
+ network.incoming.bytes.rate_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.incoming.bytes.rate
+ endpoint_NCB2:
+ - NCB2
+ - endpoint
+ disk.device.iops_NCB2:
+ - NCB2
+ - disk.device.iops
+ disk.write.requests_NCB2:
+ - NCB2
+ - disk.write.requests
+ feature_NCB2:
+ - NCB2
+ - feature
+ os_NCB2:
+ - NCB2
+ - os
+ disk.read.requests_NCB2:
+ - NCB2
+ - disk.read.requests
+ disk.device.write.requests_NCB2:
+ - NCB2
+ - disk.device.write.requests
+ network.incoming.packets_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - network.incoming.packets
+ network.incoming.packets_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - network.incoming.packets
+ disk.device.read.requests_NCB2:
+ - NCB2
+ - disk.device.read.requests
+ disk.write.bytes.rate_NCB2:
+ - NCB2
+ - disk.write.bytes.rate
+ memory_NCB2:
+ - NCB2
+ - memory
+ disk.device.write.bytes_NCB2:
+ - NCB2
+ - disk.device.write.bytes
+ disk.device.read.requests.rate_NCB2:
+ - NCB2
+ - disk.device.read.requests.rate
+ scalable_NCB2:
+ - NCB2
+ - scalable
+ disk.capacity_NCB2:
+ - NCB2
+ - disk.capacity
+ disk.read.bytes.rate_NCB2:
+ - NCB2
+ - disk.read.bytes.rate
+ disk.iops_NCB2:
+ - NCB2
+ - disk.iops
+ host_NCB2:
+ - NCB2
+ - host
+ disk.latency_NCB2:
+ - NCB2
+ - disk.latency
+ cpu_util_NCB2:
+ - NCB2
+ - cpu_util
+ disk.device.usage_NCB2:
+ - NCB2
+ - disk.device.usage
+ disk.device.write.requests.rate_NCB2:
+ - NCB2
+ - disk.device.write.requests.rate
+ requirements:
+ link_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - link
+ dependency_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - dependency
+ dependency_NCB2_NCB2_Internal2:
+ - NCB2_NCB2_Internal2
+ - dependency
+ local_storage_NCB2:
+ - NCB2
+ - local_storage
+ link_NCB2_NCB2_Internal1:
+ - NCB2_NCB2_Internal1
+ - link
+ dependency_NCB2:
+ - NCB2
+ - 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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml
new file mode 100644
index 0000000000..3fbc173efe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC1ServiceTemplate.yaml
@@ -0,0 +1,692 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_VLC1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.VLC1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_VLC1_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC1_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_SCTP_A_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_OAM_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC1_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_GTP_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_VLC1_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_SCTP_B_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_OAM_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC1_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_VLC_SCTP_A_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_B_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_GTP_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_VLC1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_VLC1_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC1_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_B_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_GTP_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_GTP_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_OAM_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_VLC1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_SCTP_B_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC1_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ VLC1_VLC_SCTP_B:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_SCTP_B_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_SCTP_B_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_SCTP_B_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_SCTP_B_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC1
+ relationship: tosca.relationships.network.BindsTo
+ VLC1_VLC1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC1_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC1_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_VLC1_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_VLC1_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC1
+ relationship: tosca.relationships.network.BindsTo
+ VLC1_VLC1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC1_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC1_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_VLC1_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_VLC1_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC1
+ relationship: tosca.relationships.network.BindsTo
+ VLC1_VLC_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_OAM_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_VLC_OAM_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_OAM_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC1
+ relationship: tosca.relationships.network.BindsTo
+ VLC1_VLC_SCTP_A:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_SCTP_A_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_SCTP_A_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_SCTP_A_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_SCTP_A_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC1
+ relationship: tosca.relationships.network.BindsTo
+ VLC1:
+ type: org.openecomp.resource.vfc.nodes.heat.VLC1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_VLC1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_VLC1_name
+ - index_value
+ VLC1_VLC_GTP:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_GTP_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_GTP_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_GTP_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_GTP_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC1
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.VLC1
+ capabilities:
+ network.incoming.bytes_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.incoming.bytes
+ disk.device.allocation_VLC1:
+ - VLC1
+ - disk.device.allocation
+ disk.write.requests_VLC1:
+ - VLC1
+ - disk.write.requests
+ feature_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - feature
+ feature_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - feature
+ network.outpoing.packets_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.outpoing.packets
+ network.outpoing.packets_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.outpoing.packets
+ disk.device.read.bytes_VLC1:
+ - VLC1
+ - disk.device.read.bytes
+ disk.device.usage_VLC1:
+ - VLC1
+ - disk.device.usage
+ scalable_VLC1:
+ - VLC1
+ - scalable
+ network.outgoing.packets.rate_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.outgoing.packets.rate
+ network.outpoing.packets_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.outpoing.packets
+ endpoint_VLC1:
+ - VLC1
+ - endpoint
+ feature_VLC1:
+ - VLC1
+ - feature
+ disk.device.iops_VLC1:
+ - VLC1
+ - disk.device.iops
+ attachment_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - attachment
+ feature_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - feature
+ disk.device.capacity_VLC1:
+ - VLC1
+ - disk.device.capacity
+ attachment_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - attachment
+ feature_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - feature
+ disk.read.bytes.rate_VLC1:
+ - VLC1
+ - disk.read.bytes.rate
+ feature_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - feature
+ network.incoming.packets_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.incoming.packets
+ attachment_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - attachment
+ disk.iops_VLC1:
+ - VLC1
+ - disk.iops
+ disk.latency_VLC1:
+ - VLC1
+ - disk.latency
+ disk.ephemeral.size_VLC1:
+ - VLC1
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.outgoing.bytes.rate
+ disk.device.latency_VLC1:
+ - VLC1
+ - disk.device.latency
+ disk.allocation_VLC1:
+ - VLC1
+ - disk.allocation
+ cpu_util_VLC1:
+ - VLC1
+ - cpu_util
+ disk.write.bytes_VLC1:
+ - VLC1
+ - disk.write.bytes
+ disk.device.write.requests.rate_VLC1:
+ - VLC1
+ - disk.device.write.requests.rate
+ network.incoming.packets_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.incoming.packets
+ network.incoming.bytes_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.incoming.bytes
+ network.outgoing.bytes_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.outgoing.bytes
+ network.outgoing.bytes_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.outgoing.bytes
+ cpu_VLC1:
+ - VLC1
+ - cpu
+ instance_VLC1:
+ - VLC1
+ - instance
+ attachment_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - attachment
+ network.incoming.bytes.rate_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.incoming.bytes.rate
+ vcpus_VLC1:
+ - VLC1
+ - vcpus
+ network.outpoing.packets_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.outpoing.packets
+ network.outpoing.packets_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.outpoing.packets
+ memory.resident_VLC1:
+ - VLC1
+ - memory.resident
+ network.outgoing.bytes_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.outgoing.bytes
+ disk.device.read.requests.rate_VLC1:
+ - VLC1
+ - disk.device.read.requests.rate
+ network.outgoing.bytes_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.outgoing.bytes
+ disk.root.size_VLC1:
+ - VLC1
+ - disk.root.size
+ binding_VLC1:
+ - VLC1
+ - binding
+ disk.device.write.bytes_VLC1:
+ - VLC1
+ - disk.device.write.bytes
+ network.outgoing.packets.rate_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.outgoing.packets.rate
+ feature_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - feature
+ network.incoming.packets.rate_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.incoming.packets.rate
+ network.outgoing.bytes_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.outgoing.bytes
+ memory_VLC1:
+ - VLC1
+ - memory
+ attachment_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - attachment
+ attachment_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - attachment
+ network.incoming.packets.rate_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.outgoing.packets.rate
+ network.incoming.packets_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.incoming.packets
+ disk.device.write.requests_VLC1:
+ - VLC1
+ - disk.device.write.requests
+ host_VLC1:
+ - VLC1
+ - host
+ network.incoming.packets.rate_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.incoming.packets.rate
+ os_VLC1:
+ - VLC1
+ - os
+ network.outgoing.bytes.rate_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.incoming.bytes
+ network.incoming.bytes_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.incoming.bytes
+ network.outpoing.packets_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.outpoing.packets
+ network.incoming.packets.rate_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.incoming.packets.rate
+ network.incoming.bytes_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.incoming.bytes
+ network.incoming.bytes.rate_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.incoming.bytes.rate
+ disk.device.write.bytes.rate_VLC1:
+ - VLC1
+ - disk.device.write.bytes.rate
+ memory.usage_VLC1:
+ - VLC1
+ - memory.usage
+ disk.usage_VLC1:
+ - VLC1
+ - disk.usage
+ network.incoming.packets.rate_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.incoming.packets.rate
+ network.outgoing.bytes_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.outgoing.bytes
+ disk.read.requests_VLC1:
+ - VLC1
+ - disk.read.requests
+ network.incoming.packets_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.incoming.packets
+ binding_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - binding
+ disk.write.bytes.rate_VLC1:
+ - VLC1
+ - disk.write.bytes.rate
+ network.outgoing.packets.rate_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.outgoing.packets.rate
+ disk.capacity_VLC1:
+ - VLC1
+ - disk.capacity
+ network.outgoing.bytes.rate_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - network.outgoing.bytes.rate
+ network.incoming.bytes.rate_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.incoming.bytes.rate
+ network.incoming.packets_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - network.incoming.packets
+ network.incoming.packets_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - network.incoming.packets
+ network.incoming.bytes_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - network.incoming.bytes
+ disk.write.requests.rate_VLC1:
+ - VLC1
+ - disk.write.requests.rate
+ disk.device.read.bytes.rate_VLC1:
+ - VLC1
+ - disk.device.read.bytes.rate
+ network.incoming.bytes.rate_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - network.incoming.bytes.rate
+ disk.device.read.requests_VLC1:
+ - VLC1
+ - disk.device.read.requests
+ network.incoming.bytes.rate_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - network.incoming.bytes.rate
+ binding_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - binding
+ cpu.delta_VLC1:
+ - VLC1
+ - cpu.delta
+ binding_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - binding
+ disk.read.bytes_VLC1:
+ - VLC1
+ - disk.read.bytes
+ binding_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - binding
+ binding_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - binding
+ binding_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - binding
+ requirements:
+ link_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - link
+ dependency_VLC1:
+ - VLC1
+ - dependency
+ local_storage_VLC1:
+ - VLC1
+ - local_storage
+ link_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - link
+ link_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - link
+ dependency_VLC1_VLC_OAM:
+ - VLC1_VLC_OAM
+ - dependency
+ dependency_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - dependency
+ link_VLC1_VLC_SCTP_B:
+ - VLC1_VLC_SCTP_B
+ - link
+ link_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - link
+ link_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - link
+ dependency_VLC1_VLC1_Internal2:
+ - VLC1_VLC1_Internal2
+ - dependency
+ dependency_VLC1_VLC1_Internal1:
+ - VLC1_VLC1_Internal1
+ - dependency
+ dependency_VLC1_VLC_GTP:
+ - VLC1_VLC_GTP
+ - dependency
+ dependency_VLC1_VLC_SCTP_A:
+ - VLC1_VLC_SCTP_A
+ - 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/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml
new file mode 100644
index 0000000000..cb60cfcff3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/generalVf/out/Nested_VLC2ServiceTemplate.yaml
@@ -0,0 +1,692 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_VLC2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.VLC2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_VLC_SCTP_A_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_OAM_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_GTP_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC2_Internal2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_VLC_SCTP_B_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_OAM_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC2_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_VLC2_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC2_Internal2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC2_Internal1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_A_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_SCTP_B_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_GTP_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC2_Internal1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_VLC2_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_VLC_SCTP_B_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_GTP_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC2_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_VLC2_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_GTP_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_OAM_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_VLC_SCTP_B_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_VLC2_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ VLC2_VLC2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC2_Internal2_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC2_Internal2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_VLC2_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_VLC2_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC2
+ relationship: tosca.relationships.network.BindsTo
+ VLC2_VLC_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_OAM_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_VLC_OAM_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_OAM_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC2
+ relationship: tosca.relationships.network.BindsTo
+ VLC2_VLC2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC2_Internal1_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC2_Internal1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_VLC2_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_VLC2_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC2
+ relationship: tosca.relationships.network.BindsTo
+ VLC2_VLC_SCTP_A:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_SCTP_A_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_SCTP_A_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_SCTP_A_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_SCTP_A_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC2
+ relationship: tosca.relationships.network.BindsTo
+ VLC2_VLC_SCTP_B:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_SCTP_B_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_SCTP_B_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_SCTP_B_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_SCTP_B_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC2
+ relationship: tosca.relationships.network.BindsTo
+ VLC2_VLC_GTP:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_VLC_GTP_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_VLC_GTP_mac_requirements
+ - index_value
+ fixed_ips:
+ get_input:
+ - port_VLC_GTP_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_VLC_GTP_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: VLC2
+ relationship: tosca.relationships.network.BindsTo
+ VLC2:
+ type: org.openecomp.resource.vfc.nodes.heat.VLC2
+ properties:
+ availability_zone:
+ get_input:
+ - compute_VLC2_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_VLC2_name
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.VLC2
+ capabilities:
+ network.incoming.bytes_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.incoming.bytes
+ disk.device.allocation_VLC2:
+ - VLC2
+ - disk.device.allocation
+ network.outgoing.bytes.rate_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.outgoing.bytes.rate
+ network.incoming.packets.rate_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.incoming.packets.rate
+ binding_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - binding
+ feature_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - feature
+ binding_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - binding
+ network.incoming.packets_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.incoming.packets
+ network.outgoing.packets.rate_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.incoming.bytes.rate
+ disk.device.read.bytes_VLC2:
+ - VLC2
+ - disk.device.read.bytes
+ scalable_VLC2:
+ - VLC2
+ - scalable
+ disk.device.usage_VLC2:
+ - VLC2
+ - disk.device.usage
+ network.incoming.bytes.rate_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.incoming.bytes.rate
+ attachment_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - attachment
+ network.incoming.bytes.rate_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.incoming.bytes.rate
+ attachment_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - attachment
+ network.outgoing.packets.rate_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.outgoing.packets.rate
+ endpoint_VLC2:
+ - VLC2
+ - endpoint
+ disk.device.iops_VLC2:
+ - VLC2
+ - disk.device.iops
+ feature_VLC2:
+ - VLC2
+ - feature
+ network.incoming.bytes.rate_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.incoming.bytes.rate
+ network.outpoing.packets_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.outpoing.packets
+ network.incoming.packets_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.incoming.packets
+ network.incoming.packets_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.incoming.packets
+ feature_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - feature
+ disk.device.capacity_VLC2:
+ - VLC2
+ - disk.device.capacity
+ network.outpoing.packets_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.outpoing.packets
+ feature_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - feature
+ disk.device.write.requests.rate_VLC2:
+ - VLC2
+ - disk.device.write.requests.rate
+ disk.read.bytes.rate_VLC2:
+ - VLC2
+ - disk.read.bytes.rate
+ network.incoming.bytes_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.incoming.bytes
+ network.incoming.bytes_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.incoming.bytes
+ disk.iops_VLC2:
+ - VLC2
+ - disk.iops
+ network.outpoing.packets_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.outpoing.packets
+ disk.latency_VLC2:
+ - VLC2
+ - disk.latency
+ network.outgoing.bytes.rate_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.outgoing.bytes.rate
+ disk.ephemeral.size_VLC2:
+ - VLC2
+ - disk.ephemeral.size
+ disk.device.latency_VLC2:
+ - VLC2
+ - disk.device.latency
+ disk.allocation_VLC2:
+ - VLC2
+ - disk.allocation
+ cpu_util_VLC2:
+ - VLC2
+ - cpu_util
+ disk.write.bytes_VLC2:
+ - VLC2
+ - disk.write.bytes
+ cpu_VLC2:
+ - VLC2
+ - cpu
+ instance_VLC2:
+ - VLC2
+ - instance
+ attachment_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - attachment
+ attachment_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - attachment
+ vcpus_VLC2:
+ - VLC2
+ - vcpus
+ memory.resident_VLC2:
+ - VLC2
+ - memory.resident
+ disk.device.read.requests.rate_VLC2:
+ - VLC2
+ - disk.device.read.requests.rate
+ network.outgoing.bytes_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.outgoing.bytes
+ os_VLC2:
+ - VLC2
+ - os
+ network.incoming.packets.rate_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.incoming.packets.rate
+ feature_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - feature
+ binding_VLC2:
+ - VLC2
+ - binding
+ disk.device.write.bytes_VLC2:
+ - VLC2
+ - disk.device.write.bytes
+ network.outgoing.packets.rate_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.outgoing.packets.rate
+ feature_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - feature
+ disk.root.size_VLC2:
+ - VLC2
+ - disk.root.size
+ network.outgoing.bytes_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.outgoing.bytes
+ network.outpoing.packets_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.outpoing.packets
+ network.outgoing.bytes_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.outgoing.bytes
+ network.outpoing.packets_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.outpoing.packets
+ network.incoming.packets_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.incoming.packets
+ memory_VLC2:
+ - VLC2
+ - memory
+ network.incoming.packets_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.incoming.packets
+ disk.device.write.requests_VLC2:
+ - VLC2
+ - disk.device.write.requests
+ host_VLC2:
+ - VLC2
+ - host
+ network.outgoing.bytes_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.outgoing.bytes
+ network.outgoing.bytes_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.outgoing.bytes
+ binding_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - binding
+ disk.device.write.bytes.rate_VLC2:
+ - VLC2
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.outgoing.bytes.rate
+ feature_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - feature
+ network.outgoing.packets.rate_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.outgoing.packets.rate
+ memory.usage_VLC2:
+ - VLC2
+ - memory.usage
+ disk.usage_VLC2:
+ - VLC2
+ - disk.usage
+ disk.read.requests_VLC2:
+ - VLC2
+ - disk.read.requests
+ attachment_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - attachment
+ network.outgoing.bytes_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.outgoing.bytes.rate
+ disk.write.bytes.rate_VLC2:
+ - VLC2
+ - disk.write.bytes.rate
+ network.outgoing.bytes.rate_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - network.incoming.bytes
+ network.incoming.bytes_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - network.incoming.bytes
+ disk.read.bytes_VLC2:
+ - VLC2
+ - disk.read.bytes
+ network.incoming.packets.rate_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.incoming.packets.rate
+ disk.capacity_VLC2:
+ - VLC2
+ - disk.capacity
+ network.incoming.packets_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.incoming.packets
+ network.incoming.packets.rate_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - network.incoming.packets.rate
+ network.incoming.bytes_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - network.incoming.bytes
+ attachment_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - attachment
+ disk.write.requests.rate_VLC2:
+ - VLC2
+ - disk.write.requests.rate
+ network.incoming.bytes.rate_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.incoming.bytes.rate
+ network.outpoing.packets_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - network.outpoing.packets
+ binding_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - binding
+ binding_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - binding
+ disk.write.requests_VLC2:
+ - VLC2
+ - disk.write.requests
+ disk.device.read.requests_VLC2:
+ - VLC2
+ - disk.device.read.requests
+ disk.device.read.bytes.rate_VLC2:
+ - VLC2
+ - disk.device.read.bytes.rate
+ cpu.delta_VLC2:
+ - VLC2
+ - cpu.delta
+ binding_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - binding
+ requirements:
+ link_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - link
+ link_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - link
+ link_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - link
+ dependency_VLC2:
+ - VLC2
+ - dependency
+ local_storage_VLC2:
+ - VLC2
+ - local_storage
+ link_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - link
+ dependency_VLC2_VLC_SCTP_A:
+ - VLC2_VLC_SCTP_A
+ - dependency
+ link_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - link
+ dependency_VLC2_VLC_SCTP_B:
+ - VLC2_VLC_SCTP_B
+ - dependency
+ dependency_VLC2_VLC2_Internal2:
+ - VLC2_VLC2_Internal2
+ - dependency
+ dependency_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - dependency
+ link_VLC2_VLC2_Internal1:
+ - VLC2_VLC2_Internal1
+ - link
+ dependency_VLC2_VLC_OAM:
+ - VLC2_VLC_OAM
+ - dependency
+ dependency_VLC2_VLC_GTP:
+ - VLC2_VLC_GTP
+ - 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/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..3bfbfe50c1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,239 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_attr: [server_pd_01, accessIPv4]}
+
+ network_policy_port:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ entries: {get_attr: [pd01_port_0, device_owner]}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..07792bad3d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,517 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_owner:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd02_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_pd_server_pd01_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd02_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_pd_server_pd02_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pd_server_pd02_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server_pd02_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server_pd02_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..02d93a5611
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,496 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd02_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd02_port_network_role_tag:
+ - oam
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ port_pd02_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network_role_tag:
+ - oam
+ port_pd02_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_port:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_device_owner
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_port
+ - network_policy_server
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..2dc08c62ba
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,377 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd02_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd02_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd02_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd02_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd02_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_owner:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port
+ - device_owner
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ binding_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - binding
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.packets.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes
+ feature_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - feature
+ network.incoming.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.outpoing.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outpoing.packets
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ attachment_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - attachment
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ network.incoming.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets.rate
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ network.incoming.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - link
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd02_port:
+ - pd_server_pd02_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/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..b9f908bbcb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,235 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd02_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [network_policy_server, name]}
+ pd02_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..57acfc92a7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,500 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd02_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd02_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd02_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_pd_server_pd01_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd02_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_pd_server_pd02_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pd_server_pd02_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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server_pd02_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server_pd02_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server_pd02_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..4c725c039e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/MainServiceTemplate.yaml
@@ -0,0 +1,488 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ port_pd02_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd02_port_network_role_tag:
+ - oam
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_attribute:
+ - network_policy_server
+ - name
+ port_pd02_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd02_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_server
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..e9f880a804
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeDiffPortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,351 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd02_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd02_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd02_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd02_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd02_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd02_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd02_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd02_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ binding_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - binding
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.packets.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes
+ feature_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - feature
+ network.incoming.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outgoing.bytes.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.outpoing.packets_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.outpoing.packets
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ attachment_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - attachment
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ network.incoming.packets.rate_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.packets.rate
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ network.incoming.bytes_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - network.incoming.bytes
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd02_port:
+ - pd_server_pd02_port
+ - link
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd02_port:
+ - pd_server_pd02_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/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..b32f39bfd9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,6 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ dummy_net_name_1: packet-net-1
+ oam_net_name: oam_protected_net_0
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..30cdec1506
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,54 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [network_policy_server, name]}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..49604b2074
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,500 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c2acb1bbd2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/MainServiceTemplate.yaml
@@ -0,0 +1,117 @@
+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:
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: packet-net-1
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_0_network:
+ - get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_0_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_1_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_server
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..96061d140c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortTypesAndGetAttOut/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,351 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_1_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_1_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_0_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_0_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - 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/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..3b336e3619
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,244 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_attr: [server_pd_01, accessIPv4]}
+
+ network_policy_port0:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ entries: {get_attr: [pd01_port_0, device_owner]}
+
+ network_policy_port1:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ entries: {get_attr: [pd01_port_1, device_owner]}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..f6ae733527
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,522 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_1_device_owner:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_0_device_owner:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ef0c096cb3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,504 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_port0:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_0_device_owner
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ network_policy_port1:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ entries:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_1_device_owner
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_port0
+ - network_policy_server
+ - network_policy_port1
+ - abstract_pd_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..88138e2374
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/oneComputeSamePortsAndGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,385 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_1_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_1_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_0_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_0_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_0_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ pd_server_pd01_port_1_device_owner:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port_1
+ - device_owner
+ entry_schema:
+ type: string
+ pd_server_pd01_port_0_device_owner:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port_0
+ - device_owner
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - 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/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..a02e4b6743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,55 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ dummy_net_start_1: 169.254.2.4
+ dummy_net_end_1: 169.254.2.254
+ dummy_net_cidr_1: 169.254.2.0/24
+ dummy_net_netmask_1: 255.255.255.0
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0
+ security_group_name: mog_security_group
+ cluster-manager-vol-1: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ session-manager-vol-1: 49201898-333d-4c88-b58d-cf573b091633
+ session-manager-vol-2: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ oam-vol-2: 6d169cb6-6ddc-41dc-920c-2839898a2924 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..46b8fc2141
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,241 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_1:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_1:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_1:
+ type: string
+ description: CSB internal network subnet mask
+
+ security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ cluster-manager-vol-1:
+ type: string
+ label: mog-cm-vol-1
+ description: Cluster Manager volume 1
+ session-manager-vol-1:
+ type: string
+ label: mog-sm-vol-1
+ description: Session Manager volume 1
+ session-manager-vol-2:
+ type: string
+ label: mog-sm-vol-2
+ description: Session Manager volume 2
+ oam-vol-1:
+ type: string
+ label: mog-oam-vol-1
+ description: OAM volume 1
+ oam-vol-2:
+ type: string
+ label: mog-oam-vol-2
+ description: OAM volume 2
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+outputs:
+ out1:
+ description: output_regula
+ value: {get_attr: [server_pd_01, accessIPv4]}
+ out2:
+ description: output_regula
+ value: {get_attr: [pd01_port_1, device_owner]}
+ out3:
+ description: output_regula
+ value:
+ get_attr: [pd01_port_0, device_id]
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..380f7bb1dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,522 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_pd01_port_0_device_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_1_device_owner:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server_pd01_port_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.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_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_pd_server_pd01_port_1:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..0f0b1490e8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,499 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ dummy_net_netmask_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ dummy_net_end_1:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.2.254
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cluster-manager-vol-1:
+ label: mog-cm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Cluster Manager volume 1
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ dummy_net_start_1:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.2.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_cidr_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.2.0/24
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ oam-vol-2:
+ label: mog-oam-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 2
+ default: 6d169cb6-6ddc-41dc-920c-2839898a2924
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ session-manager-vol-1:
+ label: mog-sm-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 1
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ session-manager-vol-2:
+ label: mog-sm-vol-2
+ hidden: false
+ immutable: false
+ type: string
+ description: Session Manager volume 2
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ oam-vol-1:
+ label: mog-oam-vol-1
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM volume 1
+ default: 0a7fcd9e-2624-401d-ac21-b0191f85ec77
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: mog_security_group
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_0_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_0_network:
+ - get_input: oam_net_name
+ port_pd01_port_0_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_0_network_role_tag:
+ - oam
+ port_pd01_port_1_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_1_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_1_network_role_tag:
+ - oam
+ port_pd01_port_1_network:
+ - get_input: oam_net_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ outputs:
+ out2:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_1_device_owner
+ out3:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_0_device_id
+ out1:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..d9d82c2f68
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/samePortTypeAndOutParamGetAttrIn/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,385 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_0_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_0_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_0_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_1_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_1_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_1_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_1_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_1_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_1_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_0_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_0_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_0_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_0_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_pd01_port_0_device_id:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port_0
+ - device_id
+ entry_schema:
+ type: string
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ pd_server_pd01_port_1_device_owner:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port_1
+ - device_owner
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ binding_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - binding
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes.rate
+ attachment_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - attachment
+ network.outgoing.packets.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ attachment_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - attachment
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.incoming.bytes
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - feature
+ feature_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ dependency_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - dependency
+ link_pd_server_pd01_port_0:
+ - pd_server_pd01_port_0
+ - link
+ link_pd_server_pd01_port_1:
+ - pd_server_pd01_port_1
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..2ab29f7c8b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,24 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ dummy_net_name_1: mog_dummy_1
+ packet_mirror_network_name: mog_packet_1
+ VMME_ps_boot_volume: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ VMME_pd_boot_volume: 49201898-333d-4c88-b58d-cf573b091633
+ VMME_oam_boot_volume: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..ebdece7be3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,224 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ packet_mirror_network_name:
+ type: string
+ label: packet mirror network name
+ description: name of the network
+ VMME_ps_boot_volume:
+ type: string
+ VMME_pd_boot_volume:
+ type: string
+ VMME_oam_boot_volume:
+ type: string
+
+resources:
+ server_ps_01:
+ type: OS::Nova::Server
+ depends_on:
+ - packet_mirror_network
+ properties:
+# config_drive: "True"
+ name: {get_param: [ps_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ scheduler_hints: { group: { get_resource: BE_Affinity }}
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_ps_boot_volume }, delete_on_termination: "false" }]
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ server_pd_01:
+ type: OS::Nova::Server
+ depends_on:
+ - packet_mirror_network
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ scheduler_hints: { group: { get_resource: BE_Affinity }}
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_pd_boot_volume }, delete_on_termination: "false" }]
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ server_oam_01:
+ type: OS::Nova::Server
+ depends_on:
+ - packet_mirror_network
+ properties:
+# config_drive: "True"
+ name: {get_param: [oam_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ scheduler_hints: { group: { get_resource: BE_Affinity }}
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_oam_boot_volume }, delete_on_termination: "false" }]
+ networks:
+ - port: {get_resource: pd01_port_2}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [network_policy_server, name]}
+ security_groups: [{get_resource: jsa_security_group}]
+
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ security_groups: [{get_resource: jsa_security_group}]
+
+ pd01_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ security_groups: [{get_resource: jsa_security_group}]
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
+ resources_with_dependOn:
+ type: OS::Neutron::Net
+ depends_on:
+ - server_oam_01
+ - server_pd_01
+ - server_ps_01
+
+ packet_mirror_network:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ get_param: packet_mirror_network_name
+
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: def
+
+ jsa_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: Test-SecurityGroup
+ rules: [{"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}]
+
+
+ network_policy_server_pd:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_attr: [server_pd_01, accessIPv4]}
+
+ network_policy_server_ps:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_attr: [server_ps_01, accessIPv4]}
+
+ network_policy_server_oam:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_attr: [server_oam_01, accessIPv4]}
+
+outputs:
+ out1:
+ description: output_regula
+ value: {get_attr: [server_pd_01, accessIPv4]}
+ out2:
+ description: output_regula
+ value: {get_attr: [server_ps_01, accessIPv4]}
+ out3:
+ description: output_regula
+ value: {get_attr: [server_oam_01, accessIPv4]}
+ out4:
+ description: output_regula
+ value: {get_attr: [pd01_port_1, device_owner]}
+ out5:
+ description: output_regula
+ value:
+ get_attr: [pd01_port_0, device_id]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..7c9866a5f0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1256 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_pd_server_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_owner:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.oam_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_oam_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_oam_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_oam_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_oam_server_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ oam_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_oam_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_oam_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_oam_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_oam_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_oam_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_oam_server:
+ type: org.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_oam_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_oam_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server_pd01_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_oam_server:
+ type: org.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.ps_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_ps_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_ps_server_scheduler_hints:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ attributes:
+ ps_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ps_server_pd01_port_device_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_ps_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_ps_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_ps_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_ps_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ instance_ps_server:
+ type: org.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_ps_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ host_ps_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_ps_server_pd01_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_ps_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_ps_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_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.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_ps_server:
+ type: org.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_ps_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..104d72f82a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/MainServiceTemplate.yaml
@@ -0,0 +1,474 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: mog_dummy_1
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ VMME_pd_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ default: 49201898-333d-4c88-b58d-cf573b091633
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ packet_mirror_network_name:
+ label: packet mirror network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the network
+ default: mog_packet_1
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ VMME_ps_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ default: 43ccf5ba-2d50-427b-a38f-e8c7d8670eee
+ VMME_oam_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ default: 4c35b5f1-ce99-4220-a6e2-cda6e2d713a0
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_pd_server_scheduler_hints:
+ - group: BE_Affinity_group
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_security_groups:
+ - - jsa_security_group
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ abstract_ps_server:
+ type: org.openecomp.resource.abstract.nodes.ps_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_ps_server_name:
+ - get_input:
+ - ps_server_names
+ - 0
+ vm_image_name:
+ get_input: pd_image_name
+ compute_ps_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_ps_server_user_data_format:
+ - RAW
+ compute_ps_server_scheduler_hints:
+ - group: BE_Affinity_group
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_attribute:
+ - network_policy_server
+ - name
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_security_groups:
+ - - jsa_security_group
+ service_template_filter:
+ substitute_service_template: Nested_ps_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_ps_server:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ abstract_oam_server:
+ type: org.openecomp.resource.abstract.nodes.oam_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_oam_server_availability_zone:
+ - get_input: availabilityzone_name
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ compute_oam_server_user_data_format:
+ - RAW
+ compute_oam_server_name:
+ - get_input:
+ - oam_server_names
+ - 0
+ port_pd01_port_security_groups:
+ - - jsa_security_group
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_oam_server_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_oam_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_oam_server:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ network_policy_server_ps:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_attribute:
+ - abstract_ps_server
+ - ps_server_accessIPv4
+ resources_with_dependOn:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties: {
+ }
+ requirements:
+ - dependency:
+ capability: feature_oam_server
+ node: abstract_oam_server
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_pd_server
+ node: abstract_pd_server
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: feature_ps_server
+ node: abstract_ps_server
+ relationship: tosca.relationships.DependsOn
+ network_policy_server_oam:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_attribute:
+ - abstract_oam_server
+ - oam_server_accessIPv4
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: Test-SecurityGroup
+ description: ems security group
+ rules:
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_ps_server_pd01_port
+ node: abstract_ps_server
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_pd_server_pd01_port
+ node: abstract_pd_server
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_oam_server_pd01_port
+ node: abstract_oam_server
+ relationship: org.openecomp.relationships.AttachesTo
+ network_policy_server_pd:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - packet_mirror_network
+ - network_policy_server_ps
+ - resources_with_dependOn
+ - network_policy_server_oam
+ - jsa_security_group
+ - network_policy_server_pd
+ - network_policy_server
+ - abstract_pd_server
+ - abstract_ps_server
+ - abstract_oam_server
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_pd_server
+ - abstract_ps_server
+ - abstract_oam_server
+ outputs:
+ out2:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_ps_server
+ - ps_server_accessIPv4
+ out3:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_oam_server
+ - oam_server_accessIPv4
+ out4:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_pd01_port_device_owner
+ out5:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_ps_server
+ - ps_server_pd01_port_device_id
+ out1:
+ description: output_regula
+ value:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..e9f9aee10e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_oam_serverServiceTemplate.yaml
@@ -0,0 +1,304 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_oam_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.oam_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_oam_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_oam_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_oam_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_oam_server_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ oam_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd01_port_security_groups
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: oam_server
+ relationship: tosca.relationships.network.BindsTo
+ oam_server:
+ type: org.openecomp.resource.vfc.nodes.heat.oam_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_oam_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_oam_server_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_oam_server_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_oam_server_user_data_format
+ - index_value
+ outputs:
+ oam_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - oam_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.oam_server
+ capabilities:
+ cpu.delta_oam_server:
+ - oam_server
+ - cpu.delta
+ host_oam_server:
+ - oam_server
+ - host
+ disk.usage_oam_server:
+ - oam_server
+ - disk.usage
+ network.incoming.bytes.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.bytes.rate
+ feature_oam_server:
+ - oam_server
+ - feature
+ disk.device.write.bytes_oam_server:
+ - oam_server
+ - disk.device.write.bytes
+ cpu_util_oam_server:
+ - oam_server
+ - cpu_util
+ disk.capacity_oam_server:
+ - oam_server
+ - disk.capacity
+ memory_oam_server:
+ - oam_server
+ - memory
+ disk.read.bytes.rate_oam_server:
+ - oam_server
+ - disk.read.bytes.rate
+ binding_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - binding
+ disk.write.bytes_oam_server:
+ - oam_server
+ - disk.write.bytes
+ disk.write.requests_oam_server:
+ - oam_server
+ - disk.write.requests
+ cpu_oam_server:
+ - oam_server
+ - cpu
+ vcpus_oam_server:
+ - oam_server
+ - vcpus
+ network.incoming.packets_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_oam_server:
+ - oam_server
+ - disk.device.read.requests.rate
+ network.outpoing.packets_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outpoing.packets
+ disk.allocation_oam_server:
+ - oam_server
+ - disk.allocation
+ disk.write.bytes.rate_oam_server:
+ - oam_server
+ - disk.write.bytes.rate
+ disk.device.write.requests.rate_oam_server:
+ - oam_server
+ - disk.device.write.requests.rate
+ instance_oam_server:
+ - oam_server
+ - instance
+ memory.resident_oam_server:
+ - oam_server
+ - memory.resident
+ disk.device.read.requests_oam_server:
+ - oam_server
+ - disk.device.read.requests
+ disk.device.allocation_oam_server:
+ - oam_server
+ - disk.device.allocation
+ disk.device.write.requests_oam_server:
+ - oam_server
+ - disk.device.write.requests
+ disk.iops_oam_server:
+ - oam_server
+ - disk.iops
+ disk.device.capacity_oam_server:
+ - oam_server
+ - disk.device.capacity
+ binding_oam_server:
+ - oam_server
+ - binding
+ disk.device.write.bytes.rate_oam_server:
+ - oam_server
+ - disk.device.write.bytes.rate
+ disk.device.usage_oam_server:
+ - oam_server
+ - disk.device.usage
+ network.outgoing.packets.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outgoing.packets.rate
+ attachment_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - attachment
+ disk.latency_oam_server:
+ - oam_server
+ - disk.latency
+ disk.read.requests_oam_server:
+ - oam_server
+ - disk.read.requests
+ disk.device.iops_oam_server:
+ - oam_server
+ - disk.device.iops
+ disk.root.size_oam_server:
+ - oam_server
+ - disk.root.size
+ disk.device.latency_oam_server:
+ - oam_server
+ - disk.device.latency
+ feature_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - feature
+ memory.usage_oam_server:
+ - oam_server
+ - memory.usage
+ endpoint_oam_server:
+ - oam_server
+ - endpoint
+ scalable_oam_server:
+ - oam_server
+ - scalable
+ network.incoming.bytes_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.bytes
+ disk.write.requests.rate_oam_server:
+ - oam_server
+ - disk.write.requests.rate
+ network.incoming.packets.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.packets.rate
+ disk.device.read.bytes.rate_oam_server:
+ - oam_server
+ - disk.device.read.bytes.rate
+ disk.device.read.bytes_oam_server:
+ - oam_server
+ - disk.device.read.bytes
+ os_oam_server:
+ - oam_server
+ - os
+ disk.read.bytes_oam_server:
+ - oam_server
+ - disk.read.bytes
+ network.outgoing.bytes_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.ephemeral.size_oam_server:
+ - oam_server
+ - disk.ephemeral.size
+ requirements:
+ link_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - link
+ dependency_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - dependency
+ local_storage_oam_server:
+ - oam_server
+ - local_storage
+ dependency_oam_server:
+ - oam_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..c79dd4cc64
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,312 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_pd_server_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_pd_server_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd01_port_security_groups
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ pd_server_pd01_port_device_owner:
+ type: list
+ value:
+ get_attribute:
+ - pd_server_pd01_port
+ - device_owner
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..b2c48a9534
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithAllConnectivities/out/Nested_ps_serverServiceTemplate.yaml
@@ -0,0 +1,303 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_ps_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_ps_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_ps_server_scheduler_hints:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_security_groups:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ ps_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input:
+ - port_pd01_port_security_groups
+ - index_value
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ps_server
+ relationship: tosca.relationships.network.BindsTo
+ ps_server:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_ps_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_ps_server_name
+ - index_value
+ scheduler_hints:
+ get_input:
+ - compute_ps_server_scheduler_hints
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_ps_server_user_data_format
+ - index_value
+ outputs:
+ ps_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - ps_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ ps_server_pd01_port_device_id:
+ type: list
+ value:
+ get_attribute:
+ - ps_server_pd01_port
+ - device_id
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.ps_server
+ capabilities:
+ instance_ps_server:
+ - ps_server
+ - instance
+ binding_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - binding
+ host_ps_server:
+ - ps_server
+ - host
+ cpu.delta_ps_server:
+ - ps_server
+ - cpu.delta
+ disk.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.write.bytes.rate
+ feature_ps_server:
+ - ps_server
+ - feature
+ disk.root.size_ps_server:
+ - ps_server
+ - disk.root.size
+ disk.device.read.requests.rate_ps_server:
+ - ps_server
+ - disk.device.read.requests.rate
+ cpu_ps_server:
+ - ps_server
+ - cpu
+ disk.device.write.bytes_ps_server:
+ - ps_server
+ - disk.device.write.bytes
+ disk.device.read.bytes_ps_server:
+ - ps_server
+ - disk.device.read.bytes
+ disk.read.bytes_ps_server:
+ - ps_server
+ - disk.read.bytes
+ disk.device.iops_ps_server:
+ - ps_server
+ - disk.device.iops
+ network.outpoing.packets_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outpoing.packets
+ disk.device.latency_ps_server:
+ - ps_server
+ - disk.device.latency
+ disk.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.read.bytes.rate
+ memory_ps_server:
+ - ps_server
+ - memory
+ scalable_ps_server:
+ - ps_server
+ - scalable
+ disk.write.requests.rate_ps_server:
+ - ps_server
+ - disk.write.requests.rate
+ network.outgoing.bytes_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outgoing.bytes
+ disk.write.requests_ps_server:
+ - ps_server
+ - disk.write.requests
+ network.incoming.bytes.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.packets
+ disk.latency_ps_server:
+ - ps_server
+ - disk.latency
+ disk.ephemeral.size_ps_server:
+ - ps_server
+ - disk.ephemeral.size
+ disk.device.capacity_ps_server:
+ - ps_server
+ - disk.device.capacity
+ disk.iops_ps_server:
+ - ps_server
+ - disk.iops
+ disk.device.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outgoing.packets.rate
+ cpu_util_ps_server:
+ - ps_server
+ - cpu_util
+ memory.resident_ps_server:
+ - ps_server
+ - memory.resident
+ disk.device.read.requests_ps_server:
+ - ps_server
+ - disk.device.read.requests
+ disk.write.bytes_ps_server:
+ - ps_server
+ - disk.write.bytes
+ feature_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - feature
+ network.outgoing.bytes.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outgoing.bytes.rate
+ attachment_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - attachment
+ disk.device.write.requests.rate_ps_server:
+ - ps_server
+ - disk.device.write.requests.rate
+ network.incoming.packets.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.packets.rate
+ disk.read.requests_ps_server:
+ - ps_server
+ - disk.read.requests
+ disk.allocation_ps_server:
+ - ps_server
+ - disk.allocation
+ memory.usage_ps_server:
+ - ps_server
+ - memory.usage
+ binding_ps_server:
+ - ps_server
+ - binding
+ os_ps_server:
+ - ps_server
+ - os
+ disk.device.usage_ps_server:
+ - ps_server
+ - disk.device.usage
+ disk.device.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.write.bytes.rate
+ vcpus_ps_server:
+ - ps_server
+ - vcpus
+ network.incoming.bytes_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.bytes
+ disk.usage_ps_server:
+ - ps_server
+ - disk.usage
+ disk.device.write.requests_ps_server:
+ - ps_server
+ - disk.device.write.requests
+ endpoint_ps_server:
+ - ps_server
+ - endpoint
+ disk.capacity_ps_server:
+ - ps_server
+ - disk.capacity
+ disk.device.allocation_ps_server:
+ - ps_server
+ - disk.device.allocation
+ requirements:
+ dependency_ps_server:
+ - ps_server
+ - dependency
+ dependency_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - dependency
+ link_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - link
+ local_storage_ps_server:
+ - ps_server
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..e2ce766abe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,20 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ dummy_net_name_1: mog_dummy_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..9f4c7475d8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,137 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+
+resources:
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [ps_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ server_oam_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [oam_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_2}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [network_policy_server, name]}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..d4a4f2e671
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1192 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.oam_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_oam_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_oam_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_oam_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_oam_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_oam_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_oam_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_oam_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_oam_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_oam_server:
+ type: org.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_oam_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_oam_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server:
+ type: org.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_oam_server:
+ type: org.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_oam_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_oam_server:
+ type: org.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_oam_server_pd01_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_oam_server_pd01_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_oam_server:
+ type: org.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.ps_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_ps_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_ps_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_ps_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_ps_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_ps_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ instance_ps_server:
+ type: org.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_ps_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ host_ps_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_ps_server_pd01_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_ps_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_ps_server:
+ type: org.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_ps_server_pd01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_ps_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_pd01_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.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_ps_server:
+ type: org.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_ps_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..1e96f5cadd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/MainServiceTemplate.yaml
@@ -0,0 +1,308 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: mog_dummy_1
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_ps_server:
+ type: org.openecomp.resource.abstract.nodes.ps_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_ps_server_name:
+ - get_input:
+ - ps_server_names
+ - 0
+ vm_image_name:
+ get_input: pd_image_name
+ compute_ps_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_ps_server_user_data_format:
+ - RAW
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_attribute:
+ - network_policy_server
+ - name
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ service_template_filter:
+ substitute_service_template: Nested_ps_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_oam_server:
+ type: org.openecomp.resource.abstract.nodes.oam_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ compute_oam_server_availability_zone:
+ - get_input: availabilityzone_name
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ compute_oam_server_user_data_format:
+ - RAW
+ compute_oam_server_name:
+ - get_input:
+ - oam_server_names
+ - 0
+ port_pd01_port_network_role_tag:
+ - oam
+ service_template_filter:
+ substitute_service_template: Nested_oam_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_server
+ - abstract_pd_server
+ - abstract_ps_server
+ - abstract_oam_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..999882d584
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_oam_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_oam_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.oam_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_oam_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_oam_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_oam_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ oam_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: oam_server
+ relationship: tosca.relationships.network.BindsTo
+ oam_server:
+ type: org.openecomp.resource.vfc.nodes.heat.oam_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_oam_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_oam_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_oam_server_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.oam_server
+ capabilities:
+ cpu.delta_oam_server:
+ - oam_server
+ - cpu.delta
+ host_oam_server:
+ - oam_server
+ - host
+ disk.usage_oam_server:
+ - oam_server
+ - disk.usage
+ network.incoming.bytes.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.bytes.rate
+ feature_oam_server:
+ - oam_server
+ - feature
+ disk.device.write.bytes_oam_server:
+ - oam_server
+ - disk.device.write.bytes
+ cpu_util_oam_server:
+ - oam_server
+ - cpu_util
+ disk.capacity_oam_server:
+ - oam_server
+ - disk.capacity
+ memory_oam_server:
+ - oam_server
+ - memory
+ disk.read.bytes.rate_oam_server:
+ - oam_server
+ - disk.read.bytes.rate
+ binding_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - binding
+ disk.write.bytes_oam_server:
+ - oam_server
+ - disk.write.bytes
+ disk.write.requests_oam_server:
+ - oam_server
+ - disk.write.requests
+ cpu_oam_server:
+ - oam_server
+ - cpu
+ vcpus_oam_server:
+ - oam_server
+ - vcpus
+ network.incoming.packets_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_oam_server:
+ - oam_server
+ - disk.device.read.requests.rate
+ network.outpoing.packets_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outpoing.packets
+ disk.allocation_oam_server:
+ - oam_server
+ - disk.allocation
+ disk.write.bytes.rate_oam_server:
+ - oam_server
+ - disk.write.bytes.rate
+ disk.device.write.requests.rate_oam_server:
+ - oam_server
+ - disk.device.write.requests.rate
+ instance_oam_server:
+ - oam_server
+ - instance
+ memory.resident_oam_server:
+ - oam_server
+ - memory.resident
+ disk.device.read.requests_oam_server:
+ - oam_server
+ - disk.device.read.requests
+ disk.device.allocation_oam_server:
+ - oam_server
+ - disk.device.allocation
+ disk.device.write.requests_oam_server:
+ - oam_server
+ - disk.device.write.requests
+ disk.iops_oam_server:
+ - oam_server
+ - disk.iops
+ disk.device.capacity_oam_server:
+ - oam_server
+ - disk.device.capacity
+ binding_oam_server:
+ - oam_server
+ - binding
+ disk.device.write.bytes.rate_oam_server:
+ - oam_server
+ - disk.device.write.bytes.rate
+ disk.device.usage_oam_server:
+ - oam_server
+ - disk.device.usage
+ network.outgoing.packets.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outgoing.packets.rate
+ attachment_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - attachment
+ disk.latency_oam_server:
+ - oam_server
+ - disk.latency
+ disk.read.requests_oam_server:
+ - oam_server
+ - disk.read.requests
+ disk.device.iops_oam_server:
+ - oam_server
+ - disk.device.iops
+ disk.root.size_oam_server:
+ - oam_server
+ - disk.root.size
+ disk.device.latency_oam_server:
+ - oam_server
+ - disk.device.latency
+ feature_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - feature
+ memory.usage_oam_server:
+ - oam_server
+ - memory.usage
+ endpoint_oam_server:
+ - oam_server
+ - endpoint
+ scalable_oam_server:
+ - oam_server
+ - scalable
+ network.incoming.bytes_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.bytes
+ disk.write.requests.rate_oam_server:
+ - oam_server
+ - disk.write.requests.rate
+ network.incoming.packets.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.incoming.packets.rate
+ disk.device.read.bytes.rate_oam_server:
+ - oam_server
+ - disk.device.read.bytes.rate
+ disk.device.read.bytes_oam_server:
+ - oam_server
+ - disk.device.read.bytes
+ os_oam_server:
+ - oam_server
+ - os
+ disk.read.bytes_oam_server:
+ - oam_server
+ - disk.read.bytes
+ network.outgoing.bytes_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.ephemeral.size_oam_server:
+ - oam_server
+ - disk.ephemeral.size
+ requirements:
+ link_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - link
+ dependency_oam_server_pd01_port:
+ - oam_server_pd01_port
+ - dependency
+ local_storage_oam_server:
+ - oam_server
+ - local_storage
+ dependency_oam_server:
+ - oam_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..74044a11c2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..9b747c547e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeDiffComputesWithPorts/out/Nested_ps_serverServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_ps_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_ps_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ vm_flavor_name:
+ type: string
+ required: true
+ node_templates:
+ ps_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ps_server
+ relationship: tosca.relationships.network.BindsTo
+ ps_server:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_ps_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_ps_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_ps_server_user_data_format
+ - index_value
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.ps_server
+ capabilities:
+ instance_ps_server:
+ - ps_server
+ - instance
+ binding_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - binding
+ host_ps_server:
+ - ps_server
+ - host
+ cpu.delta_ps_server:
+ - ps_server
+ - cpu.delta
+ disk.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.write.bytes.rate
+ feature_ps_server:
+ - ps_server
+ - feature
+ disk.root.size_ps_server:
+ - ps_server
+ - disk.root.size
+ disk.device.read.requests.rate_ps_server:
+ - ps_server
+ - disk.device.read.requests.rate
+ cpu_ps_server:
+ - ps_server
+ - cpu
+ disk.device.write.bytes_ps_server:
+ - ps_server
+ - disk.device.write.bytes
+ disk.device.read.bytes_ps_server:
+ - ps_server
+ - disk.device.read.bytes
+ disk.read.bytes_ps_server:
+ - ps_server
+ - disk.read.bytes
+ disk.device.iops_ps_server:
+ - ps_server
+ - disk.device.iops
+ network.outpoing.packets_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outpoing.packets
+ disk.device.latency_ps_server:
+ - ps_server
+ - disk.device.latency
+ disk.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.read.bytes.rate
+ memory_ps_server:
+ - ps_server
+ - memory
+ scalable_ps_server:
+ - ps_server
+ - scalable
+ disk.write.requests.rate_ps_server:
+ - ps_server
+ - disk.write.requests.rate
+ network.outgoing.bytes_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outgoing.bytes
+ disk.write.requests_ps_server:
+ - ps_server
+ - disk.write.requests
+ network.incoming.bytes.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.packets
+ disk.latency_ps_server:
+ - ps_server
+ - disk.latency
+ disk.ephemeral.size_ps_server:
+ - ps_server
+ - disk.ephemeral.size
+ disk.device.capacity_ps_server:
+ - ps_server
+ - disk.device.capacity
+ disk.iops_ps_server:
+ - ps_server
+ - disk.iops
+ disk.device.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outgoing.packets.rate
+ cpu_util_ps_server:
+ - ps_server
+ - cpu_util
+ memory.resident_ps_server:
+ - ps_server
+ - memory.resident
+ disk.device.read.requests_ps_server:
+ - ps_server
+ - disk.device.read.requests
+ disk.write.bytes_ps_server:
+ - ps_server
+ - disk.write.bytes
+ feature_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - feature
+ network.outgoing.bytes.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.outgoing.bytes.rate
+ attachment_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - attachment
+ disk.device.write.requests.rate_ps_server:
+ - ps_server
+ - disk.device.write.requests.rate
+ network.incoming.packets.rate_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.packets.rate
+ disk.read.requests_ps_server:
+ - ps_server
+ - disk.read.requests
+ disk.allocation_ps_server:
+ - ps_server
+ - disk.allocation
+ memory.usage_ps_server:
+ - ps_server
+ - memory.usage
+ binding_ps_server:
+ - ps_server
+ - binding
+ os_ps_server:
+ - ps_server
+ - os
+ disk.device.usage_ps_server:
+ - ps_server
+ - disk.device.usage
+ disk.device.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.write.bytes.rate
+ vcpus_ps_server:
+ - ps_server
+ - vcpus
+ network.incoming.bytes_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - network.incoming.bytes
+ disk.usage_ps_server:
+ - ps_server
+ - disk.usage
+ disk.device.write.requests_ps_server:
+ - ps_server
+ - disk.device.write.requests
+ endpoint_ps_server:
+ - ps_server
+ - endpoint
+ disk.capacity_ps_server:
+ - ps_server
+ - disk.capacity
+ disk.device.allocation_ps_server:
+ - ps_server
+ - disk.device.allocation
+ requirements:
+ dependency_ps_server:
+ - ps_server
+ - dependency
+ dependency_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - dependency
+ link_ps_server_pd01_port:
+ - ps_server_pd01_port
+ - link
+ local_storage_ps_server:
+ - ps_server
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..e2ce766abe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,20 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ dummy_net_name_1: mog_dummy_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..53a41c4c09
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,138 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ server_pd_03:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_2}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [server_pd_01, accessIPv4]}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [server_pd_02, accessIPv4]}
+ pd01_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..1bf05aa17e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1174 @@
+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.pd_server_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3fab6b6130
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/MainServiceTemplate.yaml
@@ -0,0 +1,310 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: mog_dummy_1
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ pd01_port_3:
+ 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
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ abstract_pd_server_2:
+ type: org.openecomp.resource.abstract.nodes.pd_server_2
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 2
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ abstract_pd_server_0:
+ type: org.openecomp.resource.abstract.nodes.pd_server_0
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_pd_server_1:
+ type: org.openecomp.resource.abstract.nodes.pd_server_1
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - pd01_port_3
+ - network_policy_server
+ - abstract_pd_server_0
+ - abstract_pd_server_1
+ - abstract_pd_server_2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..a0614d3393
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -0,0 +1,263 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_0
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..c32b489666
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -0,0 +1,263 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_1
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml
new file mode 100644
index 0000000000..1b487934d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeNovaSameTypeWithGetAttrFromPort/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_2
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..e2ce766abe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,20 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ dummy_net_name_1: mog_dummy_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..ac6b046317
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,142 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ dummy_net_name_1:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW
+
+ server_pd_03:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 2]}
+ image: {get_param: pd_image_name}
+ flavor: {get_attr: [network_policy_server, name]}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_2}
+ - port: {get_resource: pd01_port_3}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_attr: [network_policy_server, name]}
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+ pd01_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+ network_policy_server:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name: {get_param: dummy_net_name_1}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..4f96bcd484
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,1294 @@
+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.pd_server_0:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.pd_server_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_2_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_3_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_3_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_3_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_2_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_3_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_pd01_port_2_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_pd_server_pd01_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pd_server_pd01_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server_pd01_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port_2:
+ type: org.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_pd_server_pd01_port_3:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pd_server_pd01_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..393fbdc37a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,321 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ dummy_net_name_1:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: mog_dummy_1
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pd_server_2:
+ type: org.openecomp.resource.abstract.nodes.pd_server_2
+ directives:
+ - substitutable
+ properties:
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 2
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_2_network_role_tag:
+ - oam
+ port_pd01_port_3_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_3_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_3_network:
+ - get_input: oam_net_name
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_2_network:
+ - get_input: oam_net_name
+ port_pd01_port_2_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_pd01_port_3_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ port_pd01_port_2_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ network_policy_server:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules
+ properties:
+ name:
+ get_input: dummy_net_name_1
+ abstract_pd_server_0:
+ type: org.openecomp.resource.abstract.nodes.pd_server_0
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 1
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_pd_server_1:
+ type: org.openecomp.resource.abstract.nodes.pd_server_1
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_attribute:
+ - network_policy_server
+ - name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_attribute:
+ - network_policy_server
+ - name
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_server_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - network_policy_server
+ - abstract_pd_server_0
+ - abstract_pd_server_1
+ - abstract_pd_server_2 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml
new file mode 100644
index 0000000000..b6c4036c6d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_0ServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_0
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_0
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml
new file mode 100644
index 0000000000..a0da89fcd1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_1ServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_1
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml
new file mode 100644
index 0000000000..f9becc9b4a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/threeSameComputesNoConsolidation/out/Nested_pd_server_2ServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server_2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_2_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_3_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_3_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_3_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_2_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_3_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_pd01_port_2_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_2_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_2_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_2_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_2_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ pd_server_pd01_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_3_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_3_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_3_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_3_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server_2
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ binding_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - binding
+ binding_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - binding
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.incoming.packets.rate_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.incoming.bytes.rate
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ network.incoming.packets.rate_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.incoming.bytes.rate
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.outgoing.packets.rate_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.outgoing.packets.rate
+ attachment_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - attachment
+ attachment_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - attachment
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ network.incoming.packets_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.incoming.packets
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ network.incoming.packets_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.incoming.packets
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ network.outgoing.bytes.rate_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.outgoing.bytes.rate
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ network.incoming.bytes_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.outgoing.bytes.rate
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.outgoing.bytes_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.outgoing.bytes
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ network.outgoing.bytes_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.outgoing.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ network.outpoing.packets_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - network.outpoing.packets
+ network.outpoing.packets_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - network.outpoing.packets
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ feature_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - feature
+ feature_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - feature
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - link
+ link_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - link
+ dependency_pd_server_pd01_port_2:
+ - pd_server_pd01_port_2
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - dependency
+ dependency_pd_server_pd01_port_3:
+ - pd_server_pd01_port_3
+ - 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/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..8ce5738f99
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,45 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..87844e88ad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,203 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_attr: [server_ps_01, accessIPv4]}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [ps_server_names, 0]}
+ image: {get_attr: [server_pd_01, accessIPv4]}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: ps01_port_0}
+ user_data_format: RAW
+
+ ps01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..63f9c558e7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,813 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ pd_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.ps_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_ps_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_ps01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ ps_server_accessIPv4:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_ps_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_ps_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_ps_server_ps01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_ps_server_ps01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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
+ host_ps_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_ps_server_ps01_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.delta_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_ps_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_ps_server_ps01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_ps_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..2848946b96
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/MainServiceTemplate.yaml
@@ -0,0 +1,441 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_attribute:
+ - abstract_ps_server
+ - ps_server_accessIPv4
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_ps_server:
+ type: org.openecomp.resource.abstract.nodes.ps_server
+ directives:
+ - substitutable
+ properties:
+ compute_ps_server_name:
+ - get_input:
+ - ps_server_names
+ - 0
+ vm_image_name:
+ get_attribute:
+ - abstract_pd_server
+ - pd_server_accessIPv4
+ compute_ps_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_ps_server_user_data_format:
+ - RAW
+ port_ps01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_ps01_port_network:
+ - get_input: oam_net_name
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_ps01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_ps01_port_network_role_tag:
+ - oam
+ service_template_filter:
+ substitute_service_template: Nested_ps_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ - abstract_ps_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..245fee1136
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ pd_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - pd_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..f889b1a55b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoComputesWithGetAttrBetweenThem/out/Nested_ps_serverServiceTemplate.yaml
@@ -0,0 +1,286 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_ps_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_ps_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_ps01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ ps_server:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_ps_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_ps_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_ps_server_user_data_format
+ - index_value
+ ps_server_ps01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_ps01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_ps01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_ps01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_ps01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ps_server
+ relationship: tosca.relationships.network.BindsTo
+ outputs:
+ ps_server_accessIPv4:
+ type: list
+ value:
+ get_attribute:
+ - ps_server
+ - accessIPv4
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.ps_server
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets.rate
+ instance_ps_server:
+ - ps_server
+ - instance
+ network.outpoing.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outpoing.packets
+ host_ps_server:
+ - ps_server
+ - host
+ network.incoming.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets
+ cpu.delta_ps_server:
+ - ps_server
+ - cpu.delta
+ disk.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.write.bytes.rate
+ feature_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - feature
+ feature_ps_server:
+ - ps_server
+ - feature
+ disk.root.size_ps_server:
+ - ps_server
+ - disk.root.size
+ disk.device.read.requests.rate_ps_server:
+ - ps_server
+ - disk.device.read.requests.rate
+ cpu_ps_server:
+ - ps_server
+ - cpu
+ disk.device.write.bytes_ps_server:
+ - ps_server
+ - disk.device.write.bytes
+ disk.device.read.bytes_ps_server:
+ - ps_server
+ - disk.device.read.bytes
+ disk.read.bytes_ps_server:
+ - ps_server
+ - disk.read.bytes
+ disk.device.iops_ps_server:
+ - ps_server
+ - disk.device.iops
+ network.outgoing.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.packets.rate
+ disk.device.latency_ps_server:
+ - ps_server
+ - disk.device.latency
+ disk.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.read.bytes.rate
+ memory_ps_server:
+ - ps_server
+ - memory
+ scalable_ps_server:
+ - ps_server
+ - scalable
+ disk.write.requests.rate_ps_server:
+ - ps_server
+ - disk.write.requests.rate
+ disk.write.requests_ps_server:
+ - ps_server
+ - disk.write.requests
+ disk.latency_ps_server:
+ - ps_server
+ - disk.latency
+ disk.ephemeral.size_ps_server:
+ - ps_server
+ - disk.ephemeral.size
+ disk.device.capacity_ps_server:
+ - ps_server
+ - disk.device.capacity
+ disk.iops_ps_server:
+ - ps_server
+ - disk.iops
+ disk.device.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.read.bytes.rate
+ cpu_util_ps_server:
+ - ps_server
+ - cpu_util
+ memory.resident_ps_server:
+ - ps_server
+ - memory.resident
+ network.incoming.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes
+ disk.device.read.requests_ps_server:
+ - ps_server
+ - disk.device.read.requests
+ disk.write.bytes_ps_server:
+ - ps_server
+ - disk.write.bytes
+ network.outgoing.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes.rate
+ disk.device.write.requests.rate_ps_server:
+ - ps_server
+ - disk.device.write.requests.rate
+ disk.read.requests_ps_server:
+ - ps_server
+ - disk.read.requests
+ disk.allocation_ps_server:
+ - ps_server
+ - disk.allocation
+ memory.usage_ps_server:
+ - ps_server
+ - memory.usage
+ binding_ps_server:
+ - ps_server
+ - binding
+ attachment_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - attachment
+ os_ps_server:
+ - ps_server
+ - os
+ disk.device.usage_ps_server:
+ - ps_server
+ - disk.device.usage
+ binding_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - binding
+ disk.device.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.write.bytes.rate
+ vcpus_ps_server:
+ - ps_server
+ - vcpus
+ disk.usage_ps_server:
+ - ps_server
+ - disk.usage
+ disk.device.write.requests_ps_server:
+ - ps_server
+ - disk.device.write.requests
+ endpoint_ps_server:
+ - ps_server
+ - endpoint
+ disk.capacity_ps_server:
+ - ps_server
+ - disk.capacity
+ network.incoming.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes.rate
+ disk.device.allocation_ps_server:
+ - ps_server
+ - disk.device.allocation
+ network.outgoing.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes
+ requirements:
+ dependency_ps_server:
+ - ps_server
+ - dependency
+ link_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - link
+ dependency_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - dependency
+ local_storage_ps_server:
+ - ps_server
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/MANIFEST.json
new file mode 100644
index 0000000000..40c2b4c296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.yml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-mog-0108-bs1271.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..8ce5738f99
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.env
@@ -0,0 +1,45 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ oam_server_names: ZRDM1MOGX01OAM001,ZRDM1MOGX01OAM002
+ oam_image_name: MOG_BASE_8.0
+ oam_flavor_name: m3.xlarge
+ sm_server_names: ZRDM1MOGX01MSM001,ZRDM1MOGX01MSM002
+ sm_image_name: MOG_BASE_8.0
+ sm_flavor_name: m2.xlarge4
+ ps_server_names: ZRDM1MOGX01MPS001,ZRDM1MOGX01MPS002,ZRDM1MOGX01MPS003,ZRDM1MOGX01MPS004
+ ps_image_name: MOG_BASE_8.0
+ ps_flavor_name: m3.xlarge
+ cm_server_names: ZRDM1MOGX01MCM001
+ cm_image_name: MOG_BASE_8.0
+ cm_flavor_name: m3.xlarge
+ availabilityzone_name: nova
+ oam_net_name: oam_protected_net_0
+ oam_net_ips: 107.250.172.213,107.250.172.214,107.250.172.215,107.250.172.216,107.250.172.217
+ #internet_net_name: dmz_protected_net_0
+ #internet_net_ips: 107.239.53.4,107.239.53.5
+ # internet_net_floating_ip: 107.239.53.6
+ sl_net_name: exn_protected_net_0
+ sl_net_ips: 107.239.45.4,107.239.45.5
+ sl_net_floating_ip: 107.239.45.6
+ repl_net_name: cor_direct_net_0
+ repl_net_ips: 107.239.33.57,107.239.33.58
+ rx_net_name: cor_direct_net_1
+ rx_net_ips: 107.239.34.3,107.239.34.4
+ rx_net_floating_ip: 107.239.34.5
+ ran_net_name: gn_direct_net_0
+ ran_net_ips: 107.239.36.3,107.239.36.4
+ ran_net_floating_ip: 107.239.36.5
+ dummy_net_name_0: mog_dummy_0
+ dummy_net_start_0: 169.254.1.4
+ dummy_net_end_0: 169.254.1.254
+ dummy_net_cidr_0: 169.254.1.0/24
+ dummy_net_netmask_0: 255.255.255.0
+ dummy_net_name_1: mog_dummy_1
+ csb_net_name: int_mog_csb_net
+ csb_net_ips: 172.26.0.10,172.26.0.11,172.26.0.12,172.26.0.13,172.26.0.14,172.26.0.15,172.26.0.16,172.26.0.17,172.26.0.18,172.26.0.19,172.26.0.20
+ csb_net_start: 172.26.0.1
+ csb_net_end: 172.26.0.254
+ csb_net_cidr: 172.26.0.0/24
+ csb_net_netmask: 255.255.255.0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..26e4b4ae84
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/in/hot-mog-0108-bs1271.yml
@@ -0,0 +1,203 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ oam_server_names:
+ type: comma_delimited_list
+ label: OAM server names
+ description: name of the OAM instance
+ oam_image_name:
+ type: string
+ label: image name
+ description: OAM image name
+ oam_flavor_name:
+ type: string
+ label: OAM flavor name
+ description: flavor name of OAM instance
+ sm_server_names:
+ type: comma_delimited_list
+ label: SM server names
+ description: name of the SM instance
+ sm_image_name:
+ type: string
+ label: image name
+ description: SM image name
+ sm_flavor_name:
+ type: string
+ label: SM flavor name
+ description: flavor name of SM instance
+ ps_server_names:
+ type: comma_delimited_list
+ label: PS server names
+ description: name of the PS instance
+ ps_image_name:
+ type: string
+ label: PS image name
+ description: PS image name
+ ps_flavor_name:
+ type: string
+ label: PS flavor name
+ description: flavor name of PS instance
+ cm_server_names:
+ type: comma_delimited_list
+ label: CM server names
+ description: name of the CM instance
+ cm_image_name:
+ type: string
+ label: image name
+ description: CM image name
+ cm_flavor_name:
+ type: string
+ label: CM flavor name
+ description: flavor name of CM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ oam_net_name:
+ type: string
+ label: oam network name
+ description: name of the oam network
+ oam_net_ips:
+ type: comma_delimited_list
+ label: internet network ips
+ description: ip of the OAM network
+ sl_net_name:
+ type: string
+ label: silver lining network name
+ description: id of the sl network
+ sl_net_ips:
+ type: comma_delimited_list
+ label: silver lining network ips
+ description: ips of the sl network
+ sl_net_floating_ip:
+ type: string
+ label: mog sl net virtual ip
+ description: mog sl net virtual ip
+ repl_net_name:
+ type: string
+ label: Replication network name
+ description: name of the replication network
+ repl_net_ips:
+ type: comma_delimited_list
+ label: repl network ips
+ description: ips of repl network
+ rx_net_name:
+ type: string
+ label: Rx network name
+ description: Rx network name
+ rx_net_ips:
+ type: comma_delimited_list
+ label: Rx network ips
+ description: Rx network ips
+ rx_net_floating_ip:
+ type: string
+ label: mog rx net virtual ip
+ description: mog rx net virtual ip
+ ran_net_name:
+ type: string
+ label: RAN network name
+ description: RAN network name
+ ran_net_ips:
+ type: comma_delimited_list
+ label: RAN network ips
+ description: RAN network ip
+ ran_net_floating_ip:
+ type: string
+ label: mog ran net virtual ip
+ description: mog ran net virtual ip
+ csb_net_name:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ csb_net_start:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ csb_net_end:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ csb_net_cidr:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ csb_net_netmask:
+ type: string
+ description: CSB internal network subnet mask
+ csb_net_ips:
+ type: comma_delimited_list
+ description: mog_csb_net IP addresses
+ dummy_net_name_0:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+ dummy_net_start_0:
+ type: string
+ label: csb internal start
+ description: csb internal start
+ dummy_net_end_0:
+ type: string
+ label: csb internal end
+ description: csb internal end
+ dummy_net_cidr_0:
+ type: string
+ label: csb ineternal cidr
+ description: csb internal cidr
+ dummy_net_netmask_0:
+ type: string
+ description: CSB internal network subnet mask
+ dummy_net_name_1:
+ type: string
+ label: csb internal network name
+ description: csb internal network name
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW
+
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
+
+ server_ps_01:
+ type: OS::Nova::Server
+ properties:
+# config_drive: "True"
+ name: {get_param: [ps_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: ps01_port_0}
+ user_data_format: RAW
+
+ ps01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: oam_net_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..a674d6bf46
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,801 @@
+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.pd_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_pd_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_pd_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pd_server_pd01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pd_server_pd01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_pd_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pd_server_pd01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_pd_server:
+ type: org.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_pd_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pd_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_pd_server_pd01_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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server:
+ type: org.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_pd_server_pd01_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_pd_server:
+ type: org.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.ps_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_ps_server_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_ps01_port_network_role_tag:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_ps_server:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_ps_server:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_ps_server_ps01_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_ps_server_ps01_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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
+ host_ps_server:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_ps_server_ps01_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.delta_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_ps_server:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server_ps01_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.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_ps_server_ps01_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_ps_server:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_ps_server:
+ type: org.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_ps_server_ps01_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_ps_server:
+ type: org.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_ps_server:
+ type: org.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.usage_ps_server:
+ type: org.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_ps_server:
+ type: org.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_ps_server:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_ps_server:
+ type: org.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_ps_server_ps01_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_ps_server:
+ type: org.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_ps_server_ps01_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..bbbd7dadd3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/MainServiceTemplate.yaml
@@ -0,0 +1,437 @@
+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:
+ pd_flavor_name:
+ label: PD flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PD instance
+ default: m3.xlarge
+ dummy_net_name_1:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_1
+ dummy_net_name_0:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: mog_dummy_0
+ dummy_net_cidr_0:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 169.254.1.0/24
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ sl_net_floating_ip:
+ label: mog sl net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog sl net virtual ip
+ default: 107.239.45.6
+ repl_net_ips:
+ label: repl network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of repl network
+ default:
+ - 107.239.33.57
+ - 107.239.33.58
+ entry_schema:
+ type: string
+ sl_net_name:
+ label: silver lining network name
+ hidden: false
+ immutable: false
+ type: string
+ description: id of the sl network
+ default: exn_protected_net_0
+ rx_net_floating_ip:
+ label: mog rx net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog rx net virtual ip
+ default: 107.239.34.5
+ pd_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PD image name
+ default: MOG_BASE_8.0
+ pd_server_names:
+ label: PD server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PD instance
+ default:
+ - ZRDM1MOGX01MPD001
+ - ZRDM1MOGX01MPD002
+ entry_schema:
+ type: string
+ sm_server_names:
+ label: SM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the SM instance
+ default:
+ - ZRDM1MOGX01MSM001
+ - ZRDM1MOGX01MSM002
+ entry_schema:
+ type: string
+ csb_net_start:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 172.26.0.1
+ dummy_net_netmask_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ cm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: CM image name
+ default: MOG_BASE_8.0
+ ran_net_floating_ip:
+ label: mog ran net virtual ip
+ hidden: false
+ immutable: false
+ type: string
+ description: mog ran net virtual ip
+ default: 107.239.36.5
+ sm_flavor_name:
+ label: SM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of SM instance
+ default: m2.xlarge4
+ ran_net_ips:
+ label: RAN network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: RAN network ip
+ default:
+ - 107.239.36.3
+ - 107.239.36.4
+ entry_schema:
+ type: string
+ ps_image_name:
+ label: PS image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PS image name
+ default: MOG_BASE_8.0
+ dummy_net_end_0:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 169.254.1.254
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM image name
+ default: MOG_BASE_8.0
+ oam_server_names:
+ label: OAM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the OAM instance
+ default:
+ - ZRDM1MOGX01OAM001
+ - ZRDM1MOGX01OAM002
+ entry_schema:
+ type: string
+ oam_net_name:
+ label: oam network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the oam network
+ default: oam_protected_net_0
+ oam_net_ips:
+ label: internet network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ip of the OAM network
+ default:
+ - 107.250.172.213
+ - 107.250.172.214
+ - 107.250.172.215
+ - 107.250.172.216
+ - 107.250.172.217
+ entry_schema:
+ type: string
+ csb_net_cidr:
+ label: csb ineternal cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal cidr
+ default: 172.26.0.0/24
+ ran_net_name:
+ label: RAN network name
+ hidden: false
+ immutable: false
+ type: string
+ description: RAN network name
+ default: gn_direct_net_0
+ cm_server_names:
+ label: CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the CM instance
+ default:
+ - ZRDM1MOGX01MCM001
+ entry_schema:
+ type: string
+ sl_net_ips:
+ label: silver lining network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: ips of the sl network
+ default:
+ - 107.239.45.4
+ - 107.239.45.5
+ entry_schema:
+ type: string
+ rx_net_name:
+ label: Rx network name
+ hidden: false
+ immutable: false
+ type: string
+ description: Rx network name
+ default: cor_direct_net_1
+ csb_net_netmask:
+ hidden: false
+ immutable: false
+ type: string
+ description: CSB internal network subnet mask
+ default: 255.255.255.0
+ oam_flavor_name:
+ label: OAM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of OAM instance
+ default: m3.xlarge
+ repl_net_name:
+ label: Replication network name
+ hidden: false
+ immutable: false
+ type: string
+ description: name of the replication network
+ default: cor_direct_net_0
+ csb_net_end:
+ label: csb internal end
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal end
+ default: 172.26.0.254
+ dummy_net_start_0:
+ label: csb internal start
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal start
+ default: 169.254.1.4
+ cm_flavor_name:
+ label: CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of CM instance
+ default: m3.xlarge
+ sm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: SM image name
+ default: MOG_BASE_8.0
+ csb_net_name:
+ label: csb internal network name
+ hidden: false
+ immutable: false
+ type: string
+ description: csb internal network name
+ default: int_mog_csb_net
+ ps_server_names:
+ label: PS server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PS instance
+ default:
+ - ZRDM1MOGX01MPS001
+ - ZRDM1MOGX01MPS002
+ - ZRDM1MOGX01MPS003
+ - ZRDM1MOGX01MPS004
+ entry_schema:
+ type: string
+ csb_net_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: mog_csb_net IP addresses
+ default:
+ - 172.26.0.10
+ - 172.26.0.11
+ - 172.26.0.12
+ - 172.26.0.13
+ - 172.26.0.14
+ - 172.26.0.15
+ - 172.26.0.16
+ - 172.26.0.17
+ - 172.26.0.18
+ - 172.26.0.19
+ - 172.26.0.20
+ entry_schema:
+ type: string
+ ps_flavor_name:
+ label: PS flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PS instance
+ default: m3.xlarge
+ rx_net_ips:
+ label: Rx network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: Rx network ips
+ default:
+ - 107.239.34.3
+ - 107.239.34.4
+ entry_schema:
+ type: string
+ node_templates:
+ abstract_pd_server:
+ type: org.openecomp.resource.abstract.nodes.pd_server
+ directives:
+ - substitutable
+ properties:
+ port_pd01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ vm_image_name:
+ get_input: pd_image_name
+ port_pd01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_pd01_port_network:
+ - get_input: oam_net_name
+ compute_pd_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_pd_server_name:
+ - get_input:
+ - pd_server_names
+ - 0
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_pd01_port_network_role_tag:
+ - oam
+ compute_pd_server_user_data_format:
+ - RAW
+ service_template_filter:
+ substitute_service_template: Nested_pd_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ abstract_ps_server:
+ type: org.openecomp.resource.abstract.nodes.ps_server
+ directives:
+ - substitutable
+ properties:
+ compute_ps_server_name:
+ - get_input:
+ - ps_server_names
+ - 0
+ vm_image_name:
+ get_input: pd_image_name
+ compute_ps_server_availability_zone:
+ - get_input: availabilityzone_name
+ compute_ps_server_user_data_format:
+ - RAW
+ port_ps01_port_mac_requirements:
+ - mac_count_required:
+ is_required: false
+ port_ps01_port_network:
+ - get_input: oam_net_name
+ vm_flavor_name:
+ get_input: pd_flavor_name
+ port_ps01_port_ip_requirements:
+ - - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ port_ps01_port_network_role_tag:
+ - oam
+ service_template_filter:
+ substitute_service_template: Nested_ps_serverServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ hot-mog-0108-bs1271_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
+ description: heat template that creates MOG stack
+ members:
+ - abstract_pd_server
+ - abstract_ps_server \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..74044a11c2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_pd_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_pd_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pd_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_pd01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ vm_image_name:
+ type: string
+ required: true
+ port_pd01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_pd01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_pd_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_pd01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_pd_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ pd_server:
+ type: org.openecomp.resource.vfc.nodes.heat.pd_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_pd_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_pd_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_pd_server_user_data_format
+ - index_value
+ pd_server_pd01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_pd01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_pd01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_pd01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_pd01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pd_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.pd_server
+ capabilities:
+ scalable_pd_server:
+ - pd_server
+ - scalable
+ disk.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.read.bytes.rate
+ memory.usage_pd_server:
+ - pd_server
+ - memory.usage
+ memory_pd_server:
+ - pd_server
+ - memory
+ disk.device.usage_pd_server:
+ - pd_server
+ - disk.device.usage
+ network.outgoing.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.packets.rate
+ os_pd_server:
+ - pd_server
+ - os
+ disk.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.write.bytes.rate
+ network.incoming.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes
+ cpu_pd_server:
+ - pd_server
+ - cpu
+ cpu_util_pd_server:
+ - pd_server
+ - cpu_util
+ disk.device.write.requests.rate_pd_server:
+ - pd_server
+ - disk.device.write.requests.rate
+ disk.read.bytes_pd_server:
+ - pd_server
+ - disk.read.bytes
+ disk.device.read.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes
+ disk.iops_pd_server:
+ - pd_server
+ - disk.iops
+ memory.resident_pd_server:
+ - pd_server
+ - memory.resident
+ cpu.delta_pd_server:
+ - pd_server
+ - cpu.delta
+ network.incoming.packets.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets.rate
+ vcpus_pd_server:
+ - pd_server
+ - vcpus
+ disk.device.write.bytes.rate_pd_server:
+ - pd_server
+ - disk.device.write.bytes.rate
+ disk.device.write.requests_pd_server:
+ - pd_server
+ - disk.device.write.requests
+ endpoint_pd_server:
+ - pd_server
+ - endpoint
+ attachment_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - attachment
+ disk.capacity_pd_server:
+ - pd_server
+ - disk.capacity
+ disk.device.allocation_pd_server:
+ - pd_server
+ - disk.device.allocation
+ disk.allocation_pd_server:
+ - pd_server
+ - disk.allocation
+ binding_pd_server:
+ - pd_server
+ - binding
+ disk.read.requests_pd_server:
+ - pd_server
+ - disk.read.requests
+ feature_pd_server:
+ - pd_server
+ - feature
+ disk.usage_pd_server:
+ - pd_server
+ - disk.usage
+ binding_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - binding
+ disk.write.bytes_pd_server:
+ - pd_server
+ - disk.write.bytes
+ network.incoming.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_pd_server:
+ - pd_server
+ - disk.device.read.requests.rate
+ disk.root.size_pd_server:
+ - pd_server
+ - disk.root.size
+ disk.device.read.bytes_pd_server:
+ - pd_server
+ - disk.device.read.bytes
+ disk.device.write.bytes_pd_server:
+ - pd_server
+ - disk.device.write.bytes
+ disk.device.read.requests_pd_server:
+ - pd_server
+ - disk.device.read.requests
+ instance_pd_server:
+ - pd_server
+ - instance
+ host_pd_server:
+ - pd_server
+ - host
+ network.outpoing.packets_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outpoing.packets
+ disk.write.requests.rate_pd_server:
+ - pd_server
+ - disk.write.requests.rate
+ disk.ephemeral.size_pd_server:
+ - pd_server
+ - disk.ephemeral.size
+ disk.write.requests_pd_server:
+ - pd_server
+ - disk.write.requests
+ feature_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - feature
+ disk.device.latency_pd_server:
+ - pd_server
+ - disk.device.latency
+ disk.latency_pd_server:
+ - pd_server
+ - disk.latency
+ disk.device.capacity_pd_server:
+ - pd_server
+ - disk.device.capacity
+ network.outgoing.bytes.rate_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - network.outgoing.bytes.rate
+ disk.device.iops_pd_server:
+ - pd_server
+ - disk.device.iops
+ requirements:
+ local_storage_pd_server:
+ - pd_server
+ - local_storage
+ link_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - link
+ dependency_pd_server_pd01_port:
+ - pd_server_pd01_port
+ - dependency
+ dependency_pd_server:
+ - pd_server
+ - 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/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..5baa4a45ff
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/fulltest/singleSubstitution/twoSetsOfSingle/out/Nested_ps_serverServiceTemplate.yaml
@@ -0,0 +1,277 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_ps_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ps_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_ps_server_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ compute_ps_server_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_ps_server_user_data_format:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_ps01_port_mac_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_ps01_port_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_ps01_port_ip_requirements:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_ps01_port_network_role_tag:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ ps_server:
+ type: org.openecomp.resource.vfc.nodes.heat.ps_server
+ properties:
+ availability_zone:
+ get_input:
+ - compute_ps_server_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ image:
+ get_input: vm_image_name
+ name:
+ get_input:
+ - compute_ps_server_name
+ - index_value
+ user_data_format:
+ get_input:
+ - compute_ps_server_user_data_format
+ - index_value
+ ps_server_ps01_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ get_input:
+ - port_ps01_port_ip_requirements
+ - index_value
+ network_role_tag:
+ get_input:
+ - port_ps01_port_network_role_tag
+ - index_value
+ mac_requirements:
+ get_input:
+ - port_ps01_port_mac_requirements
+ - index_value
+ network:
+ get_input:
+ - port_ps01_port_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ps_server
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.ps_server
+ capabilities:
+ network.incoming.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets.rate
+ instance_ps_server:
+ - ps_server
+ - instance
+ network.outpoing.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outpoing.packets
+ host_ps_server:
+ - ps_server
+ - host
+ network.incoming.packets_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.packets
+ cpu.delta_ps_server:
+ - ps_server
+ - cpu.delta
+ disk.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.write.bytes.rate
+ feature_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - feature
+ feature_ps_server:
+ - ps_server
+ - feature
+ disk.root.size_ps_server:
+ - ps_server
+ - disk.root.size
+ disk.device.read.requests.rate_ps_server:
+ - ps_server
+ - disk.device.read.requests.rate
+ cpu_ps_server:
+ - ps_server
+ - cpu
+ disk.device.write.bytes_ps_server:
+ - ps_server
+ - disk.device.write.bytes
+ disk.device.read.bytes_ps_server:
+ - ps_server
+ - disk.device.read.bytes
+ disk.read.bytes_ps_server:
+ - ps_server
+ - disk.read.bytes
+ disk.device.iops_ps_server:
+ - ps_server
+ - disk.device.iops
+ network.outgoing.packets.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.packets.rate
+ disk.device.latency_ps_server:
+ - ps_server
+ - disk.device.latency
+ disk.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.read.bytes.rate
+ memory_ps_server:
+ - ps_server
+ - memory
+ scalable_ps_server:
+ - ps_server
+ - scalable
+ disk.write.requests.rate_ps_server:
+ - ps_server
+ - disk.write.requests.rate
+ disk.write.requests_ps_server:
+ - ps_server
+ - disk.write.requests
+ disk.latency_ps_server:
+ - ps_server
+ - disk.latency
+ disk.ephemeral.size_ps_server:
+ - ps_server
+ - disk.ephemeral.size
+ disk.device.capacity_ps_server:
+ - ps_server
+ - disk.device.capacity
+ disk.iops_ps_server:
+ - ps_server
+ - disk.iops
+ disk.device.read.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.read.bytes.rate
+ cpu_util_ps_server:
+ - ps_server
+ - cpu_util
+ memory.resident_ps_server:
+ - ps_server
+ - memory.resident
+ network.incoming.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes
+ disk.device.read.requests_ps_server:
+ - ps_server
+ - disk.device.read.requests
+ disk.write.bytes_ps_server:
+ - ps_server
+ - disk.write.bytes
+ network.outgoing.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes.rate
+ disk.device.write.requests.rate_ps_server:
+ - ps_server
+ - disk.device.write.requests.rate
+ disk.read.requests_ps_server:
+ - ps_server
+ - disk.read.requests
+ disk.allocation_ps_server:
+ - ps_server
+ - disk.allocation
+ memory.usage_ps_server:
+ - ps_server
+ - memory.usage
+ binding_ps_server:
+ - ps_server
+ - binding
+ attachment_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - attachment
+ os_ps_server:
+ - ps_server
+ - os
+ disk.device.usage_ps_server:
+ - ps_server
+ - disk.device.usage
+ binding_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - binding
+ disk.device.write.bytes.rate_ps_server:
+ - ps_server
+ - disk.device.write.bytes.rate
+ vcpus_ps_server:
+ - ps_server
+ - vcpus
+ disk.usage_ps_server:
+ - ps_server
+ - disk.usage
+ disk.device.write.requests_ps_server:
+ - ps_server
+ - disk.device.write.requests
+ endpoint_ps_server:
+ - ps_server
+ - endpoint
+ disk.capacity_ps_server:
+ - ps_server
+ - disk.capacity
+ network.incoming.bytes.rate_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.incoming.bytes.rate
+ disk.device.allocation_ps_server:
+ - ps_server
+ - disk.device.allocation
+ network.outgoing.bytes_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - network.outgoing.bytes
+ requirements:
+ dependency_ps_server:
+ - ps_server
+ - dependency
+ link_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - link
+ dependency_ps_server_ps01_port:
+ - ps_server_ps01_port
+ - dependency
+ local_storage_ps_server:
+ - ps_server
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..5d5f46e5fe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,349 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ Internal2_name:
+ label: Internal2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_name
+ FSB1_volume_name:
+ label: FSB1_volume
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_volume_1
+ jsa_cidr:
+ label: jsa_cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_cidr
+ availabilityzone_name:
+ label: availabilityzone_name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone_name
+ Internal2_external:
+ label: Internal2_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_external
+ vipr_atm_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal2_forwarding_mode:
+ label: Internal2_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_forwarding_mode
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ FSB_1_image:
+ label: MME_FSB1
+ hidden: false
+ immutable: false
+ type: string
+ description: MME_FSB1_15B-CP04-r5a01
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ pcm_server_name:
+ label: pcm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_server_name
+ oam_net_name:
+ label: oam_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_name
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ pcrf_cps_net_name:
+ label: pcrf_cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal1_external:
+ label: Internal1_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_external
+ Internal1_shared:
+ label: Internal1_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_shared
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ pcm_image_name:
+ label: pcm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_image_name
+ pcrf_psm_flavor_name:
+ label: pcrf_psm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_flavor_name
+ pcrf_psm_image_name:
+ label: pcrf_psm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_image_name
+ snapshot01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ snapshot02:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal2_shared:
+ label: Internal2_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_shared
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal1_net_name:
+ label: Internal1_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_net_name
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ pcm_vol_01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ Internal1_forwarding_mode:
+ label: Internal1_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_forwarding_mode
+ cps_net_name:
+ label: cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ pcrf_security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ node_templates:
+ VMI1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ virtual_network_refs:
+ - get_input: network_name
+ virtual_machine_interface_properties:
+ service_interface_type: left
+ port_tuple_refs:
+ - get_input: port_name
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ name:
+ get_attribute:
+ - VMI1
+ - fq_name
+ - ip
+ - show
+ - sub_interface_vlan_tag
+ - mac
+ - port_tuple_refs
+ - virtual_machine_intefrace_mac_addresses
+ - ip_prefix
+ - address_mode
+ - mac_address
+ - ip_prefix_len
+ - name
+ - virtual_machine_interface_properties_service_interface_type
+ - allowed_address_pair
+ - virtual_network_refs
+ - virtual_machine_interface_properties
+ - virtual_machine_interface_allowed_address_pairs
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)
+ members:
+ - VMI1
+ - FSB1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..021b40da66
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/MANIFEST.json
@@ -0,0 +1,19 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "ep-jsa_net.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nimbus-ethernet",
+ "type": "OTHER"
+ },
+ {
+ "file": "nimbus-ethernet-gw",
+ "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/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/ep-jsa_net.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/ep-jsa_net.yaml
new file mode 100644
index 0000000000..3f4f796681
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/ep-jsa_net.yaml
@@ -0,0 +1,245 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)
+
+parameters:
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ pcrf_security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ volume_type:
+ type: string
+ label: volume type
+ description: volume type Gold
+
+ volume_size:
+ type: number
+ label: volume size
+ description: my volume size 320GB
+
+ FSB_1_image:
+ type: string
+ label: MME_FSB1
+ description: MME_FSB1_15B-CP04-r5a01
+
+ FSB1_volume_name:
+ type: string
+ label: FSB1_volume
+ description: FSB1_volume_1
+
+ fsb1-name:
+ type: string
+ label: FSB1_name
+ description: FSB1_name
+
+ fsb1-flavor:
+ type: string
+ label: FSB1_flavor
+ description: FSB1_flavor
+
+ fsb1-zone:
+ type: string
+ label: FSB1_zone
+ description: FSB1_zone
+
+ fsb_zone:
+ type: string
+ label: FSB1_zone
+ description: FSB1_zone
+
+ fsb1-Internal1-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ fsb1-Internal2-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ fsb2-Internal1-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ oam_net_id:
+ type: string
+ label: oam_net_id
+ description: oam_net_id
+
+ jsa_net_name:
+ type: string
+ label: jsa_net_name
+ description: jsa_net_name
+
+ jsa_cidr:
+ type: string
+ label: jsa_cidr
+ description: jsa_cidr
+
+ pcrf_cps_net_name:
+ type: string
+ label: pcrf_cps_net_name
+ description: pcrf_cps_net_name
+
+ pcrf_psm_server_name:
+ type: string
+ label: pcrf_psm_server_name
+ description: pcrf_psm_server_name
+
+ pcrf_psm_image_name:
+ type: string
+ label: pcrf_psm_image_name
+ description: pcrf_psm_image_name
+
+ pcrf_psm_flavor_name:
+ type: string
+ label: pcrf_psm_flavor_name
+ description: pcrf_psm_flavor_name
+
+ availabilityzone_name:
+ type: string
+ label: availabilityzone_name
+ description: availabilityzone_name
+
+ pcm_server_name:
+ type: string
+ label: pcm_server_name
+ description: pcm_server_name
+
+ pcm_image_name:
+ type: string
+ label: pcm_image_name
+ description: pcm_image_name
+
+ pcm_flavor_name:
+ type: string
+ label: pcm_flavor_name
+ description: pcm_flavor_name
+
+ Internal1_net_name:
+ type: string
+ label: Internal1_net_name
+ description: Internal1_net_name
+
+ Internal1_forwarding_mode:
+ type: string
+ label: Internal1_forwarding_mode
+ description: Internal1_forwarding_mode
+
+ Internal1_shared:
+ type: string
+ label: Internal1_shared
+ description: Internal1_shared
+
+ Internal1_external:
+ type: string
+ label: Internal1_external
+ description: Internal1_external
+
+ Internal2_name:
+ type: string
+ label: Internal2_name
+ description: Internal2_name
+
+ Internal2_shared:
+ type: string
+ label: Internal2_shared
+ description: Internal2_shared
+
+ Internal2_external:
+ type: string
+ label: Internal2_external
+ description: Internal2_external
+
+ Internal2_forwarding_mode:
+ type: string
+ label: Internal2_forwarding_mode
+ description: Internal2_forwarding_mode
+
+ cps_net_name:
+ type: string
+ label: cps_net_name
+ description: cps_net_name
+
+ oam_net_name:
+ type: string
+ label: oam_net_name
+ description: oam_net_name
+ oam_net_gw:
+ type: string
+ description: prop
+ cps_net_ip:
+ type: string
+ description: prop
+ cps_net_mask:
+ type: string
+ description: prop
+ oam_net_ip:
+ type: string
+ description: prop
+ oam_net_mask:
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ type: string
+ description: prop
+ pcrf_cps_net_ip:
+ type: string
+ description: prop
+ pcrf_vnf_id:
+ type: string
+ description: prop
+ pcm_vol:
+ type: string
+ description: prop
+ pcm_vol_01:
+ type: string
+ description: prop
+ snapshot01:
+ type: string
+ description: prop
+ snapshot02:
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ type: string
+ network_name:
+ type: string
+ description: prop
+ port_name:
+ type: string
+ description: prop
+ vipr_atm_name_0:
+ type: string
+ description: prop
+
+
+resources:
+ VMI1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: 'left'
+ }
+ port_tuple_refs: [{ get_param: port_name }]
+ virtual_network_refs: [{ get_param: network_name }]
+
+ FSB1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_attr: [VMI1] }
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB1_boot_volume }, delete_on_termination: "false" }]
+ flavor: { get_param: fsb1-flavor }
+ availability_zone: { get_param: fsb_zone }
+ networks:
+ - network: {get_param: network_name}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/nimbus-ethernet
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/nimbus-ethernet
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/nimbus-ethernet-gw
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrOnlyResourceName/inputfiles/nimbus-ethernet-gw
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/OnlyComponentsST_01.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/expectedoutputfiles/MainServiceTemplate.yaml
index 54f39e4219..959597787a 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/OnlyComponentsST_01.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,28 +2,12 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
+ org.openecomp.resource.vfc.nodes.heat.FSB2:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- org.openecomp.resource.vfc.nodes.heat.pcm:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
topology_template:
inputs:
@@ -33,12 +17,6 @@ topology_template:
immutable: false
type: string
description: Internal2_name
- Internal1_shared:
- label: Internal1_shared
- hidden: false
- immutable: false
- type: string
- description: Internal1_shared
FSB1_volume_name:
label: FSB1_volume
hidden: false
@@ -51,37 +29,147 @@ topology_template:
immutable: false
type: string
description: jsa_cidr
- default: 107.243.7.128/26
availabilityzone_name:
label: availabilityzone_name
hidden: false
immutable: false
type: string
description: availabilityzone_name
- fsb1-name:
- label: FSB1_name
- hidden: false
- immutable: false
- type: string
- description: FSB1_name
- pcm_image_name:
- label: pcm_image_name
- hidden: false
- immutable: false
- type: string
- description: pcm_image_name
Internal2_external:
label: Internal2_external
hidden: false
immutable: false
type: string
description: Internal2_external
+ vipr_atm_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
Internal2_forwarding_mode:
label: Internal2_forwarding_mode
hidden: false
immutable: false
type: string
description: Internal2_forwarding_mode
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ FSB_1_image:
+ label: MME_FSB1
+ hidden: false
+ immutable: false
+ type: string
+ description: MME_FSB1_15B-CP04-r5a01
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ pcm_server_name:
+ label: pcm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_server_name
+ oam_net_name:
+ label: oam_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_name
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ pcrf_cps_net_name:
+ label: pcrf_cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal1_external:
+ label: Internal1_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_external
+ Internal1_shared:
+ label: Internal1_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_shared
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ pcm_image_name:
+ label: pcm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_image_name
pcrf_psm_flavor_name:
label: pcrf_psm_flavor_name
hidden: false
@@ -94,60 +182,50 @@ topology_template:
immutable: false
type: string
description: pcrf_psm_image_name
- FSB_1_image:
- label: MME_FSB1
+ snapshot01:
hidden: false
immutable: false
type: string
- description: MME_FSB1_15B-CP04-r5a01
+ description: prop
volume_size:
label: volume size
hidden: false
immutable: false
type: float
description: my volume size 320GB
- fsb1-Internal1-mac:
- label: FSB1_internal_mac
+ snapshot02:
hidden: false
immutable: false
type: string
- description: FSB1_internal_mac
+ description: prop
Internal2_shared:
label: Internal2_shared
hidden: false
immutable: false
type: string
description: Internal2_shared
- pcm_server_name:
- label: pcm_server_name
+ cps_net_mask:
hidden: false
immutable: false
type: string
- description: pcm_server_name
+ description: prop
Internal1_net_name:
label: Internal1_net_name
hidden: false
immutable: false
type: string
description: Internal1_net_name
- oam_net_name:
- label: oam_net_name
- hidden: false
- immutable: false
- type: string
- description: oam_net_name
fsb1-flavor:
label: FSB1_flavor
hidden: false
immutable: false
type: string
description: FSB1_flavor
- fsb1-Internal2-mac:
- label: FSB1_internal_mac
+ pcm_vol_01:
hidden: false
immutable: false
type: string
- description: FSB1_internal_mac
+ description: prop
volume_type:
label: volume type
hidden: false
@@ -160,191 +238,113 @@ topology_template:
immutable: false
type: string
description: FSB1_zone
- fsb_zone:
- label: FSB1_zone
- hidden: false
- immutable: false
- type: string
- description: FSB1_zone
security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
+ type: string
jsa_net_name:
label: jsa_net_name
hidden: false
immutable: false
type: string
description: jsa_net_name
- default: jsa_log_net_0
- pcrf_psm_server_name:
- label: pcrf_psm_server_name
+ port_name:
hidden: false
immutable: false
type: string
- description: pcrf_psm_server_name
- pcm_flavor_name:
- label: pcm_flavor_name
- hidden: false
- immutable: false
- type: string
- description: pcm_flavor_name
+ description: prop
oam_net_id:
label: oam_net_id
hidden: false
immutable: false
type: string
description: oam_net_id
- fsb2-Internal1-mac:
- label: FSB1_internal_mac
- hidden: false
- immutable: false
- type: string
- description: FSB1_internal_mac
Internal1_forwarding_mode:
label: Internal1_forwarding_mode
hidden: false
immutable: false
type: string
description: Internal1_forwarding_mode
- pcrf_cps_net_name:
- label: pcrf_cps_net_name
- hidden: false
- immutable: false
- type: string
- description: pcrf_cps_net_name
cps_net_name:
label: cps_net_name
hidden: false
immutable: false
type: string
description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
pcrf_security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
- Internal1_external:
- label: Internal1_external
- hidden: false
- immutable: false
- type: string
- description: Internal1_external
+ type: string
node_templates:
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
+ VMI1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ virtual_network_refs:
+ - get_input: network_name
+ virtual_machine_interface_properties:
+ service_interface_type: left
+ port_tuple_refs:
+ - get_input: port_name
+ FSB2:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB2
properties:
flavor:
get_input: fsb1-flavor
availability_zone:
get_input: fsb_zone
name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ get_attribute:
+ - VMI1
+ - virtual_machine_interface_allowed_address_pairs
+ - allowed_address_pair
+ - ip
+ - ip_prefix
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
properties:
flavor:
get_input: fsb1-flavor
availability_zone:
get_input: fsb_zone
- metadata:
- write_files:
- - path: /etc/sysconfig/network-scripts/ifcfg-eth0
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet
- params:
- $dev: eth0
- $netmask:
- get_input: cps_net_mask
- $ip:
- get_input: cps_net_ip
- - path: /etc/sysconfig/network-scripts/ifcfg-eth1
- permissions: '0644'
- content:
- str_replace:
- template:
- get_artifact:
- - SELF
- - nimbus-ethernet-gw
- params:
- $dev: eth1
- $netmask:
- get_input: oam_net_mask
- $gateway:
- get_input: oam_net_gw
- $ip:
- get_input: oam_net_ip
name:
- get_input: fsb1-name
- artifacts:
- nimbus-ethernet-gw:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet-gw
- nimbus-ethernet:
- type: tosca.artifacts.Deployment
- file: ../Artifacts/nimbus-ethernet
+ get_attribute:
+ - VMI1
+ - name
groups:
- ep-jsa_net:
+ ep-jsa_net_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/ep-jsa_net.yaml
description: |
- Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)
members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
+ - VMI1
+ - FSB2
+ - FSB1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..021b40da66
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/MANIFEST.json
@@ -0,0 +1,19 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "ep-jsa_net.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nimbus-ethernet",
+ "type": "OTHER"
+ },
+ {
+ "file": "nimbus-ethernet-gw",
+ "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/services/heattotosca/getAttr/getAttrUC/inputfiles/ep-jsa_net.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/ep-jsa_net.yaml
new file mode 100644
index 0000000000..6a050bcce8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/ep-jsa_net.yaml
@@ -0,0 +1,256 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)
+
+parameters:
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ pcrf_security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ volume_type:
+ type: string
+ label: volume type
+ description: volume type Gold
+
+ volume_size:
+ type: number
+ label: volume size
+ description: my volume size 320GB
+
+ FSB_1_image:
+ type: string
+ label: MME_FSB1
+ description: MME_FSB1_15B-CP04-r5a01
+
+ FSB1_volume_name:
+ type: string
+ label: FSB1_volume
+ description: FSB1_volume_1
+
+ fsb1-name:
+ type: string
+ label: FSB1_name
+ description: FSB1_name
+
+ fsb1-flavor:
+ type: string
+ label: FSB1_flavor
+ description: FSB1_flavor
+
+ fsb1-zone:
+ type: string
+ label: FSB1_zone
+ description: FSB1_zone
+
+ fsb_zone:
+ type: string
+ label: FSB1_zone
+ description: FSB1_zone
+
+ fsb1-Internal1-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ fsb1-Internal2-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ fsb2-Internal1-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ oam_net_id:
+ type: string
+ label: oam_net_id
+ description: oam_net_id
+
+ jsa_net_name:
+ type: string
+ label: jsa_net_name
+ description: jsa_net_name
+
+ jsa_cidr:
+ type: string
+ label: jsa_cidr
+ description: jsa_cidr
+
+ pcrf_cps_net_name:
+ type: string
+ label: pcrf_cps_net_name
+ description: pcrf_cps_net_name
+
+ pcrf_psm_server_name:
+ type: string
+ label: pcrf_psm_server_name
+ description: pcrf_psm_server_name
+
+ pcrf_psm_image_name:
+ type: string
+ label: pcrf_psm_image_name
+ description: pcrf_psm_image_name
+
+ pcrf_psm_flavor_name:
+ type: string
+ label: pcrf_psm_flavor_name
+ description: pcrf_psm_flavor_name
+
+ availabilityzone_name:
+ type: string
+ label: availabilityzone_name
+ description: availabilityzone_name
+
+ pcm_server_name:
+ type: string
+ label: pcm_server_name
+ description: pcm_server_name
+
+ pcm_image_name:
+ type: string
+ label: pcm_image_name
+ description: pcm_image_name
+
+ pcm_flavor_name:
+ type: string
+ label: pcm_flavor_name
+ description: pcm_flavor_name
+
+ Internal1_net_name:
+ type: string
+ label: Internal1_net_name
+ description: Internal1_net_name
+
+ Internal1_forwarding_mode:
+ type: string
+ label: Internal1_forwarding_mode
+ description: Internal1_forwarding_mode
+
+ Internal1_shared:
+ type: string
+ label: Internal1_shared
+ description: Internal1_shared
+
+ Internal1_external:
+ type: string
+ label: Internal1_external
+ description: Internal1_external
+
+ Internal2_name:
+ type: string
+ label: Internal2_name
+ description: Internal2_name
+
+ Internal2_shared:
+ type: string
+ label: Internal2_shared
+ description: Internal2_shared
+
+ Internal2_external:
+ type: string
+ label: Internal2_external
+ description: Internal2_external
+
+ Internal2_forwarding_mode:
+ type: string
+ label: Internal2_forwarding_mode
+ description: Internal2_forwarding_mode
+
+ cps_net_name:
+ type: string
+ label: cps_net_name
+ description: cps_net_name
+
+ oam_net_name:
+ type: string
+ label: oam_net_name
+ description: oam_net_name
+ oam_net_gw:
+ type: string
+ description: prop
+ cps_net_ip:
+ type: string
+ description: prop
+ cps_net_mask:
+ type: string
+ description: prop
+ oam_net_ip:
+ type: string
+ description: prop
+ oam_net_mask:
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ type: string
+ description: prop
+ pcrf_cps_net_ip:
+ type: string
+ description: prop
+ pcrf_vnf_id:
+ type: string
+ description: prop
+ pcm_vol:
+ type: string
+ description: prop
+ pcm_vol_01:
+ type: string
+ description: prop
+ snapshot01:
+ type: string
+ description: prop
+ snapshot02:
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ type: string
+ network_name:
+ type: string
+ description: prop
+ port_name:
+ type: string
+ description: prop
+ vipr_atm_name_0:
+ type: string
+ description: prop
+
+
+resources:
+ VMI1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: 'left'
+ }
+ port_tuple_refs: [{ get_param: port_name }]
+ virtual_network_refs: [{ get_param: network_name }]
+
+ FSB1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_attr: [VMI1, name] }
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB1_boot_volume }, delete_on_termination: "false" }]
+ flavor: { get_param: fsb1-flavor }
+ availability_zone: { get_param: fsb_zone }
+ networks:
+ - network: {get_param: network_name}
+
+ FSB2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_attr: [VMI1, virtual_machine_interface_allowed_address_pairs,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix] }
+ flavor: { get_param: fsb1-flavor }
+ availability_zone: { get_param: fsb_zone }
+ networks:
+ - network: {get_param: network_name} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/nimbus-ethernet
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/nimbus-ethernet
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/nimbus-ethernet-gw
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUC/inputfiles/nimbus-ethernet-gw
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c4ac5b14f1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,634 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB2:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.pcrf_psm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ Internal2_name:
+ label: Internal2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_name
+ Internal1_shared:
+ label: Internal1_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_shared
+ FSB1_volume_name:
+ label: FSB1_volume
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_volume_1
+ jsa_cidr:
+ label: jsa_cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_cidr
+ availabilityzone_name:
+ label: availabilityzone_name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone_name
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ pcm_image_name:
+ label: pcm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_image_name
+ Internal2_external:
+ label: Internal2_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_external
+ Internal2_forwarding_mode:
+ label: Internal2_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_forwarding_mode
+ pcrf_psm_flavor_name:
+ label: pcrf_psm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_flavor_name
+ pcrf_psm_image_name:
+ label: pcrf_psm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_image_name
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ FSB_1_image:
+ label: MME_FSB1
+ hidden: false
+ immutable: false
+ type: string
+ description: MME_FSB1_15B-CP04-r5a01
+ snapshot01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ snapshot02:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ Internal2_shared:
+ label: Internal2_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_shared
+ pcm_server_name:
+ label: pcm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_server_name
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal1_net_name:
+ label: Internal1_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_net_name
+ oam_net_name:
+ label: oam_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_name
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ pcm_vol_01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ Internal1_forwarding_mode:
+ label: Internal1_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_forwarding_mode
+ pcrf_cps_net_name:
+ label: pcrf_cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_name:
+ label: cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ pcrf_security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ Internal1_external:
+ label: Internal1_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_external
+ node_templates:
+ pcm_vol_02:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ image:
+ get_input: FSB_1_image
+ volume_type:
+ get_input: volume_type
+ size: '(get_input : volume_size) * 1024'
+ read_only: true
+ name:
+ get_input: FSB1_volume_name
+ Internal2-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ shared:
+ get_input: Internal2_shared
+ forwarding_mode:
+ get_input: Internal2_forwarding_mode
+ external:
+ get_input: Internal2_external
+ network_name:
+ get_input: Internal2_name
+ pcm_port_1:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_VolumeTest_snapshot02:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ snapshot_id:
+ get_input: snapshot02
+ FSB1_Internal2:
+ 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: true
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal2-net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ server_VolumeTest_snapshot01:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ snapshot_id:
+ get_input: snapshot01
+ FSB1_Internal1:
+ 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: true
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: Internal1-net
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_OAM:
+ 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
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ psm01_port_0:
+ 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: pcrf_security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: pcrf_cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_cps
+ network:
+ get_input: pcrf_cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: pcrf_server_psm
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_0:
+ 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: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: cps
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ network:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: Internal1_net_name
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ Internal1-net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ shared:
+ get_input: Internal1_shared
+ forwarding_mode:
+ get_input: Internal1_forwarding_mode
+ external:
+ get_input: Internal1_external
+ network_name:
+ get_input: Internal1_net_name
+ pcrf_server_psm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm_server
+ properties:
+ flavor:
+ get_input: pcrf_psm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcrf_psm_image_name
+ metadata:
+ vnf_id:
+ get_input: pcrf_vnf_id
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcrf_psm_server_name
+ server_VolumeTest:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: pcm_vol_02
+ relationship: tosca.relationships.AttachesTo
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: server_VolumeTest_snapshot01
+ relationship: server_VolumeTest_4
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: server_VolumeTest_snapshot02
+ relationship: server_VolumeTest_5
+ FSB2:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB2
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ name:
+ get_input: fsb1-name
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ - UNSUPPORTED_ATTRIBUTE_FSB1_Internal1.unsupportedAttr
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ relationship_templates:
+ server_VolumeTest_4:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: server_VolumeTest_snapshot01
+ instance_uuid: server_VolumeTest
+ device: vdb
+ server_VolumeTest_5:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: server_VolumeTest_snapshot02
+ instance_uuid: server_VolumeTest
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)
+ members:
+ - pcm_vol_02
+ - Internal2-net
+ - pcm_port_1
+ - FSB1_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - psm01_port_0
+ - pcm_port_0
+ - network
+ - server_pcm
+ - Internal1-net
+ - pcrf_server_psm
+ - server_VolumeTest
+ - FSB2
+ - FSB1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..021b40da66
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/MANIFEST.json
@@ -0,0 +1,19 @@
+{
+ "name": "vEP_JSA_Net",
+ "description": "Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "ep-jsa_net.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "nimbus-ethernet",
+ "type": "OTHER"
+ },
+ {
+ "file": "nimbus-ethernet-gw",
+ "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/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/ep-jsa_net.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/ep-jsa_net.yaml
new file mode 100644
index 0000000000..bb1fd5670c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/ep-jsa_net.yaml
@@ -0,0 +1,411 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pp2854 PROD)
+
+parameters:
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ pcrf_security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ volume_type:
+ type: string
+ label: volume type
+ description: volume type Gold
+
+ volume_size:
+ type: number
+ label: volume size
+ description: my volume size 320GB
+
+ FSB_1_image:
+ type: string
+ label: MME_FSB1
+ description: MME_FSB1_15B-CP04-r5a01
+
+ FSB1_volume_name:
+ type: string
+ label: FSB1_volume
+ description: FSB1_volume_1
+
+ fsb1-name:
+ type: string
+ label: FSB1_name
+ description: FSB1_name
+
+ fsb1-flavor:
+ type: string
+ label: FSB1_flavor
+ description: FSB1_flavor
+
+ fsb1-zone:
+ type: string
+ label: FSB1_zone
+ description: FSB1_zone
+
+ fsb_zone:
+ type: string
+ label: FSB1_zone
+ description: FSB1_zone
+
+ fsb1-Internal1-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ fsb1-Internal2-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ fsb2-Internal1-mac:
+ type: string
+ label: FSB1_internal_mac
+ description: FSB1_internal_mac
+
+ oam_net_id:
+ type: string
+ label: oam_net_id
+ description: oam_net_id
+
+ jsa_net_name:
+ type: string
+ label: jsa_net_name
+ description: jsa_net_name
+
+ jsa_cidr:
+ type: string
+ label: jsa_cidr
+ description: jsa_cidr
+
+ pcrf_cps_net_name:
+ type: string
+ label: pcrf_cps_net_name
+ description: pcrf_cps_net_name
+
+ pcrf_psm_server_name:
+ type: string
+ label: pcrf_psm_server_name
+ description: pcrf_psm_server_name
+
+ pcrf_psm_image_name:
+ type: string
+ label: pcrf_psm_image_name
+ description: pcrf_psm_image_name
+
+ pcrf_psm_flavor_name:
+ type: string
+ label: pcrf_psm_flavor_name
+ description: pcrf_psm_flavor_name
+
+ availabilityzone_name:
+ type: string
+ label: availabilityzone_name
+ description: availabilityzone_name
+
+ pcm_server_name:
+ type: string
+ label: pcm_server_name
+ description: pcm_server_name
+
+ pcm_image_name:
+ type: string
+ label: pcm_image_name
+ description: pcm_image_name
+
+ pcm_flavor_name:
+ type: string
+ label: pcm_flavor_name
+ description: pcm_flavor_name
+
+ Internal1_net_name:
+ type: string
+ label: Internal1_net_name
+ description: Internal1_net_name
+
+ Internal1_forwarding_mode:
+ type: string
+ label: Internal1_forwarding_mode
+ description: Internal1_forwarding_mode
+
+ Internal1_shared:
+ type: string
+ label: Internal1_shared
+ description: Internal1_shared
+
+ Internal1_external:
+ type: string
+ label: Internal1_external
+ description: Internal1_external
+
+ Internal2_name:
+ type: string
+ label: Internal2_name
+ description: Internal2_name
+
+ Internal2_shared:
+ type: string
+ label: Internal2_shared
+ description: Internal2_shared
+
+ Internal2_external:
+ type: string
+ label: Internal2_external
+ description: Internal2_external
+
+ Internal2_forwarding_mode:
+ type: string
+ label: Internal2_forwarding_mode
+ description: Internal2_forwarding_mode
+
+ cps_net_name:
+ type: string
+ label: cps_net_name
+ description: cps_net_name
+
+ oam_net_name:
+ type: string
+ label: oam_net_name
+ description: oam_net_name
+ oam_net_gw:
+ type: string
+ description: prop
+ cps_net_ip:
+ type: string
+ description: prop
+ cps_net_mask:
+ type: string
+ description: prop
+ oam_net_ip:
+ type: string
+ description: prop
+ oam_net_mask:
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ type: string
+ description: prop
+ pcrf_cps_net_ip:
+ type: string
+ description: prop
+ pcrf_vnf_id:
+ type: string
+ description: prop
+ pcm_vol:
+ type: string
+ description: prop
+ pcm_vol_01:
+ type: string
+ description: prop
+ snapshot01:
+ type: string
+ description: prop
+ snapshot02:
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ type: string
+ network_name:
+ type: string
+ description: prop
+
+
+resources:
+ FSB1:
+ type: OS::Nova::Server
+ depends_on: script_init
+ properties:
+ name: { get_attr: [FSB1_Internal1, unsupportedAttr] }
+ block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB1_boot_volume }, delete_on_termination: "false" }]
+ flavor: { get_param: fsb1-flavor }
+ availability_zone: { get_param: fsb_zone }
+ networks:
+ - port: { get_resource: FSB1_Internal1 }
+ fixed_ip: 10.0.0.0
+ floating_ip: 10.0.0.1
+ network: 100_1000_0011
+ port_extra_properties: {admin_state_up: true , allowed_address_pairs: 10}
+ subnet: 10.0.0.2
+ - port: { get_resource: FSB1_Internal2 }
+ - port: { get_resource: FSB1_OAM }
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: "0644"
+ content:
+ str_replace:
+ template: { get_file: "file:///nimbus-ethernet" }
+ params:
+ $dev: eth0
+ $ip: { get_param: cps_net_ip }
+ $netmask: { get_param: cps_net_mask }
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: "0644"
+ content:
+ str_replace:
+ template: { get_file: "file:///nimbus-ethernet-gw" }
+ params:
+ $dev: eth1
+ $ip: { get_param: oam_net_ip }
+ $netmask: { get_param: oam_net_mask }
+ $gateway: { get_param: oam_net_gw }
+
+
+ FSB1_Internal1:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: Internal1-net }
+ mac_address: { get_param: fsb1-Internal1-mac }
+
+ FSB1_Internal2:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: Internal2-net }
+ mac_address: { get_param: fsb1-Internal2-mac }
+
+ FSB1_OAM:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: oam_net_id }
+ fixed_ips:
+ - ip_address: { get_param: fsb1-oam-ip }
+
+ pcrf_server_init:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: network}
+ - config: { get_resource: script_init}
+
+ psm01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: pcrf_cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: pcrf_cps_net_ip }
+ security_groups: [{ get_param: pcrf_security_group_name }]
+
+ pcrf_server_psm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcrf_psm_server_name }
+ image: { get_param: pcrf_psm_image_name }
+ flavor: { get_param: pcrf_psm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: psm01_port_0}
+ user_data_format: RAW
+ user_data:
+ get_resource: pcrf_server_init
+ metadata:
+ vnf_id: {get_param: pcrf_vnf_id}
+ server_pcm:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ networks:
+ - port: { get_resource: pcm_port_0}
+ - port: { get_resource: pcm_port_1}
+ block_device_mapping:
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ user_data_format: RAW
+ user_data:
+ get_resource: server_init
+ server_VolumeTest:
+ type: OS::Nova::Server
+ properties:
+ config_drive: "True"
+ name: { get_param: pcm_server_name }
+ image: { get_param: pcm_image_name }
+ flavor: { get_param: pcm_flavor_name }
+ availability_zone: { get_param: availabilityzone_name }
+ block_device_mapping:
+ - device_name: vdb
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol}
+ - device_name: vdb
+ volume_id: { get_param: pcm_vol_01}
+ - device_name: vdb
+ volume_id: { get_resource: pcm_vol_02}
+ - device_name: vdb
+ snapshot_id: { get_param: snapshot01}
+ - snapshot_id: { get_param: snapshot02}
+ user_data_format: RAW
+ user_data:
+ get_resource: server_init
+ server_init:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: network}
+ - config: { get_resource: script_init}
+ script_init:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: network}
+
+ network:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+
+ pcm_vol_02:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: volume_size}
+ volume_type: {get_param: volume_type}
+ name: {get_param: FSB1_volume_name}
+ image: {get_param: FSB_1_image}
+ read_only: 1
+
+ pcm_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: cps_net_name }
+ fixed_ips:
+ - ip_address: { get_param: cps_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ pcm_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: oam_net_name }
+ fixed_ips:
+ - ip_address: { get_param: oam_net_ip }
+ security_groups: [{ get_param: security_group_name }]
+
+ Internal1-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal1_net_name }
+ forwarding_mode: { get_param: Internal1_forwarding_mode }
+ shared: { get_param: Internal1_shared }
+ external: { get_param: Internal1_external }
+# route_targets: { "Fn::Split" : [ ",", Ref: route_targets ] }
+
+ Internal2-net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: Internal2_name }
+ forwarding_mode: { get_param: Internal2_forwarding_mode }
+ shared: { get_param: Internal2_shared }
+ external: { get_param: Internal2_external }
+# route_targets: { "Fn::Split" : [ ",", Ref: route_targets ] }
+
+ FSB2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: fsb1-name }
+ flavor: { get_param: fsb1-flavor }
+ availability_zone: { get_param: fsb_zone }
+ networks:
+ - network: {get_param: network_name} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/nimbus-ethernet
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/nimbus-ethernet
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/nimbus-ethernet-gw
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedAttr/inputfiles/nimbus-ethernet-gw
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..1a5c50d8d2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,691 @@
+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.nested_db_server:
+ 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
+ security_group_ids:
+ type: list
+ description: IDs of the security groups for the server
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_role:
+ type: string
+ description: VM Role for the db vms
+ required: true
+ status: SUPPORTED
+ db_name:
+ type: string
+ description: Hostname of the database servers
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+ required: true
+ status: SUPPORTED
+ server_group_id:
+ type: string
+ description: ID of the server group
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: Name of the availability zone for this server
+ required: true
+ status: SUPPORTED
+ db_image_name:
+ type: string
+ description: Image to be used for the server
+ required: true
+ status: SUPPORTED
+ keypair_id:
+ type: string
+ description: Name of the security key for the server
+ required: true
+ status: SUPPORTED
+ db_volume_id_3:
+ type: string
+ description: IDs to be used for the database volume
+ required: true
+ status: SUPPORTED
+ db_volume_id_2:
+ type: string
+ description: IDs to be used for the database volume
+ required: true
+ status: SUPPORTED
+ deploy_timeout:
+ type: float
+ description: Timeout before declaring the stack deployment as failed.
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 60
+ - 3600
+ oam_net_name:
+ type: string
+ description: Name of the oam network
+ required: true
+ status: SUPPORTED
+ db_oam_ip_0:
+ type: string
+ description: OAM IP Address of the database servers
+ required: true
+ status: SUPPORTED
+ db_flavor_name:
+ type: string
+ description: Flavor to be used for the server
+ required: true
+ status: SUPPORTED
+ db_volume_id_1:
+ type: string
+ description: IDs to be used for the database volume
+ required: true
+ status: SUPPORTED
+ db_volume_id_0:
+ type: string
+ description: IDs to be used for the database volume
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_db_server_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_db_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.write.bytes.rate_db_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_db_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_db_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_db_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_db_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_db_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_db_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.iops_db_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_db_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_db_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_db_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_db_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_db_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_db_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
+ endpoint_db_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_db_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_db_server_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_db_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_db_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_db_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_db_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_db_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.rate_db_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_db_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
+ host_db_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_db_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_db_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.latency_db_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.usage_db_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_db_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_db_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
+ scalable_db_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_db_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_db_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_db_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_db_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_db_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
+ instance_db_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.ephemeral.size_db_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_db_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_db_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.nested_app_server:
+ 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
+ app_flavor_name:
+ type: string
+ description: Flavor to be used for the server
+ required: true
+ status: SUPPORTED
+ security_group_ids:
+ type: list
+ description: IDs of the security groups for the server
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_role:
+ type: string
+ description: VM Role for the application vms
+ required: true
+ status: SUPPORTED
+ app_name:
+ type: string
+ description: Hostnames of the application servers
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+ required: true
+ status: SUPPORTED
+ app_oam_ip_0:
+ type: string
+ description: OAM IP Addresses of the application servers
+ required: true
+ status: SUPPORTED
+ server_group_id:
+ type: string
+ description: ID of the server group
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: Name of the availability zone for this server
+ required: true
+ status: SUPPORTED
+ app_image_name:
+ type: string
+ description: Image to be used for the server
+ required: true
+ status: SUPPORTED
+ keypair_id:
+ type: string
+ description: Name of the security key for the server
+ required: true
+ status: SUPPORTED
+ deploy_timeout:
+ type: float
+ description: Timeout before declaring the stack deployment as failed.
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 60
+ - 3600
+ oam_net_name:
+ type: string
+ description: Name of the oam network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_app_server_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_app_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ endpoint_app_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_app_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_app_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_app_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_app_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_app_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_app_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.usage_app_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_app_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_app_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_app_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.ephemeral.size_app_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.latency_app_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_app_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_app_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_app_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_app_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
+ scalable_app_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_app_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_app_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_app_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_app_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_app_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_app_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_app_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_app_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_app_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_app_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_app_server_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_app_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_app_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.iops_app_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_app_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_app_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.rate_app_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_app_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
+ instance_app_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_app_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_app_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_app_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_app_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/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..cbbf48a430
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,453 @@
+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:
+ vf_module_id:
+ label: VF Module ID
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ default: base
+ db_ports:
+ label: Database Ports
+ hidden: false
+ immutable: false
+ type: list
+ description: List of ports to apply to the security group for the database VMs
+ default:
+ - '27017'
+ entry_schema:
+ type: string
+ app_protocols:
+ label: Application Protocols
+ hidden: false
+ immutable: false
+ type: list
+ description: List of protocols associated with the app_ports
+ default:
+ - tcp
+ entry_schema:
+ type: string
+ db_volume_size_0:
+ label: Data Volume Size
+ hidden: false
+ immutable: false
+ type: float
+ description: Size of the data volume
+ default: 1
+ constraints:
+ - in_range:
+ - 1
+ - 2000
+ app_ports:
+ label: Application Ports
+ hidden: false
+ immutable: false
+ type: list
+ description: List of ports to apply to the security group for the application VMs
+ default:
+ - '8443'
+ entry_schema:
+ type: string
+ vnf_id:
+ label: VNF ID
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF instance
+ default: pronghorn
+ availability_zone_0:
+ label: First Availability Zone
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the first availability zone
+ default: nova
+ app_public_key:
+ label: Application Public Key
+ hidden: false
+ immutable: false
+ type: string
+ description: Public ssh key for the application servers
+ default: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGe+nL1U3mFHrbtmsvNWR+oDdUyyOX5KejZqe/80uwDiPNyOJjHWIVuX812AEdAAH94nQnkYr2dBiSu1FPh+auMuk3FfegchKT7pYetqELY3ryLUPEh67PmKrdlT9cQ/wQZROq672AA6qlZAYIooeLZVSzUhABfsITk0RhfcWZGIcZwv0Tja3nnhNgtqCxoTXs6fzfcCaypgwy3F0S4RewUfcz/9g7f0tze1CmWRUtPkNK2nX2/T2AJzHgy+vItwpalnon1egIszJfj7uxp+VotQlQ2PN8sI0J5zgpBFe/lxqEwtIKeiTJ16JlyDXtin/RCjCCdtvIaVCff3Z031UV jspaeth@Jonathons-MBP
+ db_image_name:
+ label: Database Image
+ hidden: false
+ immutable: false
+ type: string
+ description: Image of the database server
+ default: pronghorn-ubuntu14
+ db_volume_id_3:
+ label: Data Volume IDs for disk 3
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volumes
+ default: 454a7b1c-a58f-4bac-bed2-a7afa3836dd4
+ db_volume_id_2:
+ label: Data Volume IDs for disk 2
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volumes
+ default: 6f4d6f1a-1e88-492b-8020-b5a169381434
+ oam_net_name:
+ label: Database OAM Network
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the OAM network for the database servers
+ default: oam
+ db_flavor_name:
+ label: Database Flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the database server
+ default: s1.test
+ db_volume_id_1:
+ label: Data Volume IDs for disk 1
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volumes
+ default: 5db48c7a-eb2d-4960-a90c-88a2d0052a71
+ common_protocols:
+ label: Common Protocols
+ hidden: false
+ immutable: false
+ type: list
+ description: List of protocols associated with the common_ports
+ default:
+ - tcp
+ - udp
+ - udp
+ - udp
+ entry_schema:
+ type: string
+ db_volume_id_0:
+ label: Data Volume IDs for disk 0
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volumes
+ default: e8abc8da-f477-4e5c-8266-98b43c982fe4
+ db_protocols:
+ label: Database Protocols
+ hidden: false
+ immutable: false
+ type: list
+ description: List of protocols associated with the db_ports
+ default:
+ - tcp
+ entry_schema:
+ type: string
+ app_flavor_name:
+ label: App Flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to be used for the application server
+ default: s1.test
+ app_deploy_timeout:
+ label: Application Deployment Timeout
+ hidden: false
+ immutable: false
+ type: float
+ description: Timeout in seconds before declaring the application stack as failed
+ default: 300
+ constraints:
+ - in_range:
+ - 60
+ - 3600
+ common_ports:
+ label: Common Ports
+ hidden: false
+ immutable: false
+ type: list
+ description: List of ports to apply to the security group for all VMs
+ default:
+ - '22'
+ - '53'
+ - '123'
+ - '161'
+ entry_schema:
+ type: string
+ app_name:
+ label: Application Hostname
+ hidden: false
+ immutable: false
+ type: string
+ description: Hostname of the application server
+ default: pronghorn-app01
+ db_name:
+ label: Database Hostname
+ hidden: false
+ immutable: false
+ type: string
+ description: Hostname of the database server
+ default: pronghorn-db01
+ app_oam_ip_0:
+ label: Application OAM IP Address
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM IP Address of the application server
+ default: 10.0.0.21
+ app_vm_role:
+ label: App VM Role
+ hidden: false
+ immutable: false
+ type: string
+ description: Role for the App VM
+ default: app
+ app_image_name:
+ label: App Image
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the application server
+ default: pronghorn-ubuntu14
+ db_public_key:
+ label: Database Public Key
+ hidden: false
+ immutable: false
+ type: string
+ description: Public ssh key for the database servers
+ default: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGe+nL1U3mFHrbtmsvNWR+oDdUyyOX5KejZqe/80uwDiPNyOJjHWIVuX812AEdAAH94nQnkYr2dBiSu1FPh+auMuk3FfegchKT7pYetqELY3ryLUPEh67PmKrdlT9cQ/wQZROq672AA6qlZAYIooeLZVSzUhABfsITk0RhfcWZGIcZwv0Tja3nnhNgtqCxoTXs6fzfcCaypgwy3F0S4RewUfcz/9g7f0tze1CmWRUtPkNK2nX2/T2AJzHgy+vItwpalnon1egIszJfj7uxp+VotQlQ2PN8sI0J5zgpBFe/lxqEwtIKeiTJ16JlyDXtin/RCjCCdtvIaVCff3Z031UV jspaeth@Jonathons-MBP
+ db_oam_ip_0:
+ label: Database OAM IP Addresse
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM IP Address of the database server
+ default: 10.0.0.20
+ db_vm_role:
+ label: DB VM Role
+ hidden: false
+ immutable: false
+ type: string
+ description: Role for the DB VM
+ default: database
+ db_deploy_timeout:
+ label: Database Deployment Timeout
+ hidden: false
+ immutable: false
+ type: float
+ description: Timeout in seconds before declaring the database stack as failed
+ default: 300
+ constraints:
+ - in_range:
+ - 60
+ - 3600
+ node_templates:
+ app_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: app security group
+ rules:
+ - protocol:
+ get_input:
+ - app_protocols
+ - 0
+ port_range_max:
+ get_input:
+ - app_ports
+ - 0
+ port_range_min:
+ get_input:
+ - app_ports
+ - 0
+ common_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: common security group
+ rules:
+ - protocol:
+ get_input:
+ - common_protocols
+ - 0
+ port_range_max:
+ get_input:
+ - common_ports
+ - 0
+ port_range_min:
+ get_input:
+ - common_ports
+ - 0
+ - protocol:
+ get_input:
+ - common_protocols
+ - 1
+ port_range_max:
+ get_input:
+ - common_ports
+ - 1
+ port_range_min:
+ get_input:
+ - common_ports
+ - 1
+ - protocol:
+ get_input:
+ - common_protocols
+ - 2
+ port_range_max:
+ get_input:
+ - common_ports
+ - 2
+ port_range_min:
+ get_input:
+ - common_ports
+ - 2
+ - protocol:
+ get_input:
+ - common_protocols
+ - 3
+ port_range_max:
+ get_input:
+ - common_ports
+ - 3
+ port_range_min:
+ get_input:
+ - common_ports
+ - 3
+ db_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: data security group
+ rules:
+ - protocol:
+ get_input:
+ - db_protocols
+ - 0
+ port_range_max:
+ get_input:
+ - db_ports
+ - 0
+ port_range_min:
+ get_input:
+ - db_ports
+ - 0
+ db_servers:
+ type: org.openecomp.resource.abstract.nodes.heat.nested_db_server
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ security_group_ids:
+ - common_security_group
+ - db_security_group
+ vm_role:
+ get_input: db_vm_role
+ service_template_filter:
+ substitute_service_template: nested_db_serverServiceTemplate.yaml
+ count: 1
+ mandatory: true
+ db_name:
+ get_input: db_name
+ vnf_id:
+ get_input: vnf_id
+ server_group_id: db_server_group_group
+ availability_zone_0:
+ get_input: availability_zone_0
+ keypair_id: UNSUPPORTED_RESOURCE_db_keypair
+ db_image_name:
+ get_input: db_image_name
+ db_volume_id_3:
+ get_input: db_volume_id_3
+ db_volume_id_2:
+ get_input: db_volume_id_2
+ oam_net_name:
+ get_input: oam_net_name
+ db_oam_ip_0:
+ get_input: db_oam_ip_0
+ db_flavor_name:
+ get_input: db_flavor_name
+ db_volume_id_1:
+ get_input: db_volume_id_1
+ deploy_timeout:
+ get_input: db_deploy_timeout
+ db_volume_id_0:
+ get_input: db_volume_id_0
+ app_servers:
+ type: org.openecomp.resource.abstract.nodes.heat.nested_app_server
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ app_flavor_name:
+ get_input: app_flavor_name
+ security_group_ids:
+ - common_security_group
+ - app_security_group
+ vm_role:
+ get_input: app_vm_role
+ app_name:
+ get_input: app_name
+ service_template_filter:
+ substitute_service_template: nested_app_serverServiceTemplate.yaml
+ count: 1
+ mandatory: true
+ vnf_id:
+ get_input: vnf_id
+ app_oam_ip_0:
+ get_input: app_oam_ip_0
+ server_group_id: app_server_group_group
+ availability_zone_0:
+ get_input: availability_zone_0
+ keypair_id: UNSUPPORTED_RESOURCE_app_keypair
+ app_image_name:
+ get_input: app_image_name
+ oam_net_name:
+ get_input: oam_net_name
+ deploy_timeout:
+ get_input: app_deploy_timeout
+ groups:
+ base_pronghorn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base_pronghorn.yaml
+ description: Pronghorn Openstack Heat Template
+ members:
+ - app_security_group
+ - common_security_group
+ - db_security_group
+ - db_servers
+ - app_servers
+ db_server_group_group:
+ type: tosca.groups.Root
+ members: [
+ ]
+ app_server_group_group:
+ type: tosca.groups.Root
+ members: [
+ ]
+ outputs:
+ db_volume_id_0:
+ description: IDs of the database volumes
+ value:
+ - UNSUPPORTED_ATTRIBUTE_db_volumes_0.refs
+ policies:
+ app_server_group_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name: app server group
+ container_type: host
+ targets:
+ - app_server_group_group
+ db_server_group_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name: data server group
+ container_type: host
+ targets:
+ - db_server_group_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_app_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_app_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..b4d79ccc29
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_app_serverServiceTemplate.yaml
@@ -0,0 +1,265 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested_app_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.app:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ label: VF Module ID
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ app_flavor_name:
+ label: Flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to be used for the server
+ security_group_ids:
+ label: Security Group IDs
+ hidden: false
+ immutable: false
+ type: list
+ description: IDs of the security groups for the server
+ entry_schema:
+ type: string
+ vm_role:
+ label: App VM Role
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Role for the application vms
+ app_name:
+ label: Application Hostnames
+ hidden: false
+ immutable: false
+ type: string
+ description: Hostnames of the application servers
+ vnf_id:
+ label: VNF ID
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF instance
+ app_oam_ip_0:
+ label: OAM IP Addresses
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM IP Addresses of the application servers
+ server_group_id:
+ label: Server Group ID
+ hidden: false
+ immutable: false
+ type: string
+ description: ID of the server group
+ availability_zone_0:
+ label: Availability Zone
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for this server
+ app_image_name:
+ label: Image
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the server
+ keypair_id:
+ label: Key Name
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the security key for the server
+ deploy_timeout:
+ label: Deployment Timeout
+ hidden: false
+ immutable: false
+ type: float
+ description: Timeout before declaring the stack deployment as failed.
+ constraints:
+ - in_range:
+ - 60
+ - 3600
+ oam_net_name:
+ label: OAM Network Name
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the oam network
+ node_templates:
+ app_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.app
+ properties:
+ flavor:
+ get_input: app_flavor_name
+ key_name:
+ get_input: keypair_id
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: app_image_name
+ security_groups:
+ get_input: security_group_ids
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vm_role:
+ get_input: vm_role
+ vnf_id:
+ get_input: vnf_id
+ user_data_format: RAW
+ name:
+ - UNSUPPORTED_RESOURCE_wait_condition
+ scheduler_hints:
+ group:
+ get_input: server_group_id
+ groups:
+ nested_app_server_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested_app_server.yaml
+ description: Pronghorn Openstack Heat Template for the Application Server
+ members:
+ - app_server_0
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested_app_server
+ capabilities:
+ endpoint_app_server_0:
+ - app_server_0
+ - endpoint
+ host_app_server_0:
+ - app_server_0
+ - host
+ disk.device.read.bytes_app_server_0:
+ - app_server_0
+ - disk.device.read.bytes
+ disk.allocation_app_server_0:
+ - app_server_0
+ - disk.allocation
+ disk.root.size_app_server_0:
+ - app_server_0
+ - disk.root.size
+ disk.read.bytes.rate_app_server_0:
+ - app_server_0
+ - disk.read.bytes.rate
+ disk.iops_app_server_0:
+ - app_server_0
+ - disk.iops
+ disk.usage_app_server_0:
+ - app_server_0
+ - disk.usage
+ cpu.delta_app_server_0:
+ - app_server_0
+ - cpu.delta
+ disk.device.write.requests.rate_app_server_0:
+ - app_server_0
+ - disk.device.write.requests.rate
+ disk.device.capacity_app_server_0:
+ - app_server_0
+ - disk.device.capacity
+ disk.ephemeral.size_app_server_0:
+ - app_server_0
+ - disk.ephemeral.size
+ disk.latency_app_server_0:
+ - app_server_0
+ - disk.latency
+ disk.read.requests_app_server_0:
+ - app_server_0
+ - disk.read.requests
+ disk.capacity_app_server_0:
+ - app_server_0
+ - disk.capacity
+ disk.device.write.bytes.rate_app_server_0:
+ - app_server_0
+ - disk.device.write.bytes.rate
+ disk.write.requests_app_server_0:
+ - app_server_0
+ - disk.write.requests
+ scalable_app_server_0:
+ - app_server_0
+ - scalable
+ disk.write.requests.rate_app_server_0:
+ - app_server_0
+ - disk.write.requests.rate
+ cpu_util_app_server_0:
+ - app_server_0
+ - cpu_util
+ disk.device.read.bytes.rate_app_server_0:
+ - app_server_0
+ - disk.device.read.bytes.rate
+ binding_app_server_0:
+ - app_server_0
+ - binding
+ disk.device.latency_app_server_0:
+ - app_server_0
+ - disk.device.latency
+ memory.resident_app_server_0:
+ - app_server_0
+ - memory.resident
+ disk.read.bytes_app_server_0:
+ - app_server_0
+ - disk.read.bytes
+ disk.device.usage_app_server_0:
+ - app_server_0
+ - disk.device.usage
+ disk.device.write.requests_app_server_0:
+ - app_server_0
+ - disk.device.write.requests
+ vcpus_app_server_0:
+ - app_server_0
+ - vcpus
+ feature_app_server_0:
+ - app_server_0
+ - feature
+ os_app_server_0:
+ - app_server_0
+ - os
+ cpu_app_server_0:
+ - app_server_0
+ - cpu
+ disk.device.iops_app_server_0:
+ - app_server_0
+ - disk.device.iops
+ disk.write.bytes_app_server_0:
+ - app_server_0
+ - disk.write.bytes
+ disk.device.write.bytes_app_server_0:
+ - app_server_0
+ - disk.device.write.bytes
+ disk.device.read.requests.rate_app_server_0:
+ - app_server_0
+ - disk.device.read.requests.rate
+ disk.device.read.requests_app_server_0:
+ - app_server_0
+ - disk.device.read.requests
+ instance_app_server_0:
+ - app_server_0
+ - instance
+ disk.write.bytes.rate_app_server_0:
+ - app_server_0
+ - disk.write.bytes.rate
+ memory.usage_app_server_0:
+ - app_server_0
+ - memory.usage
+ memory_app_server_0:
+ - app_server_0
+ - memory
+ disk.device.allocation_app_server_0:
+ - app_server_0
+ - disk.device.allocation
+ requirements:
+ dependency_app_server_0:
+ - app_server_0
+ - dependency
+ local_storage_app_server_0:
+ - app_server_0
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_db_serverServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_db_serverServiceTemplate.yaml
new file mode 100644
index 0000000000..cb75f201c8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/expectedoutputfiles/nested_db_serverServiceTemplate.yaml
@@ -0,0 +1,289 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested_db_server
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.db:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ label: VF Module ID
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ security_group_ids:
+ label: Security Group IDs
+ hidden: false
+ immutable: false
+ type: list
+ description: IDs of the security groups for the server
+ entry_schema:
+ type: string
+ vm_role:
+ label: DB VM Role
+ hidden: false
+ immutable: false
+ type: string
+ description: VM Role for the db vms
+ db_name:
+ label: Database Hostname
+ hidden: false
+ immutable: false
+ type: string
+ description: Hostname of the database servers
+ vnf_id:
+ label: VNF ID
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF instance
+ server_group_id:
+ label: Server Group ID
+ hidden: false
+ immutable: false
+ type: string
+ description: ID of the server group
+ availability_zone_0:
+ label: Availability Zone
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the availability zone for this server
+ db_image_name:
+ label: Image
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the server
+ keypair_id:
+ label: Key Name
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the security key for the server
+ db_volume_id_3:
+ label: Data Volume IDs for disk 3
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volume
+ db_volume_id_2:
+ label: Data Volume IDs for disk 2
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volume
+ deploy_timeout:
+ label: Deployment Timeout
+ hidden: false
+ immutable: false
+ type: float
+ description: Timeout before declaring the stack deployment as failed.
+ constraints:
+ - in_range:
+ - 60
+ - 3600
+ oam_net_name:
+ label: OAM Network Name
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the oam network
+ db_oam_ip_0:
+ label: OAM IP Addresse
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM IP Address of the database servers
+ db_flavor_name:
+ label: Flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to be used for the server
+ db_volume_id_1:
+ label: Data Volume IDs for disk 1
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volume
+ db_volume_id_0:
+ label: Data Volume IDs for disk 0
+ hidden: false
+ immutable: false
+ type: string
+ description: IDs to be used for the database volume
+ node_templates:
+ db_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.db
+ properties:
+ flavor:
+ get_input: db_flavor_name
+ key_name:
+ get_input: keypair_id
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: db_image_name
+ security_groups:
+ get_input: security_group_ids
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vm_role:
+ get_input: vm_role
+ vnf_id:
+ get_input: vnf_id
+ user_data_format: RAW
+ name:
+ get_input: db_name
+ scheduler_hints:
+ group:
+ get_input: server_group_id
+ groups:
+ nested_db_server_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested_db_server.yaml
+ description: Pronghorn Openstack Heat Template for Mongo DB
+ members:
+ - db_server_0
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested_db_server
+ capabilities:
+ disk.device.write.bytes.rate_db_server_0:
+ - db_server_0
+ - disk.device.write.bytes.rate
+ cpu_db_server_0:
+ - db_server_0
+ - cpu
+ disk.write.requests_db_server_0:
+ - db_server_0
+ - disk.write.requests
+ os_db_server_0:
+ - db_server_0
+ - os
+ disk.write.requests.rate_db_server_0:
+ - db_server_0
+ - disk.write.requests.rate
+ disk.root.size_db_server_0:
+ - db_server_0
+ - disk.root.size
+ memory.resident_db_server_0:
+ - db_server_0
+ - memory.resident
+ disk.device.iops_db_server_0:
+ - db_server_0
+ - disk.device.iops
+ memory.usage_db_server_0:
+ - db_server_0
+ - memory.usage
+ disk.iops_db_server_0:
+ - db_server_0
+ - disk.iops
+ disk.capacity_db_server_0:
+ - db_server_0
+ - disk.capacity
+ disk.device.read.bytes_db_server_0:
+ - db_server_0
+ - disk.device.read.bytes
+ disk.device.allocation_db_server_0:
+ - db_server_0
+ - disk.device.allocation
+ disk.read.requests_db_server_0:
+ - db_server_0
+ - disk.read.requests
+ endpoint_db_server_0:
+ - db_server_0
+ - endpoint
+ cpu.delta_db_server_0:
+ - db_server_0
+ - cpu.delta
+ feature_db_server_0:
+ - db_server_0
+ - feature
+ binding_db_server_0:
+ - db_server_0
+ - binding
+ memory_db_server_0:
+ - db_server_0
+ - memory
+ disk.read.bytes_db_server_0:
+ - db_server_0
+ - disk.read.bytes
+ disk.device.write.requests_db_server_0:
+ - db_server_0
+ - disk.device.write.requests
+ disk.allocation_db_server_0:
+ - db_server_0
+ - disk.allocation
+ disk.device.read.requests.rate_db_server_0:
+ - db_server_0
+ - disk.device.read.requests.rate
+ disk.device.capacity_db_server_0:
+ - db_server_0
+ - disk.device.capacity
+ host_db_server_0:
+ - db_server_0
+ - host
+ disk.device.read.bytes.rate_db_server_0:
+ - db_server_0
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_db_server_0:
+ - db_server_0
+ - disk.device.write.bytes
+ disk.latency_db_server_0:
+ - db_server_0
+ - disk.latency
+ disk.usage_db_server_0:
+ - db_server_0
+ - disk.usage
+ disk.write.bytes.rate_db_server_0:
+ - db_server_0
+ - disk.write.bytes.rate
+ cpu_util_db_server_0:
+ - db_server_0
+ - cpu_util
+ scalable_db_server_0:
+ - db_server_0
+ - scalable
+ vcpus_db_server_0:
+ - db_server_0
+ - vcpus
+ disk.device.usage_db_server_0:
+ - db_server_0
+ - disk.device.usage
+ disk.device.write.requests.rate_db_server_0:
+ - db_server_0
+ - disk.device.write.requests.rate
+ disk.write.bytes_db_server_0:
+ - db_server_0
+ - disk.write.bytes
+ disk.device.latency_db_server_0:
+ - db_server_0
+ - disk.device.latency
+ instance_db_server_0:
+ - db_server_0
+ - instance
+ disk.ephemeral.size_db_server_0:
+ - db_server_0
+ - disk.ephemeral.size
+ disk.read.bytes.rate_db_server_0:
+ - db_server_0
+ - disk.read.bytes.rate
+ disk.device.read.requests_db_server_0:
+ - db_server_0
+ - disk.device.read.requests
+ requirements:
+ dependency_db_server_0:
+ - db_server_0
+ - dependency
+ local_storage_db_server_0:
+ - db_server_0
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..8b12978ce1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/MANIFEST.json
@@ -0,0 +1,38 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "nested_app_server.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested_db_server.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "base_pronghorn.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_pronghorn.env",
+ "type": "HEAT_ENV"
+ },
+ {
+ "file": "base_pronghorn_volume.yaml",
+ "type": "HEAT_VOL",
+ "isBase": "false",
+ "data": [
+ {
+ "file": "base_pronghorn_volume.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.env
new file mode 100644
index 0000000000..3b069fe185
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.env
@@ -0,0 +1,67 @@
+###
+# list of stack parameters
+###
+
+parameters:
+ ###
+ # vnf info
+ ###
+ vnf_id: pronghorn
+ vf_module_id: base
+ db_vm_role: database
+ app_vm_role: app
+
+
+ ###
+ # common / data center deployment info
+ ###
+ availability_zone_0: nova
+ oam_net_name: "oam"
+
+
+ ###
+ # security group info
+ ###
+ common_ports: "22,53,123,161"
+ common_protocols: "tcp,udp,udp,udp"
+
+ db_ports: "27017"
+ db_protocols: "tcp"
+
+ app_ports: "8443"
+ app_protocols: "tcp"
+
+
+ ###
+ # flavor, image, keypair and timeout info
+ ###
+ db_flavor_name: s1.test
+ db_image_name: pronghorn-ubuntu14
+ #db_image_name: pronghorn-database
+ db_public_key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGe+nL1U3mFHrbtmsvNWR+oDdUyyOX5KejZqe/80uwDiPNyOJjHWIVuX812AEdAAH94nQnkYr2dBiSu1FPh+auMuk3FfegchKT7pYetqELY3ryLUPEh67PmKrdlT9cQ/wQZROq672AA6qlZAYIooeLZVSzUhABfsITk0RhfcWZGIcZwv0Tja3nnhNgtqCxoTXs6fzfcCaypgwy3F0S4RewUfcz/9g7f0tze1CmWRUtPkNK2nX2/T2AJzHgy+vItwpalnon1egIszJfj7uxp+VotQlQ2PN8sI0J5zgpBFe/lxqEwtIKeiTJ16JlyDXtin/RCjCCdtvIaVCff3Z031UV jspaeth@Jonathons-MBP"
+ db_deploy_timeout: 300
+
+ app_flavor_name: s1.test
+ app_image_name: pronghorn-ubuntu14
+ #app_image_name: pronghorn-application
+ app_public_key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGe+nL1U3mFHrbtmsvNWR+oDdUyyOX5KejZqe/80uwDiPNyOJjHWIVuX812AEdAAH94nQnkYr2dBiSu1FPh+auMuk3FfegchKT7pYetqELY3ryLUPEh67PmKrdlT9cQ/wQZROq672AA6qlZAYIooeLZVSzUhABfsITk0RhfcWZGIcZwv0Tja3nnhNgtqCxoTXs6fzfcCaypgwy3F0S4RewUfcz/9g7f0tze1CmWRUtPkNK2nX2/T2AJzHgy+vItwpalnon1egIszJfj7uxp+VotQlQ2PN8sI0J5zgpBFe/lxqEwtIKeiTJ16JlyDXtin/RCjCCdtvIaVCff3Z031UV jspaeth@Jonathons-MBP"
+ app_deploy_timeout: 300
+
+
+ ###
+ # hostnames, ip addresses and public keys
+ ###
+ db_name: pronghorn-db01
+ db_oam_ip_0: "10.0.0.20"
+
+ app_name: pronghorn-app01
+ app_oam_ip_0: "10.0.0.21"
+
+
+ ###
+ # storage volume info
+ ###
+ db_volume_id_0: e8abc8da-f477-4e5c-8266-98b43c982fe4
+ db_volume_id_1: 5db48c7a-eb2d-4960-a90c-88a2d0052a71
+ db_volume_id_2: 6f4d6f1a-1e88-492b-8020-b5a169381434
+ db_volume_id_3: 454a7b1c-a58f-4bac-bed2-a7afa3836dd4
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.yaml
new file mode 100644
index 0000000000..62debe82af
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn.yaml
@@ -0,0 +1,284 @@
+heat_template_version: 2015-04-30
+
+description: Pronghorn Openstack Heat Template
+
+parameters:
+ oam_net_name:
+ label: Database OAM Network
+ description: Name of the OAM network for the database servers
+ type: string
+ common_ports:
+ label: Common Ports
+ description: List of ports to apply to the security group for all VMs
+ type: comma_delimited_list
+ common_protocols:
+ label: Common Protocols
+ description: List of protocols associated with the common_ports
+ type: comma_delimited_list
+ db_ports:
+ label: Database Ports
+ description: List of ports to apply to the security group for the database VMs
+ type: comma_delimited_list
+ db_protocols:
+ label: Database Protocols
+ description: List of protocols associated with the db_ports
+ type: comma_delimited_list
+ app_ports:
+ label: Application Ports
+ description: List of ports to apply to the security group for the application VMs
+ type: comma_delimited_list
+ app_protocols:
+ label: Application Protocols
+ description: List of protocols associated with the app_ports
+ type: comma_delimited_list
+ ###
+ # vnf info
+ ###
+ vnf_id:
+ label: VNF ID
+ description: Unique ID for this VF instance
+ type: string
+ vf_module_id:
+ label: VF Module ID
+ description: Unique ID for this VF Module instance
+ type: string
+ db_vm_role:
+ label: DB VM Role
+ description: Role for the DB VM
+ type: string
+ app_vm_role:
+ label: App VM Role
+ description: Role for the App VM
+ type: string
+
+ ###
+ # availability zones
+ ###
+ availability_zone_0:
+ label: First Availability Zone
+ description: Name of the first availability zone
+ type: string
+
+ ###
+ # database server networks, ips and hostnames
+ ###
+ db_name:
+ label: Database Hostname
+ description: Hostname of the database server
+ type: string
+ db_oam_ip_0:
+ label: Database OAM IP Addresse
+ description: OAM IP Address of the database server
+ type: string
+ ###
+ # database common server info (flavor, image, keypair)
+ ###
+ db_flavor_name:
+ label: Database Flavor
+ description: Flavor of the database server
+ type: string
+ db_image_name:
+ label: Database Image
+ description: Image of the database server
+ type: string
+ db_public_key:
+ label: Database Public Key
+ description: Public ssh key for the database servers
+ type: string
+ db_deploy_timeout:
+ label: Database Deployment Timeout
+ description: Timeout in seconds before declaring the database stack as failed
+ type: number
+ constraints:
+ - range: { min: 60, max: 3600 }
+
+ ###
+ # database volume ids
+ ###
+ db_volume_id_0:
+ label: Data Volume IDs for disk 0
+ description: IDs to be used for the database volumes
+ type: string
+ db_volume_id_1:
+ label: Data Volume IDs for disk 1
+ description: IDs to be used for the database volumes
+ type: string
+ db_volume_id_2:
+ label: Data Volume IDs for disk 2
+ description: IDs to be used for the database volumes
+ type: string
+ db_volume_id_3:
+ label: Data Volume IDs for disk 3
+ description: IDs to be used for the database volumes
+ type: string
+
+
+ ###
+ # application server networks, ips and hostnames
+ ###
+ app_name:
+ label: Application Hostname
+ description: Hostname of the application server
+ type: string
+ app_oam_ip_0:
+ label: Application OAM IP Address
+ description: OAM IP Address of the application server
+ type: string
+ ###
+ # application common server info (flavor, image, keypair)
+ ###
+ app_flavor_name:
+ label: App Flavor
+ description: Flavor to be used for the application server
+ type: string
+ app_image_name:
+ label: App Image
+ description: Image to be used for the application server
+ type: string
+ app_public_key:
+ label: Application Public Key
+ description: Public ssh key for the application servers
+ type: string
+
+ app_deploy_timeout:
+ label: Application Deployment Timeout
+ description: Timeout in seconds before declaring the application stack as failed
+ type: number
+ constraints:
+ - range: { min: 60, max: 3600 }
+
+resources:
+ ###
+ # define unique keypairs for each role
+ ###
+ db_keypair:
+ type: OS::Nova::KeyPair
+ properties:
+ name: pronghorn database key
+ public_key: { get_param: db_public_key }
+ save_private_key: false
+ app_keypair:
+ type: OS::Nova::KeyPair
+ properties:
+ name: pronghorn application key
+ public_key: { get_param: app_public_key }
+ save_private_key: false
+
+ ###
+ # define security groups for each role
+ ###
+ ###
+ # NOTE: I would like to use the repeat/for_each function to iterate over these lists
+ # My local Mirantis 7 testing environment contains the following bug:
+ #
+ # ERROR: The values of the "for_each" argument to "repeat" must be lists
+ ###
+ common_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name: common security group
+ rules:
+ - protocol: { get_param: [ common_protocols, 0 ] }
+ port_range_min: { get_param: [ common_ports, 0 ] }
+ port_range_max: { get_param: [ common_ports, 0 ] }
+ - protocol: { get_param: [ common_protocols, 1 ] }
+ port_range_min: { get_param: [ common_ports, 1 ] }
+ port_range_max: { get_param: [ common_ports, 1 ] }
+ - protocol: { get_param: [ common_protocols, 2 ] }
+ port_range_min: { get_param: [ common_ports, 2 ] }
+ port_range_max: { get_param: [ common_ports, 2 ] }
+ - protocol: { get_param: [ common_protocols, 3 ] }
+ port_range_min: { get_param: [ common_ports, 3 ] }
+ port_range_max: { get_param: [ common_ports, 3 ] }
+ db_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name: data security group
+ rules:
+ - protocol: { get_param: [ db_protocols, 0 ] }
+ port_range_min: { get_param: [ db_ports, 0 ] }
+ port_range_max: { get_param: [ db_ports, 0 ] }
+ app_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name: app security group
+ rules:
+ - protocol: { get_param: [ app_protocols, 0 ] }
+ port_range_min: { get_param: [ app_ports, 0 ] }
+ port_range_max: { get_param: [ app_ports, 0 ] }
+
+ ###
+ # create the database servers
+ ###
+ db_server_group:
+ type: OS::Nova::ServerGroup
+ properties:
+ name: data server group
+ policies:
+ - anti-affinity
+
+ db_servers:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 1
+ resource_def:
+ type: nested_db_server.yaml
+ properties:
+ server_group_id: { get_resource: db_server_group }
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ vm_role: { get_param: db_vm_role }
+ availability_zone_0: { get_param: availability_zone_0 }
+ oam_net_name: { get_param: oam_net_name }
+ db_name: { get_param: db_name }
+ db_oam_ip_0: { get_param: db_oam_ip_0 }
+ security_group_ids:
+ - { get_resource: common_security_group }
+ - { get_resource: db_security_group }
+ keypair_id: { get_resource: db_keypair }
+ db_flavor_name: { get_param: db_flavor_name }
+ db_image_name: { get_param: db_image_name }
+ db_volume_id_0: { get_param: db_volume_id_0 }
+ db_volume_id_1: { get_param: db_volume_id_1 }
+ db_volume_id_2: { get_param: db_volume_id_2 }
+ db_volume_id_3: { get_param: db_volume_id_3 }
+ deploy_timeout: { get_param: db_deploy_timeout }
+
+
+ ###
+ # create the application servers
+ ###
+ app_server_group:
+ type: OS::Nova::ServerGroup
+ properties:
+ name: app server group
+ policies:
+ - anti-affinity
+
+ app_servers:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 1
+ resource_def:
+ type: nested_app_server.yaml
+ properties:
+ server_group_id: { get_resource: app_server_group }
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ vm_role: { get_param: app_vm_role }
+ availability_zone_0: { get_param: availability_zone_0 }
+ oam_net_name: { get_param: oam_net_name }
+ app_name: { get_param: app_name }
+ app_oam_ip_0: { get_param: app_oam_ip_0 }
+ security_group_ids:
+ - { get_resource: common_security_group }
+ - { get_resource: app_security_group }
+ keypair_id: { get_resource: app_keypair }
+ app_flavor_name: { get_param: app_flavor_name }
+ app_image_name: { get_param: app_image_name }
+ deploy_timeout: { get_param: app_deploy_timeout }
+
+outputs:
+ ###
+ # No outputs as the base_pronghorn is the only VNF component
+ ###
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.env
new file mode 100644
index 0000000000..e9b25015f3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.env
@@ -0,0 +1,7 @@
+###
+# list of stack parameters
+###
+parameters:
+
+ # size of each database volume
+ db_volume_size_0: 1
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.yaml
new file mode 100644
index 0000000000..8355b63212
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/base_pronghorn_volume.yaml
@@ -0,0 +1,77 @@
+heat_template_version: 2015-04-30
+
+description: Pronghorn Data Volume
+
+parameters:
+ ###
+ # size of each database storage volume
+ ###
+ db_volume_size_0:
+ label: Data Volume Size
+ description: Size of the data volume
+ type: number
+ constraints:
+ - range: { min: 1, max: 2000 }
+ description: Volume size should be an integer between 1 and 2000 (GB)
+
+
+resources:
+ ###
+ # define database storage volumes
+ # four volumes are created for each server
+ # these four volumes will be combined in a RAID 10 array
+ ###
+ db_volumes_0:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 1
+ resource_def:
+ type: OS::Cinder::Volume
+ properties:
+ name: db_volume_%index%_0
+ size: { get_param: db_volume_size_0 }
+ db_volumes_1:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 1
+ resource_def:
+ type: OS::Cinder::Volume
+ properties:
+ name: db_volume_%index%_1
+ size: { get_param: db_volume_size_0 }
+ db_volumes_2:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 1
+ resource_def:
+ type: OS::Cinder::Volume
+ properties:
+ name: db_volume_%index%_2
+ size: { get_param: db_volume_size_0 }
+ db_volumes_3:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 1
+ resource_def:
+ type: OS::Cinder::Volume
+ properties:
+ name: db_volume_%index%_3
+ size: { get_param: db_volume_size_0 }
+
+
+outputs:
+ ###
+ # database storage volume outputs
+ ###
+ db_volume_id_0:
+ description: IDs of the database volumes
+ value: { get_attr: [db_volumes_0, refs, 1] }
+ # db_volume_id_1:
+ # description: IDs of the database volumes
+ # value: { get_attr: [db_volumes_1, refs, 1] }
+ # db_volume_id_2:
+ # description: IDs of the database volumes
+ # value: { get_attr: [db_volumes_2, refs, 1] }
+ # db_volume_id_3:
+ # description: IDs of the database volumes
+ # value: { get_attr: [db_volumes_3, refs, 1] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_app_server.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_app_server.yaml
new file mode 100644
index 0000000000..c4f3fdb170
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_app_server.yaml
@@ -0,0 +1,137 @@
+heat_template_version: 2015-04-30
+
+description: Pronghorn Openstack Heat Template for the Application Server
+
+parameters:
+ ###
+ # server group and index
+ ###
+ server_group_id:
+ label: Server Group ID
+ description: ID of the server group
+ type: string
+ deploy_timeout:
+ label: Deployment Timeout
+ description: Timeout before declaring the stack deployment as failed.
+ type: number
+ constraints:
+ - range: { min: 60, max: 3600 }
+
+ ###
+ # vnf info
+ ###
+ vnf_id:
+ label: VNF ID
+ description: Unique ID for this VF instance
+ type: string
+ vf_module_id:
+ label: VF Module ID
+ description: Unique ID for this VF Module instance
+ type: string
+ vm_role:
+ label: App VM Role
+ description: VM Role for the application vms
+ type: string
+
+ ###
+ # availability zone
+ ###
+ availability_zone_0:
+ label: Availability Zone
+ description: Name of the availability zone for this server
+ type: string
+
+ ###
+ # application server networks, ips and hostnames
+ ###
+ app_name:
+ label: Application Hostnames
+ description: Hostnames of the application servers
+ type: string
+ oam_net_name:
+ label: OAM Network Name
+ description: Name of the oam network
+ type: string
+ app_oam_ip_0:
+ label: OAM IP Addresses
+ description: OAM IP Addresses of the application servers
+ type: string
+
+ ###
+ # application common server info (flavor, image, keypair)
+ ###
+ app_flavor_name:
+ label: Flavor
+ description: Flavor to be used for the server
+ type: string
+ app_image_name:
+ label: Image
+ description: Image to be used for the server
+ type: string
+ keypair_id:
+ label: Key Name
+ description: Name of the security key for the server
+ type: string
+
+ ###
+ # security groups
+ ###
+ security_group_ids:
+ label: Security Group IDs
+ description: IDs of the security groups for the server
+ type: comma_delimited_list
+
+
+resources:
+ ###
+ # software deployment wait conditions
+ ###
+ wait_condition:
+ type: OS::Heat::WaitCondition
+ properties:
+ handle: { get_resource: wait_handle }
+ timeout: { get_param: deploy_timeout }
+
+ wait_handle:
+ type: OS::Heat::WaitConditionHandle
+
+ ###
+ # create the application server
+ ###
+ app_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_attr: [wait_condition, att1] }
+ availability_zone: { get_param: availability_zone_0 }
+ scheduler_hints:
+ group: { get_param: server_group_id }
+ key_name: { get_param: keypair_id }
+ flavor: { get_param: app_flavor_name }
+ image: { get_param: app_image_name }
+ security_groups: { get_param: security_group_ids }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ vm_role: { get_param: vm_role }
+ networks:
+ - network: { get_param: oam_net_name }
+ fixed_ip: { get_param: app_oam_ip_0 }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ wc_notify: { get_attr: ['wait_handle', 'curl_cli'] }
+ template: |
+ #!/bin/bash
+ ROOT_PW="dan1tom2"
+ (
+ echo "$ROOT_PW"
+ echo "$ROOT_PW"
+ ) | passwd --stdin root
+ wc_notify --data-binary '{"status":"SUCCESS"}'
+
+
+outputs:
+ ###
+ # No outputs as the base_pronghorn is the only VNF component
+ ###
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_db_server.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_db_server.yaml
new file mode 100644
index 0000000000..8716028a07
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttr/getAttrUnsupportedResource/inputfiles/nested_db_server.yaml
@@ -0,0 +1,204 @@
+heat_template_version: 2015-04-30
+
+description: Pronghorn Openstack Heat Template for Mongo DB
+
+parameters:
+ ###
+ # server group and index
+ ###
+ server_group_id:
+ label: Server Group ID
+ description: ID of the server group
+ type: string
+ deploy_timeout:
+ label: Deployment Timeout
+ description: Timeout before declaring the stack deployment as failed.
+ type: number
+ constraints:
+ - range: { min: 60, max: 3600 }
+
+ ###
+ # vnf info
+ ###
+ vnf_id:
+ label: VNF ID
+ description: Unique ID for this VF instance
+ type: string
+ vf_module_id:
+ label: VF Module ID
+ description: Unique ID for this VF Module instance
+ type: string
+ vm_role:
+ label: DB VM Role
+ description: VM Role for the db vms
+ type: string
+
+ ###
+ # availability zone
+ ###
+ availability_zone_0:
+ label: Availability Zone
+ description: Name of the availability zone for this server
+ type: string
+
+ ###
+ # database server networks, ips and hostnames
+ ###
+ db_name:
+ label: Database Hostname
+ description: Hostname of the database servers
+ type: string
+ oam_net_name:
+ label: OAM Network Name
+ description: Name of the oam network
+ type: string
+ db_oam_ip_0:
+ label: OAM IP Addresse
+ description: OAM IP Address of the database servers
+ type: string
+
+ ###
+ # database common server info (flavor, image, keypair)
+ ###
+ db_flavor_name:
+ label: Flavor
+ description: Flavor to be used for the server
+ type: string
+ db_image_name:
+ label: Image
+ description: Image to be used for the server
+ type: string
+ keypair_id:
+ label: Key Name
+ description: Name of the security key for the server
+ type: string
+
+ ###
+ # security groups
+ ###
+ security_group_ids:
+ label: Security Group IDs
+ description: IDs of the security groups for the server
+ type: comma_delimited_list
+
+ ###
+ # database volume ids
+ ###
+ db_volume_id_0:
+ label: Data Volume IDs for disk 0
+ description: IDs to be used for the database volume
+ type: string
+ db_volume_id_1:
+ label: Data Volume IDs for disk 1
+ description: IDs to be used for the database volume
+ type: string
+ db_volume_id_2:
+ label: Data Volume IDs for disk 2
+ description: IDs to be used for the database volume
+ type: string
+ db_volume_id_3:
+ label: Data Volume IDs for disk 3
+ description: IDs to be used for the database volume
+ type: string
+
+
+resources:
+ ###
+ # setup wait condition and handler for heat
+ ###
+ wait_condition:
+ type: OS::Heat::WaitCondition
+ properties:
+ handle: {get_resource: wait_handle}
+ timeout: {get_param: deploy_timeout }
+
+ wait_handle:
+ type: OS::Heat::WaitConditionHandle
+
+ ###
+ # software configuration
+ ###
+ db_config_complete:
+ type: OS::Heat::SoftwareConfig
+ properties:
+ group: ungrouped
+ config:
+ str_replace:
+ params:
+ wc_notify: { get_attr: ['wait_handle', 'curl_cli'] }
+ template: |
+ #!/bin/bash
+ echo "sending completion notification to heat"
+ wc_notify --data-binary '{"status":"SUCCESS"}'
+
+ db_config:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: db_config_complete }
+
+ ###
+ # create the database server
+ ###
+ db_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: db_name }
+ availability_zone: { get_param: availability_zone_0 }
+ scheduler_hints:
+ group: { get_param: server_group_id }
+ flavor: { get_param: db_flavor_name }
+ image: { get_param: db_image_name }
+ key_name: { get_param: keypair_id }
+ security_groups: { get_param: security_group_ids }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ vm_role: { get_param: vm_role }
+ networks:
+ - network: { get_param: oam_net_name }
+ fixed_ip: { get_param: db_oam_ip_0 }
+ user_data_format: RAW
+ #user_data: { get_resource: db_config }
+ user_data:
+ str_replace:
+ params:
+ wc_notify: { get_attr: ['wait_handle', 'curl_cli'] }
+ template: |
+ #!/bin/bash
+ ROOT_PW="dan1tom2"
+ (
+ echo "$ROOT_PW"
+ echo "$ROOT_PW"
+ ) | passwd --stdin root
+ wc_notify --data-binary '{"status":"SUCCESS"}'
+
+ ###
+ # attach the data volumes to the server
+ ###
+ db_volume_attachment_0:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ instance_uuid: { get_resource: db_server_0 }
+ volume_id: { get_param: db_volume_id_0 }
+ db_volume_attachment_1:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ instance_uuid: { get_resource: db_server_0 }
+ volume_id: { get_param: db_volume_id_1 }
+ db_volume_attachment_2:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ instance_uuid: { get_resource: db_server_0 }
+ volume_id: { get_param: db_volume_id_2 }
+ db_volume_attachment_3:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ instance_uuid: { get_resource: db_server_0 }
+ volume_id: { get_param: db_volume_id_3 }
+
+
+outputs:
+ ###
+ # No outputs as the base_pronghorn is the only VNF component
+ ###
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..68059be635
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,770 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cgi_fw:
+ 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
+ default: dummy_vf_module_id
+ nimbus_hsl_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: other
+ cgi_fw_pt_vlan_VM2_name_fqdn:
+ hidden: false
+ immutable: false
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+ default: [
+ ]
+ cgi_fw_vmi_ecmp_src_ip:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: source_ip for the VirtualMachineInterface
+ default: true
+ cgi_fw_names:
+ label: Firewall VM Name
+ hidden: false
+ immutable: false
+ type: list
+ description: Comma Delimited List of Names for ServiceInstance VMs
+ default:
+ - zsde1fcgi02fgi001
+ - zsde1fcgi02fgi002
+ entry_schema:
+ type: string
+ cgi_fw_vmi_ecmp_dst_ip:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: destination_ip for the VirtualMachineInterface
+ default: true
+ sgi_direct_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: right
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VF instance
+ default: zrdm3firstnetfcgi02
+ cgi_fw_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor for the ServiceInstance VM
+ default: m1.xlarge
+ vf_module_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VF Module instance
+ default: zsde1fcgi02
+ cgi_fw_st_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_type for the ServiceTemplate
+ default: firewall
+ sgi_protected_net_dummy_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:firstnet_dummy_net_1
+ cgi_fw_vmi_ecmp_src_port:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: source_port for the VirtualMachineInterface
+ default: false
+ sgi_protected_net_dummy1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name for the VirtualNetwork
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF instance
+ default: dummy_vnf_id
+ sgi_direct_net_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:fgi_direct
+ sgi_protected_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: left
+ cgi_fw_vmi_ecmp_dst_port:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: destination_port for the VirtualMachineInterface
+ default: false
+ sgi_direct_family_v6:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP Family Address for InstanceIp
+ default: v6
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability_zone for the ServiceInstance
+ default: nova
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability_zone for the ServiceInstance
+ default: nova
+ nimbus_hsl_net_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:alu-firstnet-net
+ sgi_protected_net_dummy:
+ hidden: false
+ immutable: false
+ type: string
+ description: name for the VirtualNetwork
+ default: firstnet_dummy_net_1
+ cgi_fw_pt_vlan_VM1_name_fqdn:
+ hidden: false
+ immutable: false
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+ default: [
+ ]
+ cgi_fw_vmi_ecmp_configured:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: hashing_configured for the VirtualMachineInterface
+ default: true
+ cgi_fw_vmi_ecmp_ip_protocol:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: ip_protocol for the VirtualMachineInterface
+ default: false
+ oam_protected_net_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:alu_l3_mt_net
+ oam_protected_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: management
+ cgi_fw_st_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_mode for the ServiceTemplate
+ default: in-network-nat
+ sgi_direct_ipv6_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet UUID for InstanceIp
+ default: 4560666e-f306-4d7b-b0ec-a2d4330e9600
+ contrail_vmi_subinterface:
+ hidden: false
+ immutable: false
+ type: string
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ cgi_fw_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: image_name for the ServiceInstance VM
+ default: F5_LB-FW_F5_12_1_HF1_Startup
+ cgi_fw_oam_protected_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: the ips of the management network for CGI FW
+ default:
+ - 192.168.50.40
+ - 192.168.50.41
+ entry_schema:
+ type: string
+ sgi_direct_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet UUID for InstanceIp
+ default: 63858a9d-696b-4731-b3b3-7c8dfd777b9e
+ domain:
+ hidden: false
+ immutable: false
+ type: string
+ description: domain for the ServiceTemplate
+ default: default-domain
+ cgi_fw_st_version:
+ hidden: false
+ immutable: false
+ type: float
+ description: version for the ServiceTemplate
+ default: 2
+ constraints:
+ - in_range:
+ - 0
+ - 99
+ cgi_fw_st_virtualization_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_virtualization_type for the ServiceTemplate
+ default: virtual-machine
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ CGI_FW_OAM_PROTECTED_RVMI_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: oam_protected_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: oam_protected_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SGI_DIRECT_RVMI_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_direct_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: sgi_direct_interface_type
+ port_tuple_refs:
+ get_input: cgi_fw_pt_vlan_VM1_name_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_OAM_PROTECTED_RVMI_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: oam_protected_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: oam_protected_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SGI_DIRECT_RVMI_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_direct_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: sgi_direct_interface_type
+ port_tuple_refs:
+ get_input: cgi_fw_pt_vlan_VM2_name_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_NIMBUS_HSL_RVMI_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: nimbus_hsl_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: nimbus_hsl_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_NIMBUS_HSL_RVMI_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: nimbus_hsl_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: nimbus_hsl_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SERVER_1:
+ type: org.openecomp.resource.vfc.nodes.heat.cgi_fw
+ properties:
+ flavor:
+ get_input: cgi_fw_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cgi_fw_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ vf_module_name:
+ get_input: vf_module_name
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cgi_fw_names
+ - 0
+ scheduler_hints:
+ group: CGI_FW_RAG_group
+ CGI_FW_RSG_SI_1:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_sg_cgi_fw
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ description: Security Group of CGI FW ServiceInstance
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: '58'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: '58'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_protected_net_dummy_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_protected_net_dummy_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SERVER_2:
+ type: org.openecomp.resource.vfc.nodes.heat.cgi_fw
+ properties:
+ flavor:
+ get_input: cgi_fw_flavor_name
+ availability_zone:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - get_input:
+ - sgi_protected_net_dummy
+ - 0
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ image:
+ get_input: cgi_fw_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ vf_module_name:
+ get_input: vf_module_name
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cgi_fw_names
+ - 1
+ scheduler_hints:
+ group: CGI_FW_RAG_group
+ contrail_vmi_subinterface:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ virtual_network_refs:
+ - get_input: oam_protected_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type: left
+ port_tuple_refs:
+ - get_input: port_name
+ groups:
+ CGI_FW_RAG_group:
+ type: tosca.groups.Root
+ members:
+ - CGI_FW_SERVER_1
+ - CGI_FW_SERVER_2
+ base_firstnet_fgi_frwl_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base_firstnet_fgi_frwl.yml
+ description: |
+ HOT template to create SecurityGroup//ServerGroup//ServiceTemplate:
+ members:
+ - CGI_FW_OAM_PROTECTED_RVMI_2
+ - CGI_FW_SGI_DIRECT_RVMI_1
+ - CGI_FW_OAM_PROTECTED_RVMI_1
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ - CGI_FW_NIMBUS_HSL_RVMI_2
+ - CGI_FW_NIMBUS_HSL_RVMI_1
+ - CGI_FW_SERVER_1
+ - CGI_FW_RSG_SI_1
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1
+ - CGI_FW_SERVER_2
+ - contrail_vmi_subinterface
+ outputs:
+ cgi_fw_01_left_mac_10:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - str_split:
+ - ','
+ - get_attribute:
+ - contrail_vmi_subinterface
+ - virtual_machine_interface_allowed_address_pairs
+ - allowed_address_pair
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cgi_fw_st_name_fqdn:
+ description: FQDN of the FW_CGI ServiceTemplate
+ value:
+ list_join:
+ - ':'
+ - get_attr:
+ - CGI_FW_RST_1
+ - fq_name
+ VMA-EXT_IPS:
+ description: IP addresses assigned to the first external network.
+ value:
+ - UNSUPPORTED_ATTRIBUTE_CGI_FW_SERVER_2.{get_param=[vnf_id, {get_param=sgi_protected_interface_type}]}
+ VMA-DynamicResource:
+ description: IP addresses assigned to the first external network.
+ value:
+ - UNSUPPORTED_RESOURCE_{get_param=vnf_id}
+ cgi_fw_01_left_mac_7:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - contrail_vmi_subinterface
+ - virtual_machine_interface_properties
+ cgi_fw_01_left_mac_6:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - str_split:
+ - ','
+ - string,to,split
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cgi_fw_01_left_mac_9:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - str_split:
+ - ','
+ - get_input: sgi_protected_net_dummy
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cgi_fw_01_left_mac_8:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - contrail_vmi_subinterface
+ - virtual_machine_interface_allowed_address_pairs
+ - allowed_address_pair
+ cgi_fw_01_left_mac_3:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - get_input:
+ - sgi_protected_net_dummy
+ - 0
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cgi_fw_01_left_mac_2:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - get_input: sgi_protected_net_dummy
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cgi_fw_01_left_mac_5:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - get_input:
+ - sgi_protected_net_dummy
+ - 0
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cgi_fw_01_left_mac_4:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_2
+ - addresses
+ - get_input:
+ - sgi_protected_net_dummy
+ - 0
+ - get_input:
+ - sgi_protected_net_dummy1
+ - 1
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cgi_fw_01_left_mac_1:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - CGI_FW_SERVER_1
+ - addresses
+ - get_input: sgi_protected_net_dummy
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ policies:
+ CGI_FW_RAG_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_srg_cgi_fw
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ container_type: host
+ targets:
+ - CGI_FW_RAG_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..a4168d91ca
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "base_firstnet_fgi_frwl.yml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_firstnet_fgi_frwl.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.env
new file mode 100644
index 0000000000..0001d8a92b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.env
@@ -0,0 +1,71 @@
+#FIRSTNET - FW -CGI // Contrail 3.0 Version 2 Template
+#AUTHORS: Rajesh Anne (ja702x)
+
+#####################
+parameters:
+#####################
+
+#### fq_name means different things in different contexts/resources/attributes
+# fq_name: 'default-domain:Nimbus:????'
+
+## GLOBAL//Basic Parameters
+ vnf_name: 'zrdm3firstnetfcgi02'
+ domain: 'default-domain'
+
+#### PROTECTED_NET_1
+ sgi_protected_interface_type: 'left'
+#### DIRECT_NET_1
+ sgi_direct_interface_type: 'right'
+
+## ST//ServiceTemplate Parameters
+ cgi_fw_st_version: 2
+# service_template_properties_service_mode: 'transparent' / 'in-network' / 'in-network-nat'
+ cgi_fw_st_mode: 'in-network-nat'
+ cgi_fw_st_type: 'firewall'
+ cgi_fw_st_virtualization_type: 'virtual-machine'
+
+## GLOBAL//Basic Parameters
+ vf_module_name: 'zsde1fcgi02'
+ vf_module_id: 'dummy_vf_module_id'
+ vnf_id: 'dummy_vnf_id'
+
+## Global//Network Parameters
+ oam_protected_net_fqdn: 'default-domain:ALU-L3:alu_l3_mt_net'
+ sgi_protected_net_dummy: 'firstnet_dummy_net_1'
+ sgi_protected_net_dummy_fqdn: 'default-domain:ALU-L3:firstnet_dummy_net_1'
+ sgi_direct_net_fqdn: 'default-domain:ALU-L3:fgi_direct'
+ nimbus_hsl_net_fqdn: 'default-domain:ALU-L3:alu-firstnet-net'
+#### MGMT_NET_1
+ oam_protected_interface_type: 'management'
+
+#### HSL_NET_1
+ nimbus_hsl_interface_type: 'other'
+
+## PT//PortTuple Parameters
+ cgi_fw_pt_vlan_VM1_name_fqdn: [ ]
+ cgi_fw_pt_vlan_VM2_name_fqdn: [ ]
+##cgi_fw_pt_vlan10_VM1_name_fqdn: [ 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan10:default-port-tuple-303c36d9-7111-4b76-9e8e-f6394d81e567' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_11:default-port-tuple' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_12:default-port-tuple-b53a9a1f-b929-4769-8957-7138278855c5' ]
+##cgi_fw_pt_vlan10_VM2_name_fqdn: [ 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan10:default-port-tuple' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_11:default-port-tuple-da45ffdb-d09c-46e9-a7e4-535d00c6303f' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_12:default-port-tuple' ]
+## VMI//VirtualMachineInterface ECMP Parameters
+ cgi_fw_vmi_ecmp_configured: True
+ cgi_fw_vmi_ecmp_src_ip: True
+ cgi_fw_vmi_ecmp_dst_ip: True
+ cgi_fw_vmi_ecmp_ip_protocol: False
+ cgi_fw_vmi_ecmp_src_port: False
+ cgi_fw_vmi_ecmp_dst_port: False
+
+## II/InstanceIp Parameters
+ cgi_fw_oam_protected_ips: '192.168.50.40,192.168.50.41'
+#### II//InstanceIp OS::Neutron::Subnet UUID for right network -- sgi_direct_net
+ sgi_direct_subnet_id: '63858a9d-696b-4731-b3b3-7c8dfd777b9e'
+#### II//InstanceIp OS::Neutron::Subnet UUID for right network v6 --sgi_direct_net v6
+ sgi_direct_ipv6_subnet_id: '4560666e-f306-4d7b-b0ec-a2d4330e9600'
+#### II/InstanceIp Property instance_ip_family for VM Interface 3 IPv6 (RIGHT/DIRECT)
+ sgi_direct_family_v6: 'v6'
+
+## VM//NovaServer Parameters
+ cgi_fw_image_name: 'F5_LB-FW_F5_12_1_HF1_Startup'
+ cgi_fw_flavor_name: 'm1.xlarge'
+ availability_zone_0: 'nova'
+ availability_zone_1: 'nova'
+ cgi_fw_names: 'zsde1fcgi02fgi001,zsde1fcgi02fgi002' \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.yml
new file mode 100644
index 0000000000..59a8f0af67
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParam/inputfiles/base_firstnet_fgi_frwl.yml
@@ -0,0 +1,592 @@
+heat_template_version: 2015-04-30
+#FIRSTNET - FW -FGI// Contrail 3.0 Version 2 Template
+#AUTHORS: Rajesh Anne (ja702x)
+description: >
+ HOT template to create SecurityGroup//ServerGroup//ServiceTemplate:
+
+#####################
+parameters:
+#####################
+
+## GLOBAL//Basic Parameters
+## OPENECOMP VNF//VM Parameters
+ vnf_name:
+ type: string
+ description: Unique name for this VF instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+
+ domain:
+ type: string
+ description: domain for the ServiceTemplate
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+ vf_module_name:
+ type: string
+ description: Unique name for this VF Module instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+## GLOBAL//Network Parameters
+ sgi_protected_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+ sgi_direct_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+ oam_protected_net_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ sgi_protected_net_dummy:
+ type: string
+ description: name for the VirtualNetwork
+ sgi_protected_net_dummy1:
+ type: string
+ description: name for the VirtualNetwork
+ sgi_protected_net_dummy_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ sgi_direct_net_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ nimbus_hsl_net_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ oam_protected_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+
+ nimbus_hsl_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+## PT//PortTuple Parameters
+ cgi_fw_pt_vlan_VM1_name_fqdn:
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+ cgi_fw_pt_vlan_VM2_name_fqdn:
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+## ST//ServiceTemplate Parameters
+ cgi_fw_st_version:
+ type: number
+ description: version for the ServiceTemplate
+ constraints:
+ - range: { min: 0, max: 99 }
+ description: Must be a number between 0 and 99
+ cgi_fw_st_mode:
+ type: string
+ description: service_mode for the ServiceTemplate
+ cgi_fw_st_type:
+ type: string
+ description: service_type for the ServiceTemplate
+ cgi_fw_st_virtualization_type:
+ type: string
+ description: service_virtualization_type for the ServiceTemplate
+## VMI//VirtualMachineInterface ECMP Parameters
+ cgi_fw_vmi_ecmp_configured:
+ type: boolean
+ description: hashing_configured for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_src_ip:
+ type: boolean
+ description: source_ip for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_dst_ip:
+ type: boolean
+ description: destination_ip for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_ip_protocol:
+ type: boolean
+ description: ip_protocol for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_src_port:
+ type: boolean
+ description: source_port for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_dst_port:
+ type: boolean
+ description: destination_port for the VirtualMachineInterface
+## II//InstanceIp
+ sgi_direct_family_v6:
+ type: string
+ description: IP Family Address for InstanceIp
+ sgi_direct_subnet_id:
+ type: string
+ description: Subnet UUID for InstanceIp
+ sgi_direct_ipv6_subnet_id:
+ type: string
+ description: Subnet UUID for InstanceIp
+## VM//NovaServer Parameters
+ cgi_fw_image_name:
+ type: string
+ description: image_name for the ServiceInstance VM
+ cgi_fw_flavor_name:
+ type: string
+ description: flavor for the ServiceInstance VM
+ availability_zone_0:
+ type: string
+ description: availability_zone for the ServiceInstance
+ availability_zone_1:
+ type: string
+ description: availability_zone for the ServiceInstance
+ cgi_fw_names:
+ type: comma_delimited_list
+ label: Firewall VM Name
+ description: Comma Delimited List of Names for ServiceInstance VMs
+ cgi_fw_oam_protected_ips:
+ type: comma_delimited_list
+ description: the ips of the management network for CGI FW
+ contrail_vmi_subinterface:
+ type: string
+ port_name:
+ type: string
+ subinterface_name_prefix:
+ type: string
+#####################
+resources:
+#####################
+
+## RSG//Resource:SecurityGroup
+ CGI_FW_RSG_SI_1:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: Security Group of CGI FW ServiceInstance
+ name:
+ str_replace:
+ template: VNF_NAME_sg_cgi_fw
+ 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": 0}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "udp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "132", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "icmp", "ethertype": "IPv4"}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "tcp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "udp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "132", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "58", "ethertype": "IPv6"}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "udp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "132", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "icmp", "ethertype": "IPv4"}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "tcp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "udp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "132", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "58", "ethertype": "IPv6"}
+
+## RAG//Resource:Anti-Affinity Group
+ CGI_FW_RAG:
+ type: OS::Nova::ServerGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_srg_cgi_fw
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ policies:
+ - anti-affinity
+
+## RST//Resource:ServiceTemplate
+ CGI_FW_RST_1:
+ type: OS::ContrailV2::ServiceTemplate
+ properties:
+ domain: { get_param: domain }
+ name:
+ str_replace:
+ template: VNF_NAME_st_cgi_fw
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ service_template_properties:
+ service_template_properties_version: { get_param: cgi_fw_st_version }
+ service_template_properties_service_mode: { get_param: cgi_fw_st_mode }
+ service_template_properties_service_type: { get_param: cgi_fw_st_type }
+ service_template_properties_service_virtualization_type: { get_param: cgi_fw_st_virtualization_type }
+ service_template_properties_interface_type:
+ - service_template_properties_interface_type_service_interface_type: { get_param: sgi_protected_interface_type }
+ - service_template_properties_interface_type_service_interface_type: { get_param: sgi_direct_interface_type }
+
+## RVMI//Resource:VirtualMachineInterface
+#### CGI_FW VirtualMachineInterface for 1st Interface // MGMT // oam_protected_NET_1
+ CGI_FW_OAM_PROTECTED_RVMI_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: oam_protected_interface_type }
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+ CGI_FW_OAM_PROTECTED_RVMI_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: oam_protected_interface_type }
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+#### CGI_FW VirtualMachineInterface for 2nd Interface // LEFT // PROTECTED_NET_1 (ServiceChain)
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+#### CGI_FW VirtualMachineInterface for 3rd Interface // RIGHT // DIRECT_NET_1 (ServiceChain)
+ CGI_FW_SGI_DIRECT_RVMI_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured:
+ get_param: cgi_fw_vmi_ecmp_configured
+ ecmp_hashing_include_fields_source_ip:
+ get_param: cgi_fw_vmi_ecmp_src_ip
+ ecmp_hashing_include_fields_destination_ip:
+ get_param: cgi_fw_vmi_ecmp_dst_ip
+ ecmp_hashing_include_fields_ip_protocol:
+ get_param: cgi_fw_vmi_ecmp_ip_protocol
+ ecmp_hashing_include_fields_source_port:
+ get_param: cgi_fw_vmi_ecmp_src_port
+ ecmp_hashing_include_fields_destination_port:
+ get_param: cgi_fw_vmi_ecmp_dst_port
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: sgi_direct_interface_type }
+ port_tuple_refs: { get_param: cgi_fw_pt_vlan_VM1_name_fqdn }
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+ CGI_FW_SGI_DIRECT_RVMI_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured:
+ get_param: cgi_fw_vmi_ecmp_configured
+ ecmp_hashing_include_fields_source_ip:
+ get_param: cgi_fw_vmi_ecmp_src_ip
+ ecmp_hashing_include_fields_destination_ip:
+ get_param: cgi_fw_vmi_ecmp_dst_ip
+ ecmp_hashing_include_fields_ip_protocol:
+ get_param: cgi_fw_vmi_ecmp_ip_protocol
+ ecmp_hashing_include_fields_source_port:
+ get_param: cgi_fw_vmi_ecmp_src_port
+ ecmp_hashing_include_fields_destination_port:
+ get_param: cgi_fw_vmi_ecmp_dst_port
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: sgi_direct_interface_type }
+ port_tuple_refs: { get_param: cgi_fw_pt_vlan_VM2_name_fqdn }
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+#### CGI_FW VirtualMachineInterface for 4th Interface // OTHER // HSL_NET_1
+ CGI_FW_NIMBUS_HSL_RVMI_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: nimbus_hsl_interface_type }
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+ CGI_FW_NIMBUS_HSL_RVMI_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: nimbus_hsl_interface_type }
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+## RII//Resource:InstanceIp
+#### CGI_FW InstanceIp for 1st Interface // MGMT // oam_protected_NET_1
+ CGI_FW_OAM_PROTECTED_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RVMI_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_OAM_PROTECTED_RVMI_1
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ instance_ip_address: { get_param: [cgi_fw_oam_protected_ips,0 ] }
+ CGI_FW_OAM_PROTECTED_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_OAM_PROTECTED_RVMI_2
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ instance_ip_address: { get_param: [cgi_fw_oam_protected_ips,1 ] }
+
+#### CGI_FW InstanceIp for 2nd Interface // DUMMY // PROTECTED_NET_1
+ CGI_FW_SGI_PROTECTED_RII_DUMMY_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+ CGI_FW_SGI_PROTECTED_RII_DUMMY_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+
+#### CGI_FW InstanceIp for 3rd Interface // RIGHT // DIRECT_NET_1
+ CGI_FW_SGI_DIRECT_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_1
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_subnet_id }
+ CGI_FW_SGI_DIRECT_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_2
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_subnet_id }
+
+#### CGI_FW InstanceIp for 3rd Interface v6 // RIGHT // DIRECT_NET_1
+ CGI_FW_SGI_DIRECT_V6_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_1
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_ipv6_subnet_id }
+ instance_ip_family: { get_param: sgi_direct_family_v6 }
+ CGI_FW_SGI_DIRECT_V6_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_2
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_ipv6_subnet_id }
+ instance_ip_family: { get_param: sgi_direct_family_v6 }
+
+#### CGI_FW InstanceIp for 4th Interface // OTHER // HSL_NET_1
+ CGI_FW_NIMBUS_HSL_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_NIMBUS_HSL_RVMI_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_NIMBUS_HSL_RVMI_1
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+ CGI_FW_NIMBUS_HSL_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_NIMBUS_HSL_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_NIMBUS_HSL_RVMI_2
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+
+## RNS//Resource:NovaServer
+#### CGI_FW ServiceInstance OS::Nova::Server VM 1
+ CGI_FW_SERVER_1:
+ type: OS::Nova::Server
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RII_1
+ - CGI_FW_SGI_PROTECTED_RII_DUMMY_1
+ - CGI_FW_SGI_DIRECT_RII_1
+ - CGI_FW_SGI_DIRECT_V6_RII_1
+ - CGI_FW_NIMBUS_HSL_RII_1
+ properties:
+ name: { get_param: [ cgi_fw_names,0 ] }
+ image: { get_param: cgi_fw_image_name }
+ flavor: { get_param: cgi_fw_flavor_name }
+ availability_zone: { get_param: availability_zone_0 }
+ scheduler_hints: { group: {get_resource: CGI_FW_RAG } }
+ networks:
+ - port: { get_resource: CGI_FW_OAM_PROTECTED_RVMI_1 }
+ - port: { get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1 }
+ - port: { get_resource: CGI_FW_SGI_DIRECT_RVMI_1 }
+ - port: { get_resource: CGI_FW_NIMBUS_HSL_RVMI_1 }
+ metadata:
+ vf_module_name: { get_param: vf_module_name }
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ CGI_FW_SERVER_2:
+ type: OS::Nova::Server
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RII_2
+ - CGI_FW_SGI_PROTECTED_RII_DUMMY_2
+ - CGI_FW_SGI_DIRECT_RII_2
+ - CGI_FW_SGI_DIRECT_V6_RII_2
+ - CGI_FW_NIMBUS_HSL_RII_2
+ properties:
+ name: { get_param: [ cgi_fw_names,1 ] }
+ image: { get_param: cgi_fw_image_name }
+ flavor: { get_param: cgi_fw_flavor_name }
+ availability_zone: { get_attr: [CGI_FW_SERVER_2, addresses, get_param: [sgi_protected_net_dummy, 0], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ scheduler_hints: { group: {get_resource: CGI_FW_RAG } }
+ networks:
+ - port: { get_resource: CGI_FW_OAM_PROTECTED_RVMI_2 }
+ - port: { get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2 }
+ - port: { get_resource: CGI_FW_SGI_DIRECT_RVMI_2 }
+ - port: { get_resource: CGI_FW_NIMBUS_HSL_RVMI_2 }
+ metadata:
+ vf_module_name: { get_param: vf_module_name }
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+
+ contrail_vmi_subinterface:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: 'left'
+ }
+ port_tuple_refs: [{ get_param: port_name }]
+ virtual_network_refs: [{ get_param: oam_protected_net_fqdn }]
+
+outputs:
+ cgi_fw_left_vmi_id_1:
+ description: uuid of the right dummy interface
+ value: {get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1 }
+
+ cgi_fw_01_left_mac_1:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_1, addresses, get_param: sgi_protected_net_dummy, 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cgi_fw_left_vmi_id_2:
+ description: uuid of the right dummy interface
+ value: {get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2 }
+
+ cgi_fw_01_left_mac_2:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_2, addresses, get_param: sgi_protected_net_dummy, 0, "OS-EXT-IPS-MAC:mac_addr"] }
+
+ cgi_fw_st_name_fqdn:
+ description: FQDN of the FW_CGI ServiceTemplate
+ value: {list_join: [':', { get_attr: [ CGI_FW_RST_1, fq_name ] } ] }
+
+ cgi_fw_sec_grp_id:
+ description: uuid of the security group
+ value: {get_resource: CGI_FW_RSG_SI_1 }
+
+ cgi_fw_01_left_mac_3:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_2, addresses, get_param: [sgi_protected_net_dummy, 0], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+
+ cgi_fw_01_left_mac_4:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_2, addresses, get_param: [sgi_protected_net_dummy, 0, get_param: [sgi_protected_net_dummy1,1] ], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+
+ cgi_fw_01_left_mac_5:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_2, addresses, get_attr: [CGI_FW_SERVER_2, addresses, get_param: [sgi_protected_net_dummy, 0], 0, "OS-EXT-IPS-MAC:mac_addr"], 0,
+ "OS-EXT-IPS-MAC:mac_addr"] }
+
+ cgi_fw_01_left_mac_6:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_2, addresses,str_split: [',', 'string,to,split'], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+
+ cgi_fw_01_left_mac_7:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [contrail_vmi_subinterface, virtual_machine_interface_properties ] }
+
+ cgi_fw_01_left_mac_8:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [contrail_vmi_subinterface, virtual_machine_interface_allowed_address_pairs, virtual_machine_interface_allowed_address_pairs_allowed_address_pair ] }
+
+ cgi_fw_01_left_mac_9:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_2, addresses,str_split: [',', get_param: sgi_protected_net_dummy ], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+
+ cgi_fw_01_left_mac_10:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attr: [CGI_FW_SERVER_2, addresses,str_split: [',', get_attr: [contrail_vmi_subinterface,
+ virtual_machine_interface_allowed_address_pairs,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair ]], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ VMA-EXT_IPS:
+ description: IP addresses assigned to the first external network.
+ value: { get_attr: [CGI_FW_SERVER_2, {get_param: [vnf_id, {get_param: sgi_protected_interface_type}]}, ASSIGNED_IPS]}
+
+ VMA-DynamicResource:
+ description: IP addresses assigned to the first external network.
+ value: { get_attr: [{get_param: vnf_id}, {get_param: [vnf_id, {get_param: sgi_protected_interface_type}]}, ASSIGNED_IPS]}
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
new file mode 100644
index 0000000000..6e2aebc9c2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,854 @@
+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:
+ access_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: CIDR associated with tag "access".
+ default: 37.9.0.32/27
+ constraints: [
+ ]
+ oam_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default gateway IP address associated with tag "oam".
+ default: 127.0.0.1
+ int_vlan_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Optional VLAN associated with the (0th) internal network.
+ default: ''
+ constraints:
+ - pattern: '[0-9]*'
+ v4_ntp_server:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ (optional) IPV4 NTP server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+ default: 127.0.0.1
+ access_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: ID of the subnet associated with tag "access".
+ default: 050ad34a-47a3-48a9-9761-12eff354fd4f
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance.
+ default: MYvnf_name
+ access_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default gateway IP address associated with tag "access".
+ default: 37.9.0.62
+ ims_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: CDL of IMS flavor values.
+ default: LCP-1-4-15x2-4
+ constraints: [
+ ]
+ oam_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: CIDR associated with tag "oam".
+ default: 127.0.0.1/27
+ constraints: [
+ ]
+ vm_counts:
+ hidden: false
+ immutable: false
+ type: json
+ description: |
+ Maps VM type tags to the number of pairs of that type.
+ default:
+ oam: '1'
+ ims: '1'
+ oam_oam_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of IP addresses for this VMtype_NETtype combination.
+ default:
+ - 127.0.0.1
+ - 127.0.0.1
+ - 127.0.0.1
+ - 127.0.0.1
+ entry_schema:
+ type: string
+ v6_dns_server:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ (optional) IPV6 DNS server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+ default: ''
+ v6_ntp_server:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ (optional) IPV6 NTP server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+ default: ''
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF instance.
+ default: MYvnf_id
+ lcm_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair used for lifecycle management access.
+ default: ''
+ constraints: [
+ ]
+ oam_management_v6_index:
+ hidden: false
+ immutable: false
+ type: float
+ description: Index to the V6 management IP address.
+ default: 0
+ oam_management_v4_index:
+ hidden: false
+ immutable: false
+ type: float
+ description: Index to the V4 management IP address.
+ default: 1
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone name.
+ default: zone2
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone name.
+ default: zone1
+ OS::stack_name:
+ type: string
+ required: false
+ oam_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: ID of the subnet associated with tag "oam".
+ default: 37d36cb0-54b7-4fbf-bc45-4879da03a0db
+ oam_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for this VMtype.
+ default: drew34.20
+ net_types:
+ hidden: false
+ immutable: false
+ type: list
+ description: CDL of subnet tags.
+ default:
+ - oam
+ - access
+ entry_schema:
+ type: string
+ ssh_access_key:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ Optional SSH public key value for lifecycle management
+ administrative access.
+ default: ''
+ ims_access_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of IP addresses for this VMtype_NETtype combination.
+ default:
+ - 37.9.0.36
+ - 37.9.0.61
+ entry_schema:
+ type: string
+ v4_enum_server:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ (optional) IPV4 ENUM server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+ default: ''
+ oam_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: CDL of OAM flavor values.
+ default: LCP-2-4-25x2-4
+ constraints: [
+ ]
+ vnf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF Module instance.
+ default: MYvnf_module_id
+ access_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: ID of the network associated with tag "access".
+ default: 870909b5-d933-4a95-9aff-df38523c37ed
+ constraints: [
+ ]
+ backup_file:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ <cURL path>/<backup file>
+ This is only used for restore (aka "disaster recovery").
+ The value only needs to go to the OAM pair.
+ Note that there is a 255 character limit on this value.
+ default: ''
+ v6_enum_server:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ (optional) IPV6 ENUM server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+ default: ''
+ ims_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CDL of IMS VM names.
+ default:
+ - ims0
+ - ims1
+ entry_schema:
+ type: string
+ default_action:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ Default action for all VMs. This may be overridden for
+ specific VM groups, pairs or VMs via the ENV file.
+ default: install
+ constraints:
+ - valid_values:
+ - install
+ - recreate
+ - scale-in
+ - scale-out
+ - heal
+ - update
+ v4_dns_server:
+ hidden: false
+ immutable: false
+ type: string
+ description: |
+ (optional) IPV4 DNS server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+ default: 127.0.0.1/.,127.0.0.1/.
+ oam_management_v6_source:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the OAM IP parameter to use.
+ default: ''
+ oam_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: ID of the network associated with tag "oam".
+ default: 7410cc1d-c421-41b3-adef-d46cf79cb8d9
+ constraints: [
+ ]
+ oam_management_v4_source:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the OAM IP parameter to use.
+ default: oam_oam_ips
+ ims_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for this VMtype.
+ default: drew34.20
+ install_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: JSON formatted string of install config values.
+ default: ' "application_name": "5450_isc", "license_reference": "test_license",
+ "default_remote_dns_domain": "./default", "default_remote_enum_domain": "e164.arpa/default",
+ "local_dns_domain": "drew2.lucentlab.com", "local_enum_domain": "", "naming_delimiter":
+ "-", "naming_parsing": "flexible", "naming_type": "flexible3", "other_remote_dns_domain":
+ "", "other_remote_enum_domain": "", "remote_query_only": "", "snmp_community":
+ "public", "subnet_info": { "INTERNALnet0": { "interface_label": "int0", "redundancy_mode":
+ "iipm", "vlan_tag": "" }, "INTERNALnet1": { "interface_label": "int1", "redundancy_mode":
+ "iipm", "vlan_tag": "" }, "oam": { "interface_label": "oam2", "redundancy_mode":
+ "eipm_arpndp", "vlan_tag": "", "connectivity_address": "", "detect_multiplier":
+ "3", "desired_minimum_tx_interval": "300", "required_minimum_rx_interval":
+ "300" }, "access": { "interface_label": "acc4", "redundancy_mode": "eipm_arpndp",
+ "vlan_tag": "", "connectivity_address": "", "detect_multiplier": "3", "desired_minimum_tx_interval":
+ "300", "required_minimum_rx_interval": "300" } }, "system_name": "isc01",
+ "system_prefix": "isc01", "time_zone": "UTC", "use_sbpr": "yes" '
+ cloud_name_delimiter:
+ hidden: false
+ immutable: false
+ type: string
+ description: Separator for cloud resource naming.
+ default: '-'
+ oam_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CDL of OAM VM names.
+ default:
+ - oam0
+ - oam1
+ entry_schema:
+ type: string
+ vnf_module_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF module instance.
+ default: base_module
+ vm_info:
+ hidden: false
+ immutable: false
+ type: json
+ description: Provides keys into type-specific parameters and vnic info.
+ default: {
+ }
+ node_templates:
+ OAM_RRG:
+ type: org.openecomp.resource.abstract.nodes.heat.LCP-PairGroup.template
+ directives:
+ - substitutable
+ properties:
+ stack:
+ get_input: OS::stack_name
+ role: oam
+ ext_net_info:
+ get_attribute:
+ - FORMATXLATE
+ - ext_net_info
+ sec_group:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - OpenSec
+ usage_info:
+ get_attribute:
+ - FORMATXLATE
+ - usage_info
+ group_index: '0'
+ config_info:
+ '0':
+ vnic_info:
+ '0':
+ - binding_type: direct
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet0
+ - subnet: INTERNALnet0
+ label: connectivity_ip;subnet=INTERNALnet0
+ '1':
+ - binding_type: direct
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet1
+ - subnet: INTERNALnet1
+ label: connectivity_ip;subnet=INTERNALnet1
+ '2':
+ - binding_type: normal
+ count: '3'
+ subnet_count: '1'
+ allowed_subnets:
+ - oam
+ - subnet: oam
+ label: servicetype=cnfg-0;float;nitype=default;subnet=oam
+ - subnet: oam
+ label: servicetype=mi-0;float;nitype=default;subnet=oam
+ - subnet: oam
+ label: servicetype=mi-0;fixed;nitype=default;subnet=oam
+ v6_static_routes: '{}'
+ '1':
+ vnic_info:
+ '0':
+ - binding_type: direct
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet0
+ - subnet: INTERNALnet0
+ label: connectivity_ip;subnet=INTERNALnet0
+ '1':
+ - binding_type: direct
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet1
+ - subnet: INTERNALnet1
+ label: connectivity_ip;subnet=INTERNALnet1
+ '2':
+ - binding_type: normal
+ count: '1'
+ subnet_count: '1'
+ allowed_subnets:
+ - oam
+ - subnet: oam
+ label: servicetype=mi-0;fixed;nitype=default;subnet=oam
+ v6_default_gateway: ''
+ vnic_count: 3
+ v4_static_routes: '{}'
+ v4_default_gateway: oam
+ poolinfo: '["mi-0", "cnfg-0", "sns-0"]'
+ ssh_private_key:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - PrivateKey
+ service_template_filter:
+ substitute_service_template: LCP-PairGroup.templateServiceTemplate.yaml
+ default_name_base:
+ str_replace:
+ template: |
+ {"": "oam$delimiter0$delimiter"}
+ params:
+ $delimiter:
+ get_attribute:
+ - FORMATXLATE
+ - usage_info
+ - cloud_name_delimiter
+ int_net_count: 2
+ lcm_keypair:
+ get_attribute:
+ - FORMATXLATE
+ - lcm_keypair
+ current_group_count:
+ get_attribute:
+ - FORMATXLATE
+ - vm_counts
+ - oam
+ net_info_str:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - NetInfoStr
+ total_pair_count:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - TotalPairCount
+ ssh_access_key:
+ get_attribute:
+ - FORMATXLATE
+ - ssh_access_key
+ int_net_info:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - IntNetInfo
+ backup_file:
+ get_attribute:
+ - FORMATXLATE
+ - backup_file
+ default_action:
+ get_attribute:
+ - FORMATXLATE
+ - default_action
+ ssh_public_key:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - PublicKey
+ name_delimiter:
+ get_attribute:
+ - FORMATXLATE
+ - usage_info
+ - cloud_name_delimiter
+ group_id: '0'
+ install_config:
+ get_attribute:
+ - FORMATXLATE
+ - install_config
+ storage_size: 68
+ group_tag: oam
+ requirements:
+ - dependency:
+ 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:
+ - substitutable
+ properties:
+ total_pair_count:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - TotalPairCount
+ ssh_access_key:
+ get_attribute:
+ - FORMATXLATE
+ - ssh_access_key
+ stack:
+ get_input: OS::stack_name
+ int_net_info:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - IntNetInfo
+ ext_net_info:
+ get_attribute:
+ - FORMATXLATE
+ - ext_net_info
+ sec_group:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - OpenSec
+ usage_info:
+ get_attribute:
+ - FORMATXLATE
+ - usage_info
+ group_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ config_info:
+ '0':
+ vnic_info:
+ '0':
+ - binding_type: normal
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet0
+ - subnet: INTERNALnet0
+ label: connectivity_ip;subnet=INTERNALnet0
+ '1':
+ - binding_type: normal
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet1
+ - subnet: INTERNALnet1
+ label: connectivity_ip;subnet=INTERNALnet1
+ '2':
+ - binding_type: normal
+ count: '1'
+ subnet_count: '1'
+ allowed_subnets:
+ - access
+ - subnet: access
+ label: servicetype=ims-0;float;nitype=published;subnet=access
+ v6_static_routes: '{}'
+ '1':
+ vnic_info:
+ '0':
+ - binding_type: normal
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet0
+ - subnet: INTERNALnet0
+ label: connectivity_ip;subnet=INTERNALnet0
+ '1':
+ - binding_type: normal
+ count: '0'
+ subnet_count: '1'
+ allowed_subnets:
+ - INTERNALnet1
+ - subnet: INTERNALnet1
+ label: connectivity_ip;subnet=INTERNALnet1
+ '2':
+ - binding_type: normal
+ count: '1'
+ subnet_count: '1'
+ allowed_subnets:
+ - access
+ - subnet: access
+ label: servicetype=ims-1;float;nitype=published;subnet=access
+ v6_default_gateway: ''
+ vnic_count: 3
+ v4_static_routes: '{ "ims-0": {"subnet": "access", "dest_subnet": "2.2.2.0",
+ "mask": "255.255.255.0"}, "ims-1": {"subnet": "access", "dest_subnet":
+ "2.2.2.0", "mask": "255.255.255.0"} }'
+ v4_default_gateway: access
+ poolinfo: '["ims-0", "ims-1", "gos-0"]'
+ ssh_private_key:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - PrivateKey
+ default_action:
+ get_attribute:
+ - FORMATXLATE
+ - default_action
+ ssh_public_key:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - PublicKey
+ name_delimiter:
+ get_attribute:
+ - FORMATXLATE
+ - usage_info
+ - cloud_name_delimiter
+ service_template_filter:
+ substitute_service_template: LCP-PairGroup.templateServiceTemplate.yaml
+ count:
+ get_attribute:
+ - FORMATXLATE
+ - vm_counts
+ - ims
+ mandatory: false
+ default_name_base:
+ str_replace:
+ template:
+ concat:
+ - '{"": "ims$delimiter'
+ - get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ - |
+ $delimiter"}
+ params:
+ $delimiter:
+ get_attribute:
+ - FORMATXLATE
+ - usage_info
+ - cloud_name_delimiter
+ int_net_count: 2
+ group_id: '1'
+ install_config:
+ get_attribute:
+ - FORMATXLATE
+ - install_config
+ lcm_keypair:
+ get_attribute:
+ - FORMATXLATE
+ - lcm_keypair
+ current_group_count:
+ get_attribute:
+ - FORMATXLATE
+ - vm_counts
+ - ims
+ storage_size: 4
+ group_tag: ims
+ net_info_str:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - NetInfoStr
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: NOKIA-LCP-Base
+ relationship: tosca.relationships.DependsOn
+ groups:
+ base_mso_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base_mso.yml
+ description: |
+ Example HOT file illustrating elasticity groups.
+ members:
+ - OAM_RRG
+ - FORMATXLATE
+ - NOKIA-LCP-Base
+ - IMS_RRG
+ outputs:
+ oam_management_v4_address:
+ description: IPV4 of the active MI service.
+ value:
+ get_input:
+ - get_input: oam_management_v4_source
+ - get_input: oam_management_v4_index
+ internal_net_info:
+ description: |
+ Internal network IDs, CIDR etc. for use by modular additions to
+ this stack.
+ value:
+ get_attribute:
+ - NOKIA-LCP-Base
+ - IntNetInfo
+ oam_management_v6_address:
+ description: IPV6 of the active MI service.
+ value:
+ get_input:
+ - get_input: oam_management_v6_source
+ - get_input: oam_management_v6_index \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-ATTGRP.template.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-ATTGRP.template.yaml
new file mode 100644
index 0000000000..33518514a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-ATTGRP.template.yaml
@@ -0,0 +1,352 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Generate group_info for a single VM type.
+
+parameters:
+
+ vmtype_index:
+ type: number
+ description: Index of the VM type.
+
+ vmtype_list:
+ type: comma_delimited_list
+ description: List of VM type tags.
+
+ vm_info:
+ type: json
+ description: |
+ Provides keys into type-specific parameters and vnic info.
+ default: {}
+
+ availability_zones:
+ type: comma_delimited_list
+ description: CDL of availability zones.
+
+ flavors:
+ type: json
+ description: Maps VM type tags to the flavor ID for that type.
+ default: {}
+
+ name_lists:
+ type: json
+ description: Maps VM type tags to the list of VM names for that type.
+
+outputs:
+
+ # The approach used here limits the number of pairs per
+ # group that are possible but also limts the number of
+ # openstack resources used just to generate this data
+ # (vs. use of a per-pair resource group).
+
+ vmtype_info:
+ description: Group_info for one VM group.
+ value: {
+ "defaults": {
+ "flavor": {
+ "0": {get_param: [flavors, {get_param: [vmtype_list, {get_param: vmtype_index}]}]},
+ "1": {get_param: [flavors, {get_param: [vmtype_list, {get_param: vmtype_index}]}]},
+ }
+ },
+ "0": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "0", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_000"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "0", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_001"]]}
+ }
+ },
+ "1": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "1", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_010"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "1", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_011"]]}
+ }
+ },
+ "2": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "2", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_020"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "2", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_021"]]}
+ }
+ },
+ "3": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "3", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_030"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "3", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_031"]]}
+ }
+ },
+ "4": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "4", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_040"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "4", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_041"]]}
+ }
+ },
+ "5": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "5", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_050"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "5", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_051"]]}
+ }
+ },
+ "6": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "6", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_060"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "6", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_061"]]}
+ }
+ },
+ "7": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "7", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_070"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "7", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_071"]]}
+ }
+ },
+ "8": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "8", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_080"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "8", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_081"]]}
+ }
+ },
+ "9": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "9", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_090"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {ge: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "9", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_091"]]}
+ }
+ },
+ "10": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "10", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_100"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "10", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_101"]]}
+ }
+ },
+ "11": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "11", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_110"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "11", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_111"]]}
+ }
+ },
+ "12": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "12", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_120"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "12", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_121"]]}
+ }
+ },
+ "13": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "13", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_130"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "13", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_131"]]}
+ }
+ },
+ "14": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "14", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_140"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "14", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_141"]]}
+ }
+ },
+ "15": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "15", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_150"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "15", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_151"]]}
+ }
+ },
+ "16": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "16", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_160"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "16", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_161"]]}
+ }
+ },
+ "17": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "17", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_170"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "17", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_171"]]}
+ }
+ },
+ "18": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "18", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_180"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "18", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_181"]]}
+ }
+ },
+ "19": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "19", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_190"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "19", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_191"]]}
+ }
+ },
+ "20": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "20", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_200"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "20", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_201"]]}
+ }
+ },
+ "21": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "21", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_210"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "21", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_211"]]}
+ }
+ },
+ "22": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "22", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_220"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "22", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_221"]]}
+ }
+ },
+ "23": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "23", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_230"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "23", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_231"]]}
+ }
+ },
+ "24": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "24", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_240"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "24", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_241"]]}
+ }
+ },
+ "25": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "25", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_250"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "25", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_251"]]}
+ }
+ },
+ "26": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "26", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_260"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "26", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_261"]]}
+ }
+ },
+ "27": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "27", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_270"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "27", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_271"]]}
+ }
+ },
+ "28": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "28", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_280"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "28", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_281"]]}
+ }
+ },
+ "29": {
+ "0": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "29", "0", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_290"]]}
+ },
+ "1": {
+ "name": {get_param: [name_lists, {get_param: [vmtype_list, {get_param: vmtype_index}]}, {get_param: [vm_info, {get_param: [vmtype_list, {get_param: vmtype_index}]}, "29", "1", "index"]}]},
+ "storage_name": {list_join: ["", [{get_param: [vmtype_list, {get_param: vmtype_index}]}, "_volume_291"]]}
+ }
+ }
+ }
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Base.template.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Base.template.yaml
new file mode 100644
index 0000000000..9e0f294840
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Base.template.yaml
@@ -0,0 +1,382 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Base resources needed for all LCP based vNFs.
+
+parameters:
+
+ default_prefix:
+ type: json
+ description: |
+ Default prefix for resources. The first key is the override
+ value from the ENV file. If it is empty the result will be
+ the default value. Otherwise the result will be empty.
+
+ ext_net_info:
+ type: json
+ description: |
+ Maps the network strings used in this HOT file
+ to network info for the target cloud.
+
+ ext_net_list:
+ type: comma_delimited_list
+ description: List of applicable subnet tags.
+
+ int_net_count:
+ type: number
+ description: Number of internal networks.
+ constraints:
+ - allowed_values: [1, 2]
+
+ # The value of this parameter should not be overridden.
+ int_net1_label:
+ type: json
+ description: |
+ Map the number of internal networks to an internal net1 label
+ or the empty string.
+ default:
+ {"1": "", "2": "INTERNALnet1"}
+
+ # This parameter should always be defaulted.
+ int_net2key:
+ type: json
+ description: |
+ Maps the empty string to "default" and any other string to "".
+ default: {"": "default"}
+
+ # This parameter should always be defaulted.
+ int_net2count:
+ type: json
+ description: |
+ Used to determine whether to create an internal network resource.
+ Key'd first by the number of internal networks.
+ Then by the internal network in question (0 or 1).
+ Then by int_net2key(the provided resource UUID value).
+ default: {
+ "0": {},
+ "1": {
+ "0": {"": 0, "default": 1},
+ "1": {"": 0, "default": 0}
+ },
+ "2": {
+ "0": {"": 0, "default": 1},
+ "1": {"": 0, "default": 1}
+ }
+ }
+
+ # This parameter should always be defaulted.
+ sec_chk:
+ type: json
+ description: Used to determine how many security groups to create (0 or 1).
+ default: {
+ "step1": {"": "EMPTY"},
+ "step2": {"EMPTY": 1, "": 0}
+ }
+
+ security_group:
+ type: string
+ description: |
+ (optional) security group to use instead of generating one.
+ Because this is optional we can't use a constraint check to
+ verify that it is a security group ID ("" would fail that test).
+ default: ""
+
+ total_vm_pairs:
+ type: string
+ description: |
+ This string will evaluate to the number of PairGroups in the VNF.
+
+resources:
+
+ NOKIA-LCP-OpenSec:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: [sec_chk, "step2", {get_param: [sec_chk, "step1", {get_param: security_group}]}]}
+ resource_def:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: |
+ Open security settings.
+ This assumes that security is handled internal to the guest.
+ name:
+ str_replace:
+ template: $prefixOpenSecGroup
+ params:
+ $prefix: {get_param: [default_prefix, ""]}
+ rules:
+ - {direction: ingress, ethertype: IPv4}
+ - {direction: egress, ethertype: IPv4}
+ - {direction: ingress, ethertype: IPv6}
+ - {direction: egress, ethertype: IPv6}
+
+ NOKIA-LCP-Keypair:
+ type: OS::Nova::KeyPair
+ properties:
+ name:
+ str_replace:
+ template: $prefixInternalKey
+ params:
+ $prefix: {get_param: [default_prefix, ""]}
+ save_private_key: True
+
+ NOKIA-LCP-InternalNet0:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: [int_net2count, {str_replace: {template: "$str", params: {$str: {get_param: int_net_count}}}}, "0", {get_param: [int_net2key, {get_param: [ext_net_info, "INTERNALnet0", "id"]}]}]}
+ resource_def:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: $prefixIntNet0
+ params:
+ $prefix: {get_param: [default_prefix, ""]}
+ admin_state_up: True
+ shared: False
+
+ NOKIA-LCP-InternalNet1:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: [int_net2count, {str_replace: {template: "$str", params: {$str: {get_param: int_net_count}}}}, "0", {get_param: [int_net2key, {get_param: [ext_net_info, "INTERNALnet1", "id"]}]}]}
+ resource_def:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: $prefixIntNet1
+ params:
+ $prefix: {get_param: [default_prefix, ""]}
+ admin_state_up: True
+ shared: False
+
+ # The CIDR usage is really 169.254.0.0/16 but
+ # we don't want the cloud to choose any IP addresses
+ # that might also be assigned by the algorithms
+ # used by the vNF to determine internal IP addresses.
+ NOKIA-LCP-InternalSubNet0:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: [int_net2count, {str_replace: {template: "$str", params: {$str: {get_param: int_net_count}}}}, "0", {get_param: [int_net2key, {get_param: [ext_net_info, "INTERNALnet0", "subnet_id"]}]}]}
+ resource_def:
+ type: OS::Neutron::Subnet
+ properties:
+ network:
+ str_replace:
+ template: $gen$prov
+ params:
+ $gen: {get_attr: [NOKIA-LCP-InternalNet0, refs, 0]}
+ $prov: {get_param: [ext_net_info, "INTERNALnet0", "id"]}
+ cidr: "169.254.5.0/24"
+ enable_dhcp: False
+
+ NOKIA-LCP-InternalSubNet1:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: [int_net2count, {str_replace: {template: "$str", params: {$str: {get_param: int_net_count}}}}, "0", {get_param: [int_net2key, {get_param: [ext_net_info, "INTERNALnet1", "subnet_id"]}]}]}
+ resource_def:
+ type: OS::Neutron::Subnet
+ properties:
+ network:
+ str_replace:
+ template: $gen$prov
+ params:
+ $gen: {get_attr: [NOKIA-LCP-InternalNet1, refs, 0]}
+ $prov: {get_param: [ext_net_info, "INTERNALnet1", "id"]}
+ cidr: "169.254.9.0/24"
+ enable_dhcp: False
+
+outputs:
+
+ # Note that the generated and given security groups are mutually exclusive.
+ OpenSec:
+ description: Open security group.
+ value:
+ str_replace:
+ template: $gen$given
+ params:
+ $gen: {get_attr: [NOKIA-LCP-OpenSec, refs, 0]}
+ $given: {get_param: security_group}
+
+ PrivateKey:
+ description: Private SSH key for pre-install intra-VM communication.
+ value: {get_attr: [NOKIA-LCP-Keypair, private_key]}
+
+ PublicKey:
+ description: Public SSH key for pre-install intra-VM communication.
+ value: {get_attr: [NOKIA-LCP-Keypair, public_key]}
+
+ TotalPairCount:
+ description: |
+ This string will evaluate to the number of PairGroups in the VNF.
+ value: {get_param: total_vm_pairs}
+
+ IntNetInfo:
+ description: Internal network attributes.
+ value: {
+ "INTERNALnet0": {
+ "id": {
+ str_replace: {
+ template: "$gen$prov",
+ params: {
+ $gen: {get_attr: [NOKIA-LCP-InternalNet0, refs, 0]},
+ $prov: {get_param: [ext_net_info, "INTERNALnet0", "id"]}
+ }
+ }
+ },
+ "subnet_id": {
+ str_replace: {
+ template: "$gen$prov",
+ params: {
+ $gen: {get_attr: [NOKIA-LCP-InternalSubNet0, refs, 0]},
+ $prov: {get_param: [ext_net_info, "INTERNALnet0", "subnet_id"]}
+ }
+ }
+ },
+ "cidr": "169.254.0.0/16",
+ "default_gateway": ""
+ },
+ "INTERNALnet1": {
+ "id": {
+ str_replace: {
+ template: "$gen$prov",
+ params: {
+ $gen: {get_attr: [NOKIA-LCP-InternalNet1, refs, 0]},
+ $prov: {get_param: [ext_net_info, "INTERNALnet1", "id"]}
+ }
+ }
+ },
+ "subnet_id": {
+ str_replace: {
+ template: "$gen$prov",
+ params: {
+ $gen: {get_attr: [NOKIA-LCP-InternalSubNet1, refs, 0]},
+ $prov: {get_param: [ext_net_info, "INTERNALnet1", "subnet_id"]}
+ }
+ }
+ },
+ "cidr": "169.254.0.0/16",
+ "default_gateway": ""
+ }
+ }
+
+ NetInfoStr:
+ description: Per-subnet information in string format.
+ value:
+ str_replace:
+ template: |
+ {
+ "subnet_list": "INTERNALnet0 $intnet1 $tag00 $tag01 $tag02 $tag03 $tag04 $tag05 $tag06 $tag07 $tag08 $tag09 $tag10 $tag11",
+ "INTERNALnet0": {
+ "id": "$gennet0$provnet0",
+ "subnet_id": "$gensubnet0$provsubnet0",
+ "cidr": "169.254.0.0/16",
+ "default_gateway": ""
+ },
+ "INTERNALnet1": {
+ "id": "$gennet1$provnet1",
+ "subnet_id": "$gensubnet1$provsubnet1",
+ "cidr": "169.254.0.0/16",
+ "default_gateway": ""
+ },
+ "$tag00": {
+ "cidr": "$cidr00",
+ "default_gateway": "$gw00"
+ },
+ "$tag01": {
+ "cidr": "$cidr01",
+ "default_gateway": "$gw01"
+ },
+ "$tag02": {
+ "cidr": "$cidr02",
+ "default_gateway": "$gw02"
+ },
+ "$tag03": {
+ "cidr": "$cidr03",
+ "default_gateway": "$gw03"
+ },
+ "$tag04": {
+ "cidr": "$cidr04",
+ "default_gateway": "$gw04"
+ },
+ "$tag05": {
+ "cidr": "$cidr05",
+ "default_gateway": "$gw05"
+ },
+ "$tag06": {
+ "cidr": "$cidr06",
+ "default_gateway": "$gw06"
+ },
+ "$tag07": {
+ "cidr": "$cidr07",
+ "default_gateway": "$gw07"
+ },
+ "$tag08": {
+ "cidr": "$cidr08",
+ "default_gateway": "$gw08"
+ },
+ "$tag09": {
+ "cidr": "$cidr09",
+ "default_gateway": "$gw09"
+ },
+ "$tag10": {
+ "cidr": "$cidr10",
+ "default_gateway": "$gw10"
+ },
+ "$tag11": {
+ "cidr": "$cidr11",
+ "default_gateway": "$gw11"
+ }
+ }
+ params:
+ $intnet1: {get_param: [int_net1_label, {str_replace: {template: "$val", params: {$val: {get_param: int_net_count}}}}]}
+ $gennet0: {get_attr: [NOKIA-LCP-InternalNet0, refs, 0]}
+ $provnet0: {get_param: [ext_net_info, "INTERNALnet0", "id"]}
+ $gensubnet0: {get_attr: [NOKIA-LCP-InternalSubNet0, refs, 0]}
+ $provsubnet0: {get_param: [ext_net_info, "INTERNALnet0", "subnet_id"]}
+ $gennet1: {get_attr: [NOKIA-LCP-InternalNet1, refs, 0]}
+ $provnet1: {get_param: [ext_net_info, "INTERNALnet1", "id"]}
+ $gensubnet1: {get_attr: [NOKIA-LCP-InternalSubNet1, refs, 0]}
+ $provsubnet1: {get_param: [ext_net_info, "INTERNALnet1", "subnet_id"]}
+ $tag00: {get_param: [ext_net_list, 0]}
+ $cidr00: {get_param: [ext_net_info, {get_param: [ext_net_list, 0]}, cidr]}
+ $gw00: {get_param: [ext_net_info, {get_param: [ext_net_list, 0]}, default_gateway]}
+ $tag01: {get_param: [ext_net_list, 1]}
+ $cidr01: {get_param: [ext_net_info, {get_param: [ext_net_list, 1]}, cidr]}
+ $gw01: {get_param: [ext_net_info, {get_param: [ext_net_list, 1]}, default_gateway]}
+ $tag02: {get_param: [ext_net_list, 2]}
+ $cidr02: {get_param: [ext_net_info, {get_param: [ext_net_list, 2]}, cidr]}
+ $gw02: {get_param: [ext_net_info, {get_param: [ext_net_list, 2]}, default_gateway]}
+ $tag03: {get_param: [ext_net_list, 3]}
+ $cidr03: {get_param: [ext_net_info, {get_param: [ext_net_list, 3]}, cidr]}
+ $gw03: {get_param: [ext_net_info, {get_param: [ext_net_list, 3]}, default_gateway]}
+ $tag04: {get_param: [ext_net_list, 4]}
+ $cidr04: {get_param: [ext_net_info, {get_param: [ext_net_list, 4]}, cidr]}
+ $gw04: {get_param: [ext_net_info, {get_param: [ext_net_list, 4]}, default_gateway]}
+ $tag05: {get_param: [ext_net_list, 5]}
+ $cidr05: {get_param: [ext_net_info, {get_param: [ext_net_list, 5]}, cidr]}
+ $gw05: {get_param: [ext_net_info, {get_param: [ext_net_list, 5]}, default_gateway]}
+ $tag06: {get_param: [ext_net_list, 6]}
+ $cidr06: {get_param: [ext_net_info, {get_param: [ext_net_list, 6]}, cidr]}
+ $gw06: {get_param: [ext_net_info, {get_param: [ext_net_list, 6]}, default_gateway]}
+ $tag07: {get_param: [ext_net_list, 7]}
+ $cidr07: {get_param: [ext_net_info, {get_param: [ext_net_list, 7]}, cidr]}
+ $gw07: {get_param: [ext_net_info, {get_param: [ext_net_list, 7]}, default_gateway]}
+ $tag08: {get_param: [ext_net_list, 8]}
+ $cidr08: {get_param: [ext_net_info, {get_param: [ext_net_list, 8]}, cidr]}
+ $gw08: {get_param: [ext_net_info, {get_param: [ext_net_list, 8]}, default_gateway]}
+ $tag09: {get_param: [ext_net_list, 9]}
+ $cidr09: {get_param: [ext_net_info, {get_param: [ext_net_list, 9]}, cidr]}
+ $gw09: {get_param: [ext_net_info, {get_param: [ext_net_list, 9]}, default_gateway]}
+ $tag10: {get_param: [ext_net_list, 10]}
+ $cidr10: {get_param: [ext_net_info, {get_param: [ext_net_list, 10]}, cidr]}
+ $gw10: {get_param: [ext_net_info, {get_param: [ext_net_list, 10]}, default_gateway]}
+ $tag11: {get_param: [ext_net_list, 11]}
+ $cidr11: {get_param: [ext_net_info, {get_param: [ext_net_list, 11]}, cidr]}
+ $gw11: {get_param: [ext_net_info, {get_param: [ext_net_list, 11]}, default_gateway]}
+
+ Version:
+ description: |
+ Template file version number. This should be updated
+ each time a non-comment change is made to this file.
+ value: K1
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-OPENECOMP.template.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-OPENECOMP.template.yaml
new file mode 100644
index 0000000000..7ac9a58da6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-OPENECOMP.template.yaml
@@ -0,0 +1,364 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Template to take OPENECOMP input parameters and produce outputs
+ in the desired format for the underlying LCP HOT template files.
+
+parameters:
+
+ backup_file:
+ type: string
+ description: |
+ <cURL path>/<backup file>
+ This is only used for restore (aka "disaster recovery").
+ The value only needs to go to the OAM pair.
+ Note that there is a 255 character limit on this value.
+
+ default_action:
+ type: string
+ description: |
+ Default action for all VMs. This may be overridden for
+ specific VM groups, pairs or VMs via the ENV file.
+
+ cloud_name_delimiter:
+ type: string
+ description: |
+ Separator used between parts of a cloud resource name
+ (e.g. between the stack ID and the rest of the name).
+
+ install_config:
+ type: string
+ description: JSON formatted string of install config values.
+
+ int_vlan_id:
+ type: string
+ description: Optional VLAN ID associated with the internal network.
+ default: ""
+
+ lcm_keypair:
+ type: string
+ description: Keypair used for lifecycle management access.
+ constraints:
+ - custom_constraint: nova.keypair
+
+ ssh_access_key:
+ type: string
+ description: |
+ Optional SSH public key value for lifecycle management
+ administrative access.
+
+ v4_dns_server:
+ type: string
+ description: (optional) IPV4 DNS server.
+ default: ""
+
+ v6_dns_server:
+ type: string
+ description: (optional) IPV6 DNS server.
+ default: ""
+
+ v4_enum_server:
+ type: string
+ description: (optional) IPV4 ENUM server.
+ default: ""
+
+ v6_enum_server:
+ type: string
+ description: (optional) IPV6 ENUM server.
+ default: ""
+
+ v4_ntp_server:
+ type: string
+ description: (optional) IPV4 NTP server.
+ default: ""
+
+ v6_ntp_server:
+ type: string
+ description: (optional) IPV6 NTP server.
+ default: ""
+
+ net_types:
+ type: comma_delimited_list
+ description: CDL of subnet tags.
+ default: []
+
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance.
+ default: ""
+
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance.
+ default: ""
+
+ vnf_module_id:
+ type: string
+ description: Unique ID for this VNF Module instance.
+ default: ""
+
+ vnf_module_name:
+ type: string
+ description: Unique name for this VNF module instance.
+ default: ""
+
+ net_ids:
+ type: json
+ description: Map NET types to the list of NET IDs.
+
+ subnet_ids:
+ type: json
+ description: Map NET types to the list of subnet IDs.
+
+ cidrs:
+ type: json
+ description: Map NET types to the list of CIDR values.
+
+ default_gateways:
+ type: json
+ description: Map NET types to the list of default gateways.
+
+ vmtype_count:
+ type: number
+ description: Number of supported VM types.
+ default: 1
+
+ vmtype_list:
+ type: comma_delimited_list
+ description: List of VM type tags.
+ default: []
+
+ vm_counts:
+ type: json
+ description: |
+ Maps VM type tags to the number of pairs of that type.
+ default: {}
+
+ vm_info:
+ type: json
+ description: Provides keys into type-specific parameters and vnic info.
+ default: {}
+
+ availability_zones:
+ type: comma_delimited_list
+ description: CDL of availability zones.
+
+ images:
+ type: json
+ description: Maps VM type tags to the image ID for that type.
+ default: {}
+
+ flavors:
+ type: json
+ description: Maps VM type tags to the flavor ID for that type.
+ default: {}
+
+ ip_lists:
+ type: json
+ description: Maps IP list parameter names to the list.
+
+ name_lists:
+ type: json
+ description: Maps VM type tags to the list of VM names for that type.
+
+ # This parameter should always be defaulted.
+ count_str_list:
+ type: comma_delimited_list
+ description: List of 2 digit list indexes.
+ default: ["00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24"]
+
+ # This parameter should always be defaulted.
+ null2zero:
+ type: json
+ default: {"": "0"}
+
+resources:
+
+ GROUPINFO:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: vmtype_count}
+ resource_def:
+ type: LCP-ATTGRP.template.yaml
+ properties:
+ vmtype_index: '%index%'
+ vmtype_list: {get_param: vmtype_list}
+ vm_info: {get_param: vm_info}
+ availability_zones: {get_param: availability_zones}
+ flavors: {get_param: flavors}
+ name_lists: {get_param: name_lists}
+
+ GROUPXLATE:
+ depends_on:
+ - GROUPINFO
+ type: LCP-XlateL2J.template.yaml
+ properties:
+ info: {get_attr: [GROUPINFO, vmtype_info]}
+
+outputs:
+
+ backup_file:
+ description: |
+ <cURL path>/<backup file>
+ This is only used for restore (aka "disaster recovery").
+ The value only needs to go to the OAM pair.
+ Note that there is a 255 character limit on this value.
+ value: {get_param: backup_file}
+
+ default_action:
+ description: |
+ Default action for all VMs. This may be overridden for
+ specific VM groups, pairs or VMs via the ENV file.
+ value: {get_param: default_action}
+
+ install_config:
+ description: JSON formatted string of install config values.
+ value: {get_param: install_config}
+
+ lcm_keypair:
+ description: Keypair used for lifecycle management access.
+ value: {get_param: lcm_keypair}
+
+ ssh_access_key:
+ description: |
+ Optional SSH public key value for lifecycle management
+ administrative access.
+ value: {get_param: ssh_access_key}
+
+ ext_net_info:
+ description: External network info.
+ value:
+ str_replace:
+ template: {str_replace: { template: "{ $val }", params: {
+ $val: {list_join: [',', {repeat: {template: "\"$tag<%idx%>\": { \"id\": \"$net<%idx%>\", \"subnet_id\": \"$subnet<%idx%>\", \"cidr\": \"$cidr<%idx%>\", \"default_gateway\": \"$defgw<%idx%>\" }", for_each: {<%idx%>: {get_param: count_str_list}}}}]} }}}
+ params:
+ $tag00: {get_param: [net_types, 0]}
+ $net00: {get_param: [net_ids, {get_param: [net_types, 0]}]}
+ $subnet00: {get_param: [subnet_ids, {get_param: [net_types, 0]}]}
+ $cidr00: {get_param: [cidrs, {get_param: [net_types, 0]}]}
+ $defgw00: {get_param: [default_gateways, {get_param: [net_types, 0]}]}
+ $tag01: {get_param: [net_types, 1]}
+ $net01: {get_param: [net_ids, {get_param: [net_types, 1]}]}
+ $subnet01: {get_param: [subnet_ids, {get_param: [net_types, 1]}]}
+ $cidr01: {get_param: [cidrs, {get_param: [net_types, 1]}]}
+ $defgw01: {get_param: [default_gateways, {get_param: [net_types, 1]}]}
+ $tag02: {get_param: [net_types, 2]}
+ $net02: {get_param: [net_ids, {get_param: [net_types, 2]}]}
+ $subnet02: {get_param: [subnet_ids, {get_param: [net_types, 2]}]}
+ $cidr02: {get_param: [cidrs, {get_param: [net_types, 2]}]}
+ $defgw02: {get_param: [default_gateways, {get_param: [net_types, 2]}]}
+ $tag03: {get_param: [net_types, 3]}
+ $net03: {get_param: [net_ids, {get_param: [net_types, 3]}]}
+ $subnet03: {get_param: [subnet_ids, {get_param: [net_types, 3]}]}
+ $cidr03: {get_param: [cidrs, {get_param: [net_types, 3]}]}
+ $defgw03: {get_param: [default_gateways, {get_param: [net_types, 3]}]}
+ $tag04: {get_param: [net_types, 4]}
+ $net04: {get_param: [net_ids, {get_param: [net_types, 4]}]}
+ $subnet04: {get_param: [subnet_ids, {get_param: [net_types, 4]}]}
+ $cidr04: {get_param: [cidrs, {get_param: [net_types, 4]}]}
+ $defgw04: {get_param: [default_gateways, {get_param: [net_types, 4]}]}
+ $tag05: {get_param: [net_types, 5]}
+ $net05: {get_param: [net_ids, {get_param: [net_types, 5]}]}
+ $subnet05: {get_param: [subnet_ids, {get_param: [net_types, 5]}]}
+ $cidr05: {get_param: [cidrs, {get_param: [net_types, 5]}]}
+ $defgw05: {get_param: [default_gateways, {get_param: [net_types, 5]}]}
+
+ total_vm_pairs:
+ description: |
+ String that will evaluate to the total number of VM pairs.
+ value:
+ str_replace:
+ template: {list_join: ['+', {repeat: {template: "$v<%vidx%>$z<%vidx%>",
+for_each: {<%vidx%>: {get_param: count_str_list}}}}]}
+ params:
+ $v00: {get_param: [vm_counts, {get_param: [vmtype_list, 0]}]}
+ $z00: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 0]}]}]}
+ $v01: {get_param: [vm_counts, {get_param: [vmtype_list, 1]}]}
+ $z01: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 1]}]}]}
+ $v02: {get_param: [vm_counts, {get_param: [vmtype_list, 2]}]}
+ $z02: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 2]}]}]}
+ $v03: {get_param: [vm_counts, {get_param: [vmtype_list, 3]}]}
+ $z03: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 3]}]}]}
+ $v04: {get_param: [vm_counts, {get_param: [vmtype_list, 4]}]}
+ $z04: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 4]}]}]}
+ $v05: {get_param: [vm_counts, {get_param: [vmtype_list, 5]}]}
+ $z05: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 5]}]}]}
+ $v06: {get_param: [vm_counts, {get_param: [vmtype_list, 6]}]}
+ $z06: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 6]}]}]}
+ $v07: {get_param: [vm_counts, {get_param: [vmtype_list, 7]}]}
+ $z07: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 7]}]}]}
+ $v08: {get_param: [vm_counts, {get_param: [vmtype_list, 8]}]}
+ $z08: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 8]}]}]}
+ $v09: {get_param: [vm_counts, {get_param: [vmtype_list, 9]}]}
+ $z09: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 9]}]}]}
+ $v10: {get_param: [vm_counts, {get_param: [vmtype_list, 10]}]}
+ $z10: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 10]}]}]}
+ $v11: {get_param: [vm_counts, {get_param: [vmtype_list, 11]}]}
+ $z11: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 11]}]}]}
+ $v12: {get_param: [vm_counts, {get_param: [vmtype_list, 12]}]}
+ $z12: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 12]}]}]}
+ $v13: {get_param: [vm_counts, {get_param: [vmtype_list, 13]}]}
+ $z13: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 13]}]}]}
+ $v14: {get_param: [vm_counts, {get_param: [vmtype_list, 14]}]}
+ $z14: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 14]}]}]}
+ $v15: {get_param: [vm_counts, {get_param: [vmtype_list, 15]}]}
+ $z15: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 15]}]}]}
+ $v16: {get_param: [vm_counts, {get_param: [vmtype_list, 16]}]}
+ $z16: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 16]}]}]}
+ $v17: {get_param: [vm_counts, {get_param: [vmtype_list, 17]}]}
+ $z17: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 17]}]}]}
+ $v18: {get_param: [vm_counts, {get_param: [vmtype_list, 18]}]}
+ $z18: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 18]}]}]}
+ $v19: {get_param: [vm_counts, {get_param: [vmtype_list, 19]}]}
+ $z19: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 19]}]}]}
+ $v20: {get_param: [vm_counts, {get_param: [vmtype_list, 20]}]}
+ $z20: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 20]}]}]}
+ $v21: {get_param: [vm_counts, {get_param: [vmtype_list, 21]}]}
+ $z21: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 21]}]}]}
+ $v22: {get_param: [vm_counts, {get_param: [vmtype_list, 22]}]}
+ $z22: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 22]}]}]}
+ $v23: {get_param: [vm_counts, {get_param: [vmtype_list, 23]}]}
+ $z23: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 23]}]}]}
+ $v24: {get_param: [vm_counts, {get_param: [vmtype_list, 24]}]}
+ $z24: {get_param: [null2zero, {get_param: [vm_counts, {get_param: [vmtype_list, 24]}]}]}
+
+ vm_counts:
+ description: |
+ Maps VM type tags to the number of pairs of that type.
+ value: {get_param: vm_counts}
+
+ usage_info:
+ description: Usage info JSON map.
+ value: {
+ "int_vlan_id": {get_param: int_vlan_id},
+ "cloud_name_delimiter": {get_param: cloud_name_delimiter},
+ "defaults": {
+ "image": {
+ "0": {get_param: [images, {get_param: [vmtype_list, 0]}]},
+ "1": {get_param: [images, {get_param: [vmtype_list, 0]}]}
+ },
+ availability_zone: {
+ "0": {get_param: [availability_zones, 0]},
+ "1": {get_param: [availability_zones, 1]}
+ },
+ storage_zone: {
+ "0": "nova",
+ "1": "nova"
+ },
+ "binding_type": "normal"
+ },
+ "v4_dns_server": {get_param: v4_dns_server},
+ "v6_dns_server": {get_param: v6_dns_server},
+ "v4_enum_server": {get_param: v4_enum_server},
+ "v6_enum_server": {get_param: v6_enum_server},
+ "v4_ntp_server": {get_param: v4_ntp_server},
+ "v6_ntp_server": {get_param: v6_ntp_server},
+ "vnf_id": {get_param: vnf_id},
+ "vnf_name": {get_param: vnf_name},
+ "vnf_module_id": {get_param: vnf_module_id},
+ "vnf_module_name": {get_param: vnf_module_name},
+ "ATT_ip_lists": {get_param: ip_lists},
+ "ATT_vm_info": {get_param: vm_info},
+ "group_info": {get_attr: [GROUPXLATE, jout]}
+ }
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-PairGroup.template.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-PairGroup.template.yaml
new file mode 100644
index 0000000000..224165b9d8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-PairGroup.template.yaml
@@ -0,0 +1,687 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Template for a member of an elastic collection of VMgroups.
+ That is, this template creates the resources needed for one
+ VMgroup...one unit of elasticity of the specified type.
+
+parameters:
+
+ backup_file:
+ type: string
+ description: |
+ <cURL path>/<backup file>
+ This is only used for restore (aka "disaster recovery") and
+ only referenced on OAM-A.
+ default: ""
+
+ default_action:
+ type: string
+ description: |
+ Default action for all VMs. This can be overridden on a
+ per-VM group, pair or VM basis via the ENV file.
+ constraints:
+ - allowed_values:
+ - "install"
+ - "recreate"
+ - "scale-in"
+ - "scale-out"
+ - "scale-up"
+ - "scale-down"
+ - "heal"
+ - "update"
+ default: "install"
+
+ # This parameter should always be defaulted.
+ chk4override:
+ type: json
+ description: |
+ Used to set a string value to either a default from a json
+ map (keyed by "default") or to a VM member_index keyed override
+ value in the same map.
+ default: {"": "defaults"}
+
+ config_info:
+ type: json
+ description: Service configuration and network layout.
+ default: {}
+
+ # This parameter should always be defaulted.
+ default_names:
+ type: json
+ description: |
+ Default names for resources. The first key is the override
+ value from the ENV file. If it is empty the result will be
+ the default value map. Otherwise the result will be empty.
+ default: {
+ "": {
+ "storage": {
+ "0": "STORAGE_VOL0",
+ "1": "STORAGE_VOL1"
+ },
+ "drdb": {
+ "0": "DRBD_VOL0",
+ "1": "DRBD_VOL1",
+ },
+ "vmname": {
+ "0": "VM0",
+ "1": "VM1"
+ }
+ }
+ }
+
+ default_name_base:
+ type: json
+ description: |
+ Default name base for resources. The first key is the override
+ value from the ENV file. If it is empty the result will be
+ the default value. Otherwise the result will be empty.
+
+ ext_net_info:
+ type: json
+ description: External network info. Keyed by subnet tag.
+
+ group_id:
+ type: string
+ description: ID number of the elastic group this pair is a member of.
+
+ group_index:
+ type: string
+ description: Index of the VM pair within the elastic group.
+
+ group_tag:
+ type: string
+ description: Key into "usage_info" for members of this elastic group.
+
+ install_config:
+ type: string
+ description: JSON formatted string of install config values.
+
+ int_net_count:
+ type: string
+ description: Number of internal networks.
+
+ # This parameter should always be defaulted.
+ int_net_map:
+ type: json
+ description: |
+ Maps the number of internal networks to the resource string
+ used to get the first external vnic IP addresses.
+ default: {
+ "1": "resource.1",
+ "2": "resource.2"
+ }
+
+ int_net_info:
+ type: json
+ description: Internal network info. Keyed by INTERNALnet[0|1].
+
+ lcm_keypair:
+ type: string
+ description: Lifecycle management access key pair.
+ constraints:
+ - custom_constraint: nova.keypair
+ default: ""
+
+ current_group_count:
+ type: string
+ description: |
+ Current VM pair count within the elastic group.
+
+ certificate:
+ type: string
+ description: |
+ Certificate to use when accessing data from from secure URLs.
+ default: ""
+
+ name_delimiter:
+ type: string
+ description: Flexname name prefix/suffix delimiter.
+ default: "-"
+
+ net_info_str:
+ type: string
+ description: |
+ JSON formatted string with all network info.
+ This is redundant with int_net_info and ext_net_info except
+ in Kilo there is no way to convert json to string for
+ output as a personality file.
+
+ role:
+ type: string
+ description: VM role during LCM activities.
+ constraints:
+ - allowed_values: ["oam", "other"]
+ default: "other"
+
+ sec_group:
+ type: string
+ description: All-open security group UUID.
+
+ ssh_public_key:
+ type: string
+ description: Public SSH key for VM to VM communication in this system.
+
+ ssh_private_key:
+ type: string
+ description: Private SSH key for VM to VM communication in this system.
+ hidden: True
+
+ ssh_access_key:
+ type: string
+ description: Public SSH key for external access.
+ default: ""
+
+ stack:
+ type: string
+ description: Stack name.
+ constraints:
+ - allowed_pattern: "^[a-zA-Z0-9][a-zA-Z0-9_-]*$"
+
+ storage_size:
+ type: number
+ description: Size of /storage in GB.
+ default: 4
+
+ total_pair_count:
+ type: string
+ description: |
+ This string will evaluate to the number of PairGroups in the VNF.
+
+ usage_info:
+ type: json
+ description: |
+ Per-VM/vNIC data for members of this elastic group.
+
+ # This parameter should always be defaulted.
+ validation_info:
+ type: json
+ description: |
+ Dummy data to work around Oopenstack template validation issue
+ https://bugs.launchpad.net/heat/+bug/1559807
+ The two layers of "defaults" keys supports use of
+ chk4override at two levels.
+ default: {
+ "defaults": {
+ "defaults": {
+ "image": "dummyImage",
+ }
+ }
+ }
+
+resources:
+
+ NOKIA-LCP-RandomA:
+ type: OS::Heat::RandomString
+ properties:
+ length: 512
+
+ NOKIA-LCP-Block-StorageA:
+ type: OS::Cinder::Volume
+ properties:
+ description: Used for VM /storage partition.
+ name:
+ str_replace:
+ template: $stk$delim$base$override$default
+ params:
+ $base: {get_param: [default_name_base, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "storage_name"]}]}
+ $default: {get_param: [default_names, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "storage_name"]}, "storage", "0"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "storage_name"]}
+ $delim: {get_param: name_delimiter}
+ $stk: {get_param: stack}
+ size: {get_param: storage_size}
+ availability_zone:
+ str_replace:
+ template: $override$default
+ params:
+ $default: {get_param: [usage_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "storage_zone"]}]}, "storage_zone", "0"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "storage_zone"]}
+
+ NOKIA-LCP-BlockAttachA:
+ type: OS::Cinder::VolumeAttachment
+ depends_on:
+ - NOKIA-LCP-VMA
+ - NOKIA-LCP-Block-StorageA
+ properties:
+ instance_uuid: {get_resource: NOKIA-LCP-VMA}
+ volume_id: {get_resource: NOKIA-LCP-Block-StorageA}
+
+ NOKIA-LCP-VMportGroupA:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: [config_info, vnic_count]}
+ resource_def:
+ type: LCP-Port.template.yaml
+ properties:
+ default_name_base:
+ str_replace:
+ template: |
+ {"": "$base$vm"}
+ params:
+ $base: {get_param: [default_name_base, ""]}
+ $vm: {get_param: [default_names, "", "vmname", "0"]}
+ group_index: {get_param: group_index}
+ vm_index: "0"
+ vnic_index: '%index%'
+ config_info: {get_param: config_info}
+ ext_net_info: {get_param: ext_net_info}
+ int_net_info: {get_param: int_net_info}
+ group_tag: {get_param: group_tag}
+ group_id: {get_param: group_id}
+ name_delimiter: {get_param: name_delimiter}
+ open_sec_group: {get_param: sec_group}
+ stack: {get_param: stack}
+ usage_info: {get_param: usage_info}
+
+ NOKIA-LCP-VMA:
+ type: OS::Nova::Server
+ depends_on:
+ - NOKIA-LCP-Block-StorageA
+ - NOKIA-LCP-RandomA
+ - NOKIA-LCP-VMportGroupA
+ properties:
+ name:
+ str_replace:
+ template: $stk$delim$base$override$default
+ params:
+ $base: {get_param: [default_name_base, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "name"]}]}
+ $default: {get_param: [default_names, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "name"]}, "vmname", "0"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "name"]}
+ $delim: {get_param: name_delimiter}
+ $stk: {get_param: stack}
+ availability_zone:
+ str_replace:
+ template: $override$default
+ params:
+ $default: {get_param: [usage_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "availability_zone"]}]}, "availability_zone", "0"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "availability_zone"]}
+ image:
+ str_replace:
+ template: $override$default$validate
+ params:
+ $default: {get_param: [usage_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, "overrides", "image", "0"]}]}, "image", "0"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, "overrides", "image", "0"]}
+ $validate: {get_param: [validation_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, "overrides", "image", "0"]}]}, {get_param: [chk4override, {get_param: [usage_info, "defaults", "image", "0"]}]}, "image"]}
+ image_update_policy: REBUILD
+ flavor:
+ str_replace:
+ template: $override$default
+ params:
+ $default: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "flavor"]}]}, "flavor", "0"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "flavor"]}
+ networks: [{get_attr: [NOKIA-LCP-VMportGroupA, PortEntry]}]
+ key_name: {get_param: lcm_keypair}
+ # Note that the flavor default and override values are included
+ # in CLDsetup.json to force a VM rebuild (instead of replace or resize)
+ # if the VM flavor is changed.
+ personality: {
+ /storage/cloud/.ssh/SSHpubkey: {get_param: ssh_public_key},
+ /storage/cloud/.ssh/SSHprivkey: {get_param: ssh_private_key},
+ /storage/cloud/CLDsetup_data.json: {
+ str_replace: {
+ template: "{\n
+ \t\"drbd_uuid\": \"\",\n
+ \t\"flavor_default\": \"$flavor_default\",\n
+ \t\"flavor_override\": \"$flavor_override\",\n
+ \t\"int_vlan_id\": \"$int_vlan_id\",\n
+ \t\"random\": \"$random\",\n
+ \t\"SSHpubkeyFile\": \"/storage/cloud/.ssh/SSHpubkey\",\n
+ \t\"SSHprivkeyFile\": \"/storage/cloud/.ssh/SSHprivkey\",\n
+ \t\"SSHaccessKey\": \"$acckey\",\n
+ \t\"stk\": \"$stk\",\n
+ \t\"uuid_storage\": \"$uuid_storage\"\n
+ }",
+ params: {
+ $acckey: {get_param: ssh_access_key},
+ $flavor_default: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "flavor"]}]}, "flavor", "0"]},
+ $flavor_override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "flavor"]},
+ $int_vlan_id: {get_param: [usage_info, int_vlan_id]},
+ $random: {get_resource: NOKIA-LCP-RandomA},
+ $stk: {get_param: stack},
+ $uuid_storage: {get_resource: NOKIA-LCP-Block-StorageA}
+ }
+ }
+ },
+ /storage/cloud/discover/GlobalConfig.json: {
+ str_replace: {
+ template: "
+ {
+ \"v4_dns_server\": \"$v4dns\",
+ \"v6_dns_server\": \"$v6dns\",
+ \"v4_enum_server\": \"$v4enum\",
+ \"v6_enum_server\": \"$v6enum\",
+ \"v4_ntp_server\": \"$v4ntp\",
+ \"v6_ntp_server\": \"$v6ntp\",
+ $cfg
+ }
+ ",
+ params: {
+ $v4dns: {get_param: [usage_info, v4_dns_server]},
+ $v6dns: {get_param: [usage_info, v6_dns_server]},
+ $v4enum: {get_param: [usage_info, v4_enum_server]},
+ $v6enum: {get_param: [usage_info, v6_enum_serve]},
+ $v4ntp: {get_param: [usage_info, v4_ntp_server]},
+ $v6ntp: {get_param: [usage_info, v6_ntp_server]},
+ $cfg: {get_param: install_config}
+ }
+ }
+ },
+ /storage/cloud/discover/VMinfo.json: {
+ str_replace: {
+ template: "
+ {\n
+ \"vm_suffix\": \"$base$override$default\",\n
+ \"service_config\": $servcfg,\n
+ \"v4_default_gateway\": \"$v4gateway\",\n
+ \"v6_default_gateway\": \"$v6gateway\",\n
+ \"v4_static_routes\": $v4static_routes,\n
+ \"v6_static_routes\": $v6static_routes,\n
+ \"IPinfo\": [\n$ipinfo\n],\n
+ \"Netinfo\": $netinfo\n
+ }\n
+ ",
+ params: {
+ $base: {get_param: [default_name_base, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", name]}]},
+ $default: {get_param: [default_names, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", name]}, "vmname", "0"]},
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", name]},
+ $servcfg: {get_param: [config_info, poolinfo]},
+ $v4gateway: {get_param: [config_info, v4_default_gateway]},
+ $v6gateway: {get_param: [config_info, v6_default_gateway]},
+ $v4static_routes: {get_param: [config_info, v4_static_routes]},
+ $v6static_routes: {get_param: [config_info, v6_static_routes]},
+ $ipinfo: {list_join: [',', {get_attr: [NOKIA-LCP-VMportGroupA, PortIpInfo]}]},
+ $netinfo: {get_param: net_info_str}
+ }
+ }
+ },
+ }
+ config_drive: "true"
+ metadata: {
+ action: {
+ str_replace: {
+ template: "$pairside$vm",
+ params: {
+ $pairside: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", "action"]}]}, "action", "0"]},
+ $vm: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "0", action]}
+ }
+ }
+ },
+ backup_file: {get_param: backup_file},
+ default_action: {get_param: default_action},
+ group_type: "pair",
+ group_index: {get_param: group_index},
+ current_group_count: {get_param: current_group_count},
+ certificate: {get_param: certificate},
+ member_index: "0",
+ side_action: {get_param: [usage_info, defaults, action, "0"]},
+ total_pair_count: {get_param: total_pair_count},
+ vnf_id: {get_param: [usage_info, vnf_id]},
+ vnf_name: {get_param: [usage_info, vnf_name]},
+ vnf_module_id: {get_param: [usage_info, vnf_module_id]},
+ vnf_module_name: {get_param: [usage_info, vnf_module_name]},
+ vnf_role: {get_param: group_tag}
+ }
+ user_data:
+ str_replace:
+ template: |
+ #!/bin/bash
+
+ tmp=$(/opt/LSS/sbin/CLDbase "pair" "$tag" "$grp_id" "$grp_index" "0" "$role")
+ ret=$?
+
+ if (( ret != 0 )); then
+ echo "CLDbase failed, ret=${ret}: ${tmp}"
+ exit 1
+ fi
+ exit 0
+ params:
+ $grp_id: {get_param: group_id}
+ $grp_index: {get_param: group_index}
+ $role: {get_param: role}
+ $tag: {get_param: group_tag}
+
+ NOKIA-LCP-RandomB:
+ type: OS::Heat::RandomString
+ properties:
+ length: 512
+
+ NOKIA-LCP-Block-StorageB:
+ type: OS::Cinder::Volume
+ properties:
+ description: Used for VM /storage partition.
+ name:
+ str_replace:
+ template: $stk$delim$base$override$default
+ params:
+ $base: {get_param: [default_name_base, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "storage_name"]}]}
+ $default: {get_param: [default_names, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "storage_name"]}, "storage", "1"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "storage_name"]}
+ $delim: {get_param: name_delimiter}
+ $stk: {get_param: stack}
+ size: {get_param: storage_size}
+ availability_zone:
+ str_replace:
+ template: $override$default
+ params:
+ $default: {get_param: [usage_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "storage_zone"]}]}, "storage_zone", "1"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "storage_zone"]}
+
+ NOKIA-LCP-BlockAttachB:
+ type: OS::Cinder::VolumeAttachment
+ depends_on:
+ - NOKIA-LCP-VMB
+ - NOKIA-LCP-Block-StorageB
+ properties:
+ instance_uuid: {get_resource: NOKIA-LCP-VMB}
+ volume_id: {get_resource: NOKIA-LCP-Block-StorageB}
+
+ NOKIA-LCP-VMportGroupB:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: {get_param: [config_info, vnic_count]}
+ resource_def:
+ type: LCP-Port.template.yaml
+ properties:
+ default_name_base:
+ str_replace:
+ template: |
+ {"": "$base$vm"}
+ params:
+ $base: {get_param: [default_name_base, ""]}
+ $vm: {get_param: [default_names, "", "vmname", "1"]}
+ group_index: {get_param: group_index}
+ vm_index: "1"
+ vnic_index: '%index%'
+ config_info: {get_param: config_info}
+ ext_net_info: {get_param: ext_net_info}
+ int_net_info: {get_param: int_net_info}
+ group_tag: {get_param: group_tag}
+ group_id: {get_param: group_id}
+ name_delimiter: {get_param: name_delimiter}
+ open_sec_group: {get_param: sec_group}
+ stack: {get_param: stack}
+ usage_info: {get_param: usage_info}
+
+ NOKIA-LCP-VMB:
+ type: OS::Nova::Server
+ depends_on:
+ - NOKIA-LCP-Block-StorageB
+ - NOKIA-LCP-RandomB
+ - NOKIA-LCP-VMportGroupB
+ properties:
+ name:
+ str_replace:
+ template: $stk$delim$base$override$default
+ params:
+ $base: {get_param: [default_name_base, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "name"]}]}
+ $default: {get_param: [default_names, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "name"]}, "vmname", "1"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "name"]}
+ $delim: {get_param: name_delimiter}
+ $stk: {get_param: stack}
+ availability_zone:
+ str_replace:
+ template: $override$default
+ params:
+ $default: {get_param: [usage_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "availability_zone"]}]}, "availability_zone", "1"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "availability_zone"]}
+ image:
+ str_replace:
+ template: $override$default$validate
+ params:
+ $default: {get_param: [usage_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, "overrides", "image", "1"]}]}, "image", "1"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, "overrides", "image", "1"]}
+ $validate: {get_param: [validation_info, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, "overrides", "image", "1"]}]}, {get_param: [chk4override, {get_param: [usage_info, "defaults", "image", "1"]}]}, "image"]}
+ image_update_policy: REBUILD
+ flavor:
+ str_replace:
+ template: $override$default
+ params:
+ $default: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "flavor"]}]}, "flavor", "1"]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "flavor"]}
+ key_name: {get_param: lcm_keypair}
+ networks: [{get_attr: [NOKIA-LCP-VMportGroupB, PortEntry]}]
+ # Note that the flavor default and override values are included
+ # in CLDsetup.json to force a VM rebuild (instead of replace or resize)
+ # if the VM flavor is changed.
+ personality: {
+ /storage/cloud/.ssh/SSHpubkey: {get_param: ssh_public_key},
+ /storage/cloud/.ssh/SSHprivkey: {get_param: ssh_private_key},
+ /storage/cloud/CLDsetup_data.json: {
+ str_replace: {
+ template: "{\n
+ \t\"drbd_uuid\": \"\",\n
+ \t\"flavor_default\": \"$flavor_default\",\n
+ \t\"flavor_override\": \"$flavor_override\",\n
+ \t\"int_vlan_id\": \"$int_vlan_id\",\n
+ \t\"random\": \"$random\",\n
+ \t\"SSHpubkeyFile\": \"/storage/cloud/.ssh/SSHpubkey\",\n
+ \t\"SSHprivkeyFile\": \"/storage/cloud/.ssh/SSHprivkey\",\n
+ \t\"SSHaccessKey\": \"$acckey\",\n
+ \t\"stk\": \"$stk\",\n
+ \t\"uuid_storage\": \"$uuid_storage\"\n
+ }",
+ params: {
+ $acckey: {get_param: ssh_access_key},
+ $flavor_default: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "flavor"]}]}, "flavor", "1"]},
+ $flavor_override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "flavor"]},
+ $int_vlan_id: {get_param: [usage_info, int_vlan_id]},
+ $random: {get_resource: NOKIA-LCP-RandomB},
+ $stk: {get_param: stack},
+ $uuid_storage: {get_resource: NOKIA-LCP-Block-StorageB}
+ }
+ }
+ },
+ /storage/cloud/discover/GlobalConfig.json: {
+ str_replace: {
+ template: "
+ {
+ \"v4_dns_server\": \"$v4dns\",
+ \"v6_dns_server\": \"$v6dns\",
+ \"v4_enum_server\": \"$v4enum\",
+ \"v6_enum_server\": \"$v6enum\",
+ \"v4_ntp_server\": \"$v4ntp\",
+ \"v6_ntp_server\": \"$v6ntp\",
+ $cfg
+ }
+ ",
+ params: {
+ $v4dns: {get_param: [usage_info, v4_dns_server]},
+ $v6dns: {get_param: [usage_info, v6_dns_server]},
+ $v4enum: {get_param: [usage_info, v4_enum_server]},
+ $v6enum: {get_param: [usage_info, v6_enum_serve]},
+ $v4ntp: {get_param: [usage_info, v4_ntp_server]},
+ $v6ntp: {get_param: [usage_info, v6_ntp_server]},
+ $cfg: {get_param: install_config}
+ }
+ }
+ },
+ /storage/cloud/discover/VMinfo.json: {
+ str_replace: {
+ template: "
+ {\n
+ \"vm_suffix\": \"$base$override$default\",
+ \"service_config\": $servcfg,\n
+ \"v4_default_gateway\": \"$v4gateway\",\n
+ \"v6_default_gateway\": \"$v6gateway\",\n
+ \"v4_static_routes\": $v4static_routes,\n
+ \"v6_static_routes\": $v6static_routes,\n
+ \"IPinfo\": [\n$ipinfo\n],\n
+ \"Netinfo\": $netinfo\n
+ }\n
+ ",
+ params: {
+ $base: {get_param: [default_name_base, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", name]}]},
+ $default: {get_param: [default_names, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", name]}, "vmname", "1"]},
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", name]},
+ $servcfg: {get_param: [config_info, poolinfo]},
+ $v4gateway: {get_param: [config_info, v4_default_gateway]},
+ $v6gateway: {get_param: [config_info, v6_default_gateway]},
+ $v4static_routes: {get_param: [config_info, v4_static_routes]},
+ $v6static_routes: {get_param: [config_info, v6_static_routes]},
+ $ipinfo: {list_join: [',', {get_attr: [NOKIA-LCP-VMportGroupB, PortIpInfo]}]},
+ $netinfo: {get_param: net_info_str}
+ }
+ }
+ },
+ }
+ config_drive: "true"
+ metadata: {
+ action: {
+ str_replace: {
+ template: "$pairside$vm",
+ params: {
+ $pairside: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: [chk4override, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", "action"]}]}, "action", "1"]},
+ $vm: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, "1", action]}
+ }
+ }
+ },
+ backup_file: {get_param: backup_file},
+ default_action: {get_param: default_action},
+ group_type: "pair",
+ group_index: {get_param: group_index},
+ current_group_count: {get_param: current_group_count},
+ certificate: {get_param: certificate},
+ member_index: "1",
+ side_action: {get_param: [usage_info, defaults, action, "1"]},
+ total_pair_count: {get_param: total_pair_count},
+ vnf_id: {get_param: [usage_info, vnf_id]},
+ vnf_name: {get_param: [usage_info, vnf_name]},
+ vnf_module_id: {get_param: [usage_info, vnf_module_id]},
+ vnf_module_name: {get_param: [usage_info, vnf_module_name]},
+ vnf_role: {get_param: group_tag}
+ }
+ user_data:
+ str_replace:
+ template: |
+ #!/bin/bash
+
+ tmp=$(/opt/LSS/sbin/CLDbase "pair" "$tag" "$grp_id" "$grp_index" "1" "$role")
+ ret=$?
+
+ if (( ret != 0 )); then
+ echo "CLDbase failed, ret=${ret}: ${tmp}"
+ exit 1
+ fi
+ exit 0
+ params:
+ $grp_id: {get_param: group_id}
+ $grp_index: {get_param: group_index}
+ $role: {get_param: role}
+ $tag: {get_param: group_tag}
+
+outputs:
+
+ Version:
+ description: |
+ Template file version number. This should be updated
+ each time a non-comment change is made to this file.
+ value: K1
+
+ VMA-EXT_IPS:
+ description: IP addresses assigned to the first external network.
+ value: {get_attr: [NOKIA-LCP-VMportGroupA, {get_param: [int_net_map, {get_param: int_net_count}]}, ASSIGNED_IPS]}
+
+ VMB-EXT_IPS:
+ description: IP addresses assigned to the first external network.
+ value: {get_attr: [NOKIA-LCP-VMportGroupB, {get_param: [int_net_map, {get_param: int_net_count}]}, ASSIGNED_IPS]}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Port.template.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Port.template.yaml
new file mode 100644
index 0000000000..ebaadc444a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Port.template.yaml
@@ -0,0 +1,719 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Wrapper used to create an OS::Neutron::Port for a particular
+ vNIC for each VM in a group.
+
+parameters:
+
+ # This parameter should not be overridden.
+ abe2ip:
+ type: json
+ description: |
+ Step 1 maps "anything but empty" (abe) to an empty string
+ and an empty string to "no_comma".
+ Step 2 maps an empty string to: "ip_address": "
+ (i.e. part of ip_address json entry).
+ Step 3 maps an empty string to the closing quote of the json entry.
+ default: {
+ "step1": {"": "no_comma"},
+ "step2": {"": ", \"ip_address\": \""},
+ "step3": {"": "\""}
+ }
+
+
+ # This parameter should not be overridden.
+ getkey:
+ type: json
+ description: |
+ Maps the empty string to "EMPTY" and anything else to "".
+ This is used in generating PortIpInfo where we only want
+ to produce output for lines in the ENV that are actually
+ populated (checking if subnet is set is good enough).
+ default: {"": "EMPTY"}
+
+ # This parameter should not be overridden.
+ checkit:
+ type: json
+ description: |
+ Used to get the str_replace template lines for PortIpInfo.
+ Combined with getkey use of this map will result in only
+ including populated lines in the output.
+ default: {
+ "EMPTY": {},
+ "": {
+ "0": '{"label":"$label00", "subnet":"$snet00", "ip":"$rip00$arip00"},',
+ "1": '{"label":"$label01", "subnet":"$snet01", "ip":"$rip01$arip01"},',
+ "2": '{"label":"$label02", "subnet":"$snet02", "ip":"$rip02$arip02"},',
+ "3": '{"label":"$label03", "subnet":"$snet03", "ip":"$rip03$arip03"},',
+ "4": '{"label":"$label04", "subnet":"$snet04", "ip":"$rip04$arip04"},',
+ "5": '{"label":"$label05", "subnet":"$snet05", "ip":"$rip05$arip05"},',
+ "6": '{"label":"$label06", "subnet":"$snet06", "ip":"$rip06$arip06"},',
+ "7": '{"label":"$label07", "subnet":"$snet07", "ip":"$rip07$arip07"},',
+ "8": '{"label":"$label08", "subnet":"$snet08", "ip":"$rip08$arip08"},',
+ "9": '{"label":"$label09", "subnet":"$snet09", "ip":"$rip09$arip09"},',
+ "10": '{"label":"$label10", "subnet":"$snet10", "ip":"$rip10$arip10"},',
+ "11": '{"label":"$label11", "subnet":"$snet11", "ip":"$rip11$arip11"},',
+ "12": '{"label":"$label12", "subnet":"$snet12", "ip":"$rip12$arip12"},',
+ "13": '{"label":"$label13", "subnet":"$snet13", "ip":"$rip13$arip13"},',
+ "14": '{"label":"$label14", "subnet":"$snet14", "ip":"$rip14$arip14"},',
+ "15": '{"label":"$label15", "subnet":"$snet15", "ip":"$rip15$arip15"},',
+ "16": '{"label":"$label16", "subnet":"$snet16", "ip":"$rip16$arip16"},',
+ "17": '{"label":"$label17", "subnet":"$snet17", "ip":"$rip17$arip17"},',
+ "18": '{"label":"$label18", "subnet":"$snet18", "ip":"$rip18$arip18"},',
+ "19": '{"label":"$label19", "subnet":"$snet19", "ip":"$rip19$arip19"},',
+ "20": '{"label":"$label20", "subnet":"$snet20", "ip":"$rip20$arip20"},',
+ "21": '{"label":"$label21", "subnet":"$snet21", "ip":"$rip21$arip21"},',
+ "22": '{"label":"$label22", "subnet":"$snet22", "ip":"$rip22$arip22"},',
+ "23": '{"label":"$label23", "subnet":"$snet23", "ip":"$rip23$arip23"},',
+ "24": '{"label":"$label24", "subnet":"$snet24", "ip":"$rip24$arip24"},',
+ "25": '{"label":"$label25", "subnet":"$snet25", "ip":"$rip25$arip25"},'
+ }
+ }
+
+ config_info:
+ type: json
+ description: VM configuration info.
+
+ # This parameter should not be overridden.
+ default_name:
+ type: json
+ description: |
+ Default port names. The first key is the override value from
+ the ENV file. The second key is the vnic index.
+ Note that if the override value is empty the default name is
+ found. If the override value is not empty the empty string is found.
+ default: {
+ "": {
+ "0": "eth0", "1": "eth1", "2": "eth2", "3": "eth3", "4": "eth4",
+ "5": "eth5", "6": "eth6", "7": "eth7", "8": "eth8", "9": "eth9",
+ "10": "eth10", "11": "eth11", "12": "eth12", "13": "eth13",
+ "14": "eth14", "15": "eth15"
+ }
+ }
+
+ default_name_base:
+ type: json
+ description: |
+ Default base name for resources. The first key is the override
+ value from the ENV file. If it is empty the result will be
+ the default value. Otherwise the result will be empty.
+
+ group_index:
+ type: string
+ description: Index of the VM pair within the elastic group.
+
+ group_tag:
+ type: string
+ description: Key into "usage_info" for members of this elastic group.
+
+ group_id:
+ type: string
+ description: ID number of the elastic group this pair is a member of.
+
+ ext_net_info:
+ type: json
+ description: Information about all provider subnets.
+
+ int_net_info:
+ type: json
+ description: Information about internal networks.
+
+ name_delimiter:
+ type: string
+ description: Flexname name prefix/suffix delimiter.
+
+ open_sec_group:
+ type: string
+ description: UUID of the open security group.
+
+ override_chk:
+ type: json
+ description: Maps anything but empty to empty and empty to "defaults".
+ default: {"": "defaults"}
+
+ # This parameter should not be overridden.
+ int_net_chk:
+ type: json
+ description: |
+ Index in with the subnet ID from the external network
+ and then with the desired subnet ID. If the internal networks
+ are provider networks then the result will be "". Otherwise
+ it will be the desired subnet ID which can be used to key
+ into int_net_info to get the UUID.
+ default: {
+ "": {"INTERNALnet0": "INTERNALnet0", "INTERNALnet1": "INTERNALnet1"},
+ }
+
+ stack:
+ type: string
+ description: Stack name.
+ constraints:
+ - allowed_pattern: "^[a-zA-Z0-9][a-zA-Z0-9_-]*$"
+
+ usage_info:
+ type: json
+ description: Per-vnic/per-VM network usage info (e.g. IP address values).
+
+ vm_index:
+ type: string
+ description: VM group member index.
+
+ vnic_index:
+ type: string
+ description: VNIC number within the VM.
+
+resources:
+
+ # When looking at access into the config_info per_VM vnic_info attribute,
+ # keep in mind that the 0th entry holds the count of requested IPs so
+ # the "0th" IP is in entry 1 and so on.
+
+ # Get CIDRs of all subnets to generate the allowed_address_pairs list.
+ #
+ # Note that there will only be at most one internal subnet on
+ # any VNIC (and there won't be an external at the same time).
+ NOKIA-LCP-CIDRxlate:
+ type: LCP-Xlate.template.yaml
+ properties:
+ info:
+ str_replace:
+ template: |
+ {
+ "0": {"ip_address": "$int000$ext000"},
+ "1": {"ip_address": "$ext001"},
+ "2": {"ip_address": "$ext002"},
+ "3": {"ip_address": "$ext003"},
+ "4": {"ip_address": "$ext004"},
+ "5": {"ip_address": "$ext005"},
+ "6": {"ip_address": "$ext006"},
+ "7": {"ip_address": "$ext007"},
+ "8": {"ip_address": "$ext008"},
+ "9": {"ip_address": "$ext009"},
+ "10": {"ip_address": "$ext010"},
+ "11": {"ip_address": "$ext011"},
+ "12": {"ip_address": "$ext012"},
+ "13": {"ip_address": "$ext013"},
+ "14": {"ip_address": "$ext014"},
+ "15": {"ip_address": "$ext015"},
+ "16": {"ip_address": "$ext016"},
+ "17": {"ip_address": "$ext017"},
+ "18": {"ip_address": "$ext018"},
+ "19": {"ip_address": "$ext019"},
+ "20": {"ip_address": "$ext020"},
+ "21": {"ip_address": "$ext021"},
+ "22": {"ip_address": "$ext022"},
+ "23": {"ip_address": "$ext023"},
+ "24": {"ip_address": "$ext024"},
+ "25": {"ip_address": "$ext025"}
+ }
+ params:
+ $int000: {get_param: [int_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 0]}, cidr]}
+ $ext000: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 0]}, cidr]}
+ $ext001: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 1]}, cidr]}
+ $ext002: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 2]}, cidr]}
+ $ext003: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 3]}, cidr]}
+ $ext004: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 4]}, cidr]}
+ $ext005: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 5]}, cidr]}
+ $ext006: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 6]}, cidr]}
+ $ext007: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 7]}, cidr]}
+ $ext008: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 8]}, cidr]}
+ $ext009: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 9]}, cidr]}
+ $ext010: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 10]}, cidr]}
+ $ext011: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 11]}, cidr]}
+ $ext012: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 12]}, cidr]}
+ $ext013: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 13]}, cidr]}
+ $ext014: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 14]}, cidr]}
+ $ext015: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 15]}, cidr]}
+ $ext016: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 16]}, cidr]}
+ $ext017: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 17]}, cidr]}
+ $ext018: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 18]}, cidr]}
+ $ext019: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 19]}, cidr]}
+ $ext020: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 20]}, cidr]}
+ $ext021: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 21]}, cidr]}
+ $ext022: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 22]}, cidr]}
+ $ext023: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 23]}, cidr]}
+ $ext024: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 24]}, cidr]}
+ $ext025: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, allowed_subnets, 25]}, cidr]}
+
+ # Generate a JSON list keyed by "0", ..., "7" and then use
+ # the Xlate functionality to grab the VNIC-specific "count"
+ # entries in it to use as the fixed IP list for the port.
+ #
+ # Note that there will only be at most one internal IP on
+ # any VNIC (and there won't be an external at the same time).
+ NOKIA-LCP-IPxlate:
+ type: LCP-Xlate.template.yaml
+ properties:
+ info:
+ str_replace:
+ template: |
+ {
+ "0": {"subnet": "$sni$sn00" $com00$acom00$ip00$aip00$cq00$acq00},
+ "1": {"subnet": "$sn01" $com01$acom01$ip01$aip01$cq01$acq01},
+ "2": {"subnet": "$sn02" $com02$acom02$ip02$aip02$cq02$acq02},
+ "3": {"subnet": "$sn03" $com03$acom03$ip03$aip03$cq03$acq03},
+ "4": {"subnet": "$sn04" $com04$acom04$ip04$aip04$cq04$acq04},
+ "5": {"subnet": "$sn05" $com05$acom05$ip05$aip05$cq05$acq05},
+ "6": {"subnet": "$sn06" $com06$acom06$ip06$aip06$cq06$acq06},
+ "7": {"subnet": "$sn07" $com07$acom07$ip07$aip07$cq07$acq07},
+ "8": {"subnet": "$sn08" $com08$acom08$ip08$aip08$cq08$acq08},
+ "9": {"subnet": "$sn09" $com09$acom09$ip09$aip09$cq09$acq09},
+ "10": {"subnet": "$sn10" $com10$acom10$ip10$aip10$cq10$acq10},
+ "11": {"subnet": "$sn11" $com11$acom11$ip11$aip11$cq11$acq11},
+ "12": {"subnet": "$sn12" $com12$acom12$ip12$aip12$cq12$acq12},
+ "13": {"subnet": "$sn13" $com13$acom13$ip13$aip13$cq13$acq13},
+ "14": {"subnet": "$sn14" $com14$acom14$ip14$aip14$cq14$acq14},
+ "15": {"subnet": "$sn15" $com15$acom15$ip15$aip15$cq15$acq15},
+ "16": {"subnet": "$sn16" $com16$acom16$ip16$aip16$cq16$acq16},
+ "17": {"subnet": "$sn17" $com17$acom17$ip17$aip17$cq17$acq17},
+ "18": {"subnet": "$sn18" $com18$acom18$ip18$aip18$cq18$acq18},
+ "19": {"subnet": "$sn19" $com19$acom19$ip19$aip19$cq19$acq19},
+ "20": {"subnet": "$sn20" $com20$acom20$ip20$aip20$cq20$acq20},
+ "21": {"subnet": "$sn21" $com21$acom21$ip21$aip21$cq21$acq21},
+ "22": {"subnet": "$sn22" $com22$acom22$ip22$aip22$cq22$acq22},
+ "23": {"subnet": "$sn23" $com23$acom23$ip23$aip23$cq23$acq23},
+ "24": {"subnet": "$sn24" $com24$acom24$ip24$aip24$cq24$acq24},
+ "25": {"subnet": "$sn25" $com25$acom25$ip25$aip25$cq25$acq25}
+ }
+ params:
+ $sni: {get_param: [int_net_info, {get_param: [int_net_chk, {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 1, "subnet"]}, subnet_id]}, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 1, "subnet"]}]}, subnet_id]}
+ $sn00: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "subnet"]}, subnet_id]}
+ $com00: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}]}]}]}
+ $acom00: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}, "source"]}]}]}
+ $ip00: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}]}
+ $aip00: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}, "index"]}]}
+ $cq00: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}]}]}]}
+ $acq00: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}]}]}]}
+ $sn01: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "subnet"]}, subnet_id]}
+ $com01: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}]}]}]}
+ $acom01: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}, "source"]}]}]}
+ $ip01: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}]}
+ $aip01: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}, "index"]}]}
+ $cq01: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}]}]}]}
+ $acq01: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}]}]}]}
+ $sn02: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "subnet"]}, subnet_id]}
+ $com02: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}]}]}]}
+ $acom02: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}, "source"]}]}]}
+ $ip02: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}]}
+ $aip02: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}, "index"]}]}
+ $cq02: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}]}]}]}
+ $acq02: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}]}]}]}
+ $sn03: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "subnet"]}, subnet_id]}
+ $com03: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}]}]}]}
+ $acom03: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}, "source"]}]}]}
+ $ip03: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}]}
+ $aip03: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}, "index"]}]}
+ $cq03: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}]}]}]}
+ $acq03: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}]}]}]}
+ $sn04: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "subnet"]}, subnet_id]}
+ $com04: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}]}]}]}
+ $acom04: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}, "source"]}]}]}
+ $ip04: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}]}
+ $aip04: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}, "index"]}]}
+ $cq04: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}]}]}]}
+ $acq04: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}]}]}]}
+ $sn05: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "subnet"]}, subnet_id]}
+ $com05: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}]}]}]}
+ $acom05: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}, "source"]}]}]}
+ $ip05: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}]}
+ $aip05: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}, "index"]}]}
+ $cq05: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}]}]}]}
+ $acq05: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}]}]}]}
+ $sn06: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "subnet"]}, subnet_id]}
+ $com06: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}]}]}]}
+ $acom06: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}, "source"]}]}]}
+ $ip06: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}]}
+ $aip06: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}, "index"]}]}
+ $cq06: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}]}]}]}
+ $acq06: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}]}]}]}
+ $sn07: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "subnet"]}, subnet_id]}
+ $com07: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}]}]}]}
+ $acom07: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}, "source"]}]}]}
+ $ip07: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}]}
+ $aip07: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}, "index"]}]}
+ $cq07: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}]}]}]}
+ $acq07: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}]}]}]}
+ $sn08: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "subnet"]}, subnet_id]}
+ $com08: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}]}]}]}
+ $acom08: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}, "source"]}]}]}
+ $ip08: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}]}
+ $aip08: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}, "index"]}]}
+ $cq08: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}]}]}]}
+ $acq08: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}]}]}]}
+ $sn09: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "subnet"]}, subnet_id]}
+ $com09: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}]}]}]}
+ $acom09: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}, "source"]}]}]}
+ $ip09: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}]}
+ $aip09: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}, "index"]}]}
+ $cq09: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}]}]}]}
+ $acq09: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}]}]}]}
+ $sn10: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "subnet"]}, subnet_id]}
+ $com10: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}]}]}]}
+ $acom10: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}, "source"]}]}]}
+ $ip10: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}]}
+ $aip10: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}, "index"]}]}
+ $cq10: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}]}]}]}
+ $acq10: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}]}]}]}
+ $sn11: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "subnet"]}, subnet_id]}
+ $com11: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}]}]}]}
+ $acom11: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}, "source"]}]}]}
+ $ip11: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}]}
+ $aip11: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}, "index"]}]}
+ $cq11: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}]}]}]}
+ $acq11: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}]}]}]}
+ $sn12: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "subnet"]}, subnet_id]}
+ $com12: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}]}]}]}
+ $acom12: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}, "source"]}]}]}
+ $ip12: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}]}
+ $aip12: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}, "index"]}]}
+ $cq12: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}]}]}]}
+ $acq12: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}]}]}]}
+ $sn13: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "subnet"]}, subnet_id]}
+ $com13: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}]}]}]}
+ $acom13: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}, "source"]}]}]}
+ $ip13: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}]}
+ $aip13: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}, "index"]}]}
+ $cq13: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}]}]}]}
+ $acq13: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}]}]}]}
+ $sn14: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "subnet"]}, subnet_id]}
+ $com14: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}]}]}]}
+ $acom14: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}, "source"]}]}]}
+ $ip14: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}]}
+ $aip14: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}, "index"]}]}
+ $cq14: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}]}]}]}
+ $acq14: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}]}]}]}
+ $sn15: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "subnet"]}, subnet_id]}
+ $com15: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}]}]}]}
+ $acom15: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}, "source"]}]}]}
+ $ip15: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}]}
+ $aip15: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}, "index"]}]}
+ $cq15: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}]}]}]}
+ $acq15: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}]}]}]}
+ $sn16: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "subnet"]}, subnet_id]}
+ $com16: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}]}]}]}
+ $acom16: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}, "source"]}]}]}
+ $ip16: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}]}
+ $aip16: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}, "index"]}]}
+ $cq16: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}]}]}]}
+ $acq16: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}]}]}]}
+ $sn17: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "subnet"]}, subnet_id]}
+ $com17: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}]}]}]}
+ $acom17: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}, "source"]}]}]}
+ $ip17: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}]}
+ $aip17: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}, "index"]}]}
+ $cq17: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}]}]}]}
+ $acq17: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}]}]}]}
+ $sn18: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "subnet"]}, subnet_id]}
+ $com18: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}]}]}]}
+ $acom18: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}, "source"]}]}]}
+ $ip18: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}]}
+ $aip18: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}, "index"]}]}
+ $cq18: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}]}]}]}
+ $acq18: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}]}]}]}
+ $sn19: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "subnet"]}, subnet_id]}
+ $com19: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}]}]}]}
+ $acom19: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}, "source"]}]}]}
+ $ip19: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}]}
+ $aip19: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}, "index"]}]}
+ $cq19: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}]}]}]}
+ $acq19: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}]}]}]}
+ $sn20: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "subnet"]}, subnet_id]}
+ $com20: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}]}]}]}
+ $acom20: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}, "source"]}]}]}
+ $ip20: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}]}
+ $aip20: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}, "index"]}]}
+ $cq20: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}]}]}]}
+ $acq20: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}]}]}]}
+ $sn21: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "subnet"]}, subnet_id]}
+ $com21: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}]}]}]}
+ $acom21: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}, "source"]}]}]}
+ $ip21: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}]}
+ $aip21: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}, "index"]}]}
+ $cq21: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}]}]}]}
+ $acq21: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}]}]}]}
+ $sn22: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "subnet"]}, subnet_id]}
+ $com22: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}]}]}]}
+ $acom22: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}, "source"]}]}]}
+ $ip22: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}]}
+ $aip22: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}, "index"]}]}
+ $cq22: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}]}]}]}
+ $acq22: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}]}]}]}
+ $sn23: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "subnet"]}, subnet_id]}
+ $com23: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}]}]}]}
+ $acom23: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}, "source"]}]}]}
+ $ip23: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}]}
+ $aip23: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}, "index"]}]}
+ $cq23: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}]}]}]}
+ $acq23: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}]}]}]}
+ $sn24: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "subnet"]}, subnet_id]}
+ $com24: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}]}]}]}
+ $acom24: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}, "source"]}]}]}
+ $ip24: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}]}
+ $aip24: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}, "index"]}]}
+ $cq24: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}]}]}]}
+ $acq24: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}]}]}]}
+ $sn25: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "subnet"]}, subnet_id]}
+ $com25: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}]}]}]}
+ $acom25: {get_param: [abe2ip, step2, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}, "source"]}]}]}
+ $ip25: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}]}
+ $aip25: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}, "source"]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}, "index"]}]}
+ $cq25: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, "set_ips", {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}]}]}]}
+ $acq25: {get_param: [abe2ip, step3, {get_param: [abe2ip, step1, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}]}]}]}
+ NOKIA-LCP-Port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $stk$delim$base$default$override
+ params:
+ $base: {get_param: [default_name_base, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, "portname"]}]}
+ $default: {get_param: [default_name, {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, "portname"]}, {get_param: vnic_index}]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, "portname"]}
+ $delim: {get_param: name_delimiter}
+ $stk: {get_param: stack}
+ # All entries for this port must be on the same network
+ # so it is sufficient to use the network ID from the first one.
+ network:
+ str_replace:
+ template: $int$ext
+ params:
+ $ext: {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 1, "subnet"]}, id]}
+ $int: {get_param: [int_net_info, {get_param: [int_net_chk, {get_param: [ext_net_info, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 1, "subnet"]}, id]}, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 1, "subnet"]}]}, id]}
+ replacement_policy: AUTO
+ binding:vnic_type:
+ str_replace:
+ template: $default$override
+ params:
+ $default: {get_param: [usage_info, {get_param: [override_chk, {get_param: [usage_info, "group_info", {get_param: group_id}, "binding_type", {get_param: vnic_index}]}]}, binding_type]}
+ $override: {get_param: [usage_info, "group_info", {get_param: group_id}, "binding_type", {get_param: vnic_index}]}
+ security_groups: [{get_param: open_sec_group}]
+ allowed_address_pairs: {get_attr: [NOKIA-LCP-CIDRxlate, by_count, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, "subnet_count"]}]}
+ fixed_ips: {get_attr: [NOKIA-LCP-IPxlate, by_count, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, "count"]}]}
+
+outputs:
+
+ PortEntry:
+ description: Entry for VM networks list.
+ value: {
+ port: {get_resource: NOKIA-LCP-Port}
+ }
+
+ PortIpInfo:
+ description: |
+ Data to facilitate mapping IPs assigned on this port to the IP
+ usage labels provided in the input.
+ value:
+ str_replace:
+ template:
+ str_replace:
+ template: |
+ {
+ "count": "$cnt",
+ "binding_type": "$bindtype",
+ "mac_address": "$macaddr",
+ "assigned_ips": ["$ip00", "$ip01", "$ip02", "$ip03", "$ip04", "$ip05", "$ip06", "$ip07", "$ip08", "$ip09", "$ip10", "$ip11", "$ip12", "$ip13", "$ip14", "$ip15", "$ip16", "$ip17", "$ip18", "$ip19", "$ip20", "$ip21", "$ip22", "$ip23", "$ip24", "$ip25"],
+ "label2info": [$line000 $line001 $line002 $line003 $line004 $line005 $line006 $line007 $line008 $line009 $line010 $line011 $line012 $line013 $line014 $line015 $line016 $line017 $line018 $line019 $line020 $line021 $line022 $line023 $line024 $line025 {"label":"connectivity_ip", "snet":"dummy", "ip":""}]
+ }
+ params:
+ $line000: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 1, subnet]}]}, "0"]}
+ $line001: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 2, subnet]}]}, "1"]}
+ $line002: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 3, subnet]}]}, "2"]}
+ $line003: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 4, subnet]}]}, "3"]}
+ $line004: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 5, subnet]}]}, "4"]}
+ $line005: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 6, subnet]}]}, "5"]}
+ $line006: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 7, subnet]}]}, "6"]}
+ $line007: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 8, subnet]}]}, "7"]}
+ $line008: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 9, subnet]}]}, "8"]}
+ $line009: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 10, subnet]}]}, "9"]}
+ $line010: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 11, subnet]}]}, "10"]}
+ $line011: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 12, subnet]}]}, "11"]}
+ $line012: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 13, subnet]}]}, "12"]}
+ $line013: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 14, subnet]}]}, "13"]}
+ $line014: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 15, subnet]}]}, "14"]}
+ $line015: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 16, subnet]}]}, "15"]}
+ $line016: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 17, subnet]}]}, "16"]}
+ $line017: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 18, subnet]}]}, "17"]}
+ $line018: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 19, subnet]}]}, "18"]}
+ $line019: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 20, subnet]}]}, "19"]}
+ $line020: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 21, subnet]}]}, "20"]}
+ $line021: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 22, subnet]}]}, "21"]}
+ $line022: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 23, subnet]}]}, "22"]}
+ $line023: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 24, subnet]}]}, "23"]}
+ $line024: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 25, subnet]}]}, "24"]}
+ $line025: {get_param: [checkit, {get_param: [getkey, {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 26, subnet]}]}, "25"]}
+ params:
+ $cnt: {get_param: [config_info, {get_param: vm_index}, vnic_info, {get_param: vnic_index}, 0, "count"]}
+ $bindtype: {str_replace: {template: $default$override, params: {$default: {get_param: [usage_info, {get_param: [override_chk, {get_param: [usage_info, "group_info", {get_param: group_id}, "binding_type", {get_param: vnic_index}]}]}, binding_type]}, $override: {get_param: [usage_info, "group_info", {get_param: group_id}, "binding_type", {get_param: vnic_index}]}}}}
+ $macaddr: {get_attr: [NOKIA-LCP-Port, mac_address]}
+ $ip00: {get_attr: [NOKIA-LCP-Port, fixed_ips, 0, ip_address]}
+ $ip01: {get_attr: [NOKIA-LCP-Port, fixed_ips, 1, ip_address]}
+ $ip02: {get_attr: [NOKIA-LCP-Port, fixed_ips, 2, ip_address]}
+ $ip03: {get_attr: [NOKIA-LCP-Port, fixed_ips, 3, ip_address]}
+ $ip04: {get_attr: [NOKIA-LCP-Port, fixed_ips, 4, ip_address]}
+ $ip05: {get_attr: [NOKIA-LCP-Port, fixed_ips, 5, ip_address]}
+ $ip06: {get_attr: [NOKIA-LCP-Port, fixed_ips, 6, ip_address]}
+ $ip07: {get_attr: [NOKIA-LCP-Port, fixed_ips, 7, ip_address]}
+ $ip08: {get_attr: [NOKIA-LCP-Port, fixed_ips, 8, ip_address]}
+ $ip09: {get_attr: [NOKIA-LCP-Port, fixed_ips, 9, ip_address]}
+ $ip10: {get_attr: [NOKIA-LCP-Port, fixed_ips, 10, ip_address]}
+ $ip11: {get_attr: [NOKIA-LCP-Port, fixed_ips, 11, ip_address]}
+ $ip12: {get_attr: [NOKIA-LCP-Port, fixed_ips, 12, ip_address]}
+ $ip13: {get_attr: [NOKIA-LCP-Port, fixed_ips, 13, ip_address]}
+ $ip14: {get_attr: [NOKIA-LCP-Port, fixed_ips, 14, ip_address]}
+ $ip15: {get_attr: [NOKIA-LCP-Port, fixed_ips, 15, ip_address]}
+ $ip16: {get_attr: [NOKIA-LCP-Port, fixed_ips, 16, ip_address]}
+ $ip17: {get_attr: [NOKIA-LCP-Port, fixed_ips, 17, ip_address]}
+ $ip18: {get_attr: [NOKIA-LCP-Port, fixed_ips, 18, ip_address]}
+ $ip19: {get_attr: [NOKIA-LCP-Port, fixed_ips, 19, ip_address]}
+ $ip20: {get_attr: [NOKIA-LCP-Port, fixed_ips, 20, ip_address]}
+ $ip21: {get_attr: [NOKIA-LCP-Port, fixed_ips, 21, ip_address]}
+ $ip22: {get_attr: [NOKIA-LCP-Port, fixed_ips, 22, ip_address]}
+ $ip23: {get_attr: [NOKIA-LCP-Port, fixed_ips, 23, ip_address]}
+ $ip24: {get_attr: [NOKIA-LCP-Port, fixed_ips, 24, ip_address]}
+ $ip25: {get_attr: [NOKIA-LCP-Port, fixed_ips, 25, ip_address]}
+ $rip00: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}]}
+ $arip00: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}, "index"]}]}
+ $snet00: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "subnet"]}
+ $label00: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 1, "label"]}
+ $rip01: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}]}
+ $arip01: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}, "index"]}]}
+ $snet01: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "subnet"]}
+ $label01: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 2, "label"]}
+ $rip02: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}]}
+ $arip02: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}, "index"]}]}
+ $snet02: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "subnet"]}
+ $label02: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 3, "label"]}
+ $rip03: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}]}
+ $arip03: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}, "index"]}]}
+ $snet03: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "subnet"]}
+ $label03: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 4, "label"]}
+ $rip04: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}]}
+ $arip04: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}, "index"]}]}
+ $snet04: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "subnet"]}
+ $label04: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 5, "label"]}
+ $rip05: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}]}
+ $arip05: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}, "index"]}]}
+ $snet05: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "subnet"]}
+ $label05: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 6, "label"]}
+ $rip06: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}]}
+ $arip06: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}, "index"]}]}
+ $snet06: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "subnet"]}
+ $label06: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 7, "label"]}
+ $rip07: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}]}
+ $arip07: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}, "index"]}]}
+ $snet07: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "subnet"]}
+ $label07: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 8, "label"]}
+ $rip08: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}]}
+ $arip08: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}, "index"]}]}
+ $snet08: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "subnet"]}
+ $label08: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 9, "label"]}
+ $rip09: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}]}
+ $arip09: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}, "index"]}]}
+ $snet09: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "subnet"]}
+ $label09: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 10, "label"]}
+ $rip10: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}]}
+ $arip10: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}, "index"]}]}
+ $snet10: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "subnet"]}
+ $label10: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 11, "label"]}
+ $rip11: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}]}
+ $arip11: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}, "index"]}]}
+ $snet11: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "subnet"]}
+ $label11: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 12, "label"]}
+ $rip12: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}]}
+ $arip12: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}, "index"]}]}
+ $snet12: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "subnet"]}
+ $label12: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 13, "label"]}
+ $rip13: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}]}
+ $arip13: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}, "index"]}]}
+ $snet13: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "subnet"]}
+ $label13: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 14, "label"]}
+ $rip14: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}]}
+ $arip14: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}, "index"]}]}
+ $snet14: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "subnet"]}
+ $label14: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 15, "label"]}
+ $rip15: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}]}
+ $arip15: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}, "index"]}]}
+ $snet15: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "subnet"]}
+ $label15: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 16, "label"]}
+ $rip16: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}]}
+ $arip16: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}, "index"]}]}
+ $snet16: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "subnet"]}
+ $label16: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 17, "label"]}
+ $rip17: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}]}
+ $arip17: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}, "index"]}]}
+ $snet17: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "subnet"]}
+ $label17: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 18, "label"]}
+ $rip18: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}]}
+ $arip18: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}, "index"]}]}
+ $snet18: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "subnet"]}
+ $label18: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 19, "label"]}
+ $rip19: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}]}
+ $arip19: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}, "index"]}]}
+ $snet19: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "subnet"]}
+ $label19: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 20, "label"]}
+ $rip20: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}]}
+ $arip20: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}, "index"]}]}
+ $snet20: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "subnet"]}
+ $label20: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 21, "label"]}
+ $rip21: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}]}
+ $arip21: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}, "index"]}]}
+ $snet21: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "subnet"]}
+ $label21: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 22, "label"]}
+ $rip22: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}]}
+ $arip22: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}, "index"]}]}
+ $snet22: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "subnet"]}
+ $label22: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 23, "label"]}
+ $rip23: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}]}
+ $arip23: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}, "index"]}]}
+ $snet23: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "subnet"]}
+ $label23: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 24, "label"]}
+ $rip24: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}]}
+ $arip24: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}, "index"]}]}
+ $snet24: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "subnet"]}
+ $label24: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 25, "label"]}
+ $rip25: {get_param: [usage_info, "group_info", {get_param: group_id}, {get_param: group_index}, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, set_ips, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}]}
+ $arip25: {get_param: [usage_info, "ATT_ip_lists", {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}, source]}, {get_param: [usage_info, "ATT_vm_info", {get_param: group_tag}, {get_param: group_index}, {get_param: vm_index}, "label2ip", {get_param: vnic_index}, {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}, "index"]}]}
+ $snet25: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "subnet"]}
+ $label25: {get_param: [config_info, {get_param: vm_index}, "vnic_info", {get_param: vnic_index}, 26, "label"]}
+
+ Version:
+ description: |
+ Template file version number. This should be updated
+ each time a non-comment change is made to this file.
+ value: K1
+
+ ASSIGNED_IPS:
+ description: IP addresses assigned to this port.
+ value:
+ str_replace:
+ template: |
+ $ip00, $ip01, $ip02, $ip03, $ip04, $ip05, $ip06, $ip07, $ip08, $ip09, $ip10, $ip11, $ip12, $ip13, $ip14, $ip15, $ip16, $ip17, $ip18, $ip19, $ip20, $ip21, $ip22, $ip23, $ip24, $ip25
+ params:
+ $ip00: {get_attr: [NOKIA-LCP-Port, fixed_ips, 0, ip_address]}
+ $ip01: {get_attr: [NOKIA-LCP-Port, fixed_ips, 1, ip_address]}
+ $ip02: {get_attr: [NOKIA-LCP-Port, fixed_ips, 2, ip_address]}
+ $ip03: {get_attr: [NOKIA-LCP-Port, fixed_ips, 3, ip_address]}
+ $ip04: {get_attr: [NOKIA-LCP-Port, fixed_ips, 4, ip_address]}
+ $ip05: {get_attr: [NOKIA-LCP-Port, fixed_ips, 5, ip_address]}
+ $ip06: {get_attr: [NOKIA-LCP-Port, fixed_ips, 6, ip_address]}
+ $ip07: {get_attr: [NOKIA-LCP-Port, fixed_ips, 7, ip_address]}
+ $ip08: {get_attr: [NOKIA-LCP-Port, fixed_ips, 8, ip_address]}
+ $ip09: {get_attr: [NOKIA-LCP-Port, fixed_ips, 9, ip_address]}
+ $ip10: {get_attr: [NOKIA-LCP-Port, fixed_ips, 10, ip_address]}
+ $ip11: {get_attr: [NOKIA-LCP-Port, fixed_ips, 11, ip_address]}
+ $ip12: {get_attr: [NOKIA-LCP-Port, fixed_ips, 12, ip_address]}
+ $ip13: {get_attr: [NOKIA-LCP-Port, fixed_ips, 13, ip_address]}
+ $ip14: {get_attr: [NOKIA-LCP-Port, fixed_ips, 14, ip_address]}
+ $ip15: {get_attr: [NOKIA-LCP-Port, fixed_ips, 15, ip_address]}
+ $ip16: {get_attr: [NOKIA-LCP-Port, fixed_ips, 16, ip_address]}
+ $ip17: {get_attr: [NOKIA-LCP-Port, fixed_ips, 17, ip_address]}
+ $ip18: {get_attr: [NOKIA-LCP-Port, fixed_ips, 18, ip_address]}
+ $ip19: {get_attr: [NOKIA-LCP-Port, fixed_ips, 19, ip_address]}
+ $ip20: {get_attr: [NOKIA-LCP-Port, fixed_ips, 20, ip_address]}
+ $ip21: {get_attr: [NOKIA-LCP-Port, fixed_ips, 21, ip_address]}
+ $ip22: {get_attr: [NOKIA-LCP-Port, fixed_ips, 22, ip_address]}
+ $ip23: {get_attr: [NOKIA-LCP-Port, fixed_ips, 23, ip_address]}
+ $ip24: {get_attr: [NOKIA-LCP-Port, fixed_ips, 24, ip_address]}
+ $ip25: {get_attr: [NOKIA-LCP-Port, fixed_ips, 25, ip_address]}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Xlate.template.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Xlate.template.yaml
new file mode 100644
index 0000000000..45974257a0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-Xlate.template.yaml
@@ -0,0 +1,15 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Translate a string in JSON format keyed by a resource group
+ member index into a map of lists such that the Nth entry
+ has a list of the first N entries from the input.
+
+ In effect this lets the user get a list of variable length
+ based on the number of provided entries.
+
+parameters:
+
+ info:
+ type: json
+ description: Information map.
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-XlateL2J.template.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-XlateL2J.template.yaml
new file mode 100644
index 0000000000..e4118a3ad4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/LCP-XlateL2J.template.yaml
@@ -0,0 +1,50 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Translate a list of JSON entries to a JSON mapped keyed
+ by the string verison of the list index (i.e. 0-->"0").
+
+parameters:
+
+ info:
+ type: json
+ description: Information map.
+
+outputs:
+
+ jout:
+ description: |
+ JSON map of list entries.
+ value: {
+ "0": {get_param: [info, 0]},
+ "1": {get_param: [info, 1]},
+ "2": {get_param: [info, 2]},
+ "3": {get_param: [info, 3]},
+ "4": {get_param: [info, 4]},
+ "5": {get_param: [info, 5]},
+ "6": {get_param: [info, 6]},
+ "7": {get_param: [info, 7]},
+ "8": {get_param: [info, 8]},
+ "9": {get_param: [info, 9]},
+ "10": {get_param: [info, 10]},
+ "11": {get_param: [info, 11]},
+ "12": {get_param: [info, 12]},
+ "13": {get_param: [info, 13]},
+ "14": {get_param: [info, 14]},
+ "15": {get_param: [info, 15]},
+ "16": {get_param: [info, 16]},
+ "17": {get_param: [info, 17]},
+ "18": {get_param: [info, 18]},
+ "19": {get_param: [info, 19]},
+ "20": {get_param: [info, 20]},
+ "21": {get_param: [info, 21]},
+ "22": {get_param: [info, 22]},
+ "23": {get_param: [info, 23]},
+ "24": {get_param: [info, 24]},
+ "25": {get_param: [info, 25]},
+ "26": {get_param: [info, 26]},
+ "27": {get_param: [info, 27]},
+ "28": {get_param: [info, 28]},
+ "29": {get_param: [info, 29]}
+ }
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/MANIFEST.json
new file mode 100644
index 0000000000..54114ad2f1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/MANIFEST.json
@@ -0,0 +1,52 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "LCP-Xlate.template.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "LCP-XlateL2J.template.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "base_mso.yml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_mso.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "LCP-OPENECOMP.template.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "LCP-Base.template.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "LCP-PairGroup.template.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "LCP-Port.template.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "LCP-ATTGRP.template.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.env
new file mode 100644
index 0000000000..1c28b72606
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.env
@@ -0,0 +1,127 @@
+
+parameters:
+
+ # Pseudo-constant values.
+
+ backup_file: ""
+ cloud_name_delimiter: "-"
+ default_action: "install"
+ ssh_access_key: ""
+ int_vlan_id: ""
+ lcm_keypair: ""
+
+ install_config: '
+ "application_name": "5450_isc",
+ "license_reference": "test_license",
+ "default_remote_dns_domain": "./default",
+ "default_remote_enum_domain": "e164.arpa/default",
+ "local_dns_domain": "drew2.lucentlab.com",
+ "local_enum_domain": "",
+ "naming_delimiter": "-",
+ "naming_parsing": "flexible",
+ "naming_type": "flexible3",
+ "other_remote_dns_domain": "",
+ "other_remote_enum_domain": "",
+ "remote_query_only": "",
+ "snmp_community": "public",
+ "subnet_info": {
+ "INTERNALnet0": {
+ "interface_label": "int0",
+ "redundancy_mode": "iipm",
+ "vlan_tag": ""
+ },
+ "INTERNALnet1": {
+ "interface_label": "int1",
+ "redundancy_mode": "iipm",
+ "vlan_tag": ""
+ },
+ "oam": {
+ "interface_label": "oam2",
+ "redundancy_mode": "eipm_arpndp",
+ "vlan_tag": "",
+ "connectivity_address": "",
+ "detect_multiplier": "3",
+ "desired_minimum_tx_interval": "300",
+ "required_minimum_rx_interval": "300"
+ },
+ "access": {
+ "interface_label": "acc4",
+ "redundancy_mode": "eipm_arpndp",
+ "vlan_tag": "",
+ "connectivity_address": "",
+ "detect_multiplier": "3",
+ "desired_minimum_tx_interval": "300",
+ "required_minimum_rx_interval": "300"
+ }
+ },
+ "system_name": "isc01",
+ "system_prefix": "isc01",
+ "time_zone": "UTC",
+ "use_sbpr": "yes"
+ '
+
+ # Site-specific values (supplied via the pre-load sheet).
+
+ v4_dns_server: "127.0.0.1/.,127.0.0.1/."
+ v6_dns_server: ""
+ v4_enum_server: ""
+ v6_enum_server: ""
+ v4_ntp_server: "127.0.0.1"
+ v6_ntp_server: ""
+
+ vnf_id: "MYvnf_id"
+ vnf_name: "MYvnf_name"
+ vnf_module_id: "MYvnf_module_id"
+ vnf_module_name: "base_module"
+
+ vm_counts: {
+ "oam": "1",
+ "ims": "1"
+ }
+
+ net_types:
+ - "oam"
+ - "access"
+
+ oam_management_v4_source: "oam_oam_ips"
+ oam_management_v4_index: 1
+ oam_management_v6_source: ""
+ oam_management_v6_index: 0
+
+ oam_net_id: 7410cc1d-c421-41b3-adef-d46cf79cb8d9
+ oam_subnet_id: 37d36cb0-54b7-4fbf-bc45-4879da03a0db
+ oam_cidr: "127.0.0.1/27"
+ oam_default_gateway: "127.0.0.1"
+
+ access_net_id: 870909b5-d933-4a95-9aff-df38523c37ed
+ access_subnet_id: 050ad34a-47a3-48a9-9761-12eff354fd4f
+ access_cidr: "37.9.0.32/27"
+ access_default_gateway: "37.9.0.62"
+
+ availability_zone_0: zone2
+ availability_zone_1: zone1
+
+ oam_names:
+ - "oam0"
+ - "oam1"
+
+ ims_names:
+ - "ims0"
+ - "ims1"
+
+ oam_image_name: "drew34.20"
+ ims_image_name: "drew34.20"
+
+ oam_flavor_name: "LCP-2-4-25x2-4"
+ ims_flavor_name: "LCP-1-4-15x2-4"
+
+ oam_oam_ips:
+ - "127.0.0.1"
+ - "127.0.0.1"
+ - "127.0.0.1"
+ - "127.0.0.1"
+
+ ims_access_ips:
+ - "37.9.0.36"
+ - "37.9.0.61"
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.yml
new file mode 100644
index 0000000000..520eb29349
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/base_mso.yml
@@ -0,0 +1,490 @@
+heat_template_version: 2015-04-30
+
+description: |
+ Example HOT file illustrating elasticity groups.
+
+parameters:
+
+ backup_file:
+ type: string
+ description: |
+ <cURL path>/<backup file>
+ This is only used for restore (aka "disaster recovery").
+ The value only needs to go to the OAM pair.
+ Note that there is a 255 character limit on this value.
+
+ cloud_name_delimiter:
+ type: string
+ description: Separator for cloud resource naming.
+
+ install_config:
+ type: string
+ description: JSON formatted string of install config values.
+
+ lcm_keypair:
+ type: string
+ description: Keypair used for lifecycle management access.
+ constraints:
+ - custom_constraint: nova.keypair
+
+ default_action:
+ type: string
+ description: |
+ Default action for all VMs. This may be overridden for
+ specific VM groups, pairs or VMs via the ENV file.
+ constraints:
+ - allowed_values:
+ - "install"
+ - "recreate"
+ - "scale-in"
+ - "scale-out"
+ - "heal"
+ - "update"
+
+ int_vlan_id:
+ type: string
+ description: Optional VLAN associated with the (0th) internal network.
+ constraints:
+ - allowed_pattern: "[0-9]*"
+ description: VLAN Ids are expressed in base 10 digits.
+
+ ssh_access_key:
+ type: string
+ description: |
+ Optional SSH public key value for lifecycle management
+ administrative access.
+
+ v4_dns_server:
+ type: string
+ description: |
+ (optional) IPV4 DNS server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+
+ v6_dns_server:
+ type: string
+ description: |
+ (optional) IPV6 DNS server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+
+ v4_enum_server:
+ type: string
+ description: |
+ (optional) IPV4 ENUM server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+
+ v6_enum_server:
+ type: string
+ description: |
+ (optional) IPV6 ENUM server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+
+ v4_ntp_server:
+ type: string
+ description: |
+ (optional) IPV4 NTP server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+
+ v6_ntp_server:
+ type: string
+ description: |
+ (optional) IPV6 NTP server list.
+ It is passed as a string instead of a CDL because
+ of how it is handled internally.
+
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance.
+ default: ""
+
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance.
+ default: ""
+
+ vnf_module_id:
+ type: string
+ description: Unique ID for this VNF Module instance.
+ default: ""
+
+ vnf_module_name:
+ type: string
+ description: Unique name for this VNF module instance.
+ default: ""
+
+ net_types:
+ type: comma_delimited_list
+ description: CDL of subnet tags.
+
+ oam_management_v4_source:
+ type: string
+ description: Name of the OAM IP parameter to use.
+
+ oam_management_v4_index:
+ type: number
+ description: Index to the V4 management IP address.
+
+ oam_management_v6_source:
+ type: string
+ description: Name of the OAM IP parameter to use.
+
+ oam_management_v6_index:
+ type: number
+ description: Index to the V6 management IP address.
+
+ oam_net_id:
+ type: string
+ description: ID of the network associated with tag "oam".
+ constraints:
+ - custom_constraint: neutron.network
+
+ oam_subnet_id:
+ type: string
+ description: ID of the subnet associated with tag "oam".
+
+ oam_cidr:
+ type: string
+ description: CIDR associated with tag "oam".
+ constraints:
+ - custom_constraint: net_cidr
+
+ oam_default_gateway:
+ type: string
+ description: Default gateway IP address associated with tag "oam".
+
+ access_net_id:
+ type: string
+ description: ID of the network associated with tag "access".
+ constraints:
+ - custom_constraint: neutron.network
+
+ access_subnet_id:
+ type: string
+ description: ID of the subnet associated with tag "access".
+
+ access_cidr:
+ type: string
+ description: CIDR associated with tag "access".
+ constraints:
+ - custom_constraint: net_cidr
+
+ access_default_gateway:
+ type: string
+ description: Default gateway IP address associated with tag "access".
+
+ vm_counts:
+ type: json
+ description: |
+ Maps VM type tags to the number of pairs of that type.
+
+ vm_info:
+ type: json
+ description: Provides keys into type-specific parameters and vnic info.
+ default: {}
+
+ availability_zone_0:
+ type: string
+ description: Availability zone name.
+
+ availability_zone_1:
+ type: string
+ description: Availability zone name.
+
+ oam_names:
+ description: CDL of OAM VM names.
+ type: comma_delimited_list
+
+ ims_names:
+ description: CDL of IMS VM names.
+ type: comma_delimited_list
+
+ oam_image_name:
+ description: Image for this VMtype.
+ type: string
+
+ ims_image_name:
+ description: Image for this VMtype.
+ type: string
+
+ oam_flavor_name:
+ description: CDL of OAM flavor values.
+ type: string
+ constraints:
+ - custom_constraint: nova.flavor
+
+ ims_flavor_name:
+ description: CDL of IMS flavor values.
+ type: string
+ constraints:
+ - custom_constraint: nova.flavor
+
+ oam_oam_ips:
+ type: comma_delimited_list
+ description: List of IP addresses for this VMtype_NETtype combination.
+
+ ims_access_ips:
+ type: comma_delimited_list
+ description: List of IP addresses for this VMtype_NETtype combination.
+
+resources:
+
+ FORMATXLATE:
+ type: LCP-OPENECOMP.template.yaml
+ properties:
+ backup_file: {get_param: backup_file}
+ cloud_name_delimiter: {get_param: cloud_name_delimiter}
+ default_action: {get_param: default_action}
+ install_config: {get_param: install_config}
+ lcm_keypair: {get_param: lcm_keypair}
+ ssh_access_key: {get_param: ssh_access_key}
+ v4_dns_server: {get_param: v4_dns_server}
+ v6_dns_server: {get_param: v6_dns_server}
+ v4_enum_server: {get_param: v4_enum_server}
+ v6_enum_server: {get_param: v6_enum_server}
+ v4_ntp_server: {get_param: v4_ntp_server}
+ v6_ntp_server: {get_param: v6_ntp_server}
+ vnf_id: {get_param: vnf_id}
+ vnf_name: {get_param: vnf_name}
+ vnf_module_id: {get_param: vnf_module_id}
+ vnf_module_name: {get_param: vnf_module_name}
+ net_types: {get_param: net_types}
+ net_ids: {
+ "oam": {get_param: oam_net_id},
+ "access": {get_param: access_net_id},
+ ""
+ }
+ subnet_ids: {
+ "oam": {get_param: oam_subnet_id},
+ "access": {get_param: access_subnet_id},
+ ""
+ }
+ cidrs: {
+ "oam": {get_param: oam_cidr},
+ "access": {get_param: access_cidr},
+ ""
+ }
+ default_gateways: {
+ "oam": {get_param: oam_default_gateway},
+ "access": {get_param: access_default_gateway},
+ ""
+ }
+ # This list must be ordered by group ID.
+ vmtype_list: ["oam", "ims"]
+ vmtype_count: 2
+ vm_counts: {get_param: vm_counts}
+ vm_info: {get_param: vm_info}
+ availability_zones:
+ - {get_param: availability_zone_0}
+ - {get_param: availability_zone_1}
+ images: {
+ "oam": {get_param: oam_image_name},
+ "ims": {get_param: ims_image_name},
+ "": ""
+ }
+ flavors: {
+ "oam": {get_param: oam_flavor_name},
+ "ims": {get_param: ims_flavor_name},
+ "": ""
+ }
+ ip_lists: {
+ "oam_oam_ips": {get_param: oam_oam_ips},
+ "ims_access_ips": {get_param: ims_access_ips},
+ "": []
+ }
+ name_lists: {
+ "oam": {get_param: oam_names},
+ "ims": {get_param: ims_names},
+ "": []
+ }
+
+ NOKIA-LCP-Base:
+ depends_on:
+ - FORMATXLATE
+ type: LCP-Base.template.yaml
+ properties:
+ default_prefix:
+ str_replace:
+ template: |
+ {"": "$stk$delimiter"}
+ params:
+ $stk: {get_param: "OS::stack_name"}
+ $delimiter: {get_attr: [FORMATXLATE, usage_info, cloud_name_delimiter]}
+ int_net_count: 2
+ ext_net_list: ["oam", "access"]
+ ext_net_info: {get_attr: [FORMATXLATE, ext_net_info]}
+ total_vm_pairs: {get_attr: [FORMATXLATE, total_vm_pairs]}
+
+ OAM_RRG:
+ depends_on:
+ - NOKIA-LCP-Base
+ type: LCP-PairGroup.template.yaml
+ properties:
+ default_action: {get_attr: [FORMATXLATE, default_action]}
+ default_name_base:
+ str_replace:
+ template: |
+ {"": "oam$delimiter0$delimiter"}
+ params:
+ $delimiter: {get_attr: [FORMATXLATE, usage_info, cloud_name_delimiter]}
+ group_id: "0"
+ group_tag: "oam"
+ group_index: '0'
+ current_group_count: {get_attr: [FORMATXLATE, vm_counts, "oam"]}
+ role: "oam"
+ lcm_keypair: {get_attr: [FORMATXLATE, lcm_keypair]}
+ total_pair_count: {get_attr: [NOKIA-LCP-Base, TotalPairCount]}
+ backup_file: {get_attr: [FORMATXLATE, backup_file]}
+ name_delimiter: {get_attr: [FORMATXLATE, usage_info, cloud_name_delimiter]}
+ int_net_count: 2
+ install_config: {get_attr: [FORMATXLATE, install_config]}
+ net_info_str: {get_attr: [NOKIA-LCP-Base, NetInfoStr]}
+ sec_group: {get_attr: [NOKIA-LCP-Base, OpenSec]}
+ ssh_access_key: {get_attr: [FORMATXLATE, ssh_access_key]}
+ ssh_public_key: {get_attr: [NOKIA-LCP-Base, PublicKey]}
+ ssh_private_key: {get_attr: [NOKIA-LCP-Base, PrivateKey]}
+ stack: {get_param: "OS::stack_name"}
+ storage_size: 68
+ int_net_info: {get_attr: [NOKIA-LCP-Base, IntNetInfo]}
+ ext_net_info: {get_attr: [FORMATXLATE, ext_net_info]}
+ usage_info: {get_attr: [FORMATXLATE, usage_info]}
+ config_info: {
+ poolinfo: '["mi-0", "cnfg-0", "sns-0"]',
+ v4_static_routes: '{}',
+ v6_static_routes: '{}',
+ v4_default_gateway: "oam",
+ v6_default_gateway: "",
+ vnic_count: 3,
+ "0": { # VM member index.
+ vnic_info: {
+ "0": [
+ {"count": "0", "binding_type": "direct", "subnet_count": "1", "allowed_subnets": ["INTERNALnet0"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet0", "subnet": "INTERNALnet0"},
+ ],
+ "1": [
+ {"count": "0", "binding_type": "direct", "subnet_count": "1", "allowed_subnets": ["INTERNALnet1"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet1", "subnet": "INTERNALnet1"},
+ ],
+ "2": [
+ {"count": "3", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["oam"]},
+ {"label": "servicetype=cnfg-0;float;nitype=default;subnet=oam", "subnet": "oam"},
+ {"label": "servicetype=mi-0;float;nitype=default;subnet=oam", "subnet": "oam"},
+ {"label": "servicetype=mi-0;fixed;nitype=default;subnet=oam", "subnet": "oam"},
+ ],
+ }
+ },
+ "1": {
+ vnic_info: {
+ "0": [
+ {"count": "0", "binding_type": "direct", "subnet_count": "1", "allowed_subnets": ["INTERNALnet0"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet0", "subnet": "INTERNALnet0"},
+ ],
+ "1": [
+ {"count": "0", "binding_type": "direct", "subnet_count": "1", "allowed_subnets": ["INTERNALnet1"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet1", "subnet": "INTERNALnet1"},
+ ],
+ "2": [
+ {"count": "1", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["oam"]},
+ {"label": "servicetype=mi-0;fixed;nitype=default;subnet=oam", "subnet": "oam"},
+ ],
+ }
+ }
+ }
+
+ IMS_RRG:
+ type: OS::Heat::ResourceGroup
+ depends_on:
+ - NOKIA-LCP-Base
+ properties:
+ count: {get_attr: [FORMATXLATE, vm_counts, "ims"]}
+ resource_def:
+ type: LCP-PairGroup.template.yaml
+ properties:
+ default_action: {get_attr: [FORMATXLATE, default_action]}
+ default_name_base:
+ str_replace:
+ template: |
+ {"": "ims$delimiter%index%$delimiter"}
+ params:
+ $delimiter: {get_attr: [FORMATXLATE, usage_info, cloud_name_delimiter]}
+ group_id: "1"
+ lcm_keypair: {get_attr: [FORMATXLATE, lcm_keypair]}
+ group_tag: "ims"
+ group_index: '%index%'
+ current_group_count: {get_attr: [FORMATXLATE, vm_counts, "ims"]}
+ total_pair_count: {get_attr: [NOKIA-LCP-Base, TotalPairCount]}
+ name_delimiter: {get_attr: [FORMATXLATE, usage_info, cloud_name_delimiter]}
+ net_info_str: {get_attr: [NOKIA-LCP-Base, NetInfoStr]}
+ sec_group: {get_attr: [NOKIA-LCP-Base, OpenSec]}
+ ssh_access_key: {get_attr: [FORMATXLATE, ssh_access_key]}
+ ssh_public_key: {get_attr: [NOKIA-LCP-Base, PublicKey]}
+ ssh_private_key: {get_attr: [NOKIA-LCP-Base, PrivateKey]}
+ stack: {get_param: "OS::stack_name"}
+ storage_size: 4
+ install_config: {get_attr: [FORMATXLATE, install_config]}
+ int_net_count: 2
+ int_net_info: {get_attr: [NOKIA-LCP-Base, IntNetInfo]}
+ ext_net_info: {get_attr: [FORMATXLATE, ext_net_info]}
+ usage_info: {get_attr: [FORMATXLATE, usage_info]}
+ config_info: {
+ poolinfo: '["ims-0", "ims-1", "gos-0"]',
+ v4_static_routes: '{
+ "ims-0": {"subnet": "access", "dest_subnet": "2.2.2.0", "mask": "255.255.255.0"},
+ "ims-1": {"subnet": "access", "dest_subnet": "2.2.2.0", "mask": "255.255.255.0"}
+ }',
+ v6_static_routes: '{}',
+ v4_default_gateway: "access",
+ v6_default_gateway: "",
+ vnic_count: 3,
+ "0": { # VM member index.
+ vnic_info: {
+ "0": [
+ {"count": "0", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["INTERNALnet0"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet0", "subnet": "INTERNALnet0"},
+ ],
+ "1": [
+ {"count": "0", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["INTERNALnet1"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet1", "subnet": "INTERNALnet1"},
+ ],
+ "2": [
+ {"count": "1", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["access"]},
+ {"label": "servicetype=ims-0;float;nitype=published;subnet=access", "subnet": "access"},
+ ],
+ }
+ },
+ "1": {
+ vnic_info: {
+ "0": [
+ {"count": "0", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["INTERNALnet0"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet0", "subnet": "INTERNALnet0"},
+ ],
+ "1": [
+ {"count": "0", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["INTERNALnet1"]},
+ {"label": "connectivity_ip;subnet=INTERNALnet1", "subnet": "INTERNALnet1"},
+ ],
+ "2": [
+ {"count": "1", "binding_type": "normal", "subnet_count": "1", "allowed_subnets": ["access"]},
+ {"label": "servicetype=ims-1;float;nitype=published;subnet=access", "subnet": "access"},
+ ],
+ }
+ }
+ }
+
+outputs:
+
+ oam_management_v4_address:
+ description: IPV4 of the active MI service.
+ value: {get_param: [{get_param: oam_management_v4_source}, {get_param: oam_management_v4_index}]}
+
+ oam_management_v6_address:
+ description: IPV6 of the active MI service.
+ value: {get_param: [{get_param: oam_management_v6_source}, {get_param: oam_management_v6_index}]}
+
+ internal_net_info:
+ description: |
+ Internal network IDs, CIDR etc. for use by modular additions to
+ this stack.
+ value: {get_attr: [NOKIA-LCP-Base, IntNetInfo]}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.env
new file mode 100644
index 0000000000..ceffa1ddae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.env
@@ -0,0 +1,5 @@
+parameters:
+ pd_server_names: ZRDM1MOGX01MPD001,ZRDM1MOGX01MPD002
+ pd_image_name: MOG_BASE_8.0
+ pd_flavor_name: m3.xlarge
+ availabilityzone_name: nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.yml
new file mode 100644
index 0000000000..5e25e96923
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/inputs/hot-mog-0108-bs1271.yml
@@ -0,0 +1,54 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates MOG stack
+
+parameters:
+ pd_server_names:
+ type: comma_delimited_list
+ label: PD server names
+ description: name of the PD instance
+ pd_image_name:
+ type: string
+ label: image name
+ description: PD image name
+ pd_flavor_name:
+ type: string
+ label: PD flavor name
+ description: flavor name of PD instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+
+
+resources:
+ server_pd_01:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 0]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_0}
+ user_data_format: RAW_SERVER_PD_1
+ server_pd_02:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [pd_server_names, 1]}
+ image: {get_param: pd_image_name}
+ flavor: {get_param: pd_flavor_name}
+ availability_zone: {get_param: availabilityzone_name}
+ networks:
+ - port: {get_resource: pd01_port_1}
+ user_data_format: RAW_SERVER_PD_2
+ pd01_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-0
+ replacement_policy: AUTO_PORT_0
+ pd01_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: Network-1
+ replacement_policy: AUTO_PORT_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..12d8824d57
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,641 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cgi_fw:
+ 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
+ default: dummy_vf_module_id
+ nimbus_hsl_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: other
+ cgi_fw_pt_vlan_VM2_name_fqdn:
+ hidden: false
+ immutable: false
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+ default: [
+ ]
+ cgi_fw_vmi_ecmp_src_ip:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: source_ip for the VirtualMachineInterface
+ default: true
+ cgi_fw_names:
+ label: Firewall VM Name
+ hidden: false
+ immutable: false
+ type: list
+ description: Comma Delimited List of Names for ServiceInstance VMs
+ default:
+ - zsde1fcgi02fgi001
+ - zsde1fcgi02fgi002
+ entry_schema:
+ type: string
+ cgi_fw_vmi_ecmp_dst_ip:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: destination_ip for the VirtualMachineInterface
+ default: true
+ sgi_direct_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: right
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VF instance
+ default: zrdm3firstnetfcgi02
+ cgi_fw_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor for the ServiceInstance VM
+ default: m1.xlarge
+ vf_module_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VF Module instance
+ default: zsde1fcgi02
+ cgi_fw_st_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_type for the ServiceTemplate
+ default: firewall
+ sgi_protected_net_dummy_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:firstnet_dummy_net_1
+ cgi_fw_vmi_ecmp_src_port:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: source_port for the VirtualMachineInterface
+ default: false
+ sgi_protected_net_dummy1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name for the VirtualNetwork
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF instance
+ default: dummy_vnf_id
+ sgi_direct_net_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:fgi_direct
+ sgi_protected_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: left
+ cgi_fw_vmi_ecmp_dst_port:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: destination_port for the VirtualMachineInterface
+ default: false
+ sgi_direct_family_v6:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP Family Address for InstanceIp
+ default: v6
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability_zone for the ServiceInstance
+ default: nova
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: availability_zone for the ServiceInstance
+ default: nova
+ nimbus_hsl_net_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:alu-firstnet-net
+ sgi_protected_net_dummy:
+ hidden: false
+ immutable: false
+ type: string
+ description: name for the VirtualNetwork
+ default: firstnet_dummy_net_1
+ cgi_fw_pt_vlan_VM1_name_fqdn:
+ hidden: false
+ immutable: false
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+ default: [
+ ]
+ cgi_fw_vmi_ecmp_configured:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: hashing_configured for the VirtualMachineInterface
+ default: true
+ cgi_fw_vmi_ecmp_ip_protocol:
+ hidden: false
+ immutable: false
+ type: boolean
+ description: ip_protocol for the VirtualMachineInterface
+ default: false
+ oam_protected_net_fqdn:
+ hidden: false
+ immutable: false
+ type: string
+ description: fq_name for the VirtualNetwork
+ default: default-domain:ALU-L3:alu_l3_mt_net
+ oam_protected_interface_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_interface_type for ServiceInstance
+ default: management
+ cgi_fw_st_mode:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_mode for the ServiceTemplate
+ default: in-network-nat
+ sgi_direct_ipv6_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet UUID for InstanceIp
+ default: 4560666e-f306-4d7b-b0ec-a2d4330e9600
+ contrail_vmi_subinterface:
+ hidden: false
+ immutable: false
+ type: string
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ cgi_fw_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: image_name for the ServiceInstance VM
+ default: F5_LB-FW_F5_12_1_HF1_Startup
+ cgi_fw_oam_protected_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: the ips of the management network for CGI FW
+ default:
+ - 192.168.50.40
+ - 192.168.50.41
+ entry_schema:
+ type: string
+ sgi_direct_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet UUID for InstanceIp
+ default: 63858a9d-696b-4731-b3b3-7c8dfd777b9e
+ domain:
+ hidden: false
+ immutable: false
+ type: string
+ description: domain for the ServiceTemplate
+ default: default-domain
+ cgi_fw_st_version:
+ hidden: false
+ immutable: false
+ type: float
+ description: version for the ServiceTemplate
+ default: 2
+ constraints:
+ - in_range:
+ - 0
+ - 99
+ cgi_fw_st_virtualization_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: service_virtualization_type for the ServiceTemplate
+ default: virtual-machine
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ CGI_FW_OAM_PROTECTED_RVMI_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: oam_protected_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: oam_protected_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SGI_DIRECT_RVMI_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_direct_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: sgi_direct_interface_type
+ port_tuple_refs:
+ get_input: cgi_fw_pt_vlan_VM1_name_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_OAM_PROTECTED_RVMI_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: oam_protected_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: oam_protected_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SGI_DIRECT_RVMI_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_direct_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: sgi_direct_interface_type
+ port_tuple_refs:
+ get_input: cgi_fw_pt_vlan_VM2_name_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_NIMBUS_HSL_RVMI_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: nimbus_hsl_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: nimbus_hsl_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_NIMBUS_HSL_RVMI_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: nimbus_hsl_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type:
+ get_input: nimbus_hsl_interface_type
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SERVER_1:
+ type: org.openecomp.resource.vfc.nodes.heat.cgi_fw
+ properties:
+ flavor:
+ get_input: cgi_fw_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cgi_fw_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ vf_module_name:
+ get_input: vf_module_name
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cgi_fw_names
+ - 0
+ scheduler_hints:
+ group: CGI_FW_RAG_group
+ CGI_FW_RSG_SI_1:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_sg_cgi_fw
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ description: Security Group of CGI FW ServiceInstance
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 0
+ - protocol: '58'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: udp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: '132'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 0
+ - protocol: '58'
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 1
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_protected_net_dummy_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_2
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME:
+ get_input:
+ - cgi_fw_names
+ - 0
+ security_group_refs:
+ - CGI_FW_RSG_SI_1
+ virtual_network_refs:
+ - get_input: sgi_protected_net_dummy_fqdn
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CGI_FW_SERVER_1
+ relationship: tosca.relationships.network.BindsTo
+ CGI_FW_SERVER_2:
+ type: org.openecomp.resource.vfc.nodes.heat.cgi_fw
+ properties:
+ flavor:
+ get_input: cgi_fw_flavor_name
+ availability_zone:
+ get_attribute:
+ - contrail_vmi_subinterface
+ - virtual_machine_interface_allowed_address_pairs
+ - allowed_address_pair
+ image:
+ get_input: cgi_fw_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ vf_module_name:
+ get_input: vf_module_name
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cgi_fw_names
+ - 1
+ scheduler_hints:
+ group: CGI_FW_RAG_group
+ contrail_vmi_subinterface:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME:
+ get_input: vipr_atm_name_0
+ virtual_network_refs:
+ - get_input: oam_protected_net_fqdn
+ virtual_machine_interface_properties:
+ service_interface_type: left
+ port_tuple_refs:
+ - get_input: port_name
+ groups:
+ CGI_FW_RAG_group:
+ type: tosca.groups.Root
+ members:
+ - CGI_FW_SERVER_1
+ - CGI_FW_SERVER_2
+ base_firstnet_fgi_frwl_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base_firstnet_fgi_frwl.yml
+ description: |
+ HOT template to create SecurityGroup//ServerGroup//ServiceTemplate:
+ members:
+ - CGI_FW_OAM_PROTECTED_RVMI_2
+ - CGI_FW_SGI_DIRECT_RVMI_1
+ - CGI_FW_OAM_PROTECTED_RVMI_1
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ - CGI_FW_NIMBUS_HSL_RVMI_2
+ - CGI_FW_NIMBUS_HSL_RVMI_1
+ - CGI_FW_SERVER_1
+ - CGI_FW_RSG_SI_1
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1
+ - CGI_FW_SERVER_2
+ - contrail_vmi_subinterface
+ policies:
+ CGI_FW_RAG_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_srg_cgi_fw
+ params:
+ VNF_NAME:
+ get_input: vnf_name
+ container_type: host
+ targets:
+ - CGI_FW_RAG_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..a4168d91ca
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "base_firstnet_fgi_frwl.yml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_firstnet_fgi_frwl.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.env
new file mode 100644
index 0000000000..0001d8a92b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.env
@@ -0,0 +1,71 @@
+#FIRSTNET - FW -CGI // Contrail 3.0 Version 2 Template
+#AUTHORS: Rajesh Anne (ja702x)
+
+#####################
+parameters:
+#####################
+
+#### fq_name means different things in different contexts/resources/attributes
+# fq_name: 'default-domain:Nimbus:????'
+
+## GLOBAL//Basic Parameters
+ vnf_name: 'zrdm3firstnetfcgi02'
+ domain: 'default-domain'
+
+#### PROTECTED_NET_1
+ sgi_protected_interface_type: 'left'
+#### DIRECT_NET_1
+ sgi_direct_interface_type: 'right'
+
+## ST//ServiceTemplate Parameters
+ cgi_fw_st_version: 2
+# service_template_properties_service_mode: 'transparent' / 'in-network' / 'in-network-nat'
+ cgi_fw_st_mode: 'in-network-nat'
+ cgi_fw_st_type: 'firewall'
+ cgi_fw_st_virtualization_type: 'virtual-machine'
+
+## GLOBAL//Basic Parameters
+ vf_module_name: 'zsde1fcgi02'
+ vf_module_id: 'dummy_vf_module_id'
+ vnf_id: 'dummy_vnf_id'
+
+## Global//Network Parameters
+ oam_protected_net_fqdn: 'default-domain:ALU-L3:alu_l3_mt_net'
+ sgi_protected_net_dummy: 'firstnet_dummy_net_1'
+ sgi_protected_net_dummy_fqdn: 'default-domain:ALU-L3:firstnet_dummy_net_1'
+ sgi_direct_net_fqdn: 'default-domain:ALU-L3:fgi_direct'
+ nimbus_hsl_net_fqdn: 'default-domain:ALU-L3:alu-firstnet-net'
+#### MGMT_NET_1
+ oam_protected_interface_type: 'management'
+
+#### HSL_NET_1
+ nimbus_hsl_interface_type: 'other'
+
+## PT//PortTuple Parameters
+ cgi_fw_pt_vlan_VM1_name_fqdn: [ ]
+ cgi_fw_pt_vlan_VM2_name_fqdn: [ ]
+##cgi_fw_pt_vlan10_VM1_name_fqdn: [ 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan10:default-port-tuple-303c36d9-7111-4b76-9e8e-f6394d81e567' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_11:default-port-tuple' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_12:default-port-tuple-b53a9a1f-b929-4769-8957-7138278855c5' ]
+##cgi_fw_pt_vlan10_VM2_name_fqdn: [ 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan10:default-port-tuple' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_11:default-port-tuple-da45ffdb-d09c-46e9-a7e4-535d00c6303f' , 'default-domain:Nimbus:zsde1fcgi01_si_cgi_fw_vlan_12:default-port-tuple' ]
+## VMI//VirtualMachineInterface ECMP Parameters
+ cgi_fw_vmi_ecmp_configured: True
+ cgi_fw_vmi_ecmp_src_ip: True
+ cgi_fw_vmi_ecmp_dst_ip: True
+ cgi_fw_vmi_ecmp_ip_protocol: False
+ cgi_fw_vmi_ecmp_src_port: False
+ cgi_fw_vmi_ecmp_dst_port: False
+
+## II/InstanceIp Parameters
+ cgi_fw_oam_protected_ips: '192.168.50.40,192.168.50.41'
+#### II//InstanceIp OS::Neutron::Subnet UUID for right network -- sgi_direct_net
+ sgi_direct_subnet_id: '63858a9d-696b-4731-b3b3-7c8dfd777b9e'
+#### II//InstanceIp OS::Neutron::Subnet UUID for right network v6 --sgi_direct_net v6
+ sgi_direct_ipv6_subnet_id: '4560666e-f306-4d7b-b0ec-a2d4330e9600'
+#### II/InstanceIp Property instance_ip_family for VM Interface 3 IPv6 (RIGHT/DIRECT)
+ sgi_direct_family_v6: 'v6'
+
+## VM//NovaServer Parameters
+ cgi_fw_image_name: 'F5_LB-FW_F5_12_1_HF1_Startup'
+ cgi_fw_flavor_name: 'm1.xlarge'
+ availability_zone_0: 'nova'
+ availability_zone_1: 'nova'
+ cgi_fw_names: 'zsde1fcgi02fgi001,zsde1fcgi02fgi002' \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.yml
new file mode 100644
index 0000000000..01e6db751a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrNestedAtt/inputfiles/base_firstnet_fgi_frwl.yml
@@ -0,0 +1,526 @@
+heat_template_version: 2015-04-30
+#FIRSTNET - FW -FGI// Contrail 3.0 Version 2 Template
+#AUTHORS: Rajesh Anne (ja702x)
+description: >
+ HOT template to create SecurityGroup//ServerGroup//ServiceTemplate:
+
+#####################
+parameters:
+#####################
+
+## GLOBAL//Basic Parameters
+## OPENECOMP VNF//VM Parameters
+ vnf_name:
+ type: string
+ description: Unique name for this VF instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+
+ domain:
+ type: string
+ description: domain for the ServiceTemplate
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+ vf_module_name:
+ type: string
+ description: Unique name for this VF Module instance
+# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC
+## GLOBAL//Network Parameters
+ sgi_protected_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+ sgi_direct_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+ oam_protected_net_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ sgi_protected_net_dummy:
+ type: string
+ description: name for the VirtualNetwork
+ sgi_protected_net_dummy1:
+ type: string
+ description: name for the VirtualNetwork
+ sgi_protected_net_dummy_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ sgi_direct_net_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ nimbus_hsl_net_fqdn:
+ type: string
+ description: fq_name for the VirtualNetwork
+ oam_protected_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+
+ nimbus_hsl_interface_type:
+ type: string
+ description: service_interface_type for ServiceInstance
+## PT//PortTuple Parameters
+ cgi_fw_pt_vlan_VM1_name_fqdn:
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+ cgi_fw_pt_vlan_VM2_name_fqdn:
+ type: json
+ description: fqdn of the ServiceInstance in PortTuple Resource
+## ST//ServiceTemplate Parameters
+ cgi_fw_st_version:
+ type: number
+ description: version for the ServiceTemplate
+ constraints:
+ - range: { min: 0, max: 99 }
+ description: Must be a number between 0 and 99
+ cgi_fw_st_mode:
+ type: string
+ description: service_mode for the ServiceTemplate
+ cgi_fw_st_type:
+ type: string
+ description: service_type for the ServiceTemplate
+ cgi_fw_st_virtualization_type:
+ type: string
+ description: service_virtualization_type for the ServiceTemplate
+## VMI//VirtualMachineInterface ECMP Parameters
+ cgi_fw_vmi_ecmp_configured:
+ type: boolean
+ description: hashing_configured for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_src_ip:
+ type: boolean
+ description: source_ip for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_dst_ip:
+ type: boolean
+ description: destination_ip for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_ip_protocol:
+ type: boolean
+ description: ip_protocol for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_src_port:
+ type: boolean
+ description: source_port for the VirtualMachineInterface
+ cgi_fw_vmi_ecmp_dst_port:
+ type: boolean
+ description: destination_port for the VirtualMachineInterface
+## II//InstanceIp
+ sgi_direct_family_v6:
+ type: string
+ description: IP Family Address for InstanceIp
+ sgi_direct_subnet_id:
+ type: string
+ description: Subnet UUID for InstanceIp
+ sgi_direct_ipv6_subnet_id:
+ type: string
+ description: Subnet UUID for InstanceIp
+## VM//NovaServer Parameters
+ cgi_fw_image_name:
+ type: string
+ description: image_name for the ServiceInstance VM
+ cgi_fw_flavor_name:
+ type: string
+ description: flavor for the ServiceInstance VM
+ availability_zone_0:
+ type: string
+ description: availability_zone for the ServiceInstance
+ availability_zone_1:
+ type: string
+ description: availability_zone for the ServiceInstance
+ cgi_fw_names:
+ type: comma_delimited_list
+ label: Firewall VM Name
+ description: Comma Delimited List of Names for ServiceInstance VMs
+ cgi_fw_oam_protected_ips:
+ type: comma_delimited_list
+ description: the ips of the management network for CGI FW
+ contrail_vmi_subinterface:
+ type: string
+ port_name:
+ type: string
+ subinterface_name_prefix:
+ type: string
+#####################
+resources:
+#####################
+
+## RSG//Resource:SecurityGroup
+ CGI_FW_RSG_SI_1:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: Security Group of CGI FW ServiceInstance
+ name:
+ str_replace:
+ template: VNF_NAME_sg_cgi_fw
+ 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": 0}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "udp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "132", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "icmp", "ethertype": "IPv4"}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "tcp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "udp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "132", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "58", "ethertype": "IPv6"}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "udp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "132", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "icmp", "ethertype": "IPv4"}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "tcp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "udp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "132", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 0}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "58", "ethertype": "IPv6"}
+
+## RAG//Resource:Anti-Affinity Group
+ CGI_FW_RAG:
+ type: OS::Nova::ServerGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_srg_cgi_fw
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ policies:
+ - anti-affinity
+
+## RST//Resource:ServiceTemplate
+ CGI_FW_RST_1:
+ type: OS::ContrailV2::ServiceTemplate
+ properties:
+ domain: { get_param: domain }
+ name:
+ str_replace:
+ template: VNF_NAME_st_cgi_fw
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ service_template_properties:
+ service_template_properties_version: { get_param: cgi_fw_st_version }
+ service_template_properties_service_mode: { get_param: cgi_fw_st_mode }
+ service_template_properties_service_type: { get_param: cgi_fw_st_type }
+ service_template_properties_service_virtualization_type: { get_param: cgi_fw_st_virtualization_type }
+ service_template_properties_interface_type:
+ - service_template_properties_interface_type_service_interface_type: { get_param: sgi_protected_interface_type }
+ - service_template_properties_interface_type_service_interface_type: { get_param: sgi_direct_interface_type }
+
+## RVMI//Resource:VirtualMachineInterface
+#### CGI_FW VirtualMachineInterface for 1st Interface // MGMT // oam_protected_NET_1
+ CGI_FW_OAM_PROTECTED_RVMI_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: oam_protected_interface_type }
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+ CGI_FW_OAM_PROTECTED_RVMI_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_1
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: oam_protected_interface_type }
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+#### CGI_FW VirtualMachineInterface for 2nd Interface // LEFT // PROTECTED_NET_1 (ServiceChain)
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+ CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_dummy
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+#### CGI_FW VirtualMachineInterface for 3rd Interface // RIGHT // DIRECT_NET_1 (ServiceChain)
+ CGI_FW_SGI_DIRECT_RVMI_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured:
+ get_param: cgi_fw_vmi_ecmp_configured
+ ecmp_hashing_include_fields_source_ip:
+ get_param: cgi_fw_vmi_ecmp_src_ip
+ ecmp_hashing_include_fields_destination_ip:
+ get_param: cgi_fw_vmi_ecmp_dst_ip
+ ecmp_hashing_include_fields_ip_protocol:
+ get_param: cgi_fw_vmi_ecmp_ip_protocol
+ ecmp_hashing_include_fields_source_port:
+ get_param: cgi_fw_vmi_ecmp_src_port
+ ecmp_hashing_include_fields_destination_port:
+ get_param: cgi_fw_vmi_ecmp_dst_port
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: sgi_direct_interface_type }
+ port_tuple_refs: { get_param: cgi_fw_pt_vlan_VM1_name_fqdn }
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+ CGI_FW_SGI_DIRECT_RVMI_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_3
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ ecmp_hashing_include_fields:
+ ecmp_hashing_include_fields_hashing_configured:
+ get_param: cgi_fw_vmi_ecmp_configured
+ ecmp_hashing_include_fields_source_ip:
+ get_param: cgi_fw_vmi_ecmp_src_ip
+ ecmp_hashing_include_fields_destination_ip:
+ get_param: cgi_fw_vmi_ecmp_dst_ip
+ ecmp_hashing_include_fields_ip_protocol:
+ get_param: cgi_fw_vmi_ecmp_ip_protocol
+ ecmp_hashing_include_fields_source_port:
+ get_param: cgi_fw_vmi_ecmp_src_port
+ ecmp_hashing_include_fields_destination_port:
+ get_param: cgi_fw_vmi_ecmp_dst_port
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: sgi_direct_interface_type }
+ port_tuple_refs: { get_param: cgi_fw_pt_vlan_VM2_name_fqdn }
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+#### CGI_FW VirtualMachineInterface for 4th Interface // OTHER // HSL_NET_1
+ CGI_FW_NIMBUS_HSL_RVMI_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,0 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: nimbus_hsl_interface_type }
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+ CGI_FW_NIMBUS_HSL_RVMI_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_vmi_4
+ params:
+ VM_NAME: { get_param: [ cgi_fw_names,1 ] }
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type: { get_param: nimbus_hsl_interface_type }
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+ security_group_refs:
+ - get_resource: CGI_FW_RSG_SI_1
+
+## RII//Resource:InstanceIp
+#### CGI_FW InstanceIp for 1st Interface // MGMT // oam_protected_NET_1
+ CGI_FW_OAM_PROTECTED_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RVMI_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_OAM_PROTECTED_RVMI_1
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ instance_ip_address: { get_param: [cgi_fw_oam_protected_ips,0 ] }
+ CGI_FW_OAM_PROTECTED_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_OAM_PROTECTED_RVMI_2
+ virtual_network_refs:
+ - get_param: oam_protected_net_fqdn
+ instance_ip_address: { get_param: [cgi_fw_oam_protected_ips,1 ] }
+
+#### CGI_FW InstanceIp for 2nd Interface // DUMMY // PROTECTED_NET_1
+ CGI_FW_SGI_PROTECTED_RII_DUMMY_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+ CGI_FW_SGI_PROTECTED_RII_DUMMY_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2
+ virtual_network_refs:
+ - get_param: sgi_protected_net_dummy_fqdn
+
+#### CGI_FW InstanceIp for 3rd Interface // RIGHT // DIRECT_NET_1
+ CGI_FW_SGI_DIRECT_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_1
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_subnet_id }
+ CGI_FW_SGI_DIRECT_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_2
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_subnet_id }
+
+#### CGI_FW InstanceIp for 3rd Interface v6 // RIGHT // DIRECT_NET_1
+ CGI_FW_SGI_DIRECT_V6_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_1
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_ipv6_subnet_id }
+ instance_ip_family: { get_param: sgi_direct_family_v6 }
+ CGI_FW_SGI_DIRECT_V6_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_SGI_DIRECT_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_SGI_DIRECT_RVMI_2
+ virtual_network_refs:
+ - get_param: sgi_direct_net_fqdn
+ subnet_uuid: { get_param: sgi_direct_ipv6_subnet_id }
+ instance_ip_family: { get_param: sgi_direct_family_v6 }
+
+#### CGI_FW InstanceIp for 4th Interface // OTHER // HSL_NET_1
+ CGI_FW_NIMBUS_HSL_RII_1:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_NIMBUS_HSL_RVMI_1
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_NIMBUS_HSL_RVMI_1
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+ CGI_FW_NIMBUS_HSL_RII_2:
+ type: OS::ContrailV2::InstanceIp
+ depends_on:
+ - CGI_FW_NIMBUS_HSL_RVMI_2
+ properties:
+ virtual_machine_interface_refs:
+ - get_resource: CGI_FW_NIMBUS_HSL_RVMI_2
+ virtual_network_refs:
+ - get_param: nimbus_hsl_net_fqdn
+
+## RNS//Resource:NovaServer
+#### CGI_FW ServiceInstance OS::Nova::Server VM 1
+ CGI_FW_SERVER_1:
+ type: OS::Nova::Server
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RII_1
+ - CGI_FW_SGI_PROTECTED_RII_DUMMY_1
+ - CGI_FW_SGI_DIRECT_RII_1
+ - CGI_FW_SGI_DIRECT_V6_RII_1
+ - CGI_FW_NIMBUS_HSL_RII_1
+ properties:
+ name: { get_param: [ cgi_fw_names,0 ] }
+ image: { get_param: cgi_fw_image_name }
+ flavor: { get_param: cgi_fw_flavor_name }
+ availability_zone: { get_param: availability_zone_0 }
+ scheduler_hints: { group: {get_resource: CGI_FW_RAG } }
+ networks:
+ - port: { get_resource: CGI_FW_OAM_PROTECTED_RVMI_1 }
+ - port: { get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_1 }
+ - port: { get_resource: CGI_FW_SGI_DIRECT_RVMI_1 }
+ - port: { get_resource: CGI_FW_NIMBUS_HSL_RVMI_1 }
+ metadata:
+ vf_module_name: { get_param: vf_module_name }
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ CGI_FW_SERVER_2:
+ type: OS::Nova::Server
+ depends_on:
+ - CGI_FW_OAM_PROTECTED_RII_2
+ - CGI_FW_SGI_PROTECTED_RII_DUMMY_2
+ - CGI_FW_SGI_DIRECT_RII_2
+ - CGI_FW_SGI_DIRECT_V6_RII_2
+ - CGI_FW_NIMBUS_HSL_RII_2
+ properties:
+ name: { get_param: [ cgi_fw_names,1 ] }
+ image: { get_param: cgi_fw_image_name }
+ flavor: { get_param: cgi_fw_flavor_name }
+ availability_zone: { get_attr: [contrail_vmi_subinterface, virtual_machine_interface_allowed_address_pairs, virtual_machine_interface_allowed_address_pairs_allowed_address_pair ] }
+ scheduler_hints: { group: {get_resource: CGI_FW_RAG } }
+ networks:
+ - port: { get_resource: CGI_FW_OAM_PROTECTED_RVMI_2 }
+ - port: { get_resource: CGI_FW_SGI_PROTECTED_RVMI_DUMMY_2 }
+ - port: { get_resource: CGI_FW_SGI_DIRECT_RVMI_2 }
+ - port: { get_resource: CGI_FW_NIMBUS_HSL_RVMI_2 }
+ metadata:
+ vf_module_name: { get_param: vf_module_name }
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+
+ contrail_vmi_subinterface:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: VM_NAME_PORT_3
+ params:
+ VM_NAME: { get_param: vipr_atm_name_0 }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: 'left'
+ }
+ port_tuple_refs: [{ get_param: port_name }]
+ virtual_network_refs: [{ get_param: oam_protected_net_fqdn }] \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/MainServiceTemplate.yaml
deleted file mode 100644
index 251525391b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/expectedoutputfiles/MainServiceTemplate.yaml
+++ /dev/null
@@ -1,196 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-metadata:
- template_name: Main
-imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.cmaui:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
-topology_template:
- inputs:
- cmaui_names:
- hidden: false
- immutable: false
- type: list
- description: CMAUI1, CMAUI2 server names
- entry_schema:
- type: string
- cmaui_cinder_volume_size:
- label: CMAUI Cinder volume size
- hidden: false
- immutable: false
- type: float
- description: the size of the CMAUI Cinder volume
- timezone:
- label: timezone
- hidden: false
- immutable: false
- type: string
- description: timezone
- security_group_name:
- label: security group name
- hidden: false
- immutable: false
- type: string
- description: the name of security group
- oam_network_netmask:
- label: oam network netmask
- hidden: false
- immutable: false
- type: string
- description: oam network gateway
- cmaui_image:
- hidden: false
- immutable: false
- type: string
- description: Image for CMAUI server
- vnf_id:
- hidden: false
- immutable: false
- type: string
- description: Unique ID for this VNF instance
- default: This_is_ths_MMSC-CMAUI_id
- cmaui_flavor:
- hidden: false
- immutable: false
- type: string
- description: Flavor for CMAUI server
- oam_network_gateway:
- label: oam network gateway
- hidden: false
- immutable: false
- type: string
- description: oam network gateway
- availability_zone_0:
- label: availabilityzone name
- hidden: false
- immutable: false
- type: string
- description: availabilityzone name
- cmaui_oam_ips:
- label: CMAUI oam_net IP addresses
- hidden: false
- immutable: false
- type: list
- description: CMAUI oam_net IP addresses
- entry_schema:
- type: string
- external_dns:
- label: dns server
- hidden: false
- immutable: false
- type: string
- description: dns server
- oam_net_name:
- hidden: false
- immutable: false
- type: string
- description: UID of OAM network
- external_ntp:
- label: ntp server
- hidden: false
- immutable: false
- type: string
- description: ntp server
- CMAUI_volume_type:
- label: CMAUI vm volume type
- hidden: false
- immutable: false
- type: string
- description: the name of the target volume backend
- node_templates:
- server_cmaui:
- type: org.openecomp.resource.vfc.nodes.heat.cmaui
- properties:
- flavor:
- get_input: cmaui_flavor
- availability_zone:
- get_input: availability_zone_0
- image:
- get_input: cmaui_image
- metadata:
- vnf_id:
- get_input: vnf_id
- user_data_format: RAW
- name:
- get_input:
- - cmaui_names
- - 0
- requirements:
- - dependency:
- capability: tosca.capabilities.Node
- node: cmaui_volume
- relationship: tosca.relationships.DependsOn
- - dependency:
- capability: tosca.capabilities.Node
- node: cmaui_port_0
- relationship: tosca.relationships.DependsOn
- - local_storage:
- capability: tosca.capabilities.Attachment
- node: cmaui_volume
- relationship: cmaui_volume_attachment
- cmaui_volume:
- type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
- properties:
- volume_type:
- get_input: CMAUI_volume_type
- size: '(get_input : cmaui_cinder_volume_size) * 1024'
- cmaui_port_0:
- type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
- properties:
- replacement_policy: AUTO
- security_groups:
- - get_input: security_group_name
- fixed_ips:
- - ip_address:
- get_input:
- - cmaui_oam_ips
- - 0
- network:
- get_input: oam_net_name
- requirements:
- - binding:
- capability: tosca.capabilities.network.Bindable
- node: server_cmaui
- relationship: tosca.relationships.network.BindsTo
- relationship_templates:
- cmaui_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
- properties:
- volume_id: cmaui_volume
- instance_uuid: server_cmaui
- groups:
- hot_template:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/hot_template.yml
- description: cmaui server template for vMMSC
- members:
- - server_cmaui
- - cmaui_volume
- - cmaui_port_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/hot_template.yml
index 574c0ac118..6d760276c0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/global_types/inputfiles/hot_template.yml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
#################################
#
# Changes from MSO 01/26/2016
-# Updated per ECOMP feedback
+# Updated per OPENECOMP feedback
#
#################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..bb49284131
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,460 @@
+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:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VF Module ID
+ default: '888800008888'
+ cpm_mgt_gw_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default Gateway for the Management Interface, set during boot time
+ default: 192.168.254.1
+ mgt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Management interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e101
+ ctrl_fabric_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: CIDR of Control Fabric Network
+ data3_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the fourth Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b106
+ ctrl_fabric_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the control fabric interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e102
+ data0_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b103
+ cpmaSlot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to CPMA
+ default: A
+ OS::stack_id:
+ type: string
+ required: false
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID
+ default: '111100001111'
+ cpm_mgt_ip_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMB
+ default: 192.168.254.12
+ cpm_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the CPM at boot up as key-value pairs
+ default: 'TiMOS: slot=$slt chassis=VSR card=cpm-v license-file=license.txt address=$adrp/24@active
+ address=$adrs/24@standby static-route=192.168.0.0/16@$oamGw persist=on features=795'
+ cpm_mgt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMA
+ default: 192.168.254.11
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone where this component should be instantiated
+ default: nova
+ cpm_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM name for CPM B
+ default: vbng1-cpmb
+ OS::stack_name:
+ type: string
+ required: false
+ cpm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the CPM VNF to be used
+ default: m1.medium
+ data2_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the third Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b105
+ cpm_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ default: '9000'
+ cpm_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM name for CPM A
+ default: vbng1-cpma
+ iom_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the IOM instance
+ default: VSR-14.0R4
+ iom1Slot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to IOM1
+ default: '1'
+ iom_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the IOM VNF to be used
+ default: m1.medium
+ iom_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM name for IOM 1
+ default: vbng1-iom1
+ data1_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the second Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e104
+ cpm_mgt_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network to be used by CPM
+ default: 192.168.254.0/24
+ mgt_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Management interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b101
+ ctrl_fabric_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the control fabric interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b102
+ data0_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e103
+ data2_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the third Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e105
+ iom_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ default: '9000'
+ OS::project_id:
+ type: string
+ required: false
+ cpm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the CPM instance
+ default: VSR-14.0R4
+ cpmbSlot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to CPMB
+ default: B
+ iom_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the IOM at boot up as key-value pairs
+ default: 'TiMOS: slot=$slt chassis=VSR card=iom-v mda/1=m20-v features=795'
+ data3_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the fourth Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e106
+ data1_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the second Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b104
+ stack_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the HEAT stack
+ default:
+ type: string
+ node_templates:
+ IOM1:
+ type: org.openecomp.resource.abstract.nodes.heat.VSR_IOM_template_nested
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ iom_image_name:
+ get_input: iom_image_name
+ mgt_net_id:
+ get_input: mgt_net_id
+ data3_subnet_id:
+ get_input: data3_subnet_id
+ ctrl_fabric_net_id:
+ get_input: ctrl_fabric_net_id
+ iom_flavor_name:
+ get_input: iom_flavor_name
+ security_group: sec_group
+ iom_slot:
+ get_input: iom1Slot
+ data0_subnet_id:
+ get_input: data0_subnet_id
+ data1_net_id:
+ get_input: data1_net_id
+ mgt_subnet_id:
+ get_input: mgt_subnet_id
+ service_template_filter:
+ substitute_service_template: VSR_IOM_template_nestedServiceTemplate.yaml
+ ctrl_fabric_subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ data0_net_id:
+ get_input: data0_net_id
+ data2_net_id:
+ get_input: data2_net_id
+ iom_mtu:
+ get_input: iom_mtu
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_0:
+ get_input: availability_zone_0
+ iom_smbios:
+ str_replace:
+ template:
+ get_input: iom_smbios
+ params:
+ $slt:
+ get_input: iom1Slot
+ data2_subnet_id:
+ get_input: data2_subnet_id
+ data3_net_id:
+ get_input: data3_net_id
+ data1_subnet_id:
+ get_input: data1_subnet_id
+ stack_name:
+ get_input: OS::stack_name
+ vm_name:
+ get_input: iom_name_0
+ sec_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: vsr_security_group
+ description: Security group for vSR
+ rules:
+ - protocol: tcp
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 22
+ port_range_min: 22
+ - protocol: icmp
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cpm_mgt_0_port
+ node: CPMA
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cpm_ctrl_fabric_0_port
+ node: CPMA
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cpm_mgt_0_port
+ node: CPMB
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cpm_ctrl_fabric_0_port
+ node: CPMB
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_3_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_2_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_mgt_0_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_ctrl_fabric_0_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_0_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_1_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ CPMB:
+ type: org.openecomp.resource.abstract.nodes.heat.VSR_CPM_base_template_nested
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ mgt_net_id:
+ get_input: mgt_net_id
+ cpm_mgt_ip:
+ get_input: cpm_mgt_ip_1
+ cpm_slot:
+ get_input: cpmbSlot
+ ctrl_fabric_net_id:
+ get_input: ctrl_fabric_net_id
+ security_group: sec_group
+ cpm_mgt_cidr:
+ get_input: cpm_mgt_cidr
+ mgt_subnet_id:
+ get_input: mgt_subnet_id
+ service_template_filter:
+ substitute_service_template: VSR_CPM_base_template_nestedServiceTemplate.yaml
+ ctrl_fabric_subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ vnf_id:
+ get_input: vnf_id
+ cpm_smbios:
+ str_replace:
+ template:
+ get_input: cpm_smbios
+ params:
+ $adrs:
+ get_input: cpm_mgt_ip_1
+ $slt:
+ get_input: cpmbSlot
+ $adrp:
+ get_input: cpm_mgt_ip_0
+ $oamGw:
+ get_input: cpm_mgt_gw_ip
+ cpm_image_name:
+ get_input: cpm_image_name
+ availability_zone_0:
+ get_input: availability_zone_0
+ cpm_flavor_name:
+ get_input: cpm_flavor_name
+ cpm_mtu:
+ get_input: cpm_mtu
+ stack_name:
+ get_input: OS::stack_name
+ vm_name:
+ get_input: cpm_name_1
+ CPMA:
+ type: org.openecomp.resource.abstract.nodes.heat.VSR_CPM_base_template_nested
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ mgt_net_id:
+ get_input: mgt_net_id
+ cpm_mgt_ip:
+ get_input: cpm_mgt_ip_0
+ cpm_slot:
+ get_input: cpmaSlot
+ ctrl_fabric_net_id:
+ get_input: ctrl_fabric_net_id
+ security_group: sec_group
+ cpm_mgt_cidr:
+ get_input: cpm_mgt_cidr
+ mgt_subnet_id:
+ get_input: mgt_subnet_id
+ service_template_filter:
+ substitute_service_template: VSR_CPM_base_template_nestedServiceTemplate.yaml
+ ctrl_fabric_subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ vnf_id:
+ get_input: vnf_id
+ cpm_smbios:
+ str_replace:
+ template:
+ get_input: cpm_smbios
+ params:
+ $adrs:
+ get_input: cpm_mgt_ip_1
+ $slt:
+ get_input: cpmaSlot
+ $adrp:
+ get_input: cpm_mgt_ip_0
+ $oamGw:
+ get_input: cpm_mgt_gw_ip
+ stack_id:
+ get_input: OS::stack_id
+ cpm_image_name:
+ get_input: cpm_image_name
+ availability_zone_0:
+ get_input: availability_zone_0
+ cpm_flavor_name:
+ get_input: cpm_flavor_name
+ cpm_mtu:
+ get_input: cpm_mtu
+ stack_name:
+ get_input: OS::stack_name
+ vm_name:
+ get_input: cpm_name_0
+ groups:
+ VSR_base_hot_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/VSR_base_hot.yaml
+ members:
+ - IOM1
+ - sec_group
+ - CPMB
+ - CPMA
+ outputs:
+ out1:
+ value:
+ get_input: OS::project_id \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..6cfd40fb6b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml
@@ -0,0 +1,407 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: VSR_CPM_base_template_nested
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF Module ID
+ mgt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Management interface
+ cpm_mgt_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the primary Management Interface
+ cpm_slot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to the module eg A and B
+ ctrl_fabric_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Control Fabric interface
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security group to be used
+ cpm_mgt_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the secondary Management Interface
+ mgt_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Control Fabric interface
+ project_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Id of the HEAT project
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID
+ cpm_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ stack_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Id of the HEAT stack
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone where this component should be instantiated
+ cpm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the instance
+ cpm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the VNF to be used
+ cpm_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ stack_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the HEAT stack
+ vm_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the VNF
+ node_templates:
+ CPM:
+ type: org.openecomp.resource.vfc.nodes.heat.vm
+ properties:
+ flavor:
+ get_input: cpm_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cpm_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: vm_name
+ cpm_mgt_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: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: mgt_subnet_id
+ ip_address:
+ get_input: cpm_mgt_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: cpm_mgt_cidr
+ network_role_tag: mgt
+ network:
+ get_input: mgt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CPM
+ relationship: tosca.relationships.network.BindsTo
+ cpm_ctrl_fabric_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
+ security_groups:
+ - get_input: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: cpm_mtu
+ network_role_tag: ctrl_fabric
+ network:
+ get_input: ctrl_fabric_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CPM
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ VSR_CPM_base_template_nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/VSR_CPM_base_template_nested.yaml
+ members:
+ - CPM
+ - cpm_mgt_0_port
+ - cpm_ctrl_fabric_0_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.VSR_CPM_base_template_nested
+ capabilities:
+ disk.device.read.bytes.rate_CPM:
+ - CPM
+ - disk.device.read.bytes.rate
+ network.incoming.packets_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.packets
+ vcpus_CPM:
+ - CPM
+ - vcpus
+ disk.device.write.bytes.rate_CPM:
+ - CPM
+ - disk.device.write.bytes.rate
+ endpoint_CPM:
+ - CPM
+ - endpoint
+ disk.device.usage_CPM:
+ - CPM
+ - disk.device.usage
+ network.outpoing.packets_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outpoing.packets
+ disk.iops_CPM:
+ - CPM
+ - disk.iops
+ disk.device.allocation_CPM:
+ - CPM
+ - disk.device.allocation
+ disk.read.bytes.rate_CPM:
+ - CPM
+ - disk.read.bytes.rate
+ memory_CPM:
+ - CPM
+ - memory
+ disk.write.requests_CPM:
+ - CPM
+ - disk.write.requests
+ disk.read.requests_CPM:
+ - CPM
+ - disk.read.requests
+ network.outgoing.bytes_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outgoing.bytes
+ disk.write.bytes_CPM:
+ - CPM
+ - disk.write.bytes
+ disk.capacity_CPM:
+ - CPM
+ - disk.capacity
+ disk.device.capacity_CPM:
+ - CPM
+ - disk.device.capacity
+ network.outgoing.bytes.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outgoing.bytes.rate
+ cpu_CPM:
+ - CPM
+ - cpu
+ network.incoming.packets.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.packets.rate
+ disk.device.latency_CPM:
+ - CPM
+ - disk.device.latency
+ feature_CPM:
+ - CPM
+ - feature
+ disk.device.read.bytes_CPM:
+ - CPM
+ - disk.device.read.bytes
+ disk.device.write.requests.rate_CPM:
+ - CPM
+ - disk.device.write.requests.rate
+ network.outgoing.packets.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.bytes
+ binding_CPM:
+ - CPM
+ - binding
+ binding_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - binding
+ cpu_util_CPM:
+ - CPM
+ - cpu_util
+ network.incoming.bytes.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.bytes.rate
+ disk.device.read.requests_CPM:
+ - CPM
+ - disk.device.read.requests
+ disk.device.write.bytes_CPM:
+ - CPM
+ - disk.device.write.bytes
+ network.outgoing.packets.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outgoing.packets.rate
+ disk.latency_CPM:
+ - CPM
+ - disk.latency
+ disk.usage_CPM:
+ - CPM
+ - disk.usage
+ os_CPM:
+ - CPM
+ - os
+ memory.usage_CPM:
+ - CPM
+ - memory.usage
+ network.outpoing.packets_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outpoing.packets
+ network.incoming.packets_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.packets
+ feature_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - feature
+ instance_CPM:
+ - CPM
+ - instance
+ binding_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - binding
+ network.outgoing.bytes.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_CPM:
+ - CPM
+ - disk.device.write.requests
+ disk.allocation_CPM:
+ - CPM
+ - disk.allocation
+ disk.device.iops_CPM:
+ - CPM
+ - disk.device.iops
+ disk.root.size_CPM:
+ - CPM
+ - disk.root.size
+ disk.ephemeral.size_CPM:
+ - CPM
+ - disk.ephemeral.size
+ memory.resident_CPM:
+ - CPM
+ - memory.resident
+ network.incoming.bytes.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.bytes.rate
+ attachment_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - attachment
+ attachment_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - attachment
+ disk.write.bytes.rate_CPM:
+ - CPM
+ - disk.write.bytes.rate
+ network.incoming.bytes_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.bytes
+ host_CPM:
+ - CPM
+ - host
+ feature_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - feature
+ disk.write.requests.rate_CPM:
+ - CPM
+ - disk.write.requests.rate
+ cpu.delta_CPM:
+ - CPM
+ - cpu.delta
+ disk.read.bytes_CPM:
+ - CPM
+ - disk.read.bytes
+ network.incoming.packets.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.packets.rate
+ scalable_CPM:
+ - CPM
+ - scalable
+ network.outgoing.bytes_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outgoing.bytes
+ disk.device.read.requests.rate_CPM:
+ - CPM
+ - disk.device.read.requests.rate
+ requirements:
+ dependency_CPM:
+ - CPM
+ - dependency
+ dependency_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - dependency
+ local_storage_CPM:
+ - CPM
+ - local_storage
+ dependency_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - dependency
+ link_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - link
+ link_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_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/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..fda8b20838
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml
@@ -0,0 +1,694 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: VSR_IOM_template_nested
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ iom_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the instance
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF Module ID
+ mgt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Management interface
+ data3_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the fourth Data interface
+ ctrl_fabric_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Control Fabric interface
+ iom_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the VNF to be used
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security group to be used
+ iom_slot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to the module eg 1, 2, 3, etc
+ data0_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Data interface
+ data1_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the second Data interface
+ mgt_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Control Fabric interface
+ data0_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Data interface
+ data2_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the third Data interface
+ iom_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone where this component should be instantiated
+ iom_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ data2_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the third Data interface
+ data3_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the fourth Data interface
+ data1_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the second Data interface
+ stack_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the HEAT stack
+ vm_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the VM
+ node_templates:
+ iom_data_1_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data1
+ network:
+ get_input: data1_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_data_2_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data2
+ network:
+ get_input: data2_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ IOM:
+ type: org.openecomp.resource.vfc.nodes.heat.vm
+ properties:
+ flavor:
+ get_input: iom_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: iom_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: vm_name
+ iom_data_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data0
+ network:
+ get_input: data0_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_ctrl_fabric_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
+ security_groups:
+ - get_input: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: ctrl_fabric
+ network:
+ get_input: ctrl_fabric_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_data_3_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data3
+ network:
+ get_input: data3_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_mgt_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
+ security_groups:
+ - get_input: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: mgt_subnet_id
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: mgt
+ network:
+ get_input: mgt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ VSR_IOM_template_nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/VSR_IOM_template_nested.yaml
+ members:
+ - iom_data_1_port
+ - iom_data_2_port
+ - IOM
+ - iom_data_0_port
+ - iom_ctrl_fabric_0_port
+ - iom_data_3_port
+ - iom_mgt_0_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.VSR_IOM_template_nested
+ capabilities:
+ cpu_IOM:
+ - IOM
+ - cpu
+ feature_iom_data_0_port:
+ - iom_data_0_port
+ - feature
+ disk.device.usage_IOM:
+ - IOM
+ - disk.device.usage
+ disk.iops_IOM:
+ - IOM
+ - disk.iops
+ binding_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - binding
+ disk.read.bytes_IOM:
+ - IOM
+ - disk.read.bytes
+ disk.capacity_IOM:
+ - IOM
+ - disk.capacity
+ disk.device.read.bytes_IOM:
+ - IOM
+ - disk.device.read.bytes
+ feature_iom_data_1_port:
+ - iom_data_1_port
+ - feature
+ disk.usage_IOM:
+ - IOM
+ - disk.usage
+ network.incoming.bytes_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.bytes
+ binding_IOM:
+ - IOM
+ - binding
+ disk.device.read.bytes.rate_IOM:
+ - IOM
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_iom_data_3_port:
+ - iom_data_3_port
+ - network.outgoing.bytes
+ network.outpoing.packets_iom_data_3_port:
+ - iom_data_3_port
+ - network.outpoing.packets
+ attachment_iom_data_3_port:
+ - iom_data_3_port
+ - attachment
+ instance_IOM:
+ - IOM
+ - instance
+ network.incoming.packets_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.packets
+ disk.write.requests_IOM:
+ - IOM
+ - disk.write.requests
+ attachment_iom_data_2_port:
+ - iom_data_2_port
+ - attachment
+ network.incoming.bytes.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_IOM:
+ - IOM
+ - disk.ephemeral.size
+ binding_iom_data_3_port:
+ - iom_data_3_port
+ - binding
+ network.outgoing.bytes.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.outgoing.bytes.rate
+ disk.device.capacity_IOM:
+ - IOM
+ - disk.device.capacity
+ network.outgoing.packets.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.outgoing.packets.rate
+ disk.device.iops_IOM:
+ - IOM
+ - disk.device.iops
+ disk.write.requests.rate_IOM:
+ - IOM
+ - disk.write.requests.rate
+ network.incoming.packets_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.packets
+ network.outgoing.bytes.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.outgoing.bytes.rate
+ network.incoming.packets.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.packets.rate
+ network.incoming.bytes_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.bytes
+ attachment_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - attachment
+ network.outgoing.bytes_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outgoing.bytes
+ cpu.delta_IOM:
+ - IOM
+ - cpu.delta
+ network.outgoing.bytes_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outgoing.bytes
+ disk.write.bytes_IOM:
+ - IOM
+ - disk.write.bytes
+ disk.device.write.bytes_IOM:
+ - IOM
+ - disk.device.write.bytes
+ network.incoming.packets.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.packets.rate
+ disk.read.requests_IOM:
+ - IOM
+ - disk.read.requests
+ vcpus_IOM:
+ - IOM
+ - vcpus
+ network.incoming.bytes_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.bytes
+ endpoint_IOM:
+ - IOM
+ - endpoint
+ disk.device.read.requests_IOM:
+ - IOM
+ - disk.device.read.requests
+ disk.latency_IOM:
+ - IOM
+ - disk.latency
+ memory.resident_IOM:
+ - IOM
+ - memory.resident
+ network.incoming.packets_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.packets
+ disk.device.write.requests_IOM:
+ - IOM
+ - disk.device.write.requests
+ feature_iom_data_2_port:
+ - iom_data_2_port
+ - feature
+ network.outpoing.packets_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outpoing.packets
+ network.outgoing.bytes_iom_data_2_port:
+ - iom_data_2_port
+ - network.outgoing.bytes
+ network.outpoing.packets_iom_data_2_port:
+ - iom_data_2_port
+ - network.outpoing.packets
+ network.incoming.packets_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.packets
+ binding_iom_data_0_port:
+ - iom_data_0_port
+ - binding
+ feature_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - feature
+ network.outgoing.packets.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.packets.rate
+ disk.allocation_IOM:
+ - IOM
+ - disk.allocation
+ network.incoming.packets.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.bytes
+ scalable_IOM:
+ - IOM
+ - scalable
+ network.incoming.packets.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.packets.rate
+ feature_IOM:
+ - IOM
+ - feature
+ network.incoming.bytes.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.bytes.rate
+ network.outpoing.packets_iom_data_0_port:
+ - iom_data_0_port
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_IOM:
+ - IOM
+ - disk.device.write.bytes.rate
+ attachment_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - attachment
+ network.outgoing.packets.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.outgoing.packets.rate
+ disk.device.allocation_IOM:
+ - IOM
+ - disk.device.allocation
+ network.outgoing.bytes_iom_data_0_port:
+ - iom_data_0_port
+ - network.outgoing.bytes
+ network.incoming.bytes.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.bytes.rate
+ attachment_iom_data_0_port:
+ - iom_data_0_port
+ - attachment
+ network.incoming.packets_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.packets
+ network.incoming.bytes_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.bytes
+ binding_iom_data_1_port:
+ - iom_data_1_port
+ - binding
+ network.incoming.packets_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.packets
+ network.outgoing.bytes_iom_data_1_port:
+ - iom_data_1_port
+ - network.outgoing.bytes
+ network.incoming.packets.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outgoing.bytes.rate
+ host_IOM:
+ - IOM
+ - host
+ feature_iom_data_3_port:
+ - iom_data_3_port
+ - feature
+ feature_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - feature
+ binding_iom_data_2_port:
+ - iom_data_2_port
+ - binding
+ network.outpoing.packets_iom_data_1_port:
+ - iom_data_1_port
+ - network.outpoing.packets
+ network.outgoing.packets.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.outgoing.packets.rate
+ disk.device.latency_IOM:
+ - IOM
+ - disk.device.latency
+ network.incoming.bytes.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.bytes.rate
+ disk.device.write.requests.rate_IOM:
+ - IOM
+ - disk.device.write.requests.rate
+ network.incoming.bytes_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.bytes
+ disk.write.bytes.rate_IOM:
+ - IOM
+ - disk.write.bytes.rate
+ cpu_util_IOM:
+ - IOM
+ - cpu_util
+ network.outpoing.packets_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outpoing.packets
+ disk.device.read.requests.rate_IOM:
+ - IOM
+ - disk.device.read.requests.rate
+ os_IOM:
+ - IOM
+ - os
+ memory.usage_IOM:
+ - IOM
+ - memory.usage
+ attachment_iom_data_1_port:
+ - iom_data_1_port
+ - attachment
+ disk.read.bytes.rate_IOM:
+ - IOM
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.packets.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outgoing.packets.rate
+ binding_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - binding
+ network.outgoing.bytes.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.outgoing.bytes.rate
+ memory_IOM:
+ - IOM
+ - memory
+ disk.root.size_IOM:
+ - IOM
+ - disk.root.size
+ network.outgoing.bytes.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.outgoing.bytes.rate
+ requirements:
+ link_iom_data_2_port:
+ - iom_data_2_port
+ - link
+ dependency_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - dependency
+ dependency_iom_data_3_port:
+ - iom_data_3_port
+ - dependency
+ dependency_IOM:
+ - IOM
+ - dependency
+ dependency_iom_data_0_port:
+ - iom_data_0_port
+ - dependency
+ dependency_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - dependency
+ dependency_iom_data_2_port:
+ - iom_data_2_port
+ - dependency
+ link_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - link
+ link_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - link
+ dependency_iom_data_1_port:
+ - iom_data_1_port
+ - dependency
+ link_iom_data_1_port:
+ - iom_data_1_port
+ - link
+ link_iom_data_0_port:
+ - iom_data_0_port
+ - link
+ link_iom_data_3_port:
+ - iom_data_3_port
+ - link
+ local_storage_IOM:
+ - IOM
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..e0abad9f1b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/MANIFEST.json
@@ -0,0 +1,27 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "VSR_CPM_base_template_nested.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "VSR_IOM_template_nested.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "VSR_base_hot.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "VSR_base_hot.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_CPM_base_template_nested.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_CPM_base_template_nested.yaml
new file mode 100644
index 0000000000..868eaf4142
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_CPM_base_template_nested.yaml
@@ -0,0 +1,98 @@
+heat_template_version: 2013-05-23
+
+parameters:
+
+ availability_zone_0:
+ type: string
+ description: Availability zone where this component should be instantiated
+ cpm_image_name:
+ type: string
+ description: Image to be used for the instance
+ cpm_flavor_name:
+ type: string
+ description: Flavor of the VNF to be used
+ security_group:
+ type: string
+ description: Security group to be used
+ mgt_net_id:
+ type: string
+ description: Network used by the Management interface
+ mgt_subnet_id:
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_net_id:
+ type: string
+ description: Network used by the Control Fabric interface
+ ctrl_fabric_subnet_id:
+ type: string
+ description: Subnet used by the Control Fabric interface
+ cpm_mgt_ip:
+ type: string
+ description: Fixed IP that will be used by the primary Management Interface
+ cpm_mgt_cidr:
+ type: string
+ description: Fixed IP that will be used by the secondary Management Interface
+ stack_name:
+ type: string
+ description: Name of the HEAT stack
+ stack_id:
+ type: string
+ description: Id of the HEAT stack
+ project_id:
+ type: string
+ description: Id of the HEAT project
+ cpm_smbios:
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ cpm_slot:
+ type: string
+ description: The slot value assigned to the module eg A and B
+ cpm_mtu:
+ type: string
+ description: MTU size in bytes
+ vnf_id:
+ type: string
+ description: VNF ID
+ vm_name:
+ type: string
+ description: Name of the VNF
+ vf_module_id:
+ type: string
+ description: VNF Module ID
+
+resources:
+ cpm_mgt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: mgt_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: mgt_subnet_id }, ip_address: { get_param: cpm_mgt_ip } } ]
+ allowed_address_pairs: [ { ip_address: { get_param: cpm_mgt_cidr } } ]
+
+ cpm_ctrl_fabric_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: ctrl_fabric_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: ctrl_fabric_subnet_id } } ]
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: cpm_mtu } }
+
+ CPM:
+ type: OS::Nova::Server
+ depends_on: [ cpm_mgt_0_port, cpm_ctrl_fabric_0_port ]
+ properties:
+ name: { get_param: vm_name }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ image: { get_param: cpm_image_name }
+ flavor: { get_param: cpm_flavor_name }
+ availability_zone: { get_param: availability_zone_0 }
+ config_drive: "true"
+ user_data: { get_param: cpm_smbios }
+ user_data_format: "RAW"
+ networks:
+ - port: { get_resource: cpm_mgt_0_port }
+ - port: { get_resource: cpm_ctrl_fabric_0_port }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_IOM_template_nested.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_IOM_template_nested.yaml
new file mode 100644
index 0000000000..6657f11420
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_IOM_template_nested.yaml
@@ -0,0 +1,153 @@
+heat_template_version: 2013-05-23
+
+parameters:
+
+ stack_name:
+ type: string
+ description: Name of the HEAT stack
+ availability_zone_0:
+ type: string
+ description: Availability zone where this component should be instantiated
+ iom_image_name:
+ type: string
+ description: Image to be used for the instance
+ iom_flavor_name:
+ type: string
+ description: Flavor of the VNF to be used
+ mgt_net_id:
+ type: string
+ description: Network used by the Management interface
+ mgt_subnet_id:
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_net_id:
+ type: string
+ description: Network used by the Control Fabric interface
+ ctrl_fabric_subnet_id:
+ type: string
+ description: Subnet used by the Control Fabric interface
+ data0_net_id:
+ type: string
+ description: Network used by the Data interface
+ data0_subnet_id:
+ type: string
+ description: Subnet used by the Data interface
+ data1_net_id:
+ type: string
+ description: Network used by the second Data interface
+ data1_subnet_id:
+ type: string
+ description: Subnet used by the second Data interface
+ data2_net_id:
+ type: string
+ description: Network used by the third Data interface
+ data2_subnet_id:
+ type: string
+ description: Subnet used by the third Data interface
+ data3_net_id:
+ type: string
+ description: Network used by the fourth Data interface
+ data3_subnet_id:
+ type: string
+ description: Subnet used by the fourth Data interface
+ security_group:
+ type: string
+ description: Security group to be used
+ iom_smbios:
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ iom_slot:
+ type: string
+ description: The slot value assigned to the module eg 1, 2, 3, etc
+ iom_mtu:
+ type: string
+ description: MTU size in bytes
+ vnf_id:
+ type: string
+ description: VNF ID
+ vm_name:
+ type: string
+ description: Name of the VM
+ vf_module_id:
+ type: string
+ description: VNF Module ID
+
+resources:
+ iom_mgt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: mgt_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: mgt_subnet_id } } ]
+
+ iom_ctrl_fabric_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: ctrl_fabric_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: ctrl_fabric_subnet_id } } ]
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data0_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_1_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data1_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_2_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data2_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_3_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data3_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ IOM:
+ type: OS::Nova::Server
+ depends_on: [ iom_mgt_0_port, iom_ctrl_fabric_0_port, iom_data_0_port, iom_data_1_port, iom_data_2_port, iom_data_3_port ]
+ properties:
+ name: { get_param: vm_name }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ image: { get_param: iom_image_name }
+ flavor: { get_param: iom_flavor_name }
+ availability_zone: { get_param: availability_zone_0 }
+ config_drive: "true"
+ user_data: { get_param: iom_smbios }
+ user_data_format: "RAW"
+ networks:
+ - port: { get_resource: iom_mgt_0_port }
+ - port: { get_resource: iom_ctrl_fabric_0_port }
+ - port: { get_resource: iom_data_0_port }
+ - port: { get_resource: iom_data_1_port }
+ - port: { get_resource: iom_data_2_port }
+ - port: { get_resource: iom_data_3_port }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.env
new file mode 100644
index 0000000000..8049626e96
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.env
@@ -0,0 +1,92 @@
+parameters:
+
+ # Name of the stack
+ stack_name:
+ type: string
+ # Name of the availability zone
+ availability_zone_0: "nova"
+
+ # VNF ID
+ vnf_id: "111100001111"
+
+ # VF Module ID
+ vf_module_id: "888800008888"
+
+ # VM Names
+ cpm_name_0: "vbng1-cpma"
+ cpm_name_1: "vbng1-cpmb"
+ iom_name_0: "vbng1-iom1"
+
+ # Name of the image for CPM and IOM VMs. Make sure you have uploaded the image.
+ cpm_image_name: "VSR-14.0R4"
+ iom_image_name: "VSR-14.0R4"
+
+ # Flavor of CPM and IOM VMs. Pick a flavor available in your Openstack tenant
+ cpm_flavor_name: "m1.medium"
+ iom_flavor_name: "m1.medium"
+
+ # UUID of the Management network
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ mgt_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e101
+ mgt_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b101
+
+ # UUID of the Control fabric - This will be created by the script
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ ctrl_fabric_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e102
+ ctrl_fabric_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b102
+
+ # UUID of the first Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data0_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e103
+ data0_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b103
+
+ # UUID of the second Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data1_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e104
+ data1_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b104
+
+ # UUID of the third Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data2_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e105
+ data2_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b105
+
+ # UUID of the fourth Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data3_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e106
+ data3_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b106
+
+
+ # Slot name for the CPM VMs. Conventionally these go as A and B
+ cpmaSlot: "A"
+ cpmbSlot: "B"
+
+ # Slot name for the IOM VM
+ iom1Slot: "1"
+
+ # The following IPs are based on the Management Network provided above
+
+ # Fixed IP for Management interface on CPM-A
+ cpm_mgt_ip_0: 192.168.254.11
+ # Fixed IP for Management interface on CPM-B
+ cpm_mgt_ip_1: 192.168.254.12
+ # Management Network CIDR
+ cpm_mgt_cidr: "192.168.254.0/24"
+ # Management Network Gateway
+ cpm_mgt_gw_ip: 192.168.254.1
+
+ # Command passed during startup of CPMs
+ cpm_smbios: "TiMOS: slot=$slt chassis=VSR card=cpm-v license-file=license.txt address=$adrp/24@active address=$adrs/24@standby static-route=192.168.0.0/16@$oamGw persist=on features=795"
+
+ # Command passed during startup of IOMs
+ iom_smbios: "TiMOS: slot=$slt chassis=VSR card=iom-v mda/1=m20-v features=795"
+
+ # MTU size in bytes
+ cpm_mtu: '9000'
+ iom_mtu: '9000'
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.yaml
new file mode 100644
index 0000000000..84fa81c339
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromMainHeat/inputfiles/VSR_base_hot.yaml
@@ -0,0 +1,213 @@
+heat_template_version: 2013-05-23
+
+parameters:
+ availability_zone_0:
+ type: string
+ description: Availability zone where this component should be instantiated
+ cpm_name_0:
+ type: string
+ description: VM name for CPM A
+ cpm_name_1:
+ type: string
+ description: VM name for CPM B
+ iom_name_0:
+ type: string
+ description: VM name for IOM 1
+ cpm_image_name:
+ type: string
+ description: Image to be used for the CPM instance
+ iom_image_name:
+ type: string
+ description: Image to be used for the IOM instance
+ cpm_flavor_name:
+ type: string
+ description: Flavor of the CPM VNF to be used
+ iom_flavor_name:
+ type: string
+ description: Flavor of the IOM VNF to be used
+ mgt_net_id:
+ type: string
+ description: Network used by the Management interface
+ mgt_subnet_id:
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_net_id:
+ type: string
+ description: Network used by the control fabric interface
+ ctrl_fabric_subnet_id:
+ type: string
+ description: Subnet used by the control fabric interface
+ data0_net_id:
+ type: string
+ description: Network used by the Data interface
+ data0_subnet_id:
+ type: string
+ description: Subnet used by the Data interface
+ data1_net_id:
+ type: string
+ description: Network used by the second Data interface
+ data1_subnet_id:
+ type: string
+ description: Subnet used by the second Data interface
+ data2_net_id:
+ type: string
+ description: Network used by the third Data interface
+ data2_subnet_id:
+ type: string
+ description: Subnet used by the third Data interface
+ data3_net_id:
+ type: string
+ description: Network used by the fourth Data interface
+ data3_subnet_id:
+ type: string
+ description: Subnet used by the fourth Data interface
+ cpmaSlot:
+ type: string
+ description: The slot value assigned to CPMA
+ cpmbSlot:
+ type: string
+ description: The slot value assigned to CPMB
+ iom1Slot:
+ type: string
+ description: The slot value assigned to IOM1
+ cpm_mgt_gw_ip:
+ type: string
+ description: Default Gateway for the Management Interface, set during boot time
+ cpm_mgt_ip_0:
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMA
+ cpm_mgt_ip_1:
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMB
+ cpm_mgt_cidr:
+ type: string
+ description: Management network to be used by CPM
+ stack_name:
+ type: string
+ description: Name of the HEAT stack
+ cpm_smbios:
+ type: string
+ description: Parameters to be passed to the CPM at boot up as key-value pairs
+ iom_smbios:
+ type: string
+ description: Parameters to be passed to the IOM at boot up as key-value pairs
+ ctrl_fabric_cidr:
+ type: string
+ description: CIDR of Control Fabric Network
+ cpm_mtu:
+ type: string
+ description: MTU size in bytes
+ iom_mtu:
+ type: string
+ description: MTU size in bytes
+ vnf_id:
+ type: string
+ description: VNF ID
+ vf_module_id:
+ type: string
+ description: VF Module ID
+
+
+resources:
+ sec_group:
+ type: "OS::Neutron::SecurityGroup"
+ properties:
+ description: Security group for vSR
+ name: vsr_security_group
+ rules:
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: tcp
+ port_range_min: 22
+ port_range_max: 22
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: icmp
+ direction: ingress
+
+ CPMA:
+ type: VSR_CPM_base_template_nested.yaml
+ properties:
+ stack_name: { get_param: "OS::stack_name" }
+ stack_id: { get_param: 'OS::stack_id' }
+ vnf_id: { get_param: "vnf_id" }
+ vm_name: { get_param: "cpm_name_0" }
+ vf_module_id: { get_param: "vf_module_id" }
+ cpm_image_name: { get_param: cpm_image_name }
+ cpm_flavor_name: { get_param: cpm_flavor_name }
+ mgt_net_id: { get_param: mgt_net_id }
+ mgt_subnet_id: { get_param: mgt_subnet_id }
+ ctrl_fabric_net_id: { get_param: ctrl_fabric_net_id }
+ ctrl_fabric_subnet_id: { get_param: ctrl_fabric_subnet_id }
+ cpm_mgt_ip: { get_param: cpm_mgt_ip_0 }
+ cpm_mgt_cidr: { get_param: cpm_mgt_cidr }
+ cpm_smbios:
+ str_replace:
+ template: { get_param: cpm_smbios }
+ params:
+ $slt: { get_param: cpmaSlot }
+ $adrp: { get_param: cpm_mgt_ip_0 }
+ $adrs: { get_param: cpm_mgt_ip_1 }
+ $oamGw: { get_param: cpm_mgt_gw_ip }
+ availability_zone_0: { get_param: availability_zone_0 }
+ security_group: { get_resource: sec_group }
+ cpm_slot: { get_param: cpmaSlot }
+ cpm_mtu: { get_param: cpm_mtu }
+ CPMB:
+ type: VSR_CPM_base_template_nested.yaml
+ properties:
+ stack_name: { get_param: "OS::stack_name" }
+ vnf_id: { get_param: "vnf_id" }
+ vm_name: { get_param: "cpm_name_1" }
+ vf_module_id: { get_param: "vf_module_id" }
+ cpm_image_name: { get_param: cpm_image_name }
+ cpm_flavor_name: { get_param: cpm_flavor_name }
+ mgt_net_id: { get_param: mgt_net_id }
+ mgt_subnet_id: { get_param: mgt_subnet_id }
+ ctrl_fabric_net_id: { get_param: ctrl_fabric_net_id }
+ ctrl_fabric_subnet_id: { get_param: ctrl_fabric_subnet_id }
+ cpm_mgt_ip: { get_param: cpm_mgt_ip_1 }
+ cpm_mgt_cidr: { get_param: cpm_mgt_cidr }
+ cpm_smbios:
+ str_replace:
+ template: { get_param: cpm_smbios }
+ params:
+ $slt: { get_param: cpmbSlot }
+ $adrp: { get_param: cpm_mgt_ip_0 }
+ $adrs: { get_param: cpm_mgt_ip_1 }
+ $oamGw: { get_param: cpm_mgt_gw_ip }
+ availability_zone_0: { get_param: availability_zone_0 }
+ security_group: { get_resource: sec_group }
+ cpm_slot: { get_param: cpmbSlot }
+ cpm_mtu: { get_param: cpm_mtu }
+ IOM1:
+ type: VSR_IOM_template_nested.yaml
+ properties:
+ stack_name: { get_param: "OS::stack_name" }
+ vnf_id: { get_param: "vnf_id" }
+ vm_name: { get_param: "iom_name_0" }
+ vf_module_id: { get_param: "vf_module_id" }
+ iom_image_name: { get_param: iom_image_name }
+ iom_flavor_name: { get_param: iom_flavor_name }
+ mgt_net_id: { get_param: mgt_net_id }
+ mgt_subnet_id: { get_param: mgt_subnet_id }
+ ctrl_fabric_net_id: { get_param: ctrl_fabric_net_id }
+ ctrl_fabric_subnet_id: { get_param: ctrl_fabric_subnet_id }
+ data0_net_id: { get_param: data0_net_id }
+ data0_subnet_id: { get_param: data0_subnet_id }
+ data1_net_id: { get_param: data1_net_id }
+ data1_subnet_id: { get_param: data1_subnet_id }
+ data2_net_id: { get_param: data2_net_id }
+ data2_subnet_id: { get_param: data2_subnet_id }
+ data3_net_id: { get_param: data3_net_id }
+ data3_subnet_id: { get_param: data3_subnet_id }
+ iom_smbios:
+ str_replace:
+ template: { get_param: iom_smbios }
+ params:
+ $slt: { get_param: iom1Slot }
+ availability_zone_0: { get_param: availability_zone_0 }
+ security_group: { get_resource: sec_group }
+ iom_slot: { get_param: iom1Slot }
+ iom_mtu: { get_param: iom_mtu }
+outputs:
+ out1:
+ value: {get_param: "OS::project_id" }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..5b6cde14cb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,448 @@
+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:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VF Module ID
+ default: '888800008888'
+ cpm_mgt_gw_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default Gateway for the Management Interface, set during boot time
+ default: 192.168.254.1
+ mgt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Management interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e101
+ ctrl_fabric_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: CIDR of Control Fabric Network
+ data3_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the fourth Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b106
+ ctrl_fabric_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the control fabric interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e102
+ data0_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b103
+ cpmaSlot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to CPMA
+ default: A
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID
+ default: '111100001111'
+ cpm_mgt_ip_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMB
+ default: 192.168.254.12
+ cpm_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the CPM at boot up as key-value pairs
+ default: 'TiMOS: slot=$slt chassis=VSR card=cpm-v license-file=license.txt address=$adrp/24@active
+ address=$adrs/24@standby static-route=192.168.0.0/16@$oamGw persist=on features=795'
+ cpm_mgt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMA
+ default: 192.168.254.11
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone where this component should be instantiated
+ default: nova
+ cpm_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM name for CPM B
+ default: vbng1-cpmb
+ OS::stack_name:
+ type: string
+ required: false
+ cpm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the CPM VNF to be used
+ default: m1.medium
+ data2_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the third Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b105
+ cpm_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ default: '9000'
+ cpm_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM name for CPM A
+ default: vbng1-cpma
+ iom_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the IOM instance
+ default: VSR-14.0R4
+ iom1Slot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to IOM1
+ default: '1'
+ iom_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the IOM VNF to be used
+ default: m1.medium
+ iom_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: VM name for IOM 1
+ default: vbng1-iom1
+ data1_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the second Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e104
+ cpm_mgt_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network to be used by CPM
+ default: 192.168.254.0/24
+ mgt_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Management interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b101
+ ctrl_fabric_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the control fabric interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b102
+ data0_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e103
+ data2_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the third Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e105
+ iom_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ default: '9000'
+ cpm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the CPM instance
+ default: VSR-14.0R4
+ cpmbSlot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to CPMB
+ default: B
+ iom_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the IOM at boot up as key-value pairs
+ default: 'TiMOS: slot=$slt chassis=VSR card=iom-v mda/1=m20-v features=795'
+ data3_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the fourth Data interface
+ default: 1024b82c-0049-4503-8b0b-eb5ff952e106
+ data1_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the second Data interface
+ default: 90ad7ea9-596f-45f4-8869-226fc876b104
+ stack_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the HEAT stack
+ default:
+ type: string
+ node_templates:
+ IOM1:
+ type: org.openecomp.resource.abstract.nodes.heat.VSR_IOM_template_nested
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ iom_image_name:
+ get_input: iom_image_name
+ mgt_net_id:
+ get_input: mgt_net_id
+ data3_subnet_id:
+ get_input: data3_subnet_id
+ ctrl_fabric_net_id:
+ get_input: ctrl_fabric_net_id
+ iom_flavor_name:
+ get_input: iom_flavor_name
+ security_group: sec_group
+ iom_slot:
+ get_input: iom1Slot
+ data0_subnet_id:
+ get_input: data0_subnet_id
+ data1_net_id:
+ get_input: data1_net_id
+ mgt_subnet_id:
+ get_input: mgt_subnet_id
+ service_template_filter:
+ substitute_service_template: VSR_IOM_template_nestedServiceTemplate.yaml
+ ctrl_fabric_subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ data0_net_id:
+ get_input: data0_net_id
+ data2_net_id:
+ get_input: data2_net_id
+ iom_mtu:
+ get_input: iom_mtu
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_0:
+ get_input: availability_zone_0
+ iom_smbios:
+ str_replace:
+ template:
+ get_input: iom_smbios
+ params:
+ $slt:
+ get_input: iom1Slot
+ data2_subnet_id:
+ get_input: data2_subnet_id
+ data3_net_id:
+ get_input: data3_net_id
+ data1_subnet_id:
+ get_input: data1_subnet_id
+ stack_name:
+ get_input: OS::stack_name
+ vm_name:
+ get_input: iom_name_0
+ sec_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name: vsr_security_group
+ description: Security group for vSR
+ rules:
+ - protocol: tcp
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 22
+ port_range_min: 22
+ - protocol: icmp
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cpm_mgt_0_port
+ node: CPMA
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cpm_ctrl_fabric_0_port
+ node: CPMA
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cpm_mgt_0_port
+ node: CPMB
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cpm_ctrl_fabric_0_port
+ node: CPMB
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_3_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_2_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_mgt_0_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_ctrl_fabric_0_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_0_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_iom_data_1_port
+ node: IOM1
+ relationship: org.openecomp.relationships.AttachesTo
+ CPMB:
+ type: org.openecomp.resource.abstract.nodes.heat.VSR_CPM_base_template_nested
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ mgt_net_id:
+ get_input: mgt_net_id
+ cpm_mgt_ip:
+ get_input: cpm_mgt_ip_1
+ cpm_slot:
+ get_input: cpmbSlot
+ ctrl_fabric_net_id:
+ get_input: ctrl_fabric_net_id
+ security_group: sec_group
+ cpm_mgt_cidr:
+ get_input: cpm_mgt_cidr
+ mgt_subnet_id:
+ get_input: mgt_subnet_id
+ service_template_filter:
+ substitute_service_template: VSR_CPM_base_template_nestedServiceTemplate.yaml
+ ctrl_fabric_subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ vnf_id:
+ get_input: vnf_id
+ cpm_smbios:
+ str_replace:
+ template:
+ get_input: cpm_smbios
+ params:
+ $adrs:
+ get_input: cpm_mgt_ip_1
+ $slt:
+ get_input: cpmbSlot
+ $adrp:
+ get_input: cpm_mgt_ip_0
+ $oamGw:
+ get_input: cpm_mgt_gw_ip
+ cpm_image_name:
+ get_input: cpm_image_name
+ availability_zone_0:
+ get_input: availability_zone_0
+ cpm_flavor_name:
+ get_input: cpm_flavor_name
+ cpm_mtu:
+ get_input: cpm_mtu
+ stack_name:
+ get_input: OS::stack_name
+ vm_name:
+ get_input: cpm_name_1
+ CPMA:
+ type: org.openecomp.resource.abstract.nodes.heat.VSR_CPM_base_template_nested
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ mgt_net_id:
+ get_input: mgt_net_id
+ cpm_mgt_ip:
+ get_input: cpm_mgt_ip_0
+ cpm_slot:
+ get_input: cpmaSlot
+ ctrl_fabric_net_id:
+ get_input: ctrl_fabric_net_id
+ security_group: sec_group
+ cpm_mgt_cidr:
+ get_input: cpm_mgt_cidr
+ mgt_subnet_id:
+ get_input: mgt_subnet_id
+ service_template_filter:
+ substitute_service_template: VSR_CPM_base_template_nestedServiceTemplate.yaml
+ ctrl_fabric_subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ vnf_id:
+ get_input: vnf_id
+ cpm_smbios:
+ str_replace:
+ template:
+ get_input: cpm_smbios
+ params:
+ $adrs:
+ get_input: cpm_mgt_ip_1
+ $slt:
+ get_input: cpmaSlot
+ $adrp:
+ get_input: cpm_mgt_ip_0
+ $oamGw:
+ get_input: cpm_mgt_gw_ip
+ cpm_image_name:
+ get_input: cpm_image_name
+ availability_zone_0:
+ get_input: availability_zone_0
+ cpm_flavor_name:
+ get_input: cpm_flavor_name
+ cpm_mtu:
+ get_input: cpm_mtu
+ stack_name:
+ get_input: OS::stack_name
+ vm_name:
+ get_input: cpm_name_0
+ groups:
+ VSR_base_hot_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/VSR_base_hot.yaml
+ members:
+ - IOM1
+ - sec_group
+ - CPMB
+ - CPMA \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..6cfd40fb6b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_CPM_base_template_nestedServiceTemplate.yaml
@@ -0,0 +1,407 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: VSR_CPM_base_template_nested
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF Module ID
+ mgt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Management interface
+ cpm_mgt_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the primary Management Interface
+ cpm_slot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to the module eg A and B
+ ctrl_fabric_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Control Fabric interface
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security group to be used
+ cpm_mgt_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP that will be used by the secondary Management Interface
+ mgt_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Control Fabric interface
+ project_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Id of the HEAT project
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID
+ cpm_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ stack_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Id of the HEAT stack
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone where this component should be instantiated
+ cpm_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the instance
+ cpm_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the VNF to be used
+ cpm_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ stack_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the HEAT stack
+ vm_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the VNF
+ node_templates:
+ CPM:
+ type: org.openecomp.resource.vfc.nodes.heat.vm
+ properties:
+ flavor:
+ get_input: cpm_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cpm_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: vm_name
+ cpm_mgt_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: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: mgt_subnet_id
+ ip_address:
+ get_input: cpm_mgt_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: cpm_mgt_cidr
+ network_role_tag: mgt
+ network:
+ get_input: mgt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CPM
+ relationship: tosca.relationships.network.BindsTo
+ cpm_ctrl_fabric_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
+ security_groups:
+ - get_input: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: cpm_mtu
+ network_role_tag: ctrl_fabric
+ network:
+ get_input: ctrl_fabric_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: CPM
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ VSR_CPM_base_template_nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/VSR_CPM_base_template_nested.yaml
+ members:
+ - CPM
+ - cpm_mgt_0_port
+ - cpm_ctrl_fabric_0_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.VSR_CPM_base_template_nested
+ capabilities:
+ disk.device.read.bytes.rate_CPM:
+ - CPM
+ - disk.device.read.bytes.rate
+ network.incoming.packets_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.packets
+ vcpus_CPM:
+ - CPM
+ - vcpus
+ disk.device.write.bytes.rate_CPM:
+ - CPM
+ - disk.device.write.bytes.rate
+ endpoint_CPM:
+ - CPM
+ - endpoint
+ disk.device.usage_CPM:
+ - CPM
+ - disk.device.usage
+ network.outpoing.packets_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outpoing.packets
+ disk.iops_CPM:
+ - CPM
+ - disk.iops
+ disk.device.allocation_CPM:
+ - CPM
+ - disk.device.allocation
+ disk.read.bytes.rate_CPM:
+ - CPM
+ - disk.read.bytes.rate
+ memory_CPM:
+ - CPM
+ - memory
+ disk.write.requests_CPM:
+ - CPM
+ - disk.write.requests
+ disk.read.requests_CPM:
+ - CPM
+ - disk.read.requests
+ network.outgoing.bytes_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outgoing.bytes
+ disk.write.bytes_CPM:
+ - CPM
+ - disk.write.bytes
+ disk.capacity_CPM:
+ - CPM
+ - disk.capacity
+ disk.device.capacity_CPM:
+ - CPM
+ - disk.device.capacity
+ network.outgoing.bytes.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outgoing.bytes.rate
+ cpu_CPM:
+ - CPM
+ - cpu
+ network.incoming.packets.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.packets.rate
+ disk.device.latency_CPM:
+ - CPM
+ - disk.device.latency
+ feature_CPM:
+ - CPM
+ - feature
+ disk.device.read.bytes_CPM:
+ - CPM
+ - disk.device.read.bytes
+ disk.device.write.requests.rate_CPM:
+ - CPM
+ - disk.device.write.requests.rate
+ network.outgoing.packets.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.bytes
+ binding_CPM:
+ - CPM
+ - binding
+ binding_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - binding
+ cpu_util_CPM:
+ - CPM
+ - cpu_util
+ network.incoming.bytes.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.bytes.rate
+ disk.device.read.requests_CPM:
+ - CPM
+ - disk.device.read.requests
+ disk.device.write.bytes_CPM:
+ - CPM
+ - disk.device.write.bytes
+ network.outgoing.packets.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.outgoing.packets.rate
+ disk.latency_CPM:
+ - CPM
+ - disk.latency
+ disk.usage_CPM:
+ - CPM
+ - disk.usage
+ os_CPM:
+ - CPM
+ - os
+ memory.usage_CPM:
+ - CPM
+ - memory.usage
+ network.outpoing.packets_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outpoing.packets
+ network.incoming.packets_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.packets
+ feature_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - feature
+ instance_CPM:
+ - CPM
+ - instance
+ binding_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - binding
+ network.outgoing.bytes.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_CPM:
+ - CPM
+ - disk.device.write.requests
+ disk.allocation_CPM:
+ - CPM
+ - disk.allocation
+ disk.device.iops_CPM:
+ - CPM
+ - disk.device.iops
+ disk.root.size_CPM:
+ - CPM
+ - disk.root.size
+ disk.ephemeral.size_CPM:
+ - CPM
+ - disk.ephemeral.size
+ memory.resident_CPM:
+ - CPM
+ - memory.resident
+ network.incoming.bytes.rate_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.bytes.rate
+ attachment_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - attachment
+ attachment_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - attachment
+ disk.write.bytes.rate_CPM:
+ - CPM
+ - disk.write.bytes.rate
+ network.incoming.bytes_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.incoming.bytes
+ host_CPM:
+ - CPM
+ - host
+ feature_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - feature
+ disk.write.requests.rate_CPM:
+ - CPM
+ - disk.write.requests.rate
+ cpu.delta_CPM:
+ - CPM
+ - cpu.delta
+ disk.read.bytes_CPM:
+ - CPM
+ - disk.read.bytes
+ network.incoming.packets.rate_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - network.incoming.packets.rate
+ scalable_CPM:
+ - CPM
+ - scalable
+ network.outgoing.bytes_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - network.outgoing.bytes
+ disk.device.read.requests.rate_CPM:
+ - CPM
+ - disk.device.read.requests.rate
+ requirements:
+ dependency_CPM:
+ - CPM
+ - dependency
+ dependency_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_0_port
+ - dependency
+ local_storage_CPM:
+ - CPM
+ - local_storage
+ dependency_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - dependency
+ link_cpm_mgt_0_port:
+ - cpm_mgt_0_port
+ - link
+ link_cpm_ctrl_fabric_0_port:
+ - cpm_ctrl_fabric_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/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..c6bb428b31
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/expectedoutputfiles/VSR_IOM_template_nestedServiceTemplate.yaml
@@ -0,0 +1,698 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: VSR_IOM_template_nested
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ iom_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image to be used for the instance
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF Module ID
+ mgt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Management interface
+ data3_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the fourth Data interface
+ ctrl_fabric_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Control Fabric interface
+ iom_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor of the VNF to be used
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security group to be used
+ iom_slot:
+ hidden: false
+ immutable: false
+ type: string
+ description: The slot value assigned to the module eg 1, 2, 3, etc
+ data0_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Data interface
+ data1_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the second Data interface
+ mgt_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the Control Fabric interface
+ data0_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the Data interface
+ data2_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the third Data interface
+ iom_mtu:
+ hidden: false
+ immutable: false
+ type: string
+ description: MTU size in bytes
+ OS::stack_id:
+ type: string
+ required: false
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone where this component should be instantiated
+ iom_smbios:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ data2_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the third Data interface
+ data3_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network used by the fourth Data interface
+ data1_subnet_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Subnet used by the second Data interface
+ stack_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the HEAT stack
+ vm_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of the VM
+ node_templates:
+ iom_data_1_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data1
+ network:
+ get_input: data1_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_data_2_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data2
+ network:
+ get_input: data2_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ IOM:
+ type: org.openecomp.resource.vfc.nodes.heat.vm
+ properties:
+ flavor:
+ get_input: iom_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: iom_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vnf_id:
+ get_input: vnf_id
+ config_drive: true
+ user_data_format:
+ get_input: OS::stack_id
+ name:
+ get_input: vm_name
+ iom_data_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data0
+ network:
+ get_input: data0_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_ctrl_fabric_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
+ security_groups:
+ - get_input: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: ctrl_fabric_subnet_id
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: ctrl_fabric
+ network:
+ get_input: ctrl_fabric_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_data_3_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ binding:vnic_type: direct
+ value_specs:
+ extra_dhcp_opts:
+ - opt_name: interface-mtu
+ opt_value:
+ get_input: iom_mtu
+ network_role_tag: data3
+ network:
+ get_input: data3_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ iom_mgt_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
+ security_groups:
+ - get_input: security_group
+ fixed_ips:
+ - subnet_id:
+ get_input: mgt_subnet_id
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: mgt
+ network:
+ get_input: mgt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: IOM
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ VSR_IOM_template_nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/VSR_IOM_template_nested.yaml
+ members:
+ - iom_data_1_port
+ - iom_data_2_port
+ - IOM
+ - iom_data_0_port
+ - iom_ctrl_fabric_0_port
+ - iom_data_3_port
+ - iom_mgt_0_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.VSR_IOM_template_nested
+ capabilities:
+ cpu_IOM:
+ - IOM
+ - cpu
+ feature_iom_data_0_port:
+ - iom_data_0_port
+ - feature
+ disk.device.usage_IOM:
+ - IOM
+ - disk.device.usage
+ disk.iops_IOM:
+ - IOM
+ - disk.iops
+ binding_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - binding
+ disk.read.bytes_IOM:
+ - IOM
+ - disk.read.bytes
+ disk.capacity_IOM:
+ - IOM
+ - disk.capacity
+ disk.device.read.bytes_IOM:
+ - IOM
+ - disk.device.read.bytes
+ feature_iom_data_1_port:
+ - iom_data_1_port
+ - feature
+ disk.usage_IOM:
+ - IOM
+ - disk.usage
+ network.incoming.bytes_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.bytes
+ binding_IOM:
+ - IOM
+ - binding
+ disk.device.read.bytes.rate_IOM:
+ - IOM
+ - disk.device.read.bytes.rate
+ network.outgoing.bytes_iom_data_3_port:
+ - iom_data_3_port
+ - network.outgoing.bytes
+ network.outpoing.packets_iom_data_3_port:
+ - iom_data_3_port
+ - network.outpoing.packets
+ attachment_iom_data_3_port:
+ - iom_data_3_port
+ - attachment
+ instance_IOM:
+ - IOM
+ - instance
+ network.incoming.packets_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.packets
+ disk.write.requests_IOM:
+ - IOM
+ - disk.write.requests
+ attachment_iom_data_2_port:
+ - iom_data_2_port
+ - attachment
+ network.incoming.bytes.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_IOM:
+ - IOM
+ - disk.ephemeral.size
+ binding_iom_data_3_port:
+ - iom_data_3_port
+ - binding
+ network.outgoing.bytes.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.outgoing.bytes.rate
+ disk.device.capacity_IOM:
+ - IOM
+ - disk.device.capacity
+ network.outgoing.packets.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.outgoing.packets.rate
+ disk.device.iops_IOM:
+ - IOM
+ - disk.device.iops
+ disk.write.requests.rate_IOM:
+ - IOM
+ - disk.write.requests.rate
+ network.incoming.packets_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.packets
+ network.outgoing.bytes.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.outgoing.bytes.rate
+ network.incoming.packets.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.packets.rate
+ network.incoming.bytes_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.bytes
+ attachment_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - attachment
+ network.outgoing.bytes_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outgoing.bytes
+ cpu.delta_IOM:
+ - IOM
+ - cpu.delta
+ network.outgoing.bytes_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outgoing.bytes
+ disk.write.bytes_IOM:
+ - IOM
+ - disk.write.bytes
+ disk.device.write.bytes_IOM:
+ - IOM
+ - disk.device.write.bytes
+ network.incoming.packets.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.packets.rate
+ disk.read.requests_IOM:
+ - IOM
+ - disk.read.requests
+ vcpus_IOM:
+ - IOM
+ - vcpus
+ network.incoming.bytes_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.bytes
+ endpoint_IOM:
+ - IOM
+ - endpoint
+ disk.device.read.requests_IOM:
+ - IOM
+ - disk.device.read.requests
+ disk.latency_IOM:
+ - IOM
+ - disk.latency
+ memory.resident_IOM:
+ - IOM
+ - memory.resident
+ network.incoming.packets_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.packets
+ disk.device.write.requests_IOM:
+ - IOM
+ - disk.device.write.requests
+ feature_iom_data_2_port:
+ - iom_data_2_port
+ - feature
+ network.outpoing.packets_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outpoing.packets
+ network.outgoing.bytes_iom_data_2_port:
+ - iom_data_2_port
+ - network.outgoing.bytes
+ network.outpoing.packets_iom_data_2_port:
+ - iom_data_2_port
+ - network.outpoing.packets
+ network.incoming.packets_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.packets
+ binding_iom_data_0_port:
+ - iom_data_0_port
+ - binding
+ feature_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - feature
+ network.outgoing.packets.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.packets.rate
+ disk.allocation_IOM:
+ - IOM
+ - disk.allocation
+ network.incoming.packets.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.bytes
+ scalable_IOM:
+ - IOM
+ - scalable
+ network.incoming.packets.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.packets.rate
+ feature_IOM:
+ - IOM
+ - feature
+ network.incoming.bytes.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.incoming.bytes.rate
+ network.outpoing.packets_iom_data_0_port:
+ - iom_data_0_port
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_IOM:
+ - IOM
+ - disk.device.write.bytes.rate
+ attachment_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - attachment
+ network.outgoing.packets.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.outgoing.packets.rate
+ disk.device.allocation_IOM:
+ - IOM
+ - disk.device.allocation
+ network.outgoing.bytes_iom_data_0_port:
+ - iom_data_0_port
+ - network.outgoing.bytes
+ network.incoming.bytes.rate_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.bytes.rate
+ attachment_iom_data_0_port:
+ - iom_data_0_port
+ - attachment
+ network.incoming.packets_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.packets
+ network.incoming.bytes_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.bytes
+ binding_iom_data_1_port:
+ - iom_data_1_port
+ - binding
+ network.incoming.packets_iom_data_3_port:
+ - iom_data_3_port
+ - network.incoming.packets
+ network.outgoing.bytes_iom_data_1_port:
+ - iom_data_1_port
+ - network.outgoing.bytes
+ network.incoming.packets.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outgoing.bytes.rate
+ host_IOM:
+ - IOM
+ - host
+ feature_iom_data_3_port:
+ - iom_data_3_port
+ - feature
+ feature_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - feature
+ binding_iom_data_2_port:
+ - iom_data_2_port
+ - binding
+ network.outpoing.packets_iom_data_1_port:
+ - iom_data_1_port
+ - network.outpoing.packets
+ network.outgoing.packets.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.outgoing.packets.rate
+ disk.device.latency_IOM:
+ - IOM
+ - disk.device.latency
+ network.incoming.bytes.rate_iom_data_2_port:
+ - iom_data_2_port
+ - network.incoming.bytes.rate
+ disk.device.write.requests.rate_IOM:
+ - IOM
+ - disk.device.write.requests.rate
+ network.incoming.bytes_iom_data_1_port:
+ - iom_data_1_port
+ - network.incoming.bytes
+ disk.write.bytes.rate_IOM:
+ - IOM
+ - disk.write.bytes.rate
+ cpu_util_IOM:
+ - IOM
+ - cpu_util
+ network.outpoing.packets_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outpoing.packets
+ disk.device.read.requests.rate_IOM:
+ - IOM
+ - disk.device.read.requests.rate
+ os_IOM:
+ - IOM
+ - os
+ memory.usage_IOM:
+ - IOM
+ - memory.usage
+ attachment_iom_data_1_port:
+ - iom_data_1_port
+ - attachment
+ disk.read.bytes.rate_IOM:
+ - IOM
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.packets.rate_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - network.outgoing.packets.rate
+ binding_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - binding
+ network.outgoing.bytes.rate_iom_data_3_port:
+ - iom_data_3_port
+ - network.outgoing.bytes.rate
+ memory_IOM:
+ - IOM
+ - memory
+ disk.root.size_IOM:
+ - IOM
+ - disk.root.size
+ network.outgoing.bytes.rate_iom_data_0_port:
+ - iom_data_0_port
+ - network.outgoing.bytes.rate
+ requirements:
+ link_iom_data_2_port:
+ - iom_data_2_port
+ - link
+ dependency_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - dependency
+ dependency_iom_data_3_port:
+ - iom_data_3_port
+ - dependency
+ dependency_IOM:
+ - IOM
+ - dependency
+ dependency_iom_data_0_port:
+ - iom_data_0_port
+ - dependency
+ dependency_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - dependency
+ dependency_iom_data_2_port:
+ - iom_data_2_port
+ - dependency
+ link_iom_mgt_0_port:
+ - iom_mgt_0_port
+ - link
+ link_iom_ctrl_fabric_0_port:
+ - iom_ctrl_fabric_0_port
+ - link
+ dependency_iom_data_1_port:
+ - iom_data_1_port
+ - dependency
+ link_iom_data_1_port:
+ - iom_data_1_port
+ - link
+ link_iom_data_0_port:
+ - iom_data_0_port
+ - link
+ link_iom_data_3_port:
+ - iom_data_3_port
+ - link
+ local_storage_IOM:
+ - IOM
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..e0abad9f1b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/MANIFEST.json
@@ -0,0 +1,27 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "VSR_CPM_base_template_nested.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "VSR_IOM_template_nested.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "VSR_base_hot.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "VSR_base_hot.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_CPM_base_template_nested.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_CPM_base_template_nested.yaml
new file mode 100644
index 0000000000..868eaf4142
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_CPM_base_template_nested.yaml
@@ -0,0 +1,98 @@
+heat_template_version: 2013-05-23
+
+parameters:
+
+ availability_zone_0:
+ type: string
+ description: Availability zone where this component should be instantiated
+ cpm_image_name:
+ type: string
+ description: Image to be used for the instance
+ cpm_flavor_name:
+ type: string
+ description: Flavor of the VNF to be used
+ security_group:
+ type: string
+ description: Security group to be used
+ mgt_net_id:
+ type: string
+ description: Network used by the Management interface
+ mgt_subnet_id:
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_net_id:
+ type: string
+ description: Network used by the Control Fabric interface
+ ctrl_fabric_subnet_id:
+ type: string
+ description: Subnet used by the Control Fabric interface
+ cpm_mgt_ip:
+ type: string
+ description: Fixed IP that will be used by the primary Management Interface
+ cpm_mgt_cidr:
+ type: string
+ description: Fixed IP that will be used by the secondary Management Interface
+ stack_name:
+ type: string
+ description: Name of the HEAT stack
+ stack_id:
+ type: string
+ description: Id of the HEAT stack
+ project_id:
+ type: string
+ description: Id of the HEAT project
+ cpm_smbios:
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ cpm_slot:
+ type: string
+ description: The slot value assigned to the module eg A and B
+ cpm_mtu:
+ type: string
+ description: MTU size in bytes
+ vnf_id:
+ type: string
+ description: VNF ID
+ vm_name:
+ type: string
+ description: Name of the VNF
+ vf_module_id:
+ type: string
+ description: VNF Module ID
+
+resources:
+ cpm_mgt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: mgt_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: mgt_subnet_id }, ip_address: { get_param: cpm_mgt_ip } } ]
+ allowed_address_pairs: [ { ip_address: { get_param: cpm_mgt_cidr } } ]
+
+ cpm_ctrl_fabric_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: ctrl_fabric_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: ctrl_fabric_subnet_id } } ]
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: cpm_mtu } }
+
+ CPM:
+ type: OS::Nova::Server
+ depends_on: [ cpm_mgt_0_port, cpm_ctrl_fabric_0_port ]
+ properties:
+ name: { get_param: vm_name }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ image: { get_param: cpm_image_name }
+ flavor: { get_param: cpm_flavor_name }
+ availability_zone: { get_param: availability_zone_0 }
+ config_drive: "true"
+ user_data: { get_param: cpm_smbios }
+ user_data_format: "RAW"
+ networks:
+ - port: { get_resource: cpm_mgt_0_port }
+ - port: { get_resource: cpm_ctrl_fabric_0_port }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_IOM_template_nested.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_IOM_template_nested.yaml
new file mode 100644
index 0000000000..3ef31a07a0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_IOM_template_nested.yaml
@@ -0,0 +1,153 @@
+heat_template_version: 2013-05-23
+
+parameters:
+
+ stack_name:
+ type: string
+ description: Name of the HEAT stack
+ availability_zone_0:
+ type: string
+ description: Availability zone where this component should be instantiated
+ iom_image_name:
+ type: string
+ description: Image to be used for the instance
+ iom_flavor_name:
+ type: string
+ description: Flavor of the VNF to be used
+ mgt_net_id:
+ type: string
+ description: Network used by the Management interface
+ mgt_subnet_id:
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_net_id:
+ type: string
+ description: Network used by the Control Fabric interface
+ ctrl_fabric_subnet_id:
+ type: string
+ description: Subnet used by the Control Fabric interface
+ data0_net_id:
+ type: string
+ description: Network used by the Data interface
+ data0_subnet_id:
+ type: string
+ description: Subnet used by the Data interface
+ data1_net_id:
+ type: string
+ description: Network used by the second Data interface
+ data1_subnet_id:
+ type: string
+ description: Subnet used by the second Data interface
+ data2_net_id:
+ type: string
+ description: Network used by the third Data interface
+ data2_subnet_id:
+ type: string
+ description: Subnet used by the third Data interface
+ data3_net_id:
+ type: string
+ description: Network used by the fourth Data interface
+ data3_subnet_id:
+ type: string
+ description: Subnet used by the fourth Data interface
+ security_group:
+ type: string
+ description: Security group to be used
+ iom_smbios:
+ type: string
+ description: Parameters to be passed to the VM at boot up as key-value pairs
+ iom_slot:
+ type: string
+ description: The slot value assigned to the module eg 1, 2, 3, etc
+ iom_mtu:
+ type: string
+ description: MTU size in bytes
+ vnf_id:
+ type: string
+ description: VNF ID
+ vm_name:
+ type: string
+ description: Name of the VM
+ vf_module_id:
+ type: string
+ description: VNF Module ID
+
+resources:
+ iom_mgt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: mgt_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: mgt_subnet_id } } ]
+
+ iom_ctrl_fabric_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: ctrl_fabric_net_id }
+ security_groups: [ { get_param: security_group} ]
+ fixed_ips: [ { subnet_id: { get_param: ctrl_fabric_subnet_id } } ]
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data0_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_1_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data1_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_2_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data2_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ iom_data_3_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_param: data3_net_id }
+ security_groups: [ { get_param: security_group} ]
+ binding:vnic_type: "direct"
+ value_specs:
+ extra_dhcp_opts:
+ - {opt_name: interface-mtu, opt_value: { get_param: iom_mtu } }
+
+ IOM:
+ type: OS::Nova::Server
+ depends_on: [ iom_mgt_0_port, iom_ctrl_fabric_0_port, iom_data_0_port, iom_data_1_port, iom_data_2_port, iom_data_3_port ]
+ properties:
+ name: { get_param: vm_name }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vf_module_id: { get_param: vf_module_id }
+ image: { get_param: iom_image_name }
+ flavor: { get_param: iom_flavor_name }
+ availability_zone: { get_param: availability_zone_0 }
+ config_drive: "true"
+ user_data: { get_param: iom_smbios }
+ user_data_format: { get_param: 'OS::stack_id' }
+ networks:
+ - port: { get_resource: iom_mgt_0_port }
+ - port: { get_resource: iom_ctrl_fabric_0_port }
+ - port: { get_resource: iom_data_0_port }
+ - port: { get_resource: iom_data_1_port }
+ - port: { get_resource: iom_data_2_port }
+ - port: { get_resource: iom_data_3_port }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.env
new file mode 100644
index 0000000000..8049626e96
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.env
@@ -0,0 +1,92 @@
+parameters:
+
+ # Name of the stack
+ stack_name:
+ type: string
+ # Name of the availability zone
+ availability_zone_0: "nova"
+
+ # VNF ID
+ vnf_id: "111100001111"
+
+ # VF Module ID
+ vf_module_id: "888800008888"
+
+ # VM Names
+ cpm_name_0: "vbng1-cpma"
+ cpm_name_1: "vbng1-cpmb"
+ iom_name_0: "vbng1-iom1"
+
+ # Name of the image for CPM and IOM VMs. Make sure you have uploaded the image.
+ cpm_image_name: "VSR-14.0R4"
+ iom_image_name: "VSR-14.0R4"
+
+ # Flavor of CPM and IOM VMs. Pick a flavor available in your Openstack tenant
+ cpm_flavor_name: "m1.medium"
+ iom_flavor_name: "m1.medium"
+
+ # UUID of the Management network
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ mgt_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e101
+ mgt_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b101
+
+ # UUID of the Control fabric - This will be created by the script
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ ctrl_fabric_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e102
+ ctrl_fabric_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b102
+
+ # UUID of the first Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data0_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e103
+ data0_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b103
+
+ # UUID of the second Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data1_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e104
+ data1_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b104
+
+ # UUID of the third Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data2_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e105
+ data2_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b105
+
+ # UUID of the fourth Data network port
+ # This is an external network. The network should be created separately
+ # NOTE: Update these based on your Openstack network configuration
+ data3_net_id: 1024b82c-0049-4503-8b0b-eb5ff952e106
+ data3_subnet_id: 90ad7ea9-596f-45f4-8869-226fc876b106
+
+
+ # Slot name for the CPM VMs. Conventionally these go as A and B
+ cpmaSlot: "A"
+ cpmbSlot: "B"
+
+ # Slot name for the IOM VM
+ iom1Slot: "1"
+
+ # The following IPs are based on the Management Network provided above
+
+ # Fixed IP for Management interface on CPM-A
+ cpm_mgt_ip_0: 192.168.254.11
+ # Fixed IP for Management interface on CPM-B
+ cpm_mgt_ip_1: 192.168.254.12
+ # Management Network CIDR
+ cpm_mgt_cidr: "192.168.254.0/24"
+ # Management Network Gateway
+ cpm_mgt_gw_ip: 192.168.254.1
+
+ # Command passed during startup of CPMs
+ cpm_smbios: "TiMOS: slot=$slt chassis=VSR card=cpm-v license-file=license.txt address=$adrp/24@active address=$adrs/24@standby static-route=192.168.0.0/16@$oamGw persist=on features=795"
+
+ # Command passed during startup of IOMs
+ iom_smbios: "TiMOS: slot=$slt chassis=VSR card=iom-v mda/1=m20-v features=795"
+
+ # MTU size in bytes
+ cpm_mtu: '9000'
+ iom_mtu: '9000'
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.yaml
new file mode 100644
index 0000000000..56d04648d8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/heatPseudoParameters/usedFromNestedHeat/inputfiles/VSR_base_hot.yaml
@@ -0,0 +1,209 @@
+heat_template_version: 2013-05-23
+
+parameters:
+ availability_zone_0:
+ type: string
+ description: Availability zone where this component should be instantiated
+ cpm_name_0:
+ type: string
+ description: VM name for CPM A
+ cpm_name_1:
+ type: string
+ description: VM name for CPM B
+ iom_name_0:
+ type: string
+ description: VM name for IOM 1
+ cpm_image_name:
+ type: string
+ description: Image to be used for the CPM instance
+ iom_image_name:
+ type: string
+ description: Image to be used for the IOM instance
+ cpm_flavor_name:
+ type: string
+ description: Flavor of the CPM VNF to be used
+ iom_flavor_name:
+ type: string
+ description: Flavor of the IOM VNF to be used
+ mgt_net_id:
+ type: string
+ description: Network used by the Management interface
+ mgt_subnet_id:
+ type: string
+ description: Subnet used by the Management interface
+ ctrl_fabric_net_id:
+ type: string
+ description: Network used by the control fabric interface
+ ctrl_fabric_subnet_id:
+ type: string
+ description: Subnet used by the control fabric interface
+ data0_net_id:
+ type: string
+ description: Network used by the Data interface
+ data0_subnet_id:
+ type: string
+ description: Subnet used by the Data interface
+ data1_net_id:
+ type: string
+ description: Network used by the second Data interface
+ data1_subnet_id:
+ type: string
+ description: Subnet used by the second Data interface
+ data2_net_id:
+ type: string
+ description: Network used by the third Data interface
+ data2_subnet_id:
+ type: string
+ description: Subnet used by the third Data interface
+ data3_net_id:
+ type: string
+ description: Network used by the fourth Data interface
+ data3_subnet_id:
+ type: string
+ description: Subnet used by the fourth Data interface
+ cpmaSlot:
+ type: string
+ description: The slot value assigned to CPMA
+ cpmbSlot:
+ type: string
+ description: The slot value assigned to CPMB
+ iom1Slot:
+ type: string
+ description: The slot value assigned to IOM1
+ cpm_mgt_gw_ip:
+ type: string
+ description: Default Gateway for the Management Interface, set during boot time
+ cpm_mgt_ip_0:
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMA
+ cpm_mgt_ip_1:
+ type: string
+ description: Fixed IP that will be used by the Management Interface on CPMB
+ cpm_mgt_cidr:
+ type: string
+ description: Management network to be used by CPM
+ stack_name:
+ type: string
+ description: Name of the HEAT stack
+ cpm_smbios:
+ type: string
+ description: Parameters to be passed to the CPM at boot up as key-value pairs
+ iom_smbios:
+ type: string
+ description: Parameters to be passed to the IOM at boot up as key-value pairs
+ ctrl_fabric_cidr:
+ type: string
+ description: CIDR of Control Fabric Network
+ cpm_mtu:
+ type: string
+ description: MTU size in bytes
+ iom_mtu:
+ type: string
+ description: MTU size in bytes
+ vnf_id:
+ type: string
+ description: VNF ID
+ vf_module_id:
+ type: string
+ description: VF Module ID
+
+
+resources:
+ sec_group:
+ type: "OS::Neutron::SecurityGroup"
+ properties:
+ description: Security group for vSR
+ name: vsr_security_group
+ rules:
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: tcp
+ port_range_min: 22
+ port_range_max: 22
+ - remote_ip_prefix: 0.0.0.0/0
+ protocol: icmp
+ direction: ingress
+
+ CPMA:
+ type: VSR_CPM_base_template_nested.yaml
+ properties:
+ stack_name: { get_param: "OS::stack_name" }
+ vnf_id: { get_param: "vnf_id" }
+ vm_name: { get_param: "cpm_name_0" }
+ vf_module_id: { get_param: "vf_module_id" }
+ cpm_image_name: { get_param: cpm_image_name }
+ cpm_flavor_name: { get_param: cpm_flavor_name }
+ mgt_net_id: { get_param: mgt_net_id }
+ mgt_subnet_id: { get_param: mgt_subnet_id }
+ ctrl_fabric_net_id: { get_param: ctrl_fabric_net_id }
+ ctrl_fabric_subnet_id: { get_param: ctrl_fabric_subnet_id }
+ cpm_mgt_ip: { get_param: cpm_mgt_ip_0 }
+ cpm_mgt_cidr: { get_param: cpm_mgt_cidr }
+ cpm_smbios:
+ str_replace:
+ template: { get_param: cpm_smbios }
+ params:
+ $slt: { get_param: cpmaSlot }
+ $adrp: { get_param: cpm_mgt_ip_0 }
+ $adrs: { get_param: cpm_mgt_ip_1 }
+ $oamGw: { get_param: cpm_mgt_gw_ip }
+ availability_zone_0: { get_param: availability_zone_0 }
+ security_group: { get_resource: sec_group }
+ cpm_slot: { get_param: cpmaSlot }
+ cpm_mtu: { get_param: cpm_mtu }
+ CPMB:
+ type: VSR_CPM_base_template_nested.yaml
+ properties:
+ stack_name: { get_param: "OS::stack_name" }
+ vnf_id: { get_param: "vnf_id" }
+ vm_name: { get_param: "cpm_name_1" }
+ vf_module_id: { get_param: "vf_module_id" }
+ cpm_image_name: { get_param: cpm_image_name }
+ cpm_flavor_name: { get_param: cpm_flavor_name }
+ mgt_net_id: { get_param: mgt_net_id }
+ mgt_subnet_id: { get_param: mgt_subnet_id }
+ ctrl_fabric_net_id: { get_param: ctrl_fabric_net_id }
+ ctrl_fabric_subnet_id: { get_param: ctrl_fabric_subnet_id }
+ cpm_mgt_ip: { get_param: cpm_mgt_ip_1 }
+ cpm_mgt_cidr: { get_param: cpm_mgt_cidr }
+ cpm_smbios:
+ str_replace:
+ template: { get_param: cpm_smbios }
+ params:
+ $slt: { get_param: cpmbSlot }
+ $adrp: { get_param: cpm_mgt_ip_0 }
+ $adrs: { get_param: cpm_mgt_ip_1 }
+ $oamGw: { get_param: cpm_mgt_gw_ip }
+ availability_zone_0: { get_param: availability_zone_0 }
+ security_group: { get_resource: sec_group }
+ cpm_slot: { get_param: cpmbSlot }
+ cpm_mtu: { get_param: cpm_mtu }
+ IOM1:
+ type: VSR_IOM_template_nested.yaml
+ properties:
+ stack_name: { get_param: "OS::stack_name" }
+ vnf_id: { get_param: "vnf_id" }
+ vm_name: { get_param: "iom_name_0" }
+ vf_module_id: { get_param: "vf_module_id" }
+ iom_image_name: { get_param: iom_image_name }
+ iom_flavor_name: { get_param: iom_flavor_name }
+ mgt_net_id: { get_param: mgt_net_id }
+ mgt_subnet_id: { get_param: mgt_subnet_id }
+ ctrl_fabric_net_id: { get_param: ctrl_fabric_net_id }
+ ctrl_fabric_subnet_id: { get_param: ctrl_fabric_subnet_id }
+ data0_net_id: { get_param: data0_net_id }
+ data0_subnet_id: { get_param: data0_subnet_id }
+ data1_net_id: { get_param: data1_net_id }
+ data1_subnet_id: { get_param: data1_subnet_id }
+ data2_net_id: { get_param: data2_net_id }
+ data2_subnet_id: { get_param: data2_subnet_id }
+ data3_net_id: { get_param: data3_net_id }
+ data3_subnet_id: { get_param: data3_subnet_id }
+ iom_smbios:
+ str_replace:
+ template: { get_param: iom_smbios }
+ params:
+ $slt: { get_param: iom1Slot }
+ availability_zone_0: { get_param: availability_zone_0 }
+ security_group: { get_resource: sec_group }
+ iom_slot: { get_param: iom1Slot }
+ iom_mtu: { get_param: iom_mtu }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-mog-0108-bs1271/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-mog-0108-bs1271/expectedoutputfiles/MainServiceTemplate.yaml
index c60020d80c..04184064bd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-mog-0108-bs1271/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-mog-0108-bs1271/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.pd_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -490,6 +466,12 @@ topology_template:
cm01_port_1:
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:
- mog_security_group
fixed_ips:
@@ -497,6 +479,10 @@ topology_template:
get_input:
- oam_net_ips
- 4
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -507,6 +493,12 @@ topology_template:
cm01_port_0:
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:
- mog_security_group
fixed_ips:
@@ -514,6 +506,9 @@ topology_template:
get_input:
- csb_net_ips
- 10
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -527,8 +522,17 @@ topology_template:
sm02_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -554,7 +558,7 @@ topology_template:
- ps_server_names
- 3
scheduler_hints:
- group: servergroup_mog03
+ group: servergroup_mog03_group
server_ps03:
type: org.openecomp.resource.vfc.nodes.heat.ps_server
properties:
@@ -570,12 +574,21 @@ topology_template:
- ps_server_names
- 2
scheduler_hints:
- group: servergroup_mog03
+ group: servergroup_mog03_group
sm01_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -589,6 +602,12 @@ topology_template:
sm02_port_2:
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:
- mog_security_group
fixed_ips:
@@ -596,6 +615,10 @@ topology_template:
get_input:
- repl_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: repl
network:
get_input: repl_net_name
server_ps02:
@@ -613,12 +636,21 @@ topology_template:
- ps_server_names
- 1
scheduler_hints:
- group: servergroup_mog03
+ group: servergroup_mog03_group
sm01_port_1:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: dummy_net_0
requirements:
- link:
@@ -632,8 +664,17 @@ topology_template:
sm02_port_1:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: dummy_net_0
requirements:
- link:
@@ -659,7 +700,7 @@ topology_template:
- ps_server_names
- 0
scheduler_hints:
- group: servergroup_mog03
+ group: servergroup_mog03_group
csb_net:
type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
properties:
@@ -681,6 +722,12 @@ topology_template:
sm01_port_2:
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:
- mog_security_group
fixed_ips:
@@ -688,11 +735,21 @@ topology_template:
get_input:
- repl_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: repl
network:
get_input: repl_net_name
pd01_port_5:
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:
- mog_security_group
fixed_ips:
@@ -700,9 +757,13 @@ topology_template:
get_input:
- ran_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: ran_net_floating_ip
+ network_role_tag: ran
network:
get_input: ran_net_name
requirements:
@@ -713,8 +774,17 @@ topology_template:
pd01_port_4:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: dummy_net_1
requirements:
- link:
@@ -728,6 +798,12 @@ topology_template:
pd02_port_5:
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:
- mog_security_group
fixed_ips:
@@ -735,9 +811,13 @@ topology_template:
get_input:
- ran_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: ran_net_floating_ip
+ network_role_tag: ran
network:
get_input: ran_net_name
requirements:
@@ -748,6 +828,12 @@ topology_template:
pd01_port_6:
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:
- mog_security_group
fixed_ips:
@@ -755,9 +841,13 @@ topology_template:
get_input:
- sl_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: sl_net_floating_ip
+ network_role_tag: sl
network:
get_input: sl_net_name
requirements:
@@ -768,6 +858,12 @@ topology_template:
pd02_port_6:
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:
- mog_security_group
fixed_ips:
@@ -775,9 +871,13 @@ topology_template:
get_input:
- sl_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: sl_net_floating_ip
+ network_role_tag: sl
network:
get_input: sl_net_name
requirements:
@@ -800,12 +900,21 @@ topology_template:
- sm_server_names
- 1
scheduler_hints:
- group: servergroup_mog02
+ group: servergroup_mog02_group
ps02_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -819,8 +928,17 @@ topology_template:
ps04_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -834,8 +952,17 @@ topology_template:
ps03_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -849,8 +976,17 @@ topology_template:
ps01_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -876,7 +1012,7 @@ topology_template:
- sm_server_names
- 0
scheduler_hints:
- group: servergroup_mog02
+ group: servergroup_mog02_group
dummy_net_0:
type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
properties:
@@ -910,7 +1046,7 @@ topology_template:
- cm_server_names
- 0
scheduler_hints:
- group: servergroup_mog03
+ group: servergroup_mog03_group
server_pd_02:
type: org.openecomp.resource.vfc.nodes.heat.pd_server
properties:
@@ -926,7 +1062,7 @@ topology_template:
- pd_server_names
- 1
scheduler_hints:
- group: servergroup_mog01
+ group: servergroup_mog01_group
server_pd_01:
type: org.openecomp.resource.vfc.nodes.heat.pd_server
properties:
@@ -942,7 +1078,7 @@ topology_template:
- pd_server_names
- 0
scheduler_hints:
- group: servergroup_mog01
+ group: servergroup_mog01_group
server_oam01:
type: org.openecomp.resource.vfc.nodes.heat.oam_server
properties:
@@ -958,7 +1094,7 @@ topology_template:
- oam_server_names
- 0
scheduler_hints:
- group: servergroup_mog02
+ group: servergroup_mog02_group
server_oam02:
type: org.openecomp.resource.vfc.nodes.heat.oam_server
properties:
@@ -974,7 +1110,7 @@ topology_template:
- oam_server_names
- 1
scheduler_hints:
- group: servergroup_mog02
+ group: servergroup_mog02_group
dummy_net_1:
type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
properties:
@@ -1156,6 +1292,12 @@ topology_template:
pd01_port_1:
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:
- mog_security_group
fixed_ips:
@@ -1163,6 +1305,10 @@ topology_template:
get_input:
- oam_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1173,6 +1319,12 @@ topology_template:
pd02_port_3:
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:
- mog_security_group
fixed_ips:
@@ -1180,9 +1332,13 @@ topology_template:
get_input:
- rx_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: rx_net_floating_ip
+ network_role_tag: rx
network:
get_input: rx_net_name
requirements:
@@ -1193,8 +1349,17 @@ topology_template:
pd01_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -1208,8 +1373,17 @@ topology_template:
pd02_port_4:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: dummy_net_1
requirements:
- link:
@@ -1223,6 +1397,12 @@ topology_template:
pd01_port_3:
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:
- mog_security_group
fixed_ips:
@@ -1230,9 +1410,13 @@ topology_template:
get_input:
- rx_net_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: rx_net_floating_ip
+ network_role_tag: rx
network:
get_input: rx_net_name
requirements:
@@ -1243,6 +1427,12 @@ topology_template:
pd02_port_1:
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:
- mog_security_group
fixed_ips:
@@ -1250,6 +1440,10 @@ topology_template:
get_input:
- oam_net_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1260,8 +1454,17 @@ topology_template:
pd01_port_2:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: dummy_net_0
requirements:
- link:
@@ -1275,8 +1478,17 @@ topology_template:
pd02_port_2:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: dummy_net_0
requirements:
- link:
@@ -1290,6 +1502,12 @@ topology_template:
oam01_port_1:
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:
- mog_security_group
fixed_ips:
@@ -1297,6 +1515,10 @@ topology_template:
get_input:
- oam_net_ips
- 2
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1307,8 +1529,17 @@ topology_template:
pd02_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -1322,6 +1553,12 @@ topology_template:
oam02_port_1:
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:
- mog_security_group
fixed_ips:
@@ -1329,6 +1566,10 @@ topology_template:
get_input:
- oam_net_ips
- 3
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -1339,8 +1580,17 @@ topology_template:
oam01_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -1354,8 +1604,17 @@ topology_template:
oam02_port_0:
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
security_groups:
- mog_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: csb_net
requirements:
- link:
@@ -1367,19 +1626,7 @@ topology_template:
node: server_oam02
relationship: tosca.relationships.network.BindsTo
groups:
- servergroup_mog01:
- type: tosca.groups.Root
- members:
- - server_pd_01
- - server_pd_02
- servergroup_mog02:
- type: tosca.groups.Root
- members:
- - server_oam01
- - server_oam02
- - server_sm01
- - server_sm02
- servergroup_mog03:
+ servergroup_mog03_group:
type: tosca.groups.Root
members:
- server_ps01
@@ -1387,7 +1634,12 @@ topology_template:
- server_ps03
- server_ps04
- server_cm01
- hot-mog-0108-bs1271:
+ servergroup_mog01_group:
+ type: tosca.groups.Root
+ members:
+ - server_pd_01
+ - server_pd_02
+ hot-mog-0108-bs1271_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot-mog-0108-bs1271.yml
@@ -1438,22 +1690,29 @@ topology_template:
- oam02_port_1
- oam01_port_0
- oam02_port_0
+ servergroup_mog02_group:
+ type: tosca.groups.Root
+ members:
+ - server_oam01
+ - server_oam02
+ - server_sm01
+ - server_sm02
policies:
- servergroup_mog01:
+ servergroup_mog03_policy:
type: org.openecomp.policies.placement.Antilocate
properties:
container_type: host
targets:
- - servergroup_mog01
- servergroup_mog02:
+ - servergroup_mog03_group
+ servergroup_mog01_policy:
type: org.openecomp.policies.placement.Antilocate
properties:
container_type: host
targets:
- - servergroup_mog02
- servergroup_mog03:
+ - servergroup_mog01_group
+ servergroup_mog02_policy:
type: org.openecomp.policies.placement.Antilocate
properties:
container_type: host
targets:
- - servergroup_mog03 \ No newline at end of file
+ - servergroup_mog02_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/inputfiles/MANIFEST.json
index 14c9a99cf7..43ae85291c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/inputfiles/MANIFEST.json
@@ -14,10 +14,12 @@
{
"file": "hot-nimbus-oam-volumes_v1.0.yaml",
"type": "HEAT_VOL",
- "data": [{
- "file": "hot-nimbus-oam-volumes_v1.0.env",
- "type": "HEAT_ENV"
- }]
+ "data": [
+ {
+ "file": "hot-nimbus-oam-volumes_v1.0.env",
+ "type": "HEAT_ENV"
+ }
+ ]
}
]
},
@@ -32,36 +34,44 @@
{
"file": "hot-nimbus-pcm-volumes_v1.0.yaml",
"type": "HEAT_VOL",
- "data": [{
- "file": "hot-nimbus-pcm-volumes_v1.0.env",
- "type": "HEAT_ENV"
- }]
+ "data": [
+ {
+ "file": "hot-nimbus-pcm-volumes_v1.0.env",
+ "type": "HEAT_ENV"
+ }
+ ]
}
]
},
{
"file": "hot-nimbus-ppd_v1.0.yaml",
"type": "HEAT",
- "data": [{
- "file": "hot-nimbus-ppd_v1.1.env",
- "type": "HEAT_ENV"
- }]
+ "data": [
+ {
+ "file": "hot-nimbus-ppd_v1.1.env",
+ "type": "HEAT_ENV"
+ }
+ ]
},
{
"file": "hot-nimbus-pps_v1.0.yaml",
"type": "HEAT",
- "data": [{
- "file": "hot-nimbus-pps_v1.0.env",
- "type": "HEAT_ENV"
- }]
+ "data": [
+ {
+ "file": "hot-nimbus-pps_v1.0.env",
+ "type": "HEAT_ENV"
+ }
+ ]
},
{
"file": "hot-nimbus-psm_v1.0.yaml",
"type": "HEAT",
- "data": [{
- "file": "hot-nimbus-psm_v1.0.env",
- "type": "HEAT_ENV"
- }]
+ "data": [
+ {
+ "file": "hot-nimbus-psm_v1.0.env",
+ "type": "HEAT_ENV"
+ }
+ ]
},
{
"file": "nested-oam_v1.0.yaml",
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/GlobalSubstitutionTypesServiceTemplate.yaml
index e04c27f8fc..0e28138a0d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested-pps_v1.0:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,38 +11,69 @@ node_types:
pcrf_cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
pcrf_vnf_id:
type: string
description: PCRF VNF Id
+ required: true
+ status: SUPPORTED
pcrf_cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
pcrf_cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_pps_image_name:
type: string
description: PCRF PS image name
+ required: true
+ status: SUPPORTED
pcrf_pps_flavor_name:
type: string
description: flavor name of PCRF PS instance
+ required: true
+ status: SUPPORTED
pcrf_pps_server_name:
type: string
description: PCRF PS server name
+ required: true
+ status: SUPPORTED
pcrf_security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_pcrf_pps_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_pps_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_server_pps:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_pcrf_server_pps:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -75,8 +82,106 @@ node_types:
- 0
- UNBOUNDED
capabilities:
- binding_pcrf_server_pps:
- type: tosca.capabilities.network.Bindable
+ disk.latency_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pcrf_server_pps:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -90,20 +195,197 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.device.latency_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_pcrf_pps_port_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.usage_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.read.requests_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pcrf_pps_port_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.ephemeral.size_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.capacity_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_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_pcrf_server_pps:
+ type: org.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_pcrf_pps_port_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_pcrf_server_pps:
+ type: org.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_pcrf_server_pps:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- host_pcrf_server_pps:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ disk.device.write.requests_pcrf_server_pps:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -113,124 +395,215 @@ node_types:
pcrf_ppd_image_name:
type: string
description: PCRF PD image name
+ required: true
+ status: SUPPORTED
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
pcrf_sp_net_ip:
type: string
description: Sp network ip
+ required: true
+ status: SUPPORTED
pcrf_ppd_server_name:
type: string
description: PCRF PD server name
+ required: true
+ status: SUPPORTED
pcrf_gx_net_ip:
type: string
description: Gx network ip
+ required: true
+ status: SUPPORTED
pcrf_sy_net_name:
type: string
description: Sy network name
+ required: true
+ status: SUPPORTED
pcrf_sp_net_mask:
type: string
description: Sp network mask
+ required: true
+ status: SUPPORTED
pcrf_sd_net_ip:
type: string
description: Sd network ip
+ required: true
+ status: SUPPORTED
pcrf_vnf_id:
type: string
description: PCRF VNF Id
+ required: true
+ status: SUPPORTED
pcrf_oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
pcrf_oam_net_ip:
type: string
description: OAM network ip
+ required: true
+ status: SUPPORTED
pcrf_cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_gx_net_mask:
type: string
description: Gx network mask
+ required: true
+ status: SUPPORTED
pcrf_sgi_sy_net_name:
type: string
description: Sgi Sy network name
+ required: true
+ status: SUPPORTED
pcrf_sd_net_name:
type: string
description: Sd network name
+ required: true
+ status: SUPPORTED
pcrf_oam_net_gw:
type: string
description: CPS network gateway
+ required: true
+ status: SUPPORTED
pcrf_rx_net_name:
type: string
description: Rx network name
+ required: true
+ status: SUPPORTED
pcrf_rx_net_ip:
type: string
description: Rx network ip
+ required: true
+ status: SUPPORTED
pcrf_sy_net_ip:
type: string
description: Sy network ip
+ required: true
+ status: SUPPORTED
pcrf_sgi_sy_net_ip:
type: string
description: Sgi Sy network ip
+ required: true
+ status: SUPPORTED
pcrf_ppd_flavor_name:
type: string
description: flavor name of PCRF PD instance
+ required: true
+ status: SUPPORTED
pcrf_cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcrf_sy_net_mask:
type: string
description: Sy network mask
+ required: true
+ status: SUPPORTED
pcrf_cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
pcrf_oam_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_lb_management_vip:
type: string
description: CPS OAM LB VIP
+ required: true
+ status: SUPPORTED
pcrf_sgi_sy_net_mask:
type: string
description: Sgi Sy network mask
+ required: true
+ status: SUPPORTED
pcrf_lb_internal_vip:
type: string
description: CPS Internal LB VIP
+ required: true
+ status: SUPPORTED
pcrf_sd_net_mask:
type: string
description: Sd network mask
+ required: true
+ status: SUPPORTED
pcrf_gx_net_name:
type: string
description: Gx network name
+ required: true
+ status: SUPPORTED
pcrf_sp_net_name:
type: string
description: Sp network name
+ required: true
+ status: SUPPORTED
pcrf_rx_net_mask:
type: string
description: Rx network mask
+ required: true
+ status: SUPPORTED
pcrf_security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_pcrf_ppd_port_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_5:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_ppd_port_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_6:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_ppd_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_3:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_server_ppd:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_pcrf_server_ppd:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -238,54 +611,595 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcrf_ppd_port_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_4:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_ppd_port_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_7:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_ppd_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_ppd_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_ppd_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_ppd_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ disk.device.read.requests_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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.usage_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_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_pcrf_ppd_port_2:
+ type: org.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_pcrf_ppd_port_1:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_3:
+ type: org.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_pcrf_server_ppd:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_pcrf_ppd_port_6:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.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_pcrf_ppd_port_7:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_7:
+ type: org.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_pcrf_ppd_port_3:
+ type: org.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_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_6:
+ type: org.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_pcrf_ppd_port_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcrf_ppd_port_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcrf_ppd_port_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_pcrf_ppd_port_1:
+ type: org.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_pcrf_ppd_port_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcrf_ppd_port_2:
+ type: org.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_pcrf_ppd_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcrf_ppd_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcrf_ppd_port_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcrf_ppd_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcrf_ppd_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.resident_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_7:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.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_pcrf_server_ppd:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcrf_ppd_port_6:
+ type: org.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_pcrf_server_ppd:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_server_ppd:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_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_pcrf_ppd_port_3:
+ type: org.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_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_1:
+ type: org.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_pcrf_ppd_port_2:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_7:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_6:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_3:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_1:
+ type: org.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_pcrf_ppd_port_2:
+ type: org.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_pcrf_ppd_port_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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_pcrf_server_ppd:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_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_pcrf_ppd_port_6:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.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_pcrf_ppd_port_7:
+ type: org.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_pcrf_ppd_port_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_2:
+ type: org.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_pcrf_ppd_port_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcrf_ppd_port_1:
+ type: org.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_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_ppd_port_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcrf_ppd_port_3:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_6:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ network.outpoing.packets_pcrf_ppd_port_7:
+ type: org.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_pcrf_ppd_port_2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- binding_pcrf_server_ppd:
- type: tosca.capabilities.network.Bindable
+ network.outpoing.packets_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -299,18 +1213,37 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ network.outpoing.packets_pcrf_ppd_port_2:
+ type: org.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_pcrf_ppd_port_6:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ network.outpoing.packets_pcrf_ppd_port_3:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_3:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
- os_pcrf_server_ppd:
- type: tosca.capabilities.OperatingSystem
+ network.outpoing.packets_pcrf_ppd_port_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
@@ -319,13 +1252,137 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- endpoint_pcrf_server_ppd:
- type: tosca.capabilities.Endpoint.Admin
+ network.outpoing.packets_pcrf_ppd_port_1:
+ type: org.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_pcrf_server_ppd:
- type: tosca.capabilities.Scalable
+ feature_pcrf_ppd_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_ppd_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_ppd_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_ppd_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_pcrf_ppd_port_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_pcrf_ppd_port_1:
+ type: org.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_pcrf_ppd_port_2:
+ type: org.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_pcrf_ppd_port_3:
+ type: org.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_pcrf_ppd_port_7:
+ type: org.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_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.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_pcrf_ppd_port_5:
+ type: org.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_pcrf_ppd_port_6:
+ type: org.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_pcrf_ppd_port_6:
+ type: org.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_pcrf_ppd_port_3:
+ type: org.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_pcrf_ppd_port_7:
+ type: org.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_pcrf_ppd_port_4:
+ type: org.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_pcrf_ppd_port_1:
+ type: org.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_pcrf_ppd_port_2:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_ppd_port_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.rate_pcrf_server_ppd:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -334,10 +1391,51 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- host_pcrf_server_ppd:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ memory.usage_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.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_pcrf_server_ppd:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -347,57 +1445,99 @@ node_types:
pcrf_pcm_flavor_name:
type: string
description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
pcrf_cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcrf_pcm_image_name:
type: string
description: PCRF CM image name
+ required: true
+ status: SUPPORTED
pcrf_vnf_id:
type: string
description: PCRF VNF Id
+ required: true
+ status: SUPPORTED
pcrf_oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
pcrf_cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
pcrf_oam_net_ip:
type: string
description: OAM network ip
+ required: true
+ status: SUPPORTED
pcrf_oam_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_pcm_server_name:
type: string
description: PCRF CM server name
+ required: true
+ status: SUPPORTED
pcrf_oam_net_gw:
type: string
description: CPS network gateway
+ required: true
+ status: SUPPORTED
pcrf_pcm_volume_id:
type: string
description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
pcrf_security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
attributes:
pcrf_server_pcm_id:
type: string
description: the pcm server id
+ status: SUPPORTED
requirements:
+ - dependency_pcrf_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_pcm_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_pcrf_server_pcm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -405,16 +1545,136 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcrf_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_pcm_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- endpoint_pcrf_server_pcm:
- type: tosca.capabilities.Endpoint.Admin
+ disk.device.latency_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_1:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_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
+ scalable_pcrf_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_1:
+ type: org.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_pcrf_pcm_port_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_pcrf_server_pcm:
+ type: org.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.usage_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_1:
+ type: org.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_pcrf_pcm_port_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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -423,13 +1683,15 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_pcrf_server_pcm:
- type: tosca.capabilities.network.Bindable
+ disk.read.bytes.rate_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
- type: tosca.capabilities.OperatingSystem
+ network.incoming.packets.rate_pcrf_pcm_port_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
@@ -440,8 +1702,9 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_pcrf_server_pcm:
- type: tosca.capabilities.Scalable
+ network.incoming.packets.rate_pcrf_pcm_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -450,59 +1713,315 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_1:
+ type: org.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_pcrf_pcm_port_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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_pcrf_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_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_pcrf_pcm_port_1:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_1:
+ type: org.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_pcrf_pcm_port_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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_1:
+ type: org.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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_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_pcrf_server_pcm:
+ type: org.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_pcrf_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_pcrf_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcrf_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu.delta_pcrf_server_pcm:
+ type: org.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_pcrf_server_pcm:
+ type: org.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.nested-oam_v1.0:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
properties:
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
pcrf_oam_flavor_name:
type: string
description: flavor name of PCRF OAM instance
+ required: true
+ status: SUPPORTED
pcrf_oam_server_name:
type: string
description: PCRF OAM server name
+ required: true
+ status: SUPPORTED
pcrf_cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcrf_vnf_id:
type: string
description: PCRF VNF Id
+ required: true
+ status: SUPPORTED
pcrf_oam_net_name:
type: string
description: OAM network name
+ required: true
+ status: SUPPORTED
pcrf_cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
pcrf_arbiter_vip:
type: string
description: OAM Arbiter LB VIP
+ required: true
+ status: SUPPORTED
pcrf_oam_net_ip:
type: string
description: OAM network ip
+ required: true
+ status: SUPPORTED
pcrf_oam_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_oam_volume_id:
type: string
description: CPS OAM Cinder Volume
+ required: true
+ status: SUPPORTED
pcrf_oam_net_gw:
type: string
description: CPS network gateway
+ required: true
+ status: SUPPORTED
pcrf_oam_image_name:
type: string
description: PCRF OAM image name
+ required: true
+ status: SUPPORTED
pcrf_security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
attributes:
pcrf_oam_vol_attachment_id:
type: string
description: the pcrf_oam_vol_attachment_id id
+ status: SUPPORTED
requirements:
+ - dependency_pcrf_server_oam:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_pcrf_server_oam:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -510,23 +2029,71 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_pcrf_oam_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_oam_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_pcrf_oam_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_pcrf_oam_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- endpoint_pcrf_server_oam:
- type: tosca.capabilities.Endpoint.Admin
+ disk.device.latency_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -537,11 +2104,171 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.usage_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_1:
+ type: org.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_pcrf_oam_port_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_pcrf_oam_port_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_pcrf_oam_port_1:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
+ disk.device.read.bytes_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_1:
+ type: org.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_pcrf_oam_port_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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_1:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_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
+ endpoint_pcrf_server_oam:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_server_oam:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_1:
type: tosca.capabilities.Attachment
occurrences:
@@ -552,8 +2279,141 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- scalable_pcrf_server_oam:
- type: tosca.capabilities.Scalable
+ disk.device.usage_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_1:
+ type: org.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_pcrf_oam_port_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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_1:
+ type: org.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_pcrf_oam_port_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
+ instance_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcrf_oam_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcrf_oam_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_pcrf_server_oam:
+ type: org.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_pcrf_server_oam:
+ type: org.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_pcrf_oam_port_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_pcrf_oam_port_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_pcrf_oam_port_1:
+ type: org.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_pcrf_server_oam:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -562,37 +2422,68 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ network.outpoing.packets_pcrf_oam_port_1:
+ type: org.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.nested-psm_v1.0:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
properties:
pcrf_cps_net_ip:
type: string
description: CPS network ip
+ required: true
+ status: SUPPORTED
pcrf_psm_flavor_name:
type: string
description: flavor name of PCRF SM instance
+ required: true
+ status: SUPPORTED
pcrf_psm_image_name:
type: string
description: PCRF SM image name
+ required: true
+ status: SUPPORTED
availabilityzone_name:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
pcrf_vnf_id:
type: string
description: PCRF VNF Id
+ required: true
+ status: SUPPORTED
pcrf_cps_net_name:
type: string
description: CPS network name
+ required: true
+ status: SUPPORTED
pcrf_cps_net_mask:
type: string
description: CPS network mask
+ required: true
+ status: SUPPORTED
pcrf_psm_server_name:
type: string
description: PCRF SM server name
+ required: true
+ status: SUPPORTED
pcrf_security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_pcrf_server_psm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_pcrf_server_psm:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -600,31 +2491,135 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_psm01_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_psm01_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ disk.write.requests.rate_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_psm01_port_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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_psm01_port_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_pcrf_server_psm:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
- os_pcrf_server_psm:
- type: tosca.capabilities.OperatingSystem
+ disk.latency_pcrf_server_psm:
+ type: org.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_psm01_port_0:
- type: tosca.capabilities.Attachment
+ disk.device.read.bytes_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -635,6 +2630,183 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ network.outgoing.packets.rate_psm01_port_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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_psm01_port_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_psm01_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_pcrf_server_psm:
+ type: org.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_psm01_port_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_psm01_port_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.ephemeral.size_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_psm01_port_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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_pcrf_server_psm:
+ type: org.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_psm01_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_psm01_port_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_pcrf_server_psm:
+ type: org.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_psm01_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
scalable_pcrf_server_psm:
type: tosca.capabilities.Scalable
occurrences:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/MainServiceTemplate.yaml
index d6c309eb24..3a0b1239a2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
availabilityzone_name:
@@ -688,10 +664,6 @@ topology_template:
capability: tosca.capabilities.Attachment
node: pcrf_oam_volume_id_22
relationship: tosca.relationships.AttachesTo
- - dependency:
- capability: tosca.capabilities.Node
- node: server_pcrf_oam_001
- relationship: tosca.relationships.DependsOn
server_pcrf_ppd_003:
type: org.openecomp.resource.abstract.nodes.heat.nested-ppd_v1.0
directives:
@@ -1566,24 +1538,19 @@ topology_template:
pcrf_security_group_name:
get_input: pcrf_security_group_name
groups:
- hot-nimbus-ppd_v1.0:
+ hot-nimbus-pps_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-ppd_v1.0.yaml
- description: heat template that creates PCRF Policy Director stack
- members:
- - server_pcrf_ppd_003
- - server_pcrf_ppd_004
- - server_pcrf_ppd_001
- - server_pcrf_ppd_002
- hot-nimbus-pcm_v1.0:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/hot-nimbus-pcm_v1.0.yaml
- description: heat template that creates PCRF Cluman stack
+ heat_file: ../Artifacts/hot-nimbus-pps_v1.0.yaml
+ description: heat template that creates PCRF Policy Server stack
members:
- - server_pcrf_pcm_001
- hot-nimbus-oam_v1.0:
+ - server_pcrf_pps_001
+ - server_pcrf_pps_002
+ - server_pcrf_pps_003
+ - server_pcrf_pps_004
+ - server_pcrf_pps_005
+ - server_pcrf_pps_006
+ hot-nimbus-oam_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot-nimbus-oam_v1.0.yaml
@@ -1591,14 +1558,23 @@ topology_template:
members:
- server_pcrf_oam_001
- server_pcrf_oam_002
- hot-nimbus-oam-volumes_v1.0:
+ hot-nimbus-ppd_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-oam-volumes_v1.0.yaml
+ heat_file: ../Artifacts/hot-nimbus-ppd_v1.0.yaml
+ description: heat template that creates PCRF Policy Director stack
members:
- - pcrf_oam_volume_id_11
- - pcrf_oam_volume_id_22
- hot-nimbus-psm_v1.0:
+ - server_pcrf_ppd_003
+ - server_pcrf_ppd_004
+ - server_pcrf_ppd_001
+ - server_pcrf_ppd_002
+ hot-nimbus-pcm-volumes_v1.0_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm-volumes_v1.0.yaml
+ members:
+ - pcrf_pcm_volume_id_1
+ hot-nimbus-psm_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot-nimbus-psm_v1.0.yaml
@@ -1616,24 +1592,20 @@ topology_template:
- server_pcrf_psm_009
- server_pcrf_psm_010
- server_pcrf_psm_011
- hot-nimbus-pcm-volumes_v1.0:
+ hot-nimbus-pcm_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pcm-volumes_v1.0.yaml
+ heat_file: ../Artifacts/hot-nimbus-pcm_v1.0.yaml
+ description: heat template that creates PCRF Cluman stack
members:
- - pcrf_pcm_volume_id_1
- hot-nimbus-pps_v1.0:
+ - server_pcrf_pcm_001
+ hot-nimbus-oam-volumes_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/hot-nimbus-pps_v1.0.yaml
- description: heat template that creates PCRF Policy Server stack
+ heat_file: ../Artifacts/hot-nimbus-oam-volumes_v1.0.yaml
members:
- - server_pcrf_pps_001
- - server_pcrf_pps_002
- - server_pcrf_pps_003
- - server_pcrf_pps_004
- - server_pcrf_pps_005
- - server_pcrf_pps_006
+ - pcrf_oam_volume_id_11
+ - pcrf_oam_volume_id_22
outputs:
pcrf_oam_volume_id_1:
description: the oam 001 volume id
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-oam_v1.0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-oam_v1.0ServiceTemplate.yaml
index 59b9cde00c..d2c15dd6ca 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-oam_v1.0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-oam_v1.0ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-oam_v1.0
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcrf_oam_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -135,21 +111,31 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcrf_oam_image_name
- config_drive: 'True'
metadata:
vnf_id:
get_input: pcrf_vnf_id
+ config_drive: true
user_data_format: RAW
name:
get_input: pcrf_oam_server_name
pcrf_oam_port_1:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_oam
network:
get_input: pcrf_oam_net_name
requirements:
@@ -160,14 +146,24 @@ topology_template:
pcrf_oam_port_0:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: pcrf_arbiter_vip
+ network_role_tag: pcrf_cps
network:
get_input: pcrf_cps_net_name
requirements:
@@ -176,7 +172,7 @@ topology_template:
node: pcrf_server_oam
relationship: tosca.relationships.network.BindsTo
groups:
- nested-oam_v1.0:
+ nested-oam_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-oam_v1.0.yaml
@@ -192,28 +188,199 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-oam_v1.0
capabilities:
- endpoint_pcrf_server_oam:
+ disk.device.latency_pcrf_server_oam:
- pcrf_server_oam
- - endpoint
+ - disk.device.latency
+ disk.device.write.requests_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.write.requests
+ vcpus_pcrf_server_oam:
+ - pcrf_server_oam
+ - vcpus
+ scalable_pcrf_server_oam:
+ - pcrf_server_oam
+ - scalable
+ disk.device.write.bytes_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.write.bytes
+ disk.device.write.requests.rate_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.write.requests.rate
+ disk.device.read.requests_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.read.requests
host_pcrf_server_oam:
- pcrf_server_oam
- host
+ disk.usage_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.usage
+ disk.device.capacity_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.capacity
+ disk.latency_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.latency
+ disk.device.allocation_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.allocation
+ memory_pcrf_server_oam:
+ - pcrf_server_oam
+ - memory
+ disk.device.write.bytes.rate_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.write.bytes.rate
+ disk.write.bytes.rate_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.write.bytes.rate
+ network.incoming.packets.rate_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.incoming.packets
+ network.incoming.packets_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.incoming.packets
+ disk.read.bytes.rate_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.read.bytes.rate
+ disk.write.requests.rate_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.write.requests.rate
+ memory.resident_pcrf_server_oam:
+ - pcrf_server_oam
+ - memory.resident
+ disk.write.requests_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.write.requests
binding_pcrf_server_oam:
- pcrf_server_oam
- binding
+ disk.device.read.bytes_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.outgoing.bytes.rate
+ disk.capacity_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.capacity
+ cpu_pcrf_server_oam:
+ - pcrf_server_oam
+ - cpu
+ network.incoming.bytes_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.incoming.bytes
+ disk.read.requests_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.read.requests
+ network.incoming.bytes_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.incoming.bytes
+ endpoint_pcrf_server_oam:
+ - pcrf_server_oam
+ - endpoint
+ feature_pcrf_server_oam:
+ - pcrf_server_oam
+ - feature
+ disk.device.read.requests.rate_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.read.requests.rate
+ disk.ephemeral.size_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.ephemeral.size
attachment_pcrf_oam_port_1:
- pcrf_oam_port_1
- attachment
attachment_pcrf_oam_port_0:
- pcrf_oam_port_0
- attachment
- scalable_pcrf_server_oam:
+ disk.device.usage_pcrf_server_oam:
- pcrf_server_oam
- - scalable
+ - disk.device.usage
+ cpu_util_pcrf_server_oam:
+ - pcrf_server_oam
+ - cpu_util
+ disk.write.bytes_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.write.bytes
+ network.incoming.bytes.rate_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.incoming.bytes.rate
+ disk.allocation_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.allocation
+ disk.device.iops_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.iops
+ disk.read.bytes_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.outgoing.packets.rate
+ instance_pcrf_server_oam:
+ - pcrf_server_oam
+ - instance
+ disk.device.read.bytes.rate_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.device.read.bytes.rate
+ binding_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - binding
+ binding_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - binding
+ disk.root.size_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.root.size
+ feature_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - feature
+ feature_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - feature
+ disk.iops_pcrf_server_oam:
+ - pcrf_server_oam
+ - disk.iops
+ memory.usage_pcrf_server_oam:
+ - pcrf_server_oam
+ - memory.usage
+ network.outgoing.bytes_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.outgoing.bytes
+ network.outpoing.packets_pcrf_oam_port_0:
+ - pcrf_oam_port_0
+ - network.outpoing.packets
+ network.outgoing.bytes_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.outgoing.bytes
+ cpu.delta_pcrf_server_oam:
+ - pcrf_server_oam
+ - cpu.delta
os_pcrf_server_oam:
- pcrf_server_oam
- os
+ network.outpoing.packets_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - network.outpoing.packets
requirements:
+ dependency_pcrf_server_oam:
+ - pcrf_server_oam
+ - dependency
local_storage_pcrf_server_oam:
- pcrf_server_oam
- local_storage
@@ -222,4 +389,10 @@ topology_template:
- link
link_pcrf_oam_port_0:
- pcrf_oam_port_0
- - link \ No newline at end of file
+ - link
+ dependency_pcrf_oam_port_1:
+ - pcrf_oam_port_1
+ - dependency
+ dependency_pcrf_oam_port_0:
+ - pcrf_oam_port_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/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pcm_v1.0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pcm_v1.0ServiceTemplate.yaml
index 86a37e4e55..71550c19cd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pcm_v1.0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pcm_v1.0ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pcm_v1.0
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcrf_pcm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -123,11 +99,21 @@ topology_template:
pcrf_pcm_port_0:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_cps
network:
get_input: pcrf_cps_net_name
requirements:
@@ -144,21 +130,31 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcrf_pcm_image_name
- config_drive: 'True'
metadata:
vnf_id:
get_input: pcrf_vnf_id
+ config_drive: true
user_data_format: RAW
name:
get_input: pcrf_pcm_server_name
pcrf_pcm_port_1:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_oam
network:
get_input: pcrf_oam_net_name
requirements:
@@ -167,7 +163,7 @@ topology_template:
node: pcrf_server_pcm
relationship: tosca.relationships.network.BindsTo
groups:
- nested-pcm_v1.0:
+ nested-pcm_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pcm_v1.0.yaml
@@ -183,31 +179,208 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v1.0
capabilities:
- endpoint_pcrf_server_pcm:
+ disk.device.latency_pcrf_server_pcm:
- pcrf_server_pcm
- - endpoint
+ - disk.device.latency
+ disk.device.write.requests_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.write.requests
+ vcpus_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - vcpus
+ network.outgoing.bytes_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.outgoing.bytes
+ disk.device.write.bytes_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.write.bytes
+ network.outgoing.bytes_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.outgoing.bytes
+ scalable_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - scalable
+ disk.device.read.requests_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.read.requests
+ network.outgoing.bytes.rate_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.write.requests.rate_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.write.requests.rate
+ disk.usage_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.usage
+ disk.latency_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.latency
+ disk.device.capacity_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.capacity
+ network.incoming.bytes_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.incoming.bytes
+ network.incoming.bytes_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.incoming.bytes
+ disk.device.allocation_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.allocation
+ memory_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - memory
+ disk.device.write.bytes.rate_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.write.bytes.rate
+ disk.write.bytes.rate_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.write.bytes.rate
attachment_pcrf_pcm_port_0:
- pcrf_pcm_port_0
- attachment
+ disk.read.bytes.rate_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.incoming.packets.rate
+ host_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - host
+ network.incoming.packets.rate_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.incoming.packets.rate
+ attachment_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - attachment
+ disk.write.requests_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.write.requests
+ network.incoming.packets_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.incoming.packets
+ network.incoming.packets_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.incoming.packets
+ memory.resident_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - memory.resident
+ disk.write.requests.rate_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.write.requests.rate
binding_pcrf_server_pcm:
- pcrf_server_pcm
- binding
+ disk.device.read.bytes_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.read.bytes
+ disk.capacity_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.capacity
+ disk.read.requests_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.read.requests
+ feature_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - feature
+ endpoint_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - endpoint
+ disk.device.read.requests.rate_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.read.requests.rate
+ disk.ephemeral.size_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.ephemeral.size
+ cpu_util_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - cpu_util
+ disk.write.bytes_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.write.bytes
+ disk.device.usage_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.usage
+ feature_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - feature
+ feature_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - feature
+ disk.allocation_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.allocation
+ disk.read.bytes_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.outgoing.packets.rate
+ disk.device.read.bytes.rate_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.read.bytes.rate
+ instance_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - instance
+ disk.device.iops_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.device.iops
+ network.outpoing.packets_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.outpoing.packets
+ disk.iops_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.iops
+ network.incoming.bytes.rate_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - network.incoming.bytes.rate
+ cpu_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - cpu
+ network.incoming.bytes.rate_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - network.incoming.bytes.rate
+ disk.root.size_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - disk.root.size
+ binding_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - binding
os_pcrf_server_pcm:
- pcrf_server_pcm
- os
- host_pcrf_server_pcm:
+ binding_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - binding
+ cpu.delta_pcrf_server_pcm:
- pcrf_server_pcm
- - host
- scalable_pcrf_server_pcm:
+ - cpu.delta
+ memory.usage_pcrf_server_pcm:
- pcrf_server_pcm
- - scalable
- attachment_pcrf_pcm_port_1:
- - pcrf_pcm_port_1
- - attachment
+ - memory.usage
requirements:
+ dependency_pcrf_pcm_port_0:
+ - pcrf_pcm_port_0
+ - dependency
+ dependency_pcrf_server_pcm:
+ - pcrf_server_pcm
+ - dependency
local_storage_pcrf_server_pcm:
- pcrf_server_pcm
- local_storage
+ dependency_pcrf_pcm_port_1:
+ - pcrf_pcm_port_1
+ - dependency
link_pcrf_pcm_port_0:
- pcrf_pcm_port_0
- link
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-ppd_v1.0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-ppd_v1.0ServiceTemplate.yaml
index 976cbebf83..fb5ab01933 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-ppd_v1.0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-ppd_v1.0ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-ppd_v1.0
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcrf_ppd_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -237,11 +213,21 @@ topology_template:
pcrf_ppd_port_5:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_rx_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_rx
network:
get_input: pcrf_rx_net_name
requirements:
@@ -252,11 +238,21 @@ topology_template:
pcrf_ppd_port_6:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_sd_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_sd
network:
get_input: pcrf_sd_net_name
requirements:
@@ -267,11 +263,21 @@ topology_template:
pcrf_ppd_port_3:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_sp_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_sp
network:
get_input: pcrf_sp_net_name
requirements:
@@ -288,21 +294,31 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcrf_ppd_image_name
- config_drive: 'True'
metadata:
vnf_id:
get_input: pcrf_vnf_id
+ config_drive: true
user_data_format: RAW
name:
get_input: pcrf_ppd_server_name
pcrf_ppd_port_4:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_sy_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_sy
network:
get_input: pcrf_sy_net_name
requirements:
@@ -313,11 +329,21 @@ topology_template:
pcrf_ppd_port_7:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_sgi_sy_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_sgi_sy
network:
get_input: pcrf_sgi_sy_net_name
requirements:
@@ -328,14 +354,24 @@ topology_template:
pcrf_ppd_port_1:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_oam_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: pcrf_lb_management_vip
+ network_role_tag: pcrf_oam
network:
get_input: pcrf_oam_net_name
requirements:
@@ -346,11 +382,21 @@ topology_template:
pcrf_ppd_port_2:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_gx_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_gx
network:
get_input: pcrf_gx_net_name
requirements:
@@ -361,14 +407,24 @@ topology_template:
pcrf_ppd_port_0:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
allowed_address_pairs:
- ip_address:
get_input: pcrf_lb_internal_vip
+ network_role_tag: pcrf_cps
network:
get_input: pcrf_cps_net_name
requirements:
@@ -377,7 +433,7 @@ topology_template:
node: pcrf_server_ppd
relationship: tosca.relationships.network.BindsTo
groups:
- nested-ppd_v1.0:
+ nested-ppd_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-ppd_v1.0.yaml
@@ -395,55 +451,403 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-ppd_v1.0
capabilities:
+ disk.device.read.requests_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.read.requests
+ disk.write.requests_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.write.requests
+ disk.usage_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.usage
+ disk.latency_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.latency
+ network.incoming.packets.rate_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.incoming.packets.rate
+ disk.device.write.bytes_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.write.bytes
+ disk.device.write.bytes.rate_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.write.bytes.rate
+ network.incoming.packets.rate_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.incoming.packets.rate
+ scalable_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - scalable
+ network.incoming.packets.rate_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.incoming.packets.rate
+ disk.read.bytes.rate_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.read.bytes.rate
+ network.incoming.bytes.rate_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.incoming.bytes.rate
+ disk.device.allocation_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.allocation
+ network.incoming.bytes.rate_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.incoming.bytes.rate
+ binding_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - binding
+ binding_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - binding
+ network.incoming.bytes.rate_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.incoming.bytes.rate
+ binding_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - binding
+ network.incoming.bytes.rate_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.incoming.bytes.rate
+ binding_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - binding
+ binding_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - binding
+ binding_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - binding
+ binding_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - binding
+ binding_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - binding
+ memory.resident_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - memory.resident
+ network.outgoing.bytes.rate_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.outgoing.bytes.rate
+ binding_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - binding
+ network.outgoing.bytes.rate_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.outgoing.bytes.rate
+ os_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - os
+ disk.capacity_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.capacity
+ endpoint_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - endpoint
+ feature_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - feature
+ disk.write.bytes_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.write.bytes
+ disk.device.usage_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.usage
+ network.outgoing.bytes.rate_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.outgoing.bytes.rate
+ memory_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - memory
+ network.incoming.packets_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.incoming.packets
+ network.incoming.packets_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.incoming.packets
+ disk.root.size_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.root.size
+ network.incoming.packets_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.incoming.packets
+ disk.allocation_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.allocation
+ network.incoming.packets_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.incoming.packets
+ disk.device.iops_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.iops
+ network.incoming.packets_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.incoming.packets
+ network.incoming.packets_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.incoming.packets
+ network.incoming.packets_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.incoming.packets
+ network.incoming.packets_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.incoming.packets
+ disk.device.write.requests.rate_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.write.requests.rate
+ disk.device.write.requests_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.write.requests
+ disk.device.latency_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.latency
+ host_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - host
+ disk.write.bytes.rate_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.write.bytes.rate
+ disk.read.bytes_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.read.bytes
+ network.outgoing.bytes_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.outgoing.bytes
+ network.outgoing.bytes_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.outgoing.bytes
+ network.outgoing.bytes_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.outgoing.bytes
+ feature_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - feature
+ disk.device.read.bytes_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.read.bytes
+ network.outgoing.bytes_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.outgoing.bytes
+ feature_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - feature
+ network.outgoing.bytes_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.outgoing.bytes
+ network.outgoing.bytes_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.outgoing.bytes
+ feature_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - feature
+ feature_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - feature
+ network.outgoing.bytes_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.outgoing.bytes
+ disk.write.requests.rate_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.write.requests.rate
+ network.outpoing.packets_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.outpoing.packets
+ disk.read.requests_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.read.requests
attachment_pcrf_ppd_port_1:
- pcrf_ppd_port_1
- attachment
+ network.outpoing.packets_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.outpoing.packets
attachment_pcrf_ppd_port_2:
- pcrf_ppd_port_2
- attachment
- binding_pcrf_server_ppd:
- - pcrf_server_ppd
- - binding
+ network.outpoing.packets_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.outpoing.packets
+ network.outpoing.packets_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.outpoing.packets
attachment_pcrf_ppd_port_0:
- pcrf_ppd_port_0
- attachment
attachment_pcrf_ppd_port_5:
- pcrf_ppd_port_5
- attachment
+ network.outpoing.packets_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.outpoing.packets
attachment_pcrf_ppd_port_6:
- pcrf_ppd_port_6
- attachment
+ network.outpoing.packets_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.outpoing.packets
+ cpu_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - cpu
attachment_pcrf_ppd_port_3:
- pcrf_ppd_port_3
- attachment
- os_pcrf_server_ppd:
- - pcrf_server_ppd
- - os
+ network.outpoing.packets_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.outpoing.packets
attachment_pcrf_ppd_port_4:
- pcrf_ppd_port_4
- attachment
- endpoint_pcrf_server_ppd:
+ network.outpoing.packets_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.outpoing.packets
+ feature_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - feature
+ feature_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - feature
+ feature_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - feature
+ feature_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - feature
+ network.outgoing.packets.rate_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.outgoing.packets.rate
+ network.incoming.bytes_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.incoming.bytes
+ network.outgoing.packets.rate_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.outgoing.packets.rate
+ network.incoming.bytes_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - network.incoming.bytes
+ network.outgoing.packets.rate_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.outgoing.packets.rate
+ network.incoming.bytes_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - network.incoming.bytes
+ network.incoming.bytes_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - network.incoming.bytes
+ network.outgoing.packets.rate_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - network.outgoing.packets.rate
+ network.incoming.bytes_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - network.incoming.bytes
+ network.incoming.bytes_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - network.incoming.bytes
+ network.incoming.bytes_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - network.incoming.bytes
+ cpu_util_pcrf_server_ppd:
- pcrf_server_ppd
- - endpoint
- scalable_pcrf_server_ppd:
+ - cpu_util
+ network.incoming.bytes_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - network.incoming.bytes
+ disk.device.read.requests.rate_pcrf_server_ppd:
- pcrf_server_ppd
- - scalable
+ - disk.device.read.requests.rate
attachment_pcrf_ppd_port_7:
- pcrf_ppd_port_7
- attachment
- host_pcrf_server_ppd:
+ memory.usage_pcrf_server_ppd:
- pcrf_server_ppd
- - host
+ - memory.usage
+ disk.device.capacity_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.capacity
+ disk.ephemeral.size_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.ephemeral.size
+ cpu.delta_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - cpu.delta
+ vcpus_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - vcpus
+ instance_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - instance
+ disk.device.read.bytes.rate_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.device.read.bytes.rate
+ disk.iops_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - disk.iops
requirements:
link_pcrf_ppd_port_3:
- pcrf_ppd_port_3
- link
+ dependency_pcrf_ppd_port_7:
+ - pcrf_ppd_port_7
+ - dependency
link_pcrf_ppd_port_2:
- pcrf_ppd_port_2
- link
- local_storage_pcrf_server_ppd:
- - pcrf_server_ppd
- - local_storage
link_pcrf_ppd_port_1:
- pcrf_ppd_port_1
- link
@@ -461,4 +865,31 @@ topology_template:
- link
link_pcrf_ppd_port_4:
- pcrf_ppd_port_4
- - link \ No newline at end of file
+ - link
+ dependency_pcrf_ppd_port_0:
+ - pcrf_ppd_port_0
+ - dependency
+ dependency_pcrf_ppd_port_1:
+ - pcrf_ppd_port_1
+ - dependency
+ dependency_pcrf_ppd_port_2:
+ - pcrf_ppd_port_2
+ - dependency
+ dependency_pcrf_ppd_port_3:
+ - pcrf_ppd_port_3
+ - dependency
+ dependency_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - dependency
+ dependency_pcrf_ppd_port_4:
+ - pcrf_ppd_port_4
+ - dependency
+ dependency_pcrf_ppd_port_5:
+ - pcrf_ppd_port_5
+ - dependency
+ dependency_pcrf_ppd_port_6:
+ - pcrf_ppd_port_6
+ - dependency
+ local_storage_pcrf_server_ppd:
+ - pcrf_server_ppd
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pps_v1.0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pps_v1.0ServiceTemplate.yaml
index 692a2f0d4b..7b3334c368 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pps_v1.0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-pps_v1.0ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-pps_v1.0
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcrf_pps_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -93,11 +69,21 @@ topology_template:
pcrf_pps_port_0:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_cps
network:
get_input: pcrf_cps_net_name
requirements:
@@ -114,15 +100,15 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcrf_pps_image_name
- config_drive: 'True'
metadata:
vnf_id:
get_input: pcrf_vnf_id
+ config_drive: true
user_data_format: RAW
name:
get_input: pcrf_pps_server_name
groups:
- nested-pps_v1.0:
+ nested-pps_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-pps_v1.0.yaml
@@ -133,28 +119,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-pps_v1.0
capabilities:
- binding_pcrf_server_pps:
+ disk.latency_pcrf_server_pps:
- pcrf_server_pps
- - binding
+ - disk.latency
+ disk.device.read.bytes_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.read.bytes
+ disk.device.read.bytes.rate_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.read.bytes.rate
+ disk.root.size_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.root.size
+ network.incoming.bytes_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.incoming.bytes
+ disk.write.bytes.rate_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.write.bytes.rate
+ disk.device.iops_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.iops
+ host_pcrf_server_pps:
+ - pcrf_server_pps
+ - host
+ disk.read.bytes_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.read.bytes
+ memory.resident_pcrf_server_pps:
+ - pcrf_server_pps
+ - memory.resident
+ network.incoming.packets.rate_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.incoming.packets.rate
+ memory.usage_pcrf_server_pps:
+ - pcrf_server_pps
+ - memory.usage
+ cpu.delta_pcrf_server_pps:
+ - pcrf_server_pps
+ - cpu.delta
+ network.outgoing.bytes.rate_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.outgoing.bytes.rate
+ disk.write.requests_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.write.requests
+ disk.device.usage_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.usage
+ cpu_util_pcrf_server_pps:
+ - pcrf_server_pps
+ - cpu_util
attachment_pcrf_pps_port_0:
- pcrf_pps_port_0
- attachment
scalable_pcrf_server_pps:
- pcrf_server_pps
- scalable
+ disk.device.latency_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.latency
+ disk.device.read.requests.rate_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.read.requests.rate
+ disk.write.requests.rate_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.write.requests.rate
+ disk.read.bytes.rate_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.read.bytes.rate
+ disk.device.allocation_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.allocation
+ disk.device.write.requests.rate_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.write.requests.rate
+ feature_pcrf_server_pps:
+ - pcrf_server_pps
+ - feature
+ network.incoming.packets_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.incoming.packets
+ disk.usage_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.usage
+ instance_pcrf_server_pps:
+ - pcrf_server_pps
+ - instance
+ disk.write.bytes_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.write.bytes
+ disk.allocation_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.allocation
+ disk.iops_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.iops
+ network.incoming.bytes.rate_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.incoming.bytes.rate
+ disk.capacity_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.capacity
+ binding_pcrf_server_pps:
+ - pcrf_server_pps
+ - binding
+ cpu_pcrf_server_pps:
+ - pcrf_server_pps
+ - cpu
os_pcrf_server_pps:
- pcrf_server_pps
- os
+ disk.read.requests_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.read.requests
+ vcpus_pcrf_server_pps:
+ - pcrf_server_pps
+ - vcpus
+ disk.device.write.bytes_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.write.bytes
+ disk.device.write.bytes.rate_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.write.bytes.rate
+ feature_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - feature
+ network.outgoing.packets.rate_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.outgoing.packets.rate
+ disk.ephemeral.size_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.ephemeral.size
+ binding_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - binding
+ disk.device.capacity_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.capacity
+ network.outgoing.bytes_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.outgoing.bytes
+ memory_pcrf_server_pps:
+ - pcrf_server_pps
+ - memory
+ network.outpoing.packets_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - network.outpoing.packets
+ disk.device.read.requests_pcrf_server_pps:
+ - pcrf_server_pps
+ - disk.device.read.requests
endpoint_pcrf_server_pps:
- pcrf_server_pps
- endpoint
- host_pcrf_server_pps:
+ disk.device.write.requests_pcrf_server_pps:
- pcrf_server_pps
- - host
+ - disk.device.write.requests
requirements:
link_pcrf_pps_port_0:
- pcrf_pps_port_0
- link
+ dependency_pcrf_pps_port_0:
+ - pcrf_pps_port_0
+ - dependency
+ dependency_pcrf_server_pps:
+ - pcrf_server_pps
+ - dependency
local_storage_pcrf_server_pps:
- pcrf_server_pps
- local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-psm_v1.0ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-psm_v1.0ServiceTemplate.yaml
index 770e1dceb8..08e9ecc28e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-psm_v1.0ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/hot-nimbus-oam-volumes_v1.0/out/nested-psm_v1.0ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested-psm_v1.0
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.pcrf_psm_server:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -99,21 +75,31 @@ topology_template:
get_input: availabilityzone_name
image:
get_input: pcrf_psm_image_name
- config_drive: 'True'
metadata:
vnf_id:
get_input: pcrf_vnf_id
+ config_drive: true
user_data_format: RAW
name:
get_input: pcrf_psm_server_name
psm01_port_0:
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: pcrf_security_group_name
fixed_ips:
- ip_address:
get_input: pcrf_cps_net_ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: pcrf_cps
network:
get_input: pcrf_cps_net_name
requirements:
@@ -122,7 +108,7 @@ topology_template:
node: pcrf_server_psm
relationship: tosca.relationships.network.BindsTo
groups:
- nested-psm_v1.0:
+ nested-psm_v1.0_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested-psm_v1.0.yaml
@@ -133,28 +119,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested-psm_v1.0
capabilities:
+ disk.write.requests.rate_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.write.requests.rate
+ disk.device.capacity_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.capacity
+ disk.device.allocation_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.allocation
+ memory_pcrf_server_psm:
+ - pcrf_server_psm
+ - memory
+ disk.device.write.bytes.rate_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_psm01_port_0:
+ - psm01_port_0
+ - network.outgoing.bytes.rate
+ disk.allocation_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.allocation
+ disk.device.write.requests_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.write.requests
+ vcpus_pcrf_server_psm:
+ - pcrf_server_psm
+ - vcpus
+ instance_pcrf_server_psm:
+ - pcrf_server_psm
+ - instance
+ disk.device.read.requests_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.read.requests
endpoint_pcrf_server_psm:
- pcrf_server_psm
- endpoint
+ disk.write.requests_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.write.requests
+ memory.resident_pcrf_server_psm:
+ - pcrf_server_psm
+ - memory.resident
+ network.incoming.packets_psm01_port_0:
+ - psm01_port_0
+ - network.incoming.packets
binding_pcrf_server_psm:
- pcrf_server_psm
- binding
+ disk.latency_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.latency
+ disk.device.read.bytes_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.read.bytes
+ disk.write.bytes_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.write.bytes
+ disk.write.bytes.rate_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.write.bytes.rate
+ host_pcrf_server_psm:
+ - pcrf_server_psm
+ - host
+ network.outgoing.packets.rate_psm01_port_0:
+ - psm01_port_0
+ - network.outgoing.packets.rate
+ disk.device.write.bytes_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.write.bytes
+ disk.read.requests_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.read.requests
+ network.outgoing.bytes_psm01_port_0:
+ - psm01_port_0
+ - network.outgoing.bytes
+ binding_psm01_port_0:
+ - psm01_port_0
+ - binding
+ disk.device.read.requests.rate_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.read.requests.rate
+ network.incoming.bytes.rate_psm01_port_0:
+ - psm01_port_0
+ - network.incoming.bytes.rate
+ network.outpoing.packets_psm01_port_0:
+ - psm01_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.ephemeral.size
+ cpu_util_pcrf_server_psm:
+ - pcrf_server_psm
+ - cpu_util
+ cpu.delta_pcrf_server_psm:
+ - pcrf_server_psm
+ - cpu.delta
+ disk.device.usage_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.usage
+ memory.usage_pcrf_server_psm:
+ - pcrf_server_psm
+ - memory.usage
+ disk.read.bytes.rate_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.read.bytes.rate
+ disk.device.read.bytes.rate_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.read.bytes.rate
+ disk.device.iops_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.iops
+ network.incoming.bytes_psm01_port_0:
+ - psm01_port_0
+ - network.incoming.bytes
+ disk.iops_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.iops
+ feature_pcrf_server_psm:
+ - pcrf_server_psm
+ - feature
+ cpu_pcrf_server_psm:
+ - pcrf_server_psm
+ - cpu
+ disk.root.size_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.root.size
+ disk.device.write.requests.rate_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.write.requests.rate
os_pcrf_server_psm:
- pcrf_server_psm
- os
+ disk.usage_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.usage
+ disk.device.latency_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.device.latency
+ disk.read.bytes_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.read.bytes
+ feature_psm01_port_0:
+ - psm01_port_0
+ - feature
+ network.incoming.packets.rate_psm01_port_0:
+ - psm01_port_0
+ - network.incoming.packets.rate
+ disk.capacity_pcrf_server_psm:
+ - pcrf_server_psm
+ - disk.capacity
attachment_psm01_port_0:
- psm01_port_0
- attachment
- host_pcrf_server_psm:
- - pcrf_server_psm
- - host
scalable_pcrf_server_psm:
- pcrf_server_psm
- scalable
requirements:
+ dependency_pcrf_server_psm:
+ - pcrf_server_psm
+ - dependency
local_storage_pcrf_server_psm:
- pcrf_server_psm
- local_storage
+ dependency_psm01_port_0:
+ - psm01_port_0
+ - dependency
link_psm01_port_0:
- psm01_port_0
- 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/services/heattotosca/neutron_port_translation/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/expectedoutputfiles/MainServiceTemplate.yaml
index 8f3b23b959..48d0f4f4ef 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
topology_template:
node_templates:
jsa_net:
@@ -46,6 +22,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -53,12 +35,22 @@ topology_template:
get_input:
- cmaui_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
cmaui1_port_1:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -72,6 +64,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: jsa_net
requirements:
- link:
@@ -82,6 +77,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -95,6 +96,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: jsa_net1
requirements:
- link:
@@ -102,7 +106,7 @@ topology_template:
node: jsa_net1
relationship: tosca.relationships.network.LinksTo
groups:
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/inputfiles/hot_template.yml
index 47ba8fcb2a..cf18a53e6e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_port_translation/inputfiles/hot_template.yml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
#################################
#
# Changes from MSO 01/26/2016
-# Updated per ECOMP feedback
+# Updated per OPENECOMP feedback
#
#################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles/MainServiceTemplate.yaml
index f6a55b2d14..db70853c4b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_security_group_translation/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.MASTER:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -138,8 +114,18 @@ topology_template:
MASTER_mgmt_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
security_groups:
- jsa_security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -157,7 +143,7 @@ topology_template:
name:
get_input: MASTER_names
groups:
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a8514c2921
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,621 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.smp:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ hostid_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE1 Hostid (from Ulticom license)
+ ip_address_stp2:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP2 IP address
+ Mobility_OAM_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for OAM
+ hostid_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE2 Hostid (from Ulticom license)
+ flavor_scp_fe_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP FE Flavor
+ default: a1.Small
+ ip_address_stp1:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP1 IP address
+ int_vscp_ce_network_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Inter-CE Network
+ int_vscp_ce_network_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Private Network Address (CIDR notation)
+ cluster_type:
+ hidden: false
+ immutable: false
+ type: string
+ constraints:
+ - valid_values:
+ - Test
+ - Prod
+ be_Mobility_OAM_protected_ip_1:
+ label: be_1 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_1 OAM ip address
+ be_Mobility_OAM_protected_ip_2:
+ label: be_2 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_2 OAM ip address
+ be_Mobility_OAM_protected_ip_0:
+ label: be_0 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_0 OAM ip address
+ ip_address_dra:
+ hidden: false
+ immutable: false
+ type: string
+ description: DRA VIP address
+ image_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP image
+ default: asc_base_image_smp
+ fe_connectivity:
+ hidden: false
+ immutable: false
+ type: string
+ constraints:
+ - valid_values:
+ - NEE
+ - STP
+ lab_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Lab name
+ smp_Mobility_OAM_protected_ip_1:
+ label: smp_1 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: smp_1 OAM ip address
+ fe_SIGNET_vrf_B1_direct_ip_0:
+ label: fe1 SIGTRAN ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe1 SIGTRAN ip address
+ smp_Mobility_OAM_protected_ip_0:
+ label: smp_0 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: smp_0 OAM ip address
+ int_vscp_cluster_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: LAN3 Cluster
+ be_Mobility_OAM_protected_ip_3:
+ label: be_3 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_3 OAM ip address
+ be_Mobility_OAM_protected_ip_4:
+ label: be_4 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_4 OAM ip address
+ hostname_nee1:
+ hidden: false
+ immutable: false
+ type: string
+ description: NEE1 Hostname (from Ulticom license)
+ int_vscp_fe_cluster_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: LAN2 FE Cluster/KA
+ SIGNET_vrf_A1_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for SIGTRAN_A
+ key_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: keypair to enable SSH access to the instance.
+ default: vSCP-keypair
+ int_vscp_fe_cluster_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Private Network2 Address (CIDR notation)
+ fe_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_FE2
+ fe_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_FE1
+ policy_value:
+ hidden: false
+ immutable: false
+ type: string
+ be_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE1
+ int_vscp_cluster_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Private Network3 Address (CIDR notation)
+ be_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE2
+ be_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE3
+ point_code_stp:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP virtual point code (in "zone-cluster-member" format)
+ be_name_3:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE4
+ be_name_4:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE5
+ global_title_scp:
+ hidden: false
+ immutable: false
+ type: string
+ description: vSCP Global Title address
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ default: This_is_the_SCP_name
+ be_Cricket_OCS_protected_ip_2:
+ label: be3 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be3 Cricket_OCS ip address
+ fe_Mobility_OAM_protected_ip_0:
+ label: fe_0 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe_0 OAM ip address
+ hostname_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE1 Hostname (from Ulticom license)
+ be_Cricket_OCS_protected_ip_1:
+ label: be2 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be2 Cricket_OCS ip address
+ hostname_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE2 Hostname (from Ulticom license)
+ be_Cricket_OCS_protected_ip_4:
+ label: be5 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be5 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_3:
+ label: be4 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be4 Cricket_OCS ip address
+ fe_Mobility_OAM_protected_ip_1:
+ label: fe_1 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe_1 OAM ip address
+ be_Cricket_OCS_protected_ip_0:
+ label: be1 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be1 Cricket_OCS ip address
+ route_table_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Additional route table for FE1
+ Cricket_OCS_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for CRICKET_OCS
+ smp_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSMP2
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+ smp_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSMP2
+ flavor_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP Flavor
+ default: a1.Small
+ image_scp_be_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP BE image
+ default: asc_base_image_be
+ smp_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSMP1
+ route_table_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: Additional route table for FE2
+ hostid_nee1:
+ hidden: false
+ immutable: false
+ type: string
+ description: NEE1 Hostid (from Ulticom license)
+ SIGNET_vrf_B1_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for SIGTRAN_B
+ fe_SIGNET_vrf_A1_direct_ip_0:
+ label: fe2 SIGTRAN ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe2 SIGTRAN ip address
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ nee_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vNEE
+ ip_port_stp1:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP1 IP port
+ ip_port_stp2:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP2 IP port
+ image_scp_fe_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP FE image
+ default: asc_base_image_fe
+ flavor_scp_be_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP BE Flavor
+ default: a1.Small
+ policyListParam:
+ hidden: false
+ immutable: false
+ type: list
+ description: Policy server group. affinity/anti-affinity
+ constraints:
+ - valid_values:
+ - affinity
+ - anti-affinity
+ entry_schema:
+ type: string
+ security_group_name:
+ label: vSCP security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: vSCP security group name
+ ip_port_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE2 IP port in SIGTRAN network
+ route_table_be:
+ hidden: false
+ immutable: false
+ type: string
+ description: Additional route table for BEs
+ ip_port_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE1 IP port in SIGTRAN network
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: port name
+ default: port_name
+ point_code_scp:
+ hidden: false
+ immutable: false
+ type: string
+ description: vSCP point code (in "zone-cluster-member" format)
+ global_title_stp:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP Global Title address
+ point_code_stp1:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP1 point code (in "zone-cluster-member" format)
+ point_code_stp2:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP2 point code (in "zone-cluster-member" format)
+ node_templates:
+ server_smp2:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ metadata:
+ jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ user_data_format: RAW
+ name:
+ get_input: smp_name_2
+ scheduler_hints:
+ group: FE_SMP_Affinity_group
+ server_smp3:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ metadata:
+ jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ user_data_format: RAW
+ name:
+ get_input: smp_name_2
+ scheduler_hints:
+ group4: UNSUPPORTED_RESOURCE_dynamicPolicy3
+ group3: UNSUPPORTED_RESOURCE_dynamicPolicy2
+ group2: UNSUPPORTED_RESOURCE_dynamicPolicy1
+ group1: FE_SMP_Affinity_group
+ port3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ 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
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp3
+ relationship: tosca.relationships.network.BindsTo
+ port4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ 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
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp3
+ relationship: tosca.relationships.network.BindsTo
+ port1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ 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
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp1
+ relationship: tosca.relationships.network.BindsTo
+ server_smp1:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ metadata:
+ jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ user_data_format: RAW
+ name:
+ get_input: smp_name_1
+ scheduler_hints:
+ group: BE_Affinity_group
+ port2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ 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
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp2
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ FE_SMP_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp2
+ - server_smp3
+ hot_template_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot_template.yml
+ description: ASC Template
+ members:
+ - server_smp2
+ - server_smp3
+ - port3
+ - port4
+ - port1
+ - server_smp1
+ - port2
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp1
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group
+ FE_SMP_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: abc
+ affinity: host
+ targets:
+ - FE_SMP_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles/MANIFEST.json
index b2916ccf9c..b2916ccf9c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles/hot_template.yml
new file mode 100644
index 0000000000..6d27a511dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/dynamicPolicy/inputfiles/hot_template.yml
@@ -0,0 +1,403 @@
+heat_template_version: 2013-05-23
+
+description: ASC Template
+
+parameters:
+ cluster_type:
+ type: string
+ constraints:
+ - allowed_values: [ Test, Prod ]
+ fe_connectivity:
+ type: string
+ constraints:
+ - allowed_values: [ NEE, STP ]
+ key_name:
+ type: string
+ description: keypair to enable SSH access to the instance.
+ default: vSCP-keypair
+ policy_value:
+ type: string
+ policyListParam:
+ constraints:
+ - allowed_values:
+ - affinity
+ - anti-affinity
+ description: Policy server group. affinity/anti-affinity
+ type: comma_delimited_list
+
+# Availability Zone information may need to be updated and the specifications under Nova server capabilities uncommented
+ availability_zone_0:
+ type: string
+
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ default: This_is_the_SCP_name
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+
+ port_name:
+ type: string
+ description: port name
+ default: port_name
+
+ flavor_scp_be_name:
+ type: string
+ description: SCP BE Flavor
+ default: a1.Small
+ flavor_scp_fe_name:
+ type: string
+ description: SCP FE Flavor
+ default: a1.Small
+ flavor_smp_name:
+ type: string
+ description: SCP SMP Flavor
+ default: a1.Small
+ image_scp_be_name:
+ type: string
+ description: SCP BE image
+ default: asc_base_image_be
+ image_scp_fe_name:
+ type: string
+ description: SCP FE image
+ default: asc_base_image_fe
+ image_smp_name:
+ type: string
+ description: SCP SMP image
+ default: asc_base_image_smp
+ int_vscp_fe_cluster_net_id:
+ type: string
+ description: LAN2 FE Cluster/KA
+ int_vscp_fe_cluster_cidr:
+ type: string
+ description: Private Network2 Address (CIDR notation)
+ int_vscp_cluster_net_id:
+ type: string
+ description: LAN3 Cluster
+ int_vscp_cluster_cidr:
+ type: string
+ description: Private Network3 Address (CIDR notation)
+ int_vscp_ce_network_net_id:
+ type: string
+ description: Inter-CE Network
+ int_vscp_ce_network_cidr:
+ type: string
+ description: Private Network Address (CIDR notation)
+ SIGNET_vrf_A1_direct_net_id:
+ type: string
+ description: Network name for SIGTRAN_A
+ SIGNET_vrf_B1_direct_net_id:
+ type: string
+ description: Network name for SIGTRAN_B
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Network name for CRICKET_OCS
+ Mobility_OAM_protected_net_id:
+ type: string
+ description: Network name for OAM
+ be_Cricket_OCS_protected_ip_0:
+ type: string
+ label: be1 Cricket_OCS ip address
+ description: be1 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_1:
+ type: string
+ label: be2 Cricket_OCS ip address
+ description: be2 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_2:
+ type: string
+ label: be3 Cricket_OCS ip address
+ description: be3 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_3:
+ type: string
+ label: be4 Cricket_OCS ip address
+ description: be4 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_4:
+ type: string
+ label: be5 Cricket_OCS ip address
+ description: be5 Cricket_OCS ip address
+ fe_SIGNET_vrf_B1_direct_ip_0:
+ type: string
+ label: fe1 SIGTRAN ip address
+ description: fe1 SIGTRAN ip address
+ fe_SIGNET_vrf_A1_direct_ip_0:
+ type: string
+ label: fe2 SIGTRAN ip address
+ description: fe2 SIGTRAN ip address
+ be_Mobility_OAM_protected_ip_0:
+ type: string
+ label: be_0 OAM ip address
+ description: be_0 OAM ip address
+ be_Mobility_OAM_protected_ip_1:
+ type: string
+ label: be_1 OAM ip address
+ description: be_1 OAM ip address
+ be_Mobility_OAM_protected_ip_2:
+ type: string
+ label: be_2 OAM ip address
+ description: be_2 OAM ip address
+ be_Mobility_OAM_protected_ip_3:
+ type: string
+ label: be_3 OAM ip address
+ description: be_3 OAM ip address
+ be_Mobility_OAM_protected_ip_4:
+ type: string
+ label: be_4 OAM ip address
+ description: be_4 OAM ip address
+ fe_Mobility_OAM_protected_ip_0:
+ type: string
+ label: fe_0 OAM ip address
+ description: fe_0 OAM ip address
+ fe_Mobility_OAM_protected_ip_1:
+ type: string
+ label: fe_1 OAM ip address
+ description: fe_1 OAM ip address
+ smp_Mobility_OAM_protected_ip_0:
+ type: string
+ label: smp_0 OAM ip address
+ description: smp_0 OAM ip address
+ smp_Mobility_OAM_protected_ip_1:
+ type: string
+ label: smp_1 OAM ip address
+ description: smp_1 OAM ip address
+ be_name_0:
+ type: string
+ default: vSCP_BE1
+ description: name of VM
+ be_name_1:
+ type: string
+ default: vSCP_BE2
+ description: name of VM
+ be_name_2:
+ type: string
+ default: vSCP_BE3
+ description: name of VM
+ be_name_3:
+ type: string
+ default: vSCP_BE4
+ description: name of VM
+ be_name_4:
+ type: string
+ default: vSCP_BE5
+ description: name of VM
+ fe_name_0:
+ type: string
+ default: vSCP_FE1
+ description: name of VM
+ fe_name_1:
+ type: string
+ default: vSCP_FE2
+ description: name of VM
+ smp_name_0:
+ type: string
+ default: vSMP1
+ description: name of VM
+ smp_name_1:
+ type: string
+ default: vSMP2
+ description: name of VM
+ smp_name_2:
+ type: string
+ default: vSMP2
+ description: name of VM
+ ##smp_name_2:
+ ##type: string
+ ##default: vSMP2
+ ##description: name of VM
+ nee_name_0:
+ type: string
+ default: vNEE
+ description: name of VM
+
+ hostname_fe1:
+ type: string
+ description: FE1 Hostname (from Ulticom license)
+ hostid_fe1:
+ type: string
+ description: FE1 Hostid (from Ulticom license)
+
+ hostname_fe2:
+ type: string
+ description: FE2 Hostname (from Ulticom license)
+ hostid_fe2:
+ type: string
+ description: FE2 Hostid (from Ulticom license)
+
+ hostname_nee1:
+ type: string
+ description: NEE1 Hostname (from Ulticom license)
+ hostid_nee1:
+ type: string
+ description: NEE1 Hostid (from Ulticom license)
+
+ point_code_scp:
+ type: string
+ description: vSCP point code (in "zone-cluster-member" format)
+ point_code_stp:
+ type: string
+ description: STP virtual point code (in "zone-cluster-member" format)
+ point_code_stp1:
+ type: string
+ description: STP1 point code (in "zone-cluster-member" format)
+ point_code_stp2:
+ type: string
+ description: STP2 point code (in "zone-cluster-member" format)
+ ip_address_stp1:
+ type: string
+ description: STP1 IP address
+ ip_port_stp1:
+ type: string
+ description: STP1 IP port
+ ip_address_stp2:
+ type: string
+ description: STP2 IP address
+ ip_port_stp2:
+ type: string
+ description: STP2 IP port
+ ip_port_fe1:
+ type: string
+ description: FE1 IP port in SIGTRAN network
+ ip_port_fe2:
+ type: string
+ description: FE2 IP port in SIGTRAN network
+
+ global_title_scp:
+ type: string
+ description: vSCP Global Title address
+ global_title_stp:
+ type: string
+ description: STP Global Title address
+
+ security_group_name:
+ type: string
+ label: vSCP security group name
+ description: vSCP security group name
+
+ route_table_be:
+ type: string
+ description: Additional route table for BEs
+
+ route_table_fe1:
+ type: string
+ description: Additional route table for FE1
+
+ route_table_fe2:
+ type: string
+ description: Additional route table for FE2
+
+ ip_address_dra:
+ type: string
+ description: DRA VIP address
+
+ lab_name:
+ type: string
+ description: Lab name
+
+resources:
+
+ server_smp1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: smp_name_1 }
+ image: { get_param: image_smp_name }
+ # key_name: { get_param: key_name }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: flavor_smp_name }
+ scheduler_hints: { group: { get_resource: BE_Affinity } }
+ networks:
+ - port: { get_resource: port1 }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ jx_lab_name: {get_param: lab_name}
+ jx_vm_role: smp2
+ user_data_format: RAW
+ server_smp2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: smp_name_2 }
+ image: { get_param: image_smp_name }
+ # key_name: { get_param: key_name }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: flavor_smp_name }
+ scheduler_hints: { group: { get_resource: FE_SMP_Affinity } }
+ networks:
+ - port: { get_resource: port2 }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ jx_lab_name: {get_param: lab_name}
+ jx_vm_role: smp2
+ user_data_format: RAW
+
+ server_smp3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: smp_name_2 }
+ image: { get_param: image_smp_name }
+ # key_name: { get_param: key_name }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: flavor_smp_name }
+ scheduler_hints: { group1: { get_resource: FE_SMP_Affinity }, group2: { get_resource:
+ dynamicPolicy1 }, group3: { get_resource: dynamicPolicy2 }, group4: { get_resource: dynamicPolicy3 } }
+ networks:
+ - port: { get_resource: port3 }
+ - port: { get_resource: port4 }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ jx_lab_name: {get_param: lab_name}
+ jx_vm_role: smp2
+ user_data_format: RAW
+
+ port1:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: port_name}
+ replacement_policy: AUTO
+
+ port2:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: port_name}
+ replacement_policy: AUTO
+
+ port3:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: port_name}
+ replacement_policy: AUTO
+
+ port4:
+ type: OS::Neutron::Port
+ properties:
+ network: {get_param: port_name}
+ replacement_policy: AUTO
+
+ FE_SMP_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: abc
+ BE_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: def
+ dynamicPolicy1:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: [{ get_param: policy_value }]
+ name: def
+ dynamicPolicy2:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: [{ get_attr: [port4, show]}]
+ name: def
+ dynamicPolicy3:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: { get_param: policyListParam}
+ name: def
+
+
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b6c5471953
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,509 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.smp:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ hostid_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE1 Hostid (from Ulticom license)
+ ip_address_stp2:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP2 IP address
+ Mobility_OAM_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for OAM
+ hostid_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE2 Hostid (from Ulticom license)
+ flavor_scp_fe_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP FE Flavor
+ default: a1.Small
+ ip_address_stp1:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP1 IP address
+ int_vscp_ce_network_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Inter-CE Network
+ shared_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ int_vscp_ce_network_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Private Network Address (CIDR notation)
+ cluster_type:
+ hidden: false
+ immutable: false
+ type: string
+ constraints:
+ - valid_values:
+ - Test
+ - Prod
+ be_Mobility_OAM_protected_ip_1:
+ label: be_1 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_1 OAM ip address
+ be_Mobility_OAM_protected_ip_2:
+ label: be_2 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_2 OAM ip address
+ be_Mobility_OAM_protected_ip_0:
+ label: be_0 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_0 OAM ip address
+ ip_address_dra:
+ hidden: false
+ immutable: false
+ type: string
+ description: DRA VIP address
+ image_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ fe_connectivity:
+ hidden: false
+ immutable: false
+ type: string
+ constraints:
+ - valid_values:
+ - NEE
+ - STP
+ lab_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Lab name
+ smp_Mobility_OAM_protected_ip_1:
+ label: smp_1 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: smp_1 OAM ip address
+ fe_SIGNET_vrf_B1_direct_ip_0:
+ label: fe1 SIGTRAN ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe1 SIGTRAN ip address
+ smp_Mobility_OAM_protected_ip_0:
+ label: smp_0 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: smp_0 OAM ip address
+ int_vscp_cluster_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: LAN3 Cluster
+ be_Mobility_OAM_protected_ip_3:
+ label: be_3 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_3 OAM ip address
+ be_Mobility_OAM_protected_ip_4:
+ label: be_4 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be_4 OAM ip address
+ hostname_nee1:
+ hidden: false
+ immutable: false
+ type: string
+ description: NEE1 Hostname (from Ulticom license)
+ int_vscp_fe_cluster_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: LAN2 FE Cluster/KA
+ SIGNET_vrf_A1_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for SIGTRAN_A
+ key_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: keypair to enable SSH access to the instance.
+ default: vSCP-keypair
+ int_vscp_fe_cluster_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Private Network2 Address (CIDR notation)
+ fe_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_FE2
+ fe_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_FE1
+ be_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE1
+ int_vscp_cluster_cidr:
+ hidden: false
+ immutable: false
+ type: string
+ description: Private Network3 Address (CIDR notation)
+ be_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE2
+ be_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE3
+ point_code_stp:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP virtual point code (in "zone-cluster-member" format)
+ be_name_3:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE4
+ be_name_4:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSCP_BE5
+ global_title_scp:
+ hidden: false
+ immutable: false
+ type: string
+ description: vSCP Global Title address
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ default: This_is_the_SCP_name
+ be_Cricket_OCS_protected_ip_2:
+ label: be3 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be3 Cricket_OCS ip address
+ fe_Mobility_OAM_protected_ip_0:
+ label: fe_0 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe_0 OAM ip address
+ hostname_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE1 Hostname (from Ulticom license)
+ be_Cricket_OCS_protected_ip_1:
+ label: be2 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be2 Cricket_OCS ip address
+ hostname_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE2 Hostname (from Ulticom license)
+ be_Cricket_OCS_protected_ip_4:
+ label: be5 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be5 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_3:
+ label: be4 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be4 Cricket_OCS ip address
+ fe_Mobility_OAM_protected_ip_1:
+ label: fe_1 OAM ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe_1 OAM ip address
+ be_Cricket_OCS_protected_ip_0:
+ label: be1 Cricket_OCS ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: be1 Cricket_OCS ip address
+ route_table_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Additional route table for FE1
+ Cricket_OCS_protected_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for CRICKET_OCS
+ smp_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+ smp_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSMP2
+ flavor_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ image_scp_be_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP BE image
+ default: asc_base_image_be
+ smp_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vSMP1
+ route_table_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: Additional route table for FE2
+ hostid_nee1:
+ hidden: false
+ immutable: false
+ type: string
+ description: NEE1 Hostid (from Ulticom license)
+ SIGNET_vrf_B1_direct_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network name for SIGTRAN_B
+ fe_SIGNET_vrf_A1_direct_ip_0:
+ label: fe2 SIGTRAN ip address
+ hidden: false
+ immutable: false
+ type: string
+ description: fe2 SIGTRAN ip address
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ nee_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: name of VM
+ default: vNEE
+ ip_port_stp1:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP1 IP port
+ ip_port_stp2:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP2 IP port
+ image_scp_fe_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP FE image
+ default: asc_base_image_fe
+ flavor_scp_be_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP BE Flavor
+ default: a1.Small
+ shared_nova:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ label: vSCP security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: vSCP security group name
+ ip_port_fe2:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE2 IP port in SIGTRAN network
+ route_table_be:
+ hidden: false
+ immutable: false
+ type: string
+ description: Additional route table for BEs
+ ip_port_fe1:
+ hidden: false
+ immutable: false
+ type: string
+ description: FE1 IP port in SIGTRAN network
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: port name
+ default: port_name
+ point_code_scp:
+ hidden: false
+ immutable: false
+ type: string
+ description: vSCP point code (in "zone-cluster-member" format)
+ global_title_stp:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP Global Title address
+ point_code_stp1:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP1 point code (in "zone-cluster-member" format)
+ point_code_stp2:
+ hidden: false
+ immutable: false
+ type: string
+ description: STP2 point code (in "zone-cluster-member" format)
+ node_templates:
+ server_smp_base:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ metadata:
+ vnf_id:
+ get_input: vnf_id
+ name:
+ get_input: smp_name_2
+ scheduler_hints:
+ group2: Multi_Anti_Affinity_group
+ group1: FE_SMP_Affinity_group
+ server_smp_addOn:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ name:
+ get_input: smp_name_2
+ scheduler_hints:
+ group2:
+ get_input: shared_nova
+ group1:
+ get_input: shared_server_group
+ groups:
+ FE_SMP_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp_base
+ Multi_Anti_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp_base
+ shared_Server_group_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp_addOn
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: ASC Template
+ members:
+ - server_smp_addOn
+ hot_template_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot_template.yml
+ description: ASC Template
+ members:
+ - server_smp_base
+ policies:
+ shared_Server_group_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name: def
+ container_type: host
+ targets:
+ - shared_Server_group_group
+ FE_SMP_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: abc
+ affinity: host
+ targets:
+ - FE_SMP_Affinity_group
+ Multi_Anti_Affinity_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name: def
+ container_type: host
+ targets:
+ - Multi_Anti_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..30d1f18a26
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot_template.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/addOn.yml
new file mode 100644
index 0000000000..9e17ca4837
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/addOn.yml
@@ -0,0 +1,33 @@
+heat_template_version: 2013-05-23
+
+description: ASC Template
+
+parameters:
+ smp_name_2:
+ type: string
+ image_smp_name:
+ type: string
+ availability_zone_0:
+ type: string
+ flavor_smp_name:
+ type: string
+ shared_server_group:
+ type: string
+ shared_nova:
+ type: string
+
+
+resources:
+ server_smp_addOn:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: smp_name_2 }
+ image: { get_param: image_smp_name }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: flavor_smp_name }
+ scheduler_hints: { group1: { get_param: shared_server_group }, group2: { get_param: shared_nova }}
+
+
+
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/hot_template.yml
new file mode 100644
index 0000000000..04bb491a01
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/sharedServerGroup/inputfiles/hot_template.yml
@@ -0,0 +1,328 @@
+heat_template_version: 2013-05-23
+
+description: ASC Template
+
+parameters:
+ cluster_type:
+ type: string
+ constraints:
+ - allowed_values: [ Test, Prod ]
+ fe_connectivity:
+ type: string
+ constraints:
+ - allowed_values: [ NEE, STP ]
+ key_name:
+ type: string
+ description: keypair to enable SSH access to the instance.
+ default: vSCP-keypair
+
+# Availability Zone information may need to be updated and the specifications under Nova server capabilities uncommented
+ availability_zone_0:
+ type: string
+
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ default: This_is_the_SCP_name
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+
+ port_name:
+ type: string
+ description: port name
+ default: port_name
+
+ flavor_scp_be_name:
+ type: string
+ description: SCP BE Flavor
+ default: a1.Small
+ flavor_scp_fe_name:
+ type: string
+ description: SCP FE Flavor
+ default: a1.Small
+ flavor_smp_name:
+ type: string
+ description: SCP SMP Flavor
+ default: a1.Small
+ image_scp_be_name:
+ type: string
+ description: SCP BE image
+ default: asc_base_image_be
+ image_scp_fe_name:
+ type: string
+ description: SCP FE image
+ default: asc_base_image_fe
+ image_smp_name:
+ type: string
+ description: SCP SMP image
+ default: asc_base_image_smp
+ int_vscp_fe_cluster_net_id:
+ type: string
+ description: LAN2 FE Cluster/KA
+ int_vscp_fe_cluster_cidr:
+ type: string
+ description: Private Network2 Address (CIDR notation)
+ int_vscp_cluster_net_id:
+ type: string
+ description: LAN3 Cluster
+ int_vscp_cluster_cidr:
+ type: string
+ description: Private Network3 Address (CIDR notation)
+ int_vscp_ce_network_net_id:
+ type: string
+ description: Inter-CE Network
+ int_vscp_ce_network_cidr:
+ type: string
+ description: Private Network Address (CIDR notation)
+ SIGNET_vrf_A1_direct_net_id:
+ type: string
+ description: Network name for SIGTRAN_A
+ SIGNET_vrf_B1_direct_net_id:
+ type: string
+ description: Network name for SIGTRAN_B
+ Cricket_OCS_protected_net_id:
+ type: string
+ description: Network name for CRICKET_OCS
+ Mobility_OAM_protected_net_id:
+ type: string
+ description: Network name for OAM
+ be_Cricket_OCS_protected_ip_0:
+ type: string
+ label: be1 Cricket_OCS ip address
+ description: be1 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_1:
+ type: string
+ label: be2 Cricket_OCS ip address
+ description: be2 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_2:
+ type: string
+ label: be3 Cricket_OCS ip address
+ description: be3 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_3:
+ type: string
+ label: be4 Cricket_OCS ip address
+ description: be4 Cricket_OCS ip address
+ be_Cricket_OCS_protected_ip_4:
+ type: string
+ label: be5 Cricket_OCS ip address
+ description: be5 Cricket_OCS ip address
+ fe_SIGNET_vrf_B1_direct_ip_0:
+ type: string
+ label: fe1 SIGTRAN ip address
+ description: fe1 SIGTRAN ip address
+ fe_SIGNET_vrf_A1_direct_ip_0:
+ type: string
+ label: fe2 SIGTRAN ip address
+ description: fe2 SIGTRAN ip address
+ be_Mobility_OAM_protected_ip_0:
+ type: string
+ label: be_0 OAM ip address
+ description: be_0 OAM ip address
+ be_Mobility_OAM_protected_ip_1:
+ type: string
+ label: be_1 OAM ip address
+ description: be_1 OAM ip address
+ be_Mobility_OAM_protected_ip_2:
+ type: string
+ label: be_2 OAM ip address
+ description: be_2 OAM ip address
+ be_Mobility_OAM_protected_ip_3:
+ type: string
+ label: be_3 OAM ip address
+ description: be_3 OAM ip address
+ be_Mobility_OAM_protected_ip_4:
+ type: string
+ label: be_4 OAM ip address
+ description: be_4 OAM ip address
+ fe_Mobility_OAM_protected_ip_0:
+ type: string
+ label: fe_0 OAM ip address
+ description: fe_0 OAM ip address
+ fe_Mobility_OAM_protected_ip_1:
+ type: string
+ label: fe_1 OAM ip address
+ description: fe_1 OAM ip address
+ smp_Mobility_OAM_protected_ip_0:
+ type: string
+ label: smp_0 OAM ip address
+ description: smp_0 OAM ip address
+ smp_Mobility_OAM_protected_ip_1:
+ type: string
+ label: smp_1 OAM ip address
+ description: smp_1 OAM ip address
+ be_name_0:
+ type: string
+ default: vSCP_BE1
+ description: name of VM
+ be_name_1:
+ type: string
+ default: vSCP_BE2
+ description: name of VM
+ be_name_2:
+ type: string
+ default: vSCP_BE3
+ description: name of VM
+ be_name_3:
+ type: string
+ default: vSCP_BE4
+ description: name of VM
+ be_name_4:
+ type: string
+ default: vSCP_BE5
+ description: name of VM
+ fe_name_0:
+ type: string
+ default: vSCP_FE1
+ description: name of VM
+ fe_name_1:
+ type: string
+ default: vSCP_FE2
+ description: name of VM
+ smp_name_0:
+ type: string
+ default: vSMP1
+ description: name of VM
+ smp_name_1:
+ type: string
+ default: vSMP2
+ description: name of VM
+ smp_name_2:
+ type: string
+ default: vSMP2
+ description: name of VM
+ ##smp_name_2:
+ ##type: string
+ ##default: vSMP2
+ ##description: name of VM
+ nee_name_0:
+ type: string
+ default: vNEE
+ description: name of VM
+
+ hostname_fe1:
+ type: string
+ description: FE1 Hostname (from Ulticom license)
+ hostid_fe1:
+ type: string
+ description: FE1 Hostid (from Ulticom license)
+
+ hostname_fe2:
+ type: string
+ description: FE2 Hostname (from Ulticom license)
+ hostid_fe2:
+ type: string
+ description: FE2 Hostid (from Ulticom license)
+
+ hostname_nee1:
+ type: string
+ description: NEE1 Hostname (from Ulticom license)
+ hostid_nee1:
+ type: string
+ description: NEE1 Hostid (from Ulticom license)
+
+ point_code_scp:
+ type: string
+ description: vSCP point code (in "zone-cluster-member" format)
+ point_code_stp:
+ type: string
+ description: STP virtual point code (in "zone-cluster-member" format)
+ point_code_stp1:
+ type: string
+ description: STP1 point code (in "zone-cluster-member" format)
+ point_code_stp2:
+ type: string
+ description: STP2 point code (in "zone-cluster-member" format)
+ ip_address_stp1:
+ type: string
+ description: STP1 IP address
+ ip_port_stp1:
+ type: string
+ description: STP1 IP port
+ ip_address_stp2:
+ type: string
+ description: STP2 IP address
+ ip_port_stp2:
+ type: string
+ description: STP2 IP port
+ ip_port_fe1:
+ type: string
+ description: FE1 IP port in SIGTRAN network
+ ip_port_fe2:
+ type: string
+ description: FE2 IP port in SIGTRAN network
+
+ global_title_scp:
+ type: string
+ description: vSCP Global Title address
+ global_title_stp:
+ type: string
+ description: STP Global Title address
+
+ security_group_name:
+ type: string
+ label: vSCP security group name
+ description: vSCP security group name
+
+ route_table_be:
+ type: string
+ description: Additional route table for BEs
+
+ route_table_fe1:
+ type: string
+ description: Additional route table for FE1
+
+ route_table_fe2:
+ type: string
+ description: Additional route table for FE2
+
+ ip_address_dra:
+ type: string
+ description: DRA VIP address
+
+ lab_name:
+ type: string
+ description: Lab name
+
+resources:
+ server_smp_base:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: smp_name_2 }
+ image: { get_param: image_smp_name }
+ # key_name: { get_param: key_name }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: flavor_smp_name }
+ scheduler_hints: { group1: { get_resource: FE_SMP_Affinity }, group2: { get_resource: Multi_Anti_Affinity } }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+
+ FE_SMP_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["affinity"]
+ name: abc
+
+ Multi_Anti_Affinity:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["anti-affinity"]
+ name: def
+
+ shared_Server_group:
+ type: OS::Nova::ServerGroup
+ properties:
+ policies: ["anti-affinity"]
+ name: def
+
+
+outputs:
+ shared_server_group:
+ value: {get_resource: shared_Server_group}
+ shared_nova:
+ value: {get_resource: server_smp_base}
+
+
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/expectedoutputfiles/MainServiceTemplate.yaml
index 94f731985b..299ad49955 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.smp:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -466,7 +442,7 @@ topology_template:
name:
get_input: smp_name_2
scheduler_hints:
- group: FE_SMP_Affinity
+ group: FE_SMP_Affinity_group
server_smp3:
type: org.openecomp.resource.vfc.nodes.heat.smp
properties:
@@ -486,12 +462,21 @@ topology_template:
name:
get_input: smp_name_2
scheduler_hints:
- group2: Multi_Anti_Affinity
- group1: FE_SMP_Affinity
+ group2: Multi_Anti_Affinity_group
+ group1: FE_SMP_Affinity_group
port3:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -503,6 +488,15 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -514,6 +508,15 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -540,11 +543,20 @@ topology_template:
name:
get_input: smp_name_1
scheduler_hints:
- group: BE_Affinity
+ group: BE_Affinity_group
port2:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -553,16 +565,16 @@ topology_template:
node: server_smp2
relationship: tosca.relationships.network.BindsTo
groups:
- FE_SMP_Affinity:
+ FE_SMP_Affinity_group:
type: tosca.groups.Root
members:
- server_smp2
- server_smp3
- Multi_Anti_Affinity:
+ Multi_Anti_Affinity_group:
type: tosca.groups.Root
members:
- server_smp3
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
@@ -575,29 +587,29 @@ topology_template:
- port1
- server_smp1
- port2
- BE_Affinity:
+ BE_Affinity_group:
type: tosca.groups.Root
members:
- server_smp1
policies:
- FE_SMP_Affinity:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group
+ FE_SMP_Affinity_policy:
type: org.openecomp.policies.placement.Colocate
properties:
name: abc
affinity: host
targets:
- - FE_SMP_Affinity
- Multi_Anti_Affinity:
+ - FE_SMP_Affinity_group
+ Multi_Anti_Affinity_policy:
type: org.openecomp.policies.placement.Antilocate
properties:
name: def
container_type: host
targets:
- - Multi_Anti_Affinity
- BE_Affinity:
- type: org.openecomp.policies.placement.Colocate
- properties:
- name: def
- affinity: host
- targets:
- - BE_Affinity \ No newline at end of file
+ - Multi_Anti_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/inputfiles/MANIFEST.json
index b2916ccf9c..b2916ccf9c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/inputfiles/hot_template.yml
index 8dcbe20043..8dcbe20043 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novaservergroups/staticPolicy/inputfiles/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..3fc881856b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,6958 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ network_name:
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_cmaui1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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.usage_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_server_cmaui2:
+ type: org.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.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui2:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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.usage_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_util_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui4:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui3:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_cmaui3:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui4:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui4:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui3:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui3:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_4:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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.usage_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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.usage_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui3:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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.usage_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui3:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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.usage_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_4:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu.delta_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_server_cmaui6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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.usage_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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.usage_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui6:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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.usage_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui8:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui7:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui7:
+ type: org.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_cmaui_port_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_8:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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.usage_server_cmaui7:
+ type: org.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.usage_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui8:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..471de08e0c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,166 @@
+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:
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: shared_vol2
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ exposed_vol1:
+ hidden: false
+ immutable: false
+ type: string
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: exposed_vol1
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ requirements:
+ - local_storage_server_cmaui2:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: test_vol2
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol2
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ test_vol1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: exposed_vol1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - local_storage_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ test_vol2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_resourceGroup
+ vol_b_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vol_b.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_vol2
+ vol_a_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vol_a.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_vol1
+ outputs:
+ p2:
+ value: test_vol2
+ exposed_vol1:
+ value: test_vol1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0ff3b96235
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,1532 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: network_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui2
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui2:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 1
+ server_cmaui1:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - cmaui_port_2
+ - server_cmaui2
+ - server_cmaui1
+ - test_nested2Level
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ scalable_server_cmaui1:
+ - server_cmaui1
+ - scalable
+ scalable_server_cmaui2:
+ - server_cmaui2
+ - scalable
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_6_test_nested3Level
+ host_server_cmaui1:
+ - server_cmaui1
+ - host
+ disk.root.size_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui3
+ scalable_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level
+ host_server_cmaui2:
+ - server_cmaui2
+ - host
+ disk.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui6_test_nested3Level
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui3
+ disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui4
+ disk.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui4
+ network.incoming.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui5_test_nested3Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui3
+ scalable_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui7_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_6_test_nested3Level
+ disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_4
+ disk.write.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui5_test_nested3Level
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_5_test_nested3Level
+ attachment_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_6_test_nested3Level
+ instance_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui7_test_nested4Level_test_nested3Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui3
+ feature_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes.rate
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ feature_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui3
+ endpoint_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui6_test_nested3Level
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui1:
+ - server_cmaui1
+ - memory.resident
+ memory.resident_server_cmaui2:
+ - server_cmaui2
+ - memory.resident
+ endpoint_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui5_test_nested3Level
+ instance_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui4
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui3
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ os_server_cmaui1:
+ - server_cmaui1
+ - os
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui6_test_nested3Level
+ disk.device.allocation_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui4
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ os_server_cmaui2:
+ - server_cmaui2
+ - os
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_5_test_nested3Level
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui4
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui3
+ disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui5_test_nested3Level
+ disk.device.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui6_test_nested3Level
+ disk.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes
+ disk.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui2:
+ - server_cmaui2
+ - instance
+ instance_server_cmaui1:
+ - server_cmaui1
+ - instance
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui5_test_nested3Level
+ disk.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui5_test_nested3Level
+ disk.device.write.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui3
+ disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_4
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui3
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui1:
+ - server_cmaui1
+ - vcpus
+ vcpus_server_cmaui2:
+ - server_cmaui2
+ - vcpus
+ disk.device.read.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui6_test_nested3Level
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui3
+ disk.read.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui4
+ vcpus_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui8_test_nested4Level_test_nested3Level
+ feature_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui4
+ feature_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_5_test_nested3Level
+ attachment_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3
+ disk.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests.rate
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui4
+ os_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui5_test_nested3Level
+ binding_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui5_test_nested3Level
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui2:
+ - server_cmaui2
+ - disk.ephemeral.size
+ disk.device.capacity_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui5_test_nested3Level
+ disk.ephemeral.size_server_cmaui1:
+ - server_cmaui1
+ - disk.ephemeral.size
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui4
+ disk.device.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes
+ endpoint_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui4
+ instance_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui6_test_nested3Level
+ disk.device.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes
+ cpu.delta_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui5_test_nested3Level
+ disk.root.size_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_8_test_nested4Level_test_nested3Level
+ instance_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui5_test_nested3Level
+ cpu.delta_server_cmaui2:
+ - server_cmaui2
+ - cpu.delta
+ cpu.delta_server_cmaui1:
+ - server_cmaui1
+ - cpu.delta
+ cpu_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui5_test_nested3Level
+ memory.resident_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui5_test_nested3Level
+ disk.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests
+ memory_server_cmaui1:
+ - server_cmaui1
+ - memory
+ memory_server_cmaui2:
+ - server_cmaui2
+ - memory
+ network.outgoing.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes
+ disk.ephemeral.size_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui6_test_nested3Level
+ disk.root.size_server_cmaui1:
+ - server_cmaui1
+ - disk.root.size
+ disk.write.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui4
+ host_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui5_test_nested3Level
+ disk.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests
+ disk.device.read.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui4
+ feature_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui5_test_nested3Level
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_4
+ cpu.delta_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui6_test_nested3Level
+ disk.device.latency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui5_test_nested3Level
+ disk.root.size_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui6_test_nested3Level
+ disk.device.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui6_test_nested3Level
+ disk.write.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui3
+ disk.write.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui6_test_nested3Level
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ memory_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui6_test_nested3Level
+ binding_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_6_test_nested3Level
+ disk.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.allocation
+ disk.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.allocation
+ vcpus_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui5_test_nested3Level
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ endpoint_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui3
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui5_test_nested3Level
+ binding_server_cmaui2:
+ - server_cmaui2
+ - binding
+ binding_server_cmaui1:
+ - server_cmaui1
+ - binding
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3
+ disk.write.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui4
+ disk.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.latency
+ disk.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.latency
+ cpu_util_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui3
+ disk.read.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui3
+ host_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui6_test_nested3Level
+ disk.device.read.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui3
+ disk.iops_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui6_test_nested3Level
+ disk.device.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ memory_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui3
+ disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui6_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui4
+ host_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui6_test_nested3Level
+ attachment_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_4
+ cpu.delta_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_4
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui3
+ binding_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui6_test_nested3Level
+ disk.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui5_test_nested3Level
+ cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui4
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_6_test_nested3Level
+ disk.device.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui5_test_nested3Level
+ feature_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_4
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level
+ memory_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui5_test_nested3Level
+ disk.latency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui4
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_4
+ disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui4
+ disk.device.write.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui4
+ memory.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui5_test_nested3Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui2:
+ - server_cmaui2
+ - disk.root.size
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ cpu.delta_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui4
+ disk.latency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ disk.write.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui3
+ network.incoming.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ disk.read.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui4
+ memory_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui8_test_nested4Level_test_nested3Level
+ memory_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui4
+ disk.allocation_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui6_test_nested3Level
+ binding_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui4
+ disk.device.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests.rate
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui5_test_nested3Level
+ disk.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.iops
+ binding_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_6_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.iops
+ disk.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui6_test_nested3Level
+ disk.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui5_test_nested3Level
+ disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui2:
+ - server_cmaui2
+ - feature
+ cpu_util_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui6_test_nested3Level
+ binding_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui3
+ feature_server_cmaui1:
+ - server_cmaui1
+ - feature
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ binding_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_5_test_nested3Level
+ cpu_server_cmaui2:
+ - server_cmaui2
+ - cpu
+ disk.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui5_test_nested3Level
+ cpu_server_cmaui1:
+ - server_cmaui1
+ - cpu
+ cpu_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui3
+ disk.device.iops_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui3
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui3
+ disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests
+ network.incoming.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3
+ network.incoming.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_4
+ cpu_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui4
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui3
+ disk.write.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui3
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_6_test_nested3Level
+ disk.device.read.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui5_test_nested3Level
+ memory.resident_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui4
+ disk.device.iops_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui5_test_nested3Level
+ disk.allocation_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui4
+ disk.ephemeral.size_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui3
+ disk.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.capacity
+ disk.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.capacity
+ disk.device.latency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui4
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui6_test_nested3Level
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.read.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui3
+ memory.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui4
+ scalable_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui5_test_nested3Level
+ os_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ os_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.device.usage
+ disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.device.usage
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.usage
+ memory.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui3
+ disk.read.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui4
+ disk.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.usage
+ disk.write.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui4
+ disk.device.write.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui6_test_nested3Level
+ cpu_util_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui1:
+ - server_cmaui1
+ - endpoint
+ memory.resident_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui6_test_nested3Level
+ endpoint_server_cmaui2:
+ - server_cmaui2
+ - endpoint
+ disk.capacity_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui4
+ disk.allocation_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui5_test_nested3Level
+ network.incoming.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_4
+ disk.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui6_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.device.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.device.latency
+ disk.device.read.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui3
+ disk.latency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui6_test_nested3Level
+ binding_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui5_test_nested3Level
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_5_test_nested3Level
+ memory.usage_server_cmaui2:
+ - server_cmaui2
+ - memory.usage
+ os_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui3
+ disk.device.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui6_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes.rate
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes.rate
+ memory.usage_server_cmaui1:
+ - server_cmaui1
+ - memory.usage
+ vcpus_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui4
+ disk.write.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui3
+ memory.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui5_test_nested3Level
+ disk.device.allocation_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui5_test_nested3Level
+ disk.write.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui4
+ os_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui4
+ scalable_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui4
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_5_test_nested3Level
+ memory.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui6_test_nested3Level
+ disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui4
+ host_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui3
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui5_test_nested3Level
+ disk.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.read.requests
+ disk.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.read.requests
+ disk.device.write.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui4
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_6_test_nested3Level
+ binding_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_4
+ disk.device.write.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui4
+ network.incoming.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_4
+ disk.device.read.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui6_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui6_test_nested3Level
+ disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui6_test_nested3Level
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_8_test_nested4Level_test_nested3Level
+ memory_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui5_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui6_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes.rate
+ disk.device.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui6_test_nested3Level
+ disk.device.write.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests
+ disk.device.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes.rate
+ disk.allocation_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui3
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui4
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.latency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui3
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3
+ disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.device.allocation
+ disk.device.capacity_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui3
+ disk.iops_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui3
+ disk.capacity_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui4
+ disk.device.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.device.capacity
+ scalable_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui3
+ os_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui6_test_nested3Level
+ disk.ephemeral.size_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui4
+ disk.device.write.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui3
+ scalable_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui6_test_nested3Level
+ host_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui6_test_nested3Level
+ binding_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3
+ cpu_util_server_cmaui1:
+ - server_cmaui1
+ - cpu_util
+ cpu_util_server_cmaui2:
+ - server_cmaui2
+ - cpu_util
+ host_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui4
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_6_test_nested3Level
+ disk.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui6_test_nested3Level
+ disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui6_test_nested3Level
+ disk.device.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.device.iops
+ disk.device.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.device.iops
+ disk.device.read.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests.rate
+ disk.iops_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui6_test_nested3Level
+ requirements:
+ dependency_server_cmaui1:
+ - server_cmaui1
+ - dependency
+ dependency_server_cmaui2:
+ - server_cmaui2
+ - dependency
+ local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui6_test_nested3Level
+ link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_5_test_nested3Level
+ dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_6_test_nested3Level
+ local_storage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui3
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ dependency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui3
+ local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level
+ link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level
+ link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ dependency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level
+ link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_6_test_nested3Level
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ link_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_4
+ dependency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level
+ local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level
+ dependency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui6_test_nested3Level
+ local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui5_test_nested3Level
+ local_storage_server_cmaui2:
+ - server_cmaui2
+ - local_storage
+ local_storage_server_cmaui1:
+ - server_cmaui1
+ - local_storage
+ dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_5_test_nested3Level
+ local_storage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui4
+ link_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui4
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ dependency_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_4
+ dependency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui5_test_nested3Level \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..b6c066b812
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,1192 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui3
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui4:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ server_cmaui3:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui4
+ relationship: tosca.relationships.network.BindsTo
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_3
+ - server_cmaui4
+ - server_cmaui3
+ - cmaui_port_4
+ - test_nested3Level
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ scalable_server_cmaui3:
+ - server_cmaui3
+ - scalable
+ scalable_server_cmaui4:
+ - server_cmaui4
+ - scalable
+ disk.write.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui6
+ cpu_util_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.requests.rate
+ disk.device.read.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui3:
+ - server_cmaui3
+ - disk.iops
+ host_server_cmaui4:
+ - server_cmaui4
+ - host
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui8_test_nested4Level
+ host_server_cmaui3:
+ - server_cmaui3
+ - host
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui7_test_nested4Level
+ host_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui6
+ vcpus_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui5
+ vcpus_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui8_test_nested4Level
+ disk.write.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui5
+ feature_server_cmaui3:
+ - server_cmaui3
+ - feature
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.iops_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui8_test_nested4Level
+ feature_server_cmaui4:
+ - server_cmaui4
+ - feature
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui8_test_nested4Level
+ cpu_server_cmaui4:
+ - server_cmaui4
+ - cpu
+ cpu_server_cmaui3:
+ - server_cmaui3
+ - cpu
+ disk.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui7_test_nested4Level
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_7_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui7_test_nested4Level
+ host_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui5
+ disk.device.write.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui6
+ disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui7_test_nested4Level
+ disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui4:
+ - server_cmaui4
+ - disk.iops
+ cpu_util_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui5
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_5
+ os_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.requests
+ disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui7_test_nested4Level
+ disk.device.read.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.requests
+ disk.device.write.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui5
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui8_test_nested4Level
+ disk.read.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui5
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_6
+ disk.read.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_6
+ network.outpoing.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_5
+ disk.write.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui5
+ os_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui6
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui8_test_nested4Level
+ disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui8_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_6
+ disk.read.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.read.bytes.rate
+ disk.write.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui5
+ memory.resident_server_cmaui3:
+ - server_cmaui3
+ - memory.resident
+ disk.device.write.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui5
+ memory.resident_server_cmaui4:
+ - server_cmaui4
+ - memory.resident
+ os_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui7_test_nested4Level
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ binding_cmaui_port_4:
+ - cmaui_port_4
+ - binding
+ disk.device.read.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui5
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui7_test_nested4Level
+ disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui8_test_nested4Level
+ feature_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_6
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui5
+ instance_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui8_test_nested4Level
+ disk.capacity_server_cmaui3:
+ - server_cmaui3
+ - disk.capacity
+ disk.capacity_server_cmaui4:
+ - server_cmaui4
+ - disk.capacity
+ disk.device.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui6
+ disk.latency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui7_test_nested4Level
+ scalable_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui6
+ binding_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_6
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui8_test_nested4Level
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui7_test_nested4Level
+ network.incoming.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ os_server_cmaui3:
+ - server_cmaui3
+ - os
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui6
+ os_server_cmaui4:
+ - server_cmaui4
+ - os
+ disk.latency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui5
+ disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui8_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ network.incoming.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets.rate
+ feature_cmaui_port_4:
+ - cmaui_port_4
+ - feature
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui7_test_nested4Level
+ disk.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui8_test_nested4Level
+ memory_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui6
+ memory.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui5
+ cpu_util_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui8_test_nested4Level
+ instance_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui5
+ cpu.delta_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui6
+ disk.read.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.read.bytes
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_5
+ disk.allocation_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui5
+ disk.read.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.read.bytes
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level
+ instance_server_cmaui4:
+ - server_cmaui4
+ - instance
+ instance_server_cmaui3:
+ - server_cmaui3
+ - instance
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui7_test_nested4Level
+ disk.device.latency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui5
+ disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui7_test_nested4Level
+ cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui8_test_nested4Level
+ disk.device.latency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui6
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level
+ disk.device.iops_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui6
+ disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui3:
+ - server_cmaui3
+ - disk.device.usage
+ disk.device.read.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui5
+ disk.usage_server_cmaui3:
+ - server_cmaui3
+ - disk.usage
+ disk.device.read.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.bytes
+ disk.usage_server_cmaui4:
+ - server_cmaui4
+ - disk.usage
+ vcpus_server_cmaui3:
+ - server_cmaui3
+ - vcpus
+ vcpus_server_cmaui4:
+ - server_cmaui4
+ - vcpus
+ disk.device.usage_server_cmaui4:
+ - server_cmaui4
+ - disk.device.usage
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_5
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui7_test_nested4Level
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui7_test_nested4Level
+ memory_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui8_test_nested4Level
+ memory.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui8_test_nested4Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui3:
+ - server_cmaui3
+ - endpoint
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui5
+ endpoint_server_cmaui4:
+ - server_cmaui4
+ - endpoint
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui8_test_nested4Level
+ disk.device.capacity_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui6
+ disk.read.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui6
+ disk.capacity_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui5
+ feature_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui5
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_5
+ feature_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui8_test_nested4Level
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui8_test_nested4Level
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui8_test_nested4Level
+ network.outpoing.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_6
+ disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui8_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level
+ binding_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_5
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui7_test_nested4Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_5
+ disk.write.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.write.requests.rate
+ scalable_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui5
+ disk.device.latency_server_cmaui3:
+ - server_cmaui3
+ - disk.device.latency
+ disk.device.latency_server_cmaui4:
+ - server_cmaui4
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.outpoing.packets
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level
+ disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui7_test_nested4Level
+ host_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui8_test_nested4Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_8_test_nested4Level
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui8_test_nested4Level
+ disk.ephemeral.size_server_cmaui4:
+ - server_cmaui4
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.write.requests.rate
+ disk.ephemeral.size_server_cmaui3:
+ - server_cmaui3
+ - disk.ephemeral.size
+ endpoint_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui6
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_5
+ disk.device.read.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.bytes
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui8_test_nested4Level
+ memory.usage_server_cmaui4:
+ - server_cmaui4
+ - memory.usage
+ disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui7_test_nested4Level
+ memory.usage_server_cmaui3:
+ - server_cmaui3
+ - memory.usage
+ cpu.delta_server_cmaui3:
+ - server_cmaui3
+ - cpu.delta
+ binding_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui5
+ disk.write.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.write.bytes
+ cpu.delta_server_cmaui4:
+ - server_cmaui4
+ - cpu.delta
+ disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui8_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.bytes.rate
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level
+ disk.write.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.write.requests
+ disk.write.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.write.requests
+ memory_server_cmaui3:
+ - server_cmaui3
+ - memory
+ memory_server_cmaui4:
+ - server_cmaui4
+ - memory
+ disk.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui6
+ memory_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui7_test_nested4Level
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ instance_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui5
+ disk.device.allocation_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui6
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui5
+ disk.ephemeral.size_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui6
+ disk.device.allocation_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui5
+ disk.device.write.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui6
+ disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui8_test_nested4Level
+ binding_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui8_test_nested4Level
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ disk.allocation_server_cmaui4:
+ - server_cmaui4
+ - disk.allocation
+ scalable_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui8_test_nested4Level
+ disk.allocation_server_cmaui3:
+ - server_cmaui3
+ - disk.allocation
+ network.incoming.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level
+ disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui8_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui8_test_nested4Level
+ cpu_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui5
+ binding_server_cmaui4:
+ - server_cmaui4
+ - binding
+ binding_server_cmaui3:
+ - server_cmaui3
+ - binding
+ disk.capacity_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui6
+ instance_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui6
+ disk.read.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.read.requests
+ disk.read.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui5
+ disk.read.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.read.requests
+ network.incoming.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_6
+ disk.latency_server_cmaui3:
+ - server_cmaui3
+ - disk.latency
+ disk.latency_server_cmaui4:
+ - server_cmaui4
+ - disk.latency
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level
+ disk.allocation_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui6
+ disk.device.write.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.bytes
+ disk.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui5
+ binding_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui7_test_nested4Level
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui8_test_nested4Level
+ scalable_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui7_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_6
+ disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui7_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui7_test_nested4Level
+ disk.device.write.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.requests
+ memory.resident_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui8_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes.rate
+ disk.write.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui5
+ disk.latency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui6
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level
+ disk.device.capacity_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui5
+ disk.root.size_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui6
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui6
+ disk.device.read.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui6
+ cpu_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui7_test_nested4Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_7_test_nested4Level
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui7_test_nested4Level
+ disk.device.write.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.requests
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui7_test_nested4Level
+ disk.write.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.write.bytes.rate
+ disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui8_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.bytes.rate
+ disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui8_test_nested4Level
+ attachment_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_6
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_6
+ memory.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui5
+ network.outgoing.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ attachment_cmaui_port_4:
+ - cmaui_port_4
+ - attachment
+ host_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui7_test_nested4Level
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui7_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui7_test_nested4Level
+ disk.latency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui8_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui7_test_nested4Level
+ disk.device.allocation_server_cmaui4:
+ - server_cmaui4
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui3:
+ - server_cmaui3
+ - disk.device.allocation
+ feature_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui7_test_nested4Level
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui8_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_7_test_nested4Level
+ cpu.delta_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui5
+ network.incoming.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_6
+ cpu_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui6
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui7_test_nested4Level
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui5
+ disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui5
+ attachment_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_5
+ feature_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui6
+ memory_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui5
+ disk.device.capacity_server_cmaui4:
+ - server_cmaui4
+ - disk.device.capacity
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level
+ disk.device.capacity_server_cmaui3:
+ - server_cmaui3
+ - disk.device.capacity
+ disk.write.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui6
+ disk.write.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui6
+ disk.device.iops_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui5
+ disk.ephemeral.size_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui5
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui7_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui7_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level
+ disk.read.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui6
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui7_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui5
+ disk.device.write.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui6
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level
+ cpu_util_server_cmaui3:
+ - server_cmaui3
+ - cpu_util
+ cpu_util_server_cmaui4:
+ - server_cmaui4
+ - cpu_util
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level
+ memory.resident_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui5
+ disk.root.size_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui5
+ network.outgoing.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes
+ disk.write.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui6
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui3:
+ - server_cmaui3
+ - disk.root.size
+ disk.root.size_server_cmaui4:
+ - server_cmaui4
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes.rate
+ endpoint_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui7_test_nested4Level
+ vcpus_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui6
+ os_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui5
+ disk.read.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui6
+ disk.device.iops_server_cmaui3:
+ - server_cmaui3
+ - disk.device.iops
+ disk.device.iops_server_cmaui4:
+ - server_cmaui4
+ - disk.device.iops
+ feature_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_5
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_5
+ disk.device.read.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.requests.rate
+ disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui8_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.requests.rate
+ memory.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui6
+ requirements:
+ dependency_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_6
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_4:
+ - cmaui_port_4
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ dependency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui6
+ link_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_6
+ link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_8_test_nested4Level
+ local_storage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui6
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_8_test_nested4Level
+ dependency_cmaui_port_4:
+ - cmaui_port_4
+ - dependency
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ dependency_server_cmaui3:
+ - server_cmaui3
+ - dependency
+ dependency_server_cmaui4:
+ - server_cmaui4
+ - dependency
+ link_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_5
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_7_test_nested4Level
+ local_storage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui7_test_nested4Level
+ local_storage_server_cmaui4:
+ - server_cmaui4
+ - local_storage
+ local_storage_server_cmaui3:
+ - server_cmaui3
+ - local_storage
+ dependency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui8_test_nested4Level
+ local_storage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui5
+ local_storage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui8_test_nested4Level
+ dependency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui7_test_nested4Level
+ dependency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui5
+ link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_7_test_nested4Level
+ dependency_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_5 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..920856d15d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,846 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ server_cmaui6:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ server_cmaui5:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui5
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui6
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - server_cmaui6
+ - test_nested4Level
+ - server_cmaui5
+ - cmaui_port_5
+ - cmaui_port_6
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.requests.rate
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui8
+ scalable_server_cmaui5:
+ - server_cmaui5
+ - scalable
+ disk.device.write.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.requests.rate
+ scalable_server_cmaui6:
+ - server_cmaui6
+ - scalable
+ host_server_cmaui5:
+ - server_cmaui5
+ - host
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui8
+ host_server_cmaui6:
+ - server_cmaui6
+ - host
+ disk.device.capacity_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui8
+ disk.device.allocation_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui8
+ disk.ephemeral.size_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui8
+ feature_server_cmaui6:
+ - server_cmaui6
+ - feature
+ disk.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui7
+ feature_server_cmaui5:
+ - server_cmaui5
+ - feature
+ cpu_server_cmaui5:
+ - server_cmaui5
+ - cpu
+ disk.read.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui8
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_7
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_8
+ disk.iops_server_cmaui5:
+ - server_cmaui5
+ - disk.iops
+ disk.iops_server_cmaui6:
+ - server_cmaui6
+ - disk.iops
+ disk.root.size_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui7
+ disk.device.read.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.requests
+ cpu_server_cmaui6:
+ - server_cmaui6
+ - cpu
+ instance_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui7
+ disk.device.capacity_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui7
+ disk.latency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui8
+ memory_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui8
+ disk.root.size_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui8
+ disk.read.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.read.bytes.rate
+ disk.allocation_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui7
+ memory.resident_server_cmaui5:
+ - server_cmaui5
+ - memory.resident
+ memory.resident_server_cmaui6:
+ - server_cmaui6
+ - memory.resident
+ disk.device.allocation_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui7
+ binding_cmaui_port_5:
+ - cmaui_port_5
+ - binding
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_8
+ binding_cmaui_port_6:
+ - cmaui_port_6
+ - binding
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_8
+ binding_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui7
+ disk.device.iops_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui8
+ cpu_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui7
+ disk.capacity_server_cmaui5:
+ - server_cmaui5
+ - disk.capacity
+ disk.capacity_server_cmaui6:
+ - server_cmaui6
+ - disk.capacity
+ disk.device.latency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui7
+ network.incoming.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes
+ os_server_cmaui6:
+ - server_cmaui6
+ - os
+ disk.capacity_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui8
+ os_server_cmaui5:
+ - server_cmaui5
+ - os
+ memory.resident_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui8
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_8
+ feature_cmaui_port_5:
+ - cmaui_port_5
+ - feature
+ feature_cmaui_port_6:
+ - cmaui_port_6
+ - feature
+ feature_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui8
+ attachment_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_7
+ network.incoming.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets.rate
+ memory_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui7
+ disk.write.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui8
+ cpu.delta_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui7
+ disk.device.read.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui7
+ feature_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_8
+ instance_server_cmaui6:
+ - server_cmaui6
+ - instance
+ instance_server_cmaui5:
+ - server_cmaui5
+ - instance
+ disk.read.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.read.bytes
+ network.outpoing.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_7
+ attachment_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_8
+ disk.read.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.read.bytes
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui8
+ disk.device.read.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui8
+ feature_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_7
+ network.incoming.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets.rate
+ disk.device.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui7
+ memory.resident_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui7
+ disk.device.read.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.bytes
+ disk.usage_server_cmaui5:
+ - server_cmaui5
+ - disk.usage
+ disk.device.usage_server_cmaui5:
+ - server_cmaui5
+ - disk.device.usage
+ memory.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui8
+ disk.device.usage_server_cmaui6:
+ - server_cmaui6
+ - disk.device.usage
+ disk.usage_server_cmaui6:
+ - server_cmaui6
+ - disk.usage
+ vcpus_server_cmaui5:
+ - server_cmaui5
+ - vcpus
+ vcpus_server_cmaui6:
+ - server_cmaui6
+ - vcpus
+ network.incoming.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_7
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui7
+ instance_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui8
+ endpoint_server_cmaui5:
+ - server_cmaui5
+ - endpoint
+ endpoint_server_cmaui6:
+ - server_cmaui6
+ - endpoint
+ os_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui7
+ binding_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui8
+ network.outpoing.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.outpoing.packets
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui8
+ cpu_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui8
+ disk.device.latency_server_cmaui5:
+ - server_cmaui5
+ - disk.device.latency
+ disk.device.latency_server_cmaui6:
+ - server_cmaui6
+ - disk.device.latency
+ disk.ephemeral.size_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui7
+ disk.device.write.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui8
+ disk.ephemeral.size_server_cmaui6:
+ - server_cmaui6
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.write.requests.rate
+ disk.ephemeral.size_server_cmaui5:
+ - server_cmaui5
+ - disk.ephemeral.size
+ disk.device.write.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui8
+ disk.device.iops_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui7
+ disk.write.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui8
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui7
+ disk.write.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui7
+ memory.usage_server_cmaui5:
+ - server_cmaui5
+ - memory.usage
+ cpu_util_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui7
+ disk.device.read.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui7
+ memory.usage_server_cmaui6:
+ - server_cmaui6
+ - memory.usage
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui8
+ host_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui8
+ endpoint_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui8
+ cpu.delta_server_cmaui6:
+ - server_cmaui6
+ - cpu.delta
+ cpu.delta_server_cmaui5:
+ - server_cmaui5
+ - cpu.delta
+ disk.write.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.write.bytes
+ host_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui7
+ disk.write.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.write.requests
+ disk.write.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.write.requests
+ disk.read.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui8
+ cpu_util_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui8
+ scalable_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui8
+ memory_server_cmaui5:
+ - server_cmaui5
+ - memory
+ memory_server_cmaui6:
+ - server_cmaui6
+ - memory
+ disk.device.read.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui8
+ cpu_util_server_cmaui5:
+ - server_cmaui5
+ - cpu_util
+ cpu_util_server_cmaui6:
+ - server_cmaui6
+ - cpu_util
+ vcpus_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui7
+ disk.write.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui8
+ disk.read.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui7
+ scalable_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui7
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui7
+ endpoint_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui7
+ vcpus_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui8
+ disk.write.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui7
+ network.incoming.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets
+ binding_server_cmaui6:
+ - server_cmaui6
+ - binding
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_7
+ binding_server_cmaui5:
+ - server_cmaui5
+ - binding
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui8
+ network.incoming.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets
+ disk.allocation_server_cmaui6:
+ - server_cmaui6
+ - disk.allocation
+ disk.device.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui8
+ disk.allocation_server_cmaui5:
+ - server_cmaui5
+ - disk.allocation
+ disk.read.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.read.requests
+ disk.latency_server_cmaui5:
+ - server_cmaui5
+ - disk.latency
+ disk.latency_server_cmaui6:
+ - server_cmaui6
+ - disk.latency
+ disk.read.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.read.requests
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_7
+ disk.device.write.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui7
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_8
+ disk.device.write.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui7
+ disk.iops_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui7
+ network.outgoing.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes.rate
+ os_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui8
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui7
+ disk.device.read.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui7
+ disk.device.read.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.requests.rate
+ network.outpoing.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_8
+ disk.device.read.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.bytes.rate
+ binding_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_8
+ disk.write.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.write.bytes.rate
+ disk.write.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.write.bytes.rate
+ attachment_cmaui_port_6:
+ - cmaui_port_6
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_7
+ network.outgoing.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_5:
+ - cmaui_port_5
+ - attachment
+ disk.device.allocation_server_cmaui6:
+ - server_cmaui6
+ - disk.device.allocation
+ disk.write.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui7
+ disk.device.allocation_server_cmaui5:
+ - server_cmaui5
+ - disk.device.allocation
+ cpu.delta_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui8
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_8
+ disk.device.capacity_server_cmaui6:
+ - server_cmaui6
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui5:
+ - server_cmaui5
+ - disk.device.capacity
+ binding_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_7
+ memory.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui7
+ disk.latency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui7
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_7
+ disk.iops_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui8
+ disk.read.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui7
+ disk.capacity_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui7
+ disk.allocation_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui8
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ network.incoming.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes.rate
+ disk.device.latency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui8
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_8
+ disk.root.size_server_cmaui6:
+ - server_cmaui6
+ - disk.root.size
+ network.outgoing.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes
+ disk.root.size_server_cmaui5:
+ - server_cmaui5
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes.rate
+ network.incoming.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_7
+ disk.device.write.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.bytes.rate
+ disk.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui8
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui7
+ disk.device.iops_server_cmaui5:
+ - server_cmaui5
+ - disk.device.iops
+ disk.device.iops_server_cmaui6:
+ - server_cmaui6
+ - disk.device.iops
+ feature_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui7
+ requirements:
+ dependency_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_7
+ dependency_cmaui_port_6:
+ - cmaui_port_6
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_8
+ local_storage_server_cmaui6:
+ - server_cmaui6
+ - local_storage
+ local_storage_server_cmaui5:
+ - server_cmaui5
+ - local_storage
+ dependency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui8
+ local_storage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui8
+ link_cmaui_port_6:
+ - cmaui_port_6
+ - link
+ link_cmaui_port_5:
+ - cmaui_port_5
+ - link
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_8
+ dependency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui7
+ link_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_7
+ local_storage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui7
+ dependency_server_cmaui5:
+ - server_cmaui5
+ - dependency
+ dependency_cmaui_port_5:
+ - cmaui_port_5
+ - dependency
+ dependency_server_cmaui6:
+ - server_cmaui6
+ - 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/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..d518dc0cf4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,488 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui7
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui8
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui8:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ server_cmaui7:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_7
+ - cmaui_port_8
+ - server_cmaui8
+ - server_cmaui7
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.requests.rate
+ disk.device.write.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.requests.rate
+ memory.usage_server_cmaui8:
+ - server_cmaui8
+ - memory.usage
+ scalable_server_cmaui7:
+ - server_cmaui7
+ - scalable
+ scalable_server_cmaui8:
+ - server_cmaui8
+ - scalable
+ memory.usage_server_cmaui7:
+ - server_cmaui7
+ - memory.usage
+ cpu.delta_server_cmaui7:
+ - server_cmaui7
+ - cpu.delta
+ disk.write.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.write.bytes
+ cpu.delta_server_cmaui8:
+ - server_cmaui8
+ - cpu.delta
+ host_server_cmaui8:
+ - server_cmaui8
+ - host
+ host_server_cmaui7:
+ - server_cmaui7
+ - host
+ disk.write.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.write.requests
+ disk.write.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.write.requests
+ feature_server_cmaui7:
+ - server_cmaui7
+ - feature
+ memory_server_cmaui7:
+ - server_cmaui7
+ - memory
+ memory_server_cmaui8:
+ - server_cmaui8
+ - memory
+ cpu_util_server_cmaui7:
+ - server_cmaui7
+ - cpu_util
+ cpu_util_server_cmaui8:
+ - server_cmaui8
+ - cpu_util
+ disk.iops_server_cmaui8:
+ - server_cmaui8
+ - disk.iops
+ disk.iops_server_cmaui7:
+ - server_cmaui7
+ - disk.iops
+ disk.device.read.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.requests
+ cpu_server_cmaui8:
+ - server_cmaui8
+ - cpu
+ cpu_server_cmaui7:
+ - server_cmaui7
+ - cpu
+ binding_server_cmaui8:
+ - server_cmaui8
+ - binding
+ binding_server_cmaui7:
+ - server_cmaui7
+ - binding
+ network.incoming.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets
+ disk.allocation_server_cmaui8:
+ - server_cmaui8
+ - disk.allocation
+ disk.allocation_server_cmaui7:
+ - server_cmaui7
+ - disk.allocation
+ network.incoming.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets
+ disk.latency_server_cmaui7:
+ - server_cmaui7
+ - disk.latency
+ disk.latency_server_cmaui8:
+ - server_cmaui8
+ - disk.latency
+ disk.read.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.read.requests
+ disk.read.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.read.requests
+ memory.resident_server_cmaui7:
+ - server_cmaui7
+ - memory.resident
+ memory.resident_server_cmaui8:
+ - server_cmaui8
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.read.bytes.rate
+ disk.device.write.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.bytes
+ binding_cmaui_port_7:
+ - cmaui_port_7
+ - binding
+ binding_cmaui_port_8:
+ - cmaui_port_8
+ - binding
+ disk.device.write.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes
+ disk.capacity_server_cmaui7:
+ - server_cmaui7
+ - disk.capacity
+ disk.capacity_server_cmaui8:
+ - server_cmaui8
+ - disk.capacity
+ disk.device.write.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.requests
+ os_server_cmaui7:
+ - server_cmaui7
+ - os
+ network.outgoing.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes.rate
+ os_server_cmaui8:
+ - server_cmaui8
+ - os
+ disk.device.read.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.requests.rate
+ disk.write.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.write.bytes.rate
+ feature_cmaui_port_7:
+ - cmaui_port_7
+ - feature
+ disk.device.read.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.bytes.rate
+ feature_cmaui_port_8:
+ - cmaui_port_8
+ - feature
+ network.outgoing.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_7:
+ - cmaui_port_7
+ - attachment
+ attachment_cmaui_port_8:
+ - cmaui_port_8
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.packets.rate
+ instance_server_cmaui8:
+ - server_cmaui8
+ - instance
+ instance_server_cmaui7:
+ - server_cmaui7
+ - instance
+ disk.read.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.read.bytes
+ disk.read.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.read.bytes
+ network.incoming.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets.rate
+ disk.device.capacity_server_cmaui8:
+ - server_cmaui8
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui7:
+ - server_cmaui7
+ - disk.device.capacity
+ disk.device.allocation_server_cmaui8:
+ - server_cmaui8
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui7:
+ - server_cmaui7
+ - disk.device.allocation
+ disk.device.usage_server_cmaui8:
+ - server_cmaui8
+ - disk.device.usage
+ disk.device.read.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.bytes
+ disk.device.usage_server_cmaui7:
+ - server_cmaui7
+ - disk.device.usage
+ disk.usage_server_cmaui7:
+ - server_cmaui7
+ - disk.usage
+ disk.usage_server_cmaui8:
+ - server_cmaui8
+ - disk.usage
+ vcpus_server_cmaui7:
+ - server_cmaui7
+ - vcpus
+ vcpus_server_cmaui8:
+ - server_cmaui8
+ - vcpus
+ endpoint_server_cmaui7:
+ - server_cmaui7
+ - endpoint
+ endpoint_server_cmaui8:
+ - server_cmaui8
+ - endpoint
+ disk.device.latency_server_cmaui7:
+ - server_cmaui7
+ - disk.device.latency
+ disk.device.latency_server_cmaui8:
+ - server_cmaui8
+ - disk.device.latency
+ network.incoming.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes
+ disk.root.size_server_cmaui7:
+ - server_cmaui7
+ - disk.root.size
+ network.outpoing.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.outpoing.packets
+ feature_server_cmaui8:
+ - server_cmaui8
+ - feature
+ disk.root.size_server_cmaui8:
+ - server_cmaui8
+ - disk.root.size
+ network.outpoing.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.outpoing.packets
+ network.outgoing.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes
+ disk.ephemeral.size_server_cmaui8:
+ - server_cmaui8
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.bytes.rate
+ disk.ephemeral.size_server_cmaui7:
+ - server_cmaui7
+ - disk.ephemeral.size
+ disk.device.write.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.bytes.rate
+ disk.write.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.write.requests.rate
+ disk.device.iops_server_cmaui7:
+ - server_cmaui7
+ - disk.device.iops
+ disk.device.iops_server_cmaui8:
+ - server_cmaui8
+ - disk.device.iops
+ requirements:
+ dependency_cmaui_port_8:
+ - cmaui_port_8
+ - dependency
+ dependency_cmaui_port_7:
+ - cmaui_port_7
+ - dependency
+ link_cmaui_port_8:
+ - cmaui_port_8
+ - link
+ link_cmaui_port_7:
+ - cmaui_port_7
+ - link
+ local_storage_server_cmaui8:
+ - server_cmaui8
+ - local_storage
+ local_storage_server_cmaui7:
+ - server_cmaui7
+ - local_storage
+ dependency_server_cmaui7:
+ - server_cmaui7
+ - dependency
+ dependency_server_cmaui8:
+ - server_cmaui8
+ - 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/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..73c167962a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/MANIFEST.json
@@ -0,0 +1,44 @@
+{
+ "name": "Port to Network multi nested test.",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "false",
+ "data": [
+ {
+ "file": "vol_a.yml",
+ "type": "HEAT_VOL",
+ "isBase": "false"
+ },
+ {
+ "file": "vol_b.yml",
+ "type": "HEAT_VOL",
+ "isBase": "false"
+ }
+ ]
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/main.yml
new file mode 100644
index 0000000000..7021fdd09f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/main.yml
@@ -0,0 +1,39 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ cmaui_cinder_volume_size:
+ type: string
+ CMAUI_volume_type:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+ exposed_vol1:
+ type: string
+ p2:
+ type: string
+ description: shared_vol2
+
+resources:
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_param: exposed_vol1 }
+ p2: { get_param: p2 }
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: exposed_vol1 }
+ indx: "%index%"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested1.yml
new file mode 100644
index 0000000000..7ceb43c9a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested1.yml
@@ -0,0 +1,93 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ network_name:
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment1:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui1}
+
+ cmaui_volume_attachment2:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui1}
+
+ cmaui_volume_attachment3:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui2}
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: network_name }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 1]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+
+ server_cmaui2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 1]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested2.yml
new file mode 100644
index 0000000000..c1f10f58e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested2.yml
@@ -0,0 +1,95 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment4:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui3}
+
+ cmaui_volume_attachment5:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui3}
+
+ cmaui_volume_attachment6:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui4}
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_3 }
+
+ server_cmaui4:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested3.yml
new file mode 100644
index 0000000000..f6dd5e5c47
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested3.yml
@@ -0,0 +1,91 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment7:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui5}
+
+ cmaui_volume_attachment8:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui5}
+
+ cmaui_volume_attachment9:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui6}
+
+ cmaui_port_5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui5:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_5 }
+
+ server_cmaui6:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested4.yml
new file mode 100644
index 0000000000..1e81bd632f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/nested4.yml
@@ -0,0 +1,83 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment10:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui7}
+
+ cmaui_volume_attachment11:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui7}
+
+ cmaui_volume_attachment12:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui8}
+
+ cmaui_port_7:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_8:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui7:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_7 }
+
+ server_cmaui8:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_a.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_a.yml
new file mode 100644
index 0000000000..ab0de5b19e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_a.yml
@@ -0,0 +1,27 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ cmaui_cinder_volume_size:
+ type: string
+ CMAUI_volume_type:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_vol1:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: cmaui_cinder_volume_size}
+ volume_type: {get_param: CMAUI_volume_type}
+
+outputs:
+ exposed_vol1:
+ value: {get_resource: test_vol1} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_b.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_b.yml
new file mode 100644
index 0000000000..8c597a6677
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innerHeatVolNestedMultiLevel/inputfiles/vol_b.yml
@@ -0,0 +1,27 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ cmaui_cinder_volume_size:
+ type: string
+ CMAUI_volume_type:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_vol2:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: cmaui_cinder_volume_size}
+ volume_type: {get_param: CMAUI_volume_type}
+
+outputs:
+ p2:
+ value: {get_resource: test_vol2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index e77677efb7..e597cd7ff1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,70 +11,125 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
cmaui_cinder_volume_size:
type: float
description: the size of the CMAUI Cinder volume
+ required: true
+ status: SUPPORTED
timezone:
type: string
description: timezone
+ required: true
+ status: SUPPORTED
security_group_name:
type: string
description: the name of security group
+ required: true
+ status: SUPPORTED
cmaui_volume:
type: string
description: Volume for CMAUI server
+ required: true
+ status: SUPPORTED
oam_network_netmask:
type: string
description: oam network gateway
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
vnf_id:
type: string
description: Unique ID for this VNF instance
+ required: false
default: This_is_ths_MMSC-CMAUI_id
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
oam_network_gateway:
type: string
description: oam network gateway
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ inner_cmaui_volume_b3:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
cmaui_oam_ips:
type: list
description: CMAUI oam_net IP addresses
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
inner_cmaui_volume_a1:
type: string
description: the name of the target volume backend
+ required: true
+ status: SUPPORTED
inner_cmaui_volume_b2:
type: string
description: the name of the target volume backend
+ required: true
+ status: SUPPORTED
external_dns:
type: string
description: dns server
+ required: true
+ status: SUPPORTED
oam_net_name:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
external_ntp:
type: string
description: ntp server
+ required: true
+ status: SUPPORTED
CMAUI_volume_type:
type: string
description: the name of the target volume backend
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui2:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -106,6 +137,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_cmaui1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui1:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -113,41 +151,57 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ memory.usage_server_cmaui2:
+ type: org.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_server_cmaui1:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- endpoint_server_cmaui1:
- type: tosca.capabilities.Endpoint.Admin
+ scalable_server_cmaui2:
+ type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui1:
- type: tosca.capabilities.OperatingSystem
+ cpu.delta_server_cmaui2:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.Scalable
+ disk.device.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.Endpoint.Admin
+ cpu.delta_server_cmaui1:
+ type: org.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_cmaui_port_2:
- type: tosca.capabilities.Attachment
+ disk.iops_server_cmaui1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -158,18 +212,33 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui2:
- type: tosca.capabilities.OperatingSystem
+ disk.device.write.requests.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui2:
+ type: org.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_cmaui_port_0:
- type: tosca.capabilities.Attachment
+ disk.device.write.bytes.rate_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -180,8 +249,533 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_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_server_cmaui2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui2:
+ type: org.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_server_cmaui1:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_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_cmaui_port_2:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui2:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_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_cmaui_port_2:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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.usage_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_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_server_cmaui1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
index 4507d8f8b2..d3c471ef0e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
cmaui_names:
@@ -97,6 +73,12 @@ topology_template:
type: string
description: Unique ID for this VNF instance
default: This_is_ths_MMSC-CMAUI_id
+ inner_cmaui_volume_b3:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
inner_cmaui_volume_a1:
hidden: false
immutable: false
@@ -142,6 +124,10 @@ topology_template:
properties:
service_template_filter:
substitute_service_template: nestedServiceTemplate.yaml
+ inner_cmaui_volume_b3:
+ get_input:
+ - inner_cmaui_volume_b3
+ - 0
inner_cmaui_volume_a1:
get_input: inner_cmaui_volume_a1
inner_cmaui_volume_b2:
@@ -172,7 +158,14 @@ topology_template:
get_input: CMAUI_volume_type
size: '(get_input : cmaui_cinder_volume_size) * 1024'
groups:
- a_vol:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: cmaui server template for vMMSC
+ members:
+ - stam_nested
+ a_vol_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/a_vol.yml
@@ -180,15 +173,10 @@ topology_template:
members:
- inner_cmaui_volume_a1
- cmaui_volume2
- main:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/main.yml
- description: cmaui server template for vMMSC
- members:
- - stam_nested
outputs:
inner_cmaui_volume_a2:
value: cmaui_volume2
+ inner_cmaui_volume_b3:
+ value: inner_cmaui_volume_a1
inner_cmaui_volume_a1:
value: inner_cmaui_volume_a1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
index a9ec66bf29..bd995dbf48 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -100,6 +76,12 @@ topology_template:
immutable: false
type: string
description: availabilityzone name
+ inner_cmaui_volume_b3:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
cmaui_oam_ips:
label: CMAUI oam_net IP addresses
hidden: false
@@ -148,6 +130,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -155,6 +143,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -200,6 +192,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -207,6 +205,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -215,7 +217,7 @@ topology_template:
node: server_cmaui1
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -228,43 +230,328 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ memory.usage_server_cmaui2:
+ - server_cmaui2
+ - memory.usage
scalable_server_cmaui1:
- server_cmaui1
- scalable
- endpoint_server_cmaui1:
- - server_cmaui1
- - endpoint
- os_server_cmaui1:
- - server_cmaui1
- - os
scalable_server_cmaui2:
- server_cmaui2
- scalable
- endpoint_server_cmaui2:
+ cpu.delta_server_cmaui2:
- server_cmaui2
- - endpoint
- attachment_cmaui_port_2:
- - cmaui_port_2
- - attachment
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests.rate
+ cpu.delta_server_cmaui1:
+ - server_cmaui1
+ - cpu.delta
+ disk.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.iops
host_server_cmaui1:
- server_cmaui1
- host
- os_server_cmaui2:
+ disk.device.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui2:
- server_cmaui2
- - os
+ - disk.iops
+ disk.device.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes.rate
+ memory.usage_server_cmaui1:
+ - server_cmaui1
+ - memory.usage
+ host_server_cmaui2:
+ - server_cmaui2
+ - host
+ disk.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests
+ memory_server_cmaui1:
+ - server_cmaui1
+ - memory
+ memory_server_cmaui2:
+ - server_cmaui2
+ - memory
+ disk.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes
+ feature_server_cmaui2:
+ - server_cmaui2
+ - feature
+ feature_server_cmaui1:
+ - server_cmaui1
+ - feature
+ disk.root.size_server_cmaui1:
+ - server_cmaui1
+ - disk.root.size
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ disk.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ cpu_server_cmaui2:
+ - server_cmaui2
+ - cpu
+ cpu_server_cmaui1:
+ - server_cmaui1
+ - cpu
+ disk.device.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.allocation
+ disk.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.allocation
+ disk.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes.rate
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
binding_server_cmaui2:
- server_cmaui2
- binding
+ disk.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.read.requests
+ binding_server_cmaui1:
+ - server_cmaui1
+ - binding
+ disk.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.read.requests
+ disk.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.latency
+ disk.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.latency
+ memory.resident_server_cmaui1:
+ - server_cmaui1
+ - memory.resident
+ memory.resident_server_cmaui2:
+ - server_cmaui2
+ - memory.resident
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ disk.device.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes
+ disk.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.capacity
+ disk.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.capacity
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ os_server_cmaui1:
+ - server_cmaui1
+ - os
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ os_server_cmaui2:
+ - server_cmaui2
+ - os
+ network.incoming.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes
+ disk.device.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes.rate
+ disk.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes.rate
+ disk.device.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.device.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes.rate
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
attachment_cmaui_port_0:
- cmaui_port_0
- attachment
- host_server_cmaui2:
+ disk.read.bytes_server_cmaui2:
- server_cmaui2
- - host
- binding_server_cmaui1:
+ - disk.read.bytes
+ instance_server_cmaui2:
+ - server_cmaui2
+ - instance
+ disk.device.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.device.allocation
+ instance_server_cmaui1:
- server_cmaui1
- - binding
+ - instance
+ disk.device.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.device.allocation
+ disk.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes
+ disk.device.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.device.usage
+ disk.device.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.device.usage
+ disk.device.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.device.capacity
+ disk.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.usage
+ vcpus_server_cmaui1:
+ - server_cmaui1
+ - vcpus
+ vcpus_server_cmaui2:
+ - server_cmaui2
+ - vcpus
+ disk.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.usage
+ endpoint_server_cmaui1:
+ - server_cmaui1
+ - endpoint
+ endpoint_server_cmaui2:
+ - server_cmaui2
+ - endpoint
+ cpu_util_server_cmaui1:
+ - server_cmaui1
+ - cpu_util
+ cpu_util_server_cmaui2:
+ - server_cmaui2
+ - cpu_util
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui2:
+ - server_cmaui2
+ - disk.root.size
+ disk.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests.rate
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.device.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.device.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.device.latency
+ disk.device.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.device.iops
+ disk.device.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.device.iops
+ disk.ephemeral.size_server_cmaui2:
+ - server_cmaui2
+ - disk.ephemeral.size
+ disk.device.read.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests.rate
+ disk.ephemeral.size_server_cmaui1:
+ - server_cmaui1
+ - disk.ephemeral.size
+ disk.device.read.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests.rate
+ disk.device.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes
requirements:
+ dependency_server_cmaui1:
+ - server_cmaui1
+ - dependency
+ dependency_server_cmaui2:
+ - server_cmaui2
+ - dependency
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
link_cmaui_port_0:
- cmaui_port_0
- link
@@ -274,6 +561,9 @@ topology_template:
local_storage_server_cmaui2:
- server_cmaui2
- local_storage
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
local_storage_server_cmaui1:
- server_cmaui1
- local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/MANIFEST.json
index 0aa103e5b8..59cb760a67 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/MANIFEST.json
@@ -12,7 +12,7 @@
"file": "main.yml",
"type": "HEAT",
"isBase": "false",
- "data":[
+ "data": [
{
"file": "a_vol.yml",
"type": "HEAT_VOL",
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/a_vol.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/a_vol.yml
index df5be20848..6a63416cbd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/a_vol.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/a_vol.yml
@@ -29,4 +29,6 @@ outputs:
inner_cmaui_volume_a1:
value: {get_resource: inner_cmaui_volume_a1}
inner_cmaui_volume_a2:
- value: {get_resource: cmaui_volume2} \ No newline at end of file
+ value: {get_resource: cmaui_volume2}
+ inner_cmaui_volume_b3:
+ value: {get_resource: inner_cmaui_volume_a1}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/main.yml
index 7994b332df..564cb17510 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/main.yml
@@ -15,6 +15,8 @@ parameters:
type: string
description: Unique ID for this VNF instance
default: This_is_ths_MMSC-CMAUI_id
+ inner_cmaui_volume_b3:
+ type: comma_delimited_list
cmaui_names:
type: comma_delimited_list
description: CMAUI1, CMAUI2 server names
@@ -74,4 +76,5 @@ resources:
type: nested.yml
properties:
inner_cmaui_volume_a1: { get_param: inner_cmaui_volume_a1}
- inner_cmaui_volume_b2: { get_param: inner_cmaui_volume_a2} \ No newline at end of file
+ inner_cmaui_volume_b2: { get_param: inner_cmaui_volume_a2}
+ inner_cmaui_volume_b3: { get_param: [inner_cmaui_volume_b3,0]} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/nested.yml
index 078b228d29..b423836cbe 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/nested.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/innernestedconnection/inputfiles/nested.yml
@@ -71,6 +71,10 @@ parameters:
type: string
label: CMAUI vm volume type
description: the name of the target volume backend
+ inner_cmaui_volume_b3:
+ type: comma_delimited_list
+
+
resources:
@@ -107,6 +111,12 @@ resources:
volume_id: {get_param: inner_cmaui_volume_b2}
instance_uuid: {get_resource: server_cmaui2}
+ cmaui_volume_attachment4:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: inner_cmaui_volume_b3}
+ instance_uuid: {get_resource: server_cmaui1}
+
server_cmaui1:
type: OS::Nova::Server
properties:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multinotconnected/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multinotconnected/expectedoutputfiles/MainServiceTemplate.yaml
index 0d723c6e6f..2c7d854590 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multinotconnected/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multinotconnected/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -155,6 +131,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -162,6 +144,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -173,6 +159,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -180,6 +172,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -264,6 +260,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -271,6 +273,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -280,29 +286,19 @@ topology_template:
relationship: tosca.relationships.network.BindsTo
relationship_templates:
cmaui_volume_attachment2:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param2
instance_uuid: server_cmaui1
cmaui_volume_attachment3:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param2
instance_uuid: server_cmaui2
groups:
- addOn:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/addOn.yml
- description: cmaui server template for vMMSC
- members:
- - cmaui_port_2
- - server_cmaui2
- - server_cmaui1
- - cmaui_port_1
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
@@ -311,4 +307,14 @@ topology_template:
- cmaui_port_11
- cmaui_volume1
- server_cmaui21
- - cmaui_volume2 \ No newline at end of file
+ - cmaui_volume2
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: cmaui server template for vMMSC
+ members:
+ - cmaui_port_2
+ - server_cmaui2
+ - server_cmaui1
+ - cmaui_port_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..3fc881856b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,6958 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ network_name:
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_cmaui1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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.usage_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_server_cmaui2:
+ type: org.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.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui2:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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.usage_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_util_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui4:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui3:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_cmaui3:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui4:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui4:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui3:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui3:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_4:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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.usage_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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.usage_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui3:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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.usage_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui3:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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.usage_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_4:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu.delta_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_server_cmaui6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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.usage_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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.usage_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui6:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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.usage_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui8:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui7:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui7:
+ type: org.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_cmaui_port_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_8:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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.usage_server_cmaui7:
+ type: org.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.usage_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui8:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b48a12fabb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,154 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_vol1
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2: test_vol2
+ requirements:
+ - local_storage_server_cmaui2:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: test_vol2
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol2
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ test_nestedInvalidConnectionToNova:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_vol1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1: test_vol1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - local_storage_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ test_vol2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_nestedInvalidConnectionToNova
+ - test_vol1
+ - test_resourceGroup
+ - test_vol2
+ - test_nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0ff3b96235
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,1532 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: network_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui2
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui2:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 1
+ server_cmaui1:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - cmaui_port_2
+ - server_cmaui2
+ - server_cmaui1
+ - test_nested2Level
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ scalable_server_cmaui1:
+ - server_cmaui1
+ - scalable
+ scalable_server_cmaui2:
+ - server_cmaui2
+ - scalable
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_6_test_nested3Level
+ host_server_cmaui1:
+ - server_cmaui1
+ - host
+ disk.root.size_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui3
+ scalable_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level
+ host_server_cmaui2:
+ - server_cmaui2
+ - host
+ disk.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui6_test_nested3Level
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui3
+ disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui4
+ disk.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui4
+ network.incoming.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui5_test_nested3Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui3
+ scalable_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui7_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_6_test_nested3Level
+ disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_4
+ disk.write.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui5_test_nested3Level
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_5_test_nested3Level
+ attachment_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_6_test_nested3Level
+ instance_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui7_test_nested4Level_test_nested3Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui3
+ feature_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes.rate
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ feature_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui3
+ endpoint_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui6_test_nested3Level
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui1:
+ - server_cmaui1
+ - memory.resident
+ memory.resident_server_cmaui2:
+ - server_cmaui2
+ - memory.resident
+ endpoint_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui5_test_nested3Level
+ instance_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui4
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui3
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ os_server_cmaui1:
+ - server_cmaui1
+ - os
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui6_test_nested3Level
+ disk.device.allocation_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui4
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ os_server_cmaui2:
+ - server_cmaui2
+ - os
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_5_test_nested3Level
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui4
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui3
+ disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui5_test_nested3Level
+ disk.device.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui6_test_nested3Level
+ disk.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes
+ disk.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui2:
+ - server_cmaui2
+ - instance
+ instance_server_cmaui1:
+ - server_cmaui1
+ - instance
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui5_test_nested3Level
+ disk.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui5_test_nested3Level
+ disk.device.write.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui3
+ disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_4
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui3
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui1:
+ - server_cmaui1
+ - vcpus
+ vcpus_server_cmaui2:
+ - server_cmaui2
+ - vcpus
+ disk.device.read.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui6_test_nested3Level
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui3
+ disk.read.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui4
+ vcpus_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui8_test_nested4Level_test_nested3Level
+ feature_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui4
+ feature_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_5_test_nested3Level
+ attachment_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3
+ disk.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests.rate
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui4
+ os_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui5_test_nested3Level
+ binding_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui5_test_nested3Level
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui2:
+ - server_cmaui2
+ - disk.ephemeral.size
+ disk.device.capacity_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui5_test_nested3Level
+ disk.ephemeral.size_server_cmaui1:
+ - server_cmaui1
+ - disk.ephemeral.size
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui4
+ disk.device.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes
+ endpoint_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui4
+ instance_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui6_test_nested3Level
+ disk.device.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes
+ cpu.delta_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui5_test_nested3Level
+ disk.root.size_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_8_test_nested4Level_test_nested3Level
+ instance_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui5_test_nested3Level
+ cpu.delta_server_cmaui2:
+ - server_cmaui2
+ - cpu.delta
+ cpu.delta_server_cmaui1:
+ - server_cmaui1
+ - cpu.delta
+ cpu_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui5_test_nested3Level
+ memory.resident_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui5_test_nested3Level
+ disk.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests
+ memory_server_cmaui1:
+ - server_cmaui1
+ - memory
+ memory_server_cmaui2:
+ - server_cmaui2
+ - memory
+ network.outgoing.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes
+ disk.ephemeral.size_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui6_test_nested3Level
+ disk.root.size_server_cmaui1:
+ - server_cmaui1
+ - disk.root.size
+ disk.write.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui4
+ host_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui5_test_nested3Level
+ disk.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests
+ disk.device.read.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui4
+ feature_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui5_test_nested3Level
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_4
+ cpu.delta_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui6_test_nested3Level
+ disk.device.latency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui5_test_nested3Level
+ disk.root.size_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui6_test_nested3Level
+ disk.device.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui6_test_nested3Level
+ disk.write.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui3
+ disk.write.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui6_test_nested3Level
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ memory_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui6_test_nested3Level
+ binding_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_6_test_nested3Level
+ disk.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.allocation
+ disk.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.allocation
+ vcpus_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui5_test_nested3Level
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ endpoint_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui3
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui5_test_nested3Level
+ binding_server_cmaui2:
+ - server_cmaui2
+ - binding
+ binding_server_cmaui1:
+ - server_cmaui1
+ - binding
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3
+ disk.write.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui4
+ disk.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.latency
+ disk.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.latency
+ cpu_util_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui3
+ disk.read.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui3
+ host_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui6_test_nested3Level
+ disk.device.read.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui3
+ disk.iops_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui6_test_nested3Level
+ disk.device.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ memory_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui3
+ disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui6_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui4
+ host_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui6_test_nested3Level
+ attachment_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_4
+ cpu.delta_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_4
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui3
+ binding_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui6_test_nested3Level
+ disk.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui5_test_nested3Level
+ cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui4
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_6_test_nested3Level
+ disk.device.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui5_test_nested3Level
+ feature_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_4
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level
+ memory_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui5_test_nested3Level
+ disk.latency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui4
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_4
+ disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui4
+ disk.device.write.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui4
+ memory.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui5_test_nested3Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui2:
+ - server_cmaui2
+ - disk.root.size
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ cpu.delta_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui4
+ disk.latency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ disk.write.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui3
+ network.incoming.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ disk.read.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui4
+ memory_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui8_test_nested4Level_test_nested3Level
+ memory_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui4
+ disk.allocation_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui6_test_nested3Level
+ binding_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui4
+ disk.device.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests.rate
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui5_test_nested3Level
+ disk.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.iops
+ binding_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_6_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.iops
+ disk.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui6_test_nested3Level
+ disk.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui5_test_nested3Level
+ disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui2:
+ - server_cmaui2
+ - feature
+ cpu_util_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui6_test_nested3Level
+ binding_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui3
+ feature_server_cmaui1:
+ - server_cmaui1
+ - feature
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ binding_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_5_test_nested3Level
+ cpu_server_cmaui2:
+ - server_cmaui2
+ - cpu
+ disk.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui5_test_nested3Level
+ cpu_server_cmaui1:
+ - server_cmaui1
+ - cpu
+ cpu_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui3
+ disk.device.iops_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui3
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui3
+ disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests
+ network.incoming.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3
+ network.incoming.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_4
+ cpu_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui4
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui3
+ disk.write.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui3
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_6_test_nested3Level
+ disk.device.read.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui5_test_nested3Level
+ memory.resident_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui4
+ disk.device.iops_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui5_test_nested3Level
+ disk.allocation_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui4
+ disk.ephemeral.size_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui3
+ disk.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.capacity
+ disk.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.capacity
+ disk.device.latency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui4
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui6_test_nested3Level
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.read.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui3
+ memory.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui4
+ scalable_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui5_test_nested3Level
+ os_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ os_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.device.usage
+ disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.device.usage
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.usage
+ memory.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui3
+ disk.read.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui4
+ disk.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.usage
+ disk.write.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui4
+ disk.device.write.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui6_test_nested3Level
+ cpu_util_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui1:
+ - server_cmaui1
+ - endpoint
+ memory.resident_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui6_test_nested3Level
+ endpoint_server_cmaui2:
+ - server_cmaui2
+ - endpoint
+ disk.capacity_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui4
+ disk.allocation_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui5_test_nested3Level
+ network.incoming.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_4
+ disk.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui6_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.device.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.device.latency
+ disk.device.read.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui3
+ disk.latency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui6_test_nested3Level
+ binding_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui5_test_nested3Level
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_5_test_nested3Level
+ memory.usage_server_cmaui2:
+ - server_cmaui2
+ - memory.usage
+ os_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui3
+ disk.device.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui6_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes.rate
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes.rate
+ memory.usage_server_cmaui1:
+ - server_cmaui1
+ - memory.usage
+ vcpus_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui4
+ disk.write.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui3
+ memory.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui5_test_nested3Level
+ disk.device.allocation_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui5_test_nested3Level
+ disk.write.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui4
+ os_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui4
+ scalable_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui4
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_5_test_nested3Level
+ memory.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui6_test_nested3Level
+ disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui4
+ host_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui3
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui5_test_nested3Level
+ disk.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.read.requests
+ disk.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.read.requests
+ disk.device.write.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui4
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_6_test_nested3Level
+ binding_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_4
+ disk.device.write.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui4
+ network.incoming.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_4
+ disk.device.read.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui6_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui6_test_nested3Level
+ disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui6_test_nested3Level
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_8_test_nested4Level_test_nested3Level
+ memory_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui5_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui6_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes.rate
+ disk.device.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui6_test_nested3Level
+ disk.device.write.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests
+ disk.device.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes.rate
+ disk.allocation_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui3
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui4
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.latency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui3
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3
+ disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.device.allocation
+ disk.device.capacity_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui3
+ disk.iops_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui3
+ disk.capacity_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui4
+ disk.device.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.device.capacity
+ scalable_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui3
+ os_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui6_test_nested3Level
+ disk.ephemeral.size_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui4
+ disk.device.write.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui3
+ scalable_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui6_test_nested3Level
+ host_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui6_test_nested3Level
+ binding_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3
+ cpu_util_server_cmaui1:
+ - server_cmaui1
+ - cpu_util
+ cpu_util_server_cmaui2:
+ - server_cmaui2
+ - cpu_util
+ host_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui4
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_6_test_nested3Level
+ disk.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui6_test_nested3Level
+ disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui6_test_nested3Level
+ disk.device.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.device.iops
+ disk.device.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.device.iops
+ disk.device.read.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests.rate
+ disk.iops_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui6_test_nested3Level
+ requirements:
+ dependency_server_cmaui1:
+ - server_cmaui1
+ - dependency
+ dependency_server_cmaui2:
+ - server_cmaui2
+ - dependency
+ local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui6_test_nested3Level
+ link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_5_test_nested3Level
+ dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_6_test_nested3Level
+ local_storage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui3
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ dependency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui3
+ local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level
+ link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level
+ link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ dependency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level
+ link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_6_test_nested3Level
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ link_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_4
+ dependency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level
+ local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level
+ dependency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui6_test_nested3Level
+ local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui5_test_nested3Level
+ local_storage_server_cmaui2:
+ - server_cmaui2
+ - local_storage
+ local_storage_server_cmaui1:
+ - server_cmaui1
+ - local_storage
+ dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_5_test_nested3Level
+ local_storage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui4
+ link_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui4
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ dependency_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_4
+ dependency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui5_test_nested3Level \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..b6c066b812
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,1192 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui3
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui4:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ server_cmaui3:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui4
+ relationship: tosca.relationships.network.BindsTo
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_3
+ - server_cmaui4
+ - server_cmaui3
+ - cmaui_port_4
+ - test_nested3Level
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ scalable_server_cmaui3:
+ - server_cmaui3
+ - scalable
+ scalable_server_cmaui4:
+ - server_cmaui4
+ - scalable
+ disk.write.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui6
+ cpu_util_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.requests.rate
+ disk.device.read.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui3:
+ - server_cmaui3
+ - disk.iops
+ host_server_cmaui4:
+ - server_cmaui4
+ - host
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui8_test_nested4Level
+ host_server_cmaui3:
+ - server_cmaui3
+ - host
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui7_test_nested4Level
+ host_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui6
+ vcpus_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui5
+ vcpus_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui8_test_nested4Level
+ disk.write.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui5
+ feature_server_cmaui3:
+ - server_cmaui3
+ - feature
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.iops_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui8_test_nested4Level
+ feature_server_cmaui4:
+ - server_cmaui4
+ - feature
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui8_test_nested4Level
+ cpu_server_cmaui4:
+ - server_cmaui4
+ - cpu
+ cpu_server_cmaui3:
+ - server_cmaui3
+ - cpu
+ disk.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui7_test_nested4Level
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_7_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui7_test_nested4Level
+ host_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui5
+ disk.device.write.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui6
+ disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui7_test_nested4Level
+ disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui4:
+ - server_cmaui4
+ - disk.iops
+ cpu_util_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui5
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_5
+ os_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.requests
+ disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui7_test_nested4Level
+ disk.device.read.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.requests
+ disk.device.write.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui5
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui8_test_nested4Level
+ disk.read.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui5
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_6
+ disk.read.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_6
+ network.outpoing.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_5
+ disk.write.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui5
+ os_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui6
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui8_test_nested4Level
+ disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui8_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_6
+ disk.read.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.read.bytes.rate
+ disk.write.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui5
+ memory.resident_server_cmaui3:
+ - server_cmaui3
+ - memory.resident
+ disk.device.write.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui5
+ memory.resident_server_cmaui4:
+ - server_cmaui4
+ - memory.resident
+ os_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui7_test_nested4Level
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ binding_cmaui_port_4:
+ - cmaui_port_4
+ - binding
+ disk.device.read.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui5
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui7_test_nested4Level
+ disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui8_test_nested4Level
+ feature_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_6
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui5
+ instance_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui8_test_nested4Level
+ disk.capacity_server_cmaui3:
+ - server_cmaui3
+ - disk.capacity
+ disk.capacity_server_cmaui4:
+ - server_cmaui4
+ - disk.capacity
+ disk.device.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui6
+ disk.latency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui7_test_nested4Level
+ scalable_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui6
+ binding_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_6
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui8_test_nested4Level
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui7_test_nested4Level
+ network.incoming.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ os_server_cmaui3:
+ - server_cmaui3
+ - os
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui6
+ os_server_cmaui4:
+ - server_cmaui4
+ - os
+ disk.latency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui5
+ disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui8_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ network.incoming.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets.rate
+ feature_cmaui_port_4:
+ - cmaui_port_4
+ - feature
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui7_test_nested4Level
+ disk.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui8_test_nested4Level
+ memory_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui6
+ memory.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui5
+ cpu_util_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui8_test_nested4Level
+ instance_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui5
+ cpu.delta_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui6
+ disk.read.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.read.bytes
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_5
+ disk.allocation_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui5
+ disk.read.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.read.bytes
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level
+ instance_server_cmaui4:
+ - server_cmaui4
+ - instance
+ instance_server_cmaui3:
+ - server_cmaui3
+ - instance
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui7_test_nested4Level
+ disk.device.latency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui5
+ disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui7_test_nested4Level
+ cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui8_test_nested4Level
+ disk.device.latency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui6
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level
+ disk.device.iops_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui6
+ disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui3:
+ - server_cmaui3
+ - disk.device.usage
+ disk.device.read.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui5
+ disk.usage_server_cmaui3:
+ - server_cmaui3
+ - disk.usage
+ disk.device.read.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.bytes
+ disk.usage_server_cmaui4:
+ - server_cmaui4
+ - disk.usage
+ vcpus_server_cmaui3:
+ - server_cmaui3
+ - vcpus
+ vcpus_server_cmaui4:
+ - server_cmaui4
+ - vcpus
+ disk.device.usage_server_cmaui4:
+ - server_cmaui4
+ - disk.device.usage
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_5
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui7_test_nested4Level
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui7_test_nested4Level
+ memory_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui8_test_nested4Level
+ memory.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui8_test_nested4Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui3:
+ - server_cmaui3
+ - endpoint
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui5
+ endpoint_server_cmaui4:
+ - server_cmaui4
+ - endpoint
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui8_test_nested4Level
+ disk.device.capacity_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui6
+ disk.read.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui6
+ disk.capacity_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui5
+ feature_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui5
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_5
+ feature_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui8_test_nested4Level
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui8_test_nested4Level
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui8_test_nested4Level
+ network.outpoing.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_6
+ disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui8_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level
+ binding_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_5
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui7_test_nested4Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_5
+ disk.write.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.write.requests.rate
+ scalable_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui5
+ disk.device.latency_server_cmaui3:
+ - server_cmaui3
+ - disk.device.latency
+ disk.device.latency_server_cmaui4:
+ - server_cmaui4
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.outpoing.packets
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level
+ disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui7_test_nested4Level
+ host_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui8_test_nested4Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_8_test_nested4Level
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui8_test_nested4Level
+ disk.ephemeral.size_server_cmaui4:
+ - server_cmaui4
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.write.requests.rate
+ disk.ephemeral.size_server_cmaui3:
+ - server_cmaui3
+ - disk.ephemeral.size
+ endpoint_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui6
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_5
+ disk.device.read.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.bytes
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui8_test_nested4Level
+ memory.usage_server_cmaui4:
+ - server_cmaui4
+ - memory.usage
+ disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui7_test_nested4Level
+ memory.usage_server_cmaui3:
+ - server_cmaui3
+ - memory.usage
+ cpu.delta_server_cmaui3:
+ - server_cmaui3
+ - cpu.delta
+ binding_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui5
+ disk.write.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.write.bytes
+ cpu.delta_server_cmaui4:
+ - server_cmaui4
+ - cpu.delta
+ disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui8_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.bytes.rate
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level
+ disk.write.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.write.requests
+ disk.write.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.write.requests
+ memory_server_cmaui3:
+ - server_cmaui3
+ - memory
+ memory_server_cmaui4:
+ - server_cmaui4
+ - memory
+ disk.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui6
+ memory_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui7_test_nested4Level
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ instance_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui5
+ disk.device.allocation_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui6
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui5
+ disk.ephemeral.size_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui6
+ disk.device.allocation_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui5
+ disk.device.write.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui6
+ disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui8_test_nested4Level
+ binding_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui8_test_nested4Level
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ disk.allocation_server_cmaui4:
+ - server_cmaui4
+ - disk.allocation
+ scalable_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui8_test_nested4Level
+ disk.allocation_server_cmaui3:
+ - server_cmaui3
+ - disk.allocation
+ network.incoming.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level
+ disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui8_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui8_test_nested4Level
+ cpu_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui5
+ binding_server_cmaui4:
+ - server_cmaui4
+ - binding
+ binding_server_cmaui3:
+ - server_cmaui3
+ - binding
+ disk.capacity_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui6
+ instance_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui6
+ disk.read.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.read.requests
+ disk.read.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui5
+ disk.read.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.read.requests
+ network.incoming.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_6
+ disk.latency_server_cmaui3:
+ - server_cmaui3
+ - disk.latency
+ disk.latency_server_cmaui4:
+ - server_cmaui4
+ - disk.latency
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level
+ disk.allocation_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui6
+ disk.device.write.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.bytes
+ disk.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui5
+ binding_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui7_test_nested4Level
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui8_test_nested4Level
+ scalable_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui7_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_6
+ disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui7_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui7_test_nested4Level
+ disk.device.write.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.requests
+ memory.resident_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui8_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes.rate
+ disk.write.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui5
+ disk.latency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui6
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level
+ disk.device.capacity_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui5
+ disk.root.size_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui6
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui6
+ disk.device.read.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui6
+ cpu_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui7_test_nested4Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_7_test_nested4Level
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui7_test_nested4Level
+ disk.device.write.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.requests
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui7_test_nested4Level
+ disk.write.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.write.bytes.rate
+ disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui8_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.bytes.rate
+ disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui8_test_nested4Level
+ attachment_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_6
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_6
+ memory.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui5
+ network.outgoing.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ attachment_cmaui_port_4:
+ - cmaui_port_4
+ - attachment
+ host_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui7_test_nested4Level
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui7_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui7_test_nested4Level
+ disk.latency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui8_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui7_test_nested4Level
+ disk.device.allocation_server_cmaui4:
+ - server_cmaui4
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui3:
+ - server_cmaui3
+ - disk.device.allocation
+ feature_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui7_test_nested4Level
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui8_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_7_test_nested4Level
+ cpu.delta_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui5
+ network.incoming.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_6
+ cpu_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui6
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui7_test_nested4Level
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui5
+ disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui5
+ attachment_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_5
+ feature_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui6
+ memory_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui5
+ disk.device.capacity_server_cmaui4:
+ - server_cmaui4
+ - disk.device.capacity
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level
+ disk.device.capacity_server_cmaui3:
+ - server_cmaui3
+ - disk.device.capacity
+ disk.write.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui6
+ disk.write.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui6
+ disk.device.iops_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui5
+ disk.ephemeral.size_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui5
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui7_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui7_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level
+ disk.read.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui6
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui7_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui5
+ disk.device.write.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui6
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level
+ cpu_util_server_cmaui3:
+ - server_cmaui3
+ - cpu_util
+ cpu_util_server_cmaui4:
+ - server_cmaui4
+ - cpu_util
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level
+ memory.resident_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui5
+ disk.root.size_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui5
+ network.outgoing.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes
+ disk.write.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui6
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui3:
+ - server_cmaui3
+ - disk.root.size
+ disk.root.size_server_cmaui4:
+ - server_cmaui4
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes.rate
+ endpoint_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui7_test_nested4Level
+ vcpus_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui6
+ os_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui5
+ disk.read.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui6
+ disk.device.iops_server_cmaui3:
+ - server_cmaui3
+ - disk.device.iops
+ disk.device.iops_server_cmaui4:
+ - server_cmaui4
+ - disk.device.iops
+ feature_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_5
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_5
+ disk.device.read.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.requests.rate
+ disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui8_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.requests.rate
+ memory.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui6
+ requirements:
+ dependency_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_6
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_4:
+ - cmaui_port_4
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ dependency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui6
+ link_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_6
+ link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_8_test_nested4Level
+ local_storage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui6
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_8_test_nested4Level
+ dependency_cmaui_port_4:
+ - cmaui_port_4
+ - dependency
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ dependency_server_cmaui3:
+ - server_cmaui3
+ - dependency
+ dependency_server_cmaui4:
+ - server_cmaui4
+ - dependency
+ link_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_5
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_7_test_nested4Level
+ local_storage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui7_test_nested4Level
+ local_storage_server_cmaui4:
+ - server_cmaui4
+ - local_storage
+ local_storage_server_cmaui3:
+ - server_cmaui3
+ - local_storage
+ dependency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui8_test_nested4Level
+ local_storage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui5
+ local_storage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui8_test_nested4Level
+ dependency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui7_test_nested4Level
+ dependency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui5
+ link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_7_test_nested4Level
+ dependency_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_5 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..920856d15d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,846 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ server_cmaui6:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ server_cmaui5:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui5
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui6
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - server_cmaui6
+ - test_nested4Level
+ - server_cmaui5
+ - cmaui_port_5
+ - cmaui_port_6
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.requests.rate
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui8
+ scalable_server_cmaui5:
+ - server_cmaui5
+ - scalable
+ disk.device.write.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.requests.rate
+ scalable_server_cmaui6:
+ - server_cmaui6
+ - scalable
+ host_server_cmaui5:
+ - server_cmaui5
+ - host
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui8
+ host_server_cmaui6:
+ - server_cmaui6
+ - host
+ disk.device.capacity_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui8
+ disk.device.allocation_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui8
+ disk.ephemeral.size_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui8
+ feature_server_cmaui6:
+ - server_cmaui6
+ - feature
+ disk.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui7
+ feature_server_cmaui5:
+ - server_cmaui5
+ - feature
+ cpu_server_cmaui5:
+ - server_cmaui5
+ - cpu
+ disk.read.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui8
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_7
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_8
+ disk.iops_server_cmaui5:
+ - server_cmaui5
+ - disk.iops
+ disk.iops_server_cmaui6:
+ - server_cmaui6
+ - disk.iops
+ disk.root.size_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui7
+ disk.device.read.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.requests
+ cpu_server_cmaui6:
+ - server_cmaui6
+ - cpu
+ instance_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui7
+ disk.device.capacity_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui7
+ disk.latency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui8
+ memory_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui8
+ disk.root.size_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui8
+ disk.read.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.read.bytes.rate
+ disk.allocation_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui7
+ memory.resident_server_cmaui5:
+ - server_cmaui5
+ - memory.resident
+ memory.resident_server_cmaui6:
+ - server_cmaui6
+ - memory.resident
+ disk.device.allocation_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui7
+ binding_cmaui_port_5:
+ - cmaui_port_5
+ - binding
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_8
+ binding_cmaui_port_6:
+ - cmaui_port_6
+ - binding
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_8
+ binding_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui7
+ disk.device.iops_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui8
+ cpu_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui7
+ disk.capacity_server_cmaui5:
+ - server_cmaui5
+ - disk.capacity
+ disk.capacity_server_cmaui6:
+ - server_cmaui6
+ - disk.capacity
+ disk.device.latency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui7
+ network.incoming.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes
+ os_server_cmaui6:
+ - server_cmaui6
+ - os
+ disk.capacity_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui8
+ os_server_cmaui5:
+ - server_cmaui5
+ - os
+ memory.resident_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui8
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_8
+ feature_cmaui_port_5:
+ - cmaui_port_5
+ - feature
+ feature_cmaui_port_6:
+ - cmaui_port_6
+ - feature
+ feature_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui8
+ attachment_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_7
+ network.incoming.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets.rate
+ memory_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui7
+ disk.write.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui8
+ cpu.delta_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui7
+ disk.device.read.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui7
+ feature_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_8
+ instance_server_cmaui6:
+ - server_cmaui6
+ - instance
+ instance_server_cmaui5:
+ - server_cmaui5
+ - instance
+ disk.read.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.read.bytes
+ network.outpoing.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_7
+ attachment_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_8
+ disk.read.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.read.bytes
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui8
+ disk.device.read.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui8
+ feature_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_7
+ network.incoming.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets.rate
+ disk.device.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui7
+ memory.resident_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui7
+ disk.device.read.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.bytes
+ disk.usage_server_cmaui5:
+ - server_cmaui5
+ - disk.usage
+ disk.device.usage_server_cmaui5:
+ - server_cmaui5
+ - disk.device.usage
+ memory.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui8
+ disk.device.usage_server_cmaui6:
+ - server_cmaui6
+ - disk.device.usage
+ disk.usage_server_cmaui6:
+ - server_cmaui6
+ - disk.usage
+ vcpus_server_cmaui5:
+ - server_cmaui5
+ - vcpus
+ vcpus_server_cmaui6:
+ - server_cmaui6
+ - vcpus
+ network.incoming.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_7
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui7
+ instance_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui8
+ endpoint_server_cmaui5:
+ - server_cmaui5
+ - endpoint
+ endpoint_server_cmaui6:
+ - server_cmaui6
+ - endpoint
+ os_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui7
+ binding_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui8
+ network.outpoing.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.outpoing.packets
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui8
+ cpu_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui8
+ disk.device.latency_server_cmaui5:
+ - server_cmaui5
+ - disk.device.latency
+ disk.device.latency_server_cmaui6:
+ - server_cmaui6
+ - disk.device.latency
+ disk.ephemeral.size_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui7
+ disk.device.write.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui8
+ disk.ephemeral.size_server_cmaui6:
+ - server_cmaui6
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.write.requests.rate
+ disk.ephemeral.size_server_cmaui5:
+ - server_cmaui5
+ - disk.ephemeral.size
+ disk.device.write.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui8
+ disk.device.iops_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui7
+ disk.write.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui8
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui7
+ disk.write.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui7
+ memory.usage_server_cmaui5:
+ - server_cmaui5
+ - memory.usage
+ cpu_util_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui7
+ disk.device.read.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui7
+ memory.usage_server_cmaui6:
+ - server_cmaui6
+ - memory.usage
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui8
+ host_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui8
+ endpoint_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui8
+ cpu.delta_server_cmaui6:
+ - server_cmaui6
+ - cpu.delta
+ cpu.delta_server_cmaui5:
+ - server_cmaui5
+ - cpu.delta
+ disk.write.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.write.bytes
+ host_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui7
+ disk.write.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.write.requests
+ disk.write.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.write.requests
+ disk.read.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui8
+ cpu_util_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui8
+ scalable_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui8
+ memory_server_cmaui5:
+ - server_cmaui5
+ - memory
+ memory_server_cmaui6:
+ - server_cmaui6
+ - memory
+ disk.device.read.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui8
+ cpu_util_server_cmaui5:
+ - server_cmaui5
+ - cpu_util
+ cpu_util_server_cmaui6:
+ - server_cmaui6
+ - cpu_util
+ vcpus_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui7
+ disk.write.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui8
+ disk.read.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui7
+ scalable_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui7
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui7
+ endpoint_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui7
+ vcpus_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui8
+ disk.write.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui7
+ network.incoming.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets
+ binding_server_cmaui6:
+ - server_cmaui6
+ - binding
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_7
+ binding_server_cmaui5:
+ - server_cmaui5
+ - binding
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui8
+ network.incoming.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets
+ disk.allocation_server_cmaui6:
+ - server_cmaui6
+ - disk.allocation
+ disk.device.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui8
+ disk.allocation_server_cmaui5:
+ - server_cmaui5
+ - disk.allocation
+ disk.read.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.read.requests
+ disk.latency_server_cmaui5:
+ - server_cmaui5
+ - disk.latency
+ disk.latency_server_cmaui6:
+ - server_cmaui6
+ - disk.latency
+ disk.read.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.read.requests
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_7
+ disk.device.write.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui7
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_8
+ disk.device.write.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui7
+ disk.iops_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui7
+ network.outgoing.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes.rate
+ os_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui8
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui7
+ disk.device.read.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui7
+ disk.device.read.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.requests.rate
+ network.outpoing.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_8
+ disk.device.read.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.bytes.rate
+ binding_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_8
+ disk.write.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.write.bytes.rate
+ disk.write.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.write.bytes.rate
+ attachment_cmaui_port_6:
+ - cmaui_port_6
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_7
+ network.outgoing.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_5:
+ - cmaui_port_5
+ - attachment
+ disk.device.allocation_server_cmaui6:
+ - server_cmaui6
+ - disk.device.allocation
+ disk.write.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui7
+ disk.device.allocation_server_cmaui5:
+ - server_cmaui5
+ - disk.device.allocation
+ cpu.delta_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui8
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_8
+ disk.device.capacity_server_cmaui6:
+ - server_cmaui6
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui5:
+ - server_cmaui5
+ - disk.device.capacity
+ binding_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_7
+ memory.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui7
+ disk.latency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui7
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_7
+ disk.iops_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui8
+ disk.read.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui7
+ disk.capacity_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui7
+ disk.allocation_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui8
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ network.incoming.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes.rate
+ disk.device.latency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui8
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_8
+ disk.root.size_server_cmaui6:
+ - server_cmaui6
+ - disk.root.size
+ network.outgoing.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes
+ disk.root.size_server_cmaui5:
+ - server_cmaui5
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes.rate
+ network.incoming.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_7
+ disk.device.write.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.bytes.rate
+ disk.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui8
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui7
+ disk.device.iops_server_cmaui5:
+ - server_cmaui5
+ - disk.device.iops
+ disk.device.iops_server_cmaui6:
+ - server_cmaui6
+ - disk.device.iops
+ feature_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui7
+ requirements:
+ dependency_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_7
+ dependency_cmaui_port_6:
+ - cmaui_port_6
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_8
+ local_storage_server_cmaui6:
+ - server_cmaui6
+ - local_storage
+ local_storage_server_cmaui5:
+ - server_cmaui5
+ - local_storage
+ dependency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui8
+ local_storage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui8
+ link_cmaui_port_6:
+ - cmaui_port_6
+ - link
+ link_cmaui_port_5:
+ - cmaui_port_5
+ - link
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_8
+ dependency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui7
+ link_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_7
+ local_storage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui7
+ dependency_server_cmaui5:
+ - server_cmaui5
+ - dependency
+ dependency_cmaui_port_5:
+ - cmaui_port_5
+ - dependency
+ dependency_server_cmaui6:
+ - server_cmaui6
+ - 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/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..d518dc0cf4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,488 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui7
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui8
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui8:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ server_cmaui7:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_7
+ - cmaui_port_8
+ - server_cmaui8
+ - server_cmaui7
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.requests.rate
+ disk.device.write.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.requests.rate
+ memory.usage_server_cmaui8:
+ - server_cmaui8
+ - memory.usage
+ scalable_server_cmaui7:
+ - server_cmaui7
+ - scalable
+ scalable_server_cmaui8:
+ - server_cmaui8
+ - scalable
+ memory.usage_server_cmaui7:
+ - server_cmaui7
+ - memory.usage
+ cpu.delta_server_cmaui7:
+ - server_cmaui7
+ - cpu.delta
+ disk.write.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.write.bytes
+ cpu.delta_server_cmaui8:
+ - server_cmaui8
+ - cpu.delta
+ host_server_cmaui8:
+ - server_cmaui8
+ - host
+ host_server_cmaui7:
+ - server_cmaui7
+ - host
+ disk.write.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.write.requests
+ disk.write.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.write.requests
+ feature_server_cmaui7:
+ - server_cmaui7
+ - feature
+ memory_server_cmaui7:
+ - server_cmaui7
+ - memory
+ memory_server_cmaui8:
+ - server_cmaui8
+ - memory
+ cpu_util_server_cmaui7:
+ - server_cmaui7
+ - cpu_util
+ cpu_util_server_cmaui8:
+ - server_cmaui8
+ - cpu_util
+ disk.iops_server_cmaui8:
+ - server_cmaui8
+ - disk.iops
+ disk.iops_server_cmaui7:
+ - server_cmaui7
+ - disk.iops
+ disk.device.read.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.requests
+ cpu_server_cmaui8:
+ - server_cmaui8
+ - cpu
+ cpu_server_cmaui7:
+ - server_cmaui7
+ - cpu
+ binding_server_cmaui8:
+ - server_cmaui8
+ - binding
+ binding_server_cmaui7:
+ - server_cmaui7
+ - binding
+ network.incoming.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets
+ disk.allocation_server_cmaui8:
+ - server_cmaui8
+ - disk.allocation
+ disk.allocation_server_cmaui7:
+ - server_cmaui7
+ - disk.allocation
+ network.incoming.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets
+ disk.latency_server_cmaui7:
+ - server_cmaui7
+ - disk.latency
+ disk.latency_server_cmaui8:
+ - server_cmaui8
+ - disk.latency
+ disk.read.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.read.requests
+ disk.read.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.read.requests
+ memory.resident_server_cmaui7:
+ - server_cmaui7
+ - memory.resident
+ memory.resident_server_cmaui8:
+ - server_cmaui8
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.read.bytes.rate
+ disk.device.write.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.bytes
+ binding_cmaui_port_7:
+ - cmaui_port_7
+ - binding
+ binding_cmaui_port_8:
+ - cmaui_port_8
+ - binding
+ disk.device.write.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes
+ disk.capacity_server_cmaui7:
+ - server_cmaui7
+ - disk.capacity
+ disk.capacity_server_cmaui8:
+ - server_cmaui8
+ - disk.capacity
+ disk.device.write.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.requests
+ os_server_cmaui7:
+ - server_cmaui7
+ - os
+ network.outgoing.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes.rate
+ os_server_cmaui8:
+ - server_cmaui8
+ - os
+ disk.device.read.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.requests.rate
+ disk.write.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.write.bytes.rate
+ feature_cmaui_port_7:
+ - cmaui_port_7
+ - feature
+ disk.device.read.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.bytes.rate
+ feature_cmaui_port_8:
+ - cmaui_port_8
+ - feature
+ network.outgoing.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_7:
+ - cmaui_port_7
+ - attachment
+ attachment_cmaui_port_8:
+ - cmaui_port_8
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.packets.rate
+ instance_server_cmaui8:
+ - server_cmaui8
+ - instance
+ instance_server_cmaui7:
+ - server_cmaui7
+ - instance
+ disk.read.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.read.bytes
+ disk.read.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.read.bytes
+ network.incoming.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets.rate
+ disk.device.capacity_server_cmaui8:
+ - server_cmaui8
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui7:
+ - server_cmaui7
+ - disk.device.capacity
+ disk.device.allocation_server_cmaui8:
+ - server_cmaui8
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui7:
+ - server_cmaui7
+ - disk.device.allocation
+ disk.device.usage_server_cmaui8:
+ - server_cmaui8
+ - disk.device.usage
+ disk.device.read.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.bytes
+ disk.device.usage_server_cmaui7:
+ - server_cmaui7
+ - disk.device.usage
+ disk.usage_server_cmaui7:
+ - server_cmaui7
+ - disk.usage
+ disk.usage_server_cmaui8:
+ - server_cmaui8
+ - disk.usage
+ vcpus_server_cmaui7:
+ - server_cmaui7
+ - vcpus
+ vcpus_server_cmaui8:
+ - server_cmaui8
+ - vcpus
+ endpoint_server_cmaui7:
+ - server_cmaui7
+ - endpoint
+ endpoint_server_cmaui8:
+ - server_cmaui8
+ - endpoint
+ disk.device.latency_server_cmaui7:
+ - server_cmaui7
+ - disk.device.latency
+ disk.device.latency_server_cmaui8:
+ - server_cmaui8
+ - disk.device.latency
+ network.incoming.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes
+ disk.root.size_server_cmaui7:
+ - server_cmaui7
+ - disk.root.size
+ network.outpoing.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.outpoing.packets
+ feature_server_cmaui8:
+ - server_cmaui8
+ - feature
+ disk.root.size_server_cmaui8:
+ - server_cmaui8
+ - disk.root.size
+ network.outpoing.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.outpoing.packets
+ network.outgoing.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes
+ disk.ephemeral.size_server_cmaui8:
+ - server_cmaui8
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.bytes.rate
+ disk.ephemeral.size_server_cmaui7:
+ - server_cmaui7
+ - disk.ephemeral.size
+ disk.device.write.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.bytes.rate
+ disk.write.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.write.requests.rate
+ disk.device.iops_server_cmaui7:
+ - server_cmaui7
+ - disk.device.iops
+ disk.device.iops_server_cmaui8:
+ - server_cmaui8
+ - disk.device.iops
+ requirements:
+ dependency_cmaui_port_8:
+ - cmaui_port_8
+ - dependency
+ dependency_cmaui_port_7:
+ - cmaui_port_7
+ - dependency
+ link_cmaui_port_8:
+ - cmaui_port_8
+ - link
+ link_cmaui_port_7:
+ - cmaui_port_7
+ - link
+ local_storage_server_cmaui8:
+ - server_cmaui8
+ - local_storage
+ local_storage_server_cmaui7:
+ - server_cmaui7
+ - local_storage
+ dependency_server_cmaui7:
+ - server_cmaui7
+ - dependency
+ dependency_server_cmaui8:
+ - server_cmaui8
+ - 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/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..c7d4122f3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,32 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/main.yml
new file mode 100644
index 0000000000..cd24012cbf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/main.yml
@@ -0,0 +1,56 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ cmaui_cinder_volume_size:
+ type: string
+ CMAUI_volume_type:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_vol1:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: cmaui_cinder_volume_size}
+ volume_type: {get_param: CMAUI_volume_type}
+
+ test_vol2:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: cmaui_cinder_volume_size}
+ volume_type: {get_param: CMAUI_volume_type}
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_vol1 }
+ p2: { get_resource: test_vol2 }
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_resource: test_vol1 }
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNova:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_nova} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..7ceb43c9a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,93 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ network_name:
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment1:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui1}
+
+ cmaui_volume_attachment2:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui1}
+
+ cmaui_volume_attachment3:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui2}
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: network_name }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 1]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+
+ server_cmaui2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 1]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..c1f10f58e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,95 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment4:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui3}
+
+ cmaui_volume_attachment5:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui3}
+
+ cmaui_volume_attachment6:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui4}
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_3 }
+
+ server_cmaui4:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..f6dd5e5c47
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,91 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment7:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui5}
+
+ cmaui_volume_attachment8:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui5}
+
+ cmaui_volume_attachment9:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui6}
+
+ cmaui_port_5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui5:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_5 }
+
+ server_cmaui6:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..1e81bd632f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,83 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment10:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui7}
+
+ cmaui_volume_attachment11:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui7}
+
+ cmaui_volume_attachment12:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui8}
+
+ cmaui_port_7:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_8:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui7:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_7 }
+
+ server_cmaui8:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 889961bd45..f349889ec2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,31 +11,54 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_volume_param:
type: string
description: nova server id
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -67,14 +66,73 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -82,28 +140,250 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_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
endpoint_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_cmaui_port_0:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_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/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
index 2b09784a72..eb88006897 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
cmaui_cinder_volume_size:
@@ -65,7 +41,7 @@ topology_template:
node: test_vol
relationship: tosca.relationships.AttachesTo
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
index 485e7031b4..c84ce20669 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -97,6 +73,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -104,6 +86,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -112,7 +97,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -123,28 +108,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ attachment_cmaui_port_0:
+ - cmaui_port_0
+ - attachment
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_0:
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_0:
- cmaui_port_0
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
link_cmaui_port_0:
- cmaui_port_0
- 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/services/heattotosca/novatovolumeconnection/nestedconnection/inputfiles/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/inputfiles/nested.yml
index 922c4d1613..390bc0268b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/inputfiles/nested.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestedconnection/inputfiles/nested.yml
@@ -52,4 +52,10 @@ resources:
type: OS::Cinder::VolumeAttachment
properties:
volume_id: {get_param: cmaui_volume_param}
+ instance_uuid: {get_resource: server_cmaui}
+
+ cmaui_volume_attachment1:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: [cmaui_volume_param,0]}
instance_uuid: {get_resource: server_cmaui} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 889961bd45..f349889ec2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,31 +11,54 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_volume_param:
type: string
description: nova server id
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -67,14 +66,73 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -82,28 +140,250 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_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
endpoint_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_cmaui_port_0:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_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/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml
index 9722ae1b16..68a215fb8a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -110,6 +86,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -117,6 +99,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -133,7 +118,7 @@ topology_template:
substitute_service_template: nestedServiceTemplate.yaml
cmaui_volume_param: server_cmaui1
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml
index 485e7031b4..c84ce20669 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/nestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -97,6 +73,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -104,6 +86,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -112,7 +97,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -123,28 +108,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ attachment_cmaui_port_0:
+ - cmaui_port_0
+ - attachment
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_0:
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_0:
- cmaui_port_0
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
link_cmaui_port_0:
- cmaui_port_0
- 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/services/heattotosca/novatovolumeconnection/multiconnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
index dc3e231da4..a55e57dc3d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -144,6 +120,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -151,6 +133,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -222,6 +208,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -229,6 +221,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -238,25 +234,33 @@ topology_template:
relationship: tosca.relationships.network.BindsTo
relationship_templates:
cmaui_volume_attachment2:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param2
instance_uuid: server_cmaui1
cmaui_volume_attachment3:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param2
instance_uuid: server_cmaui2
cmaui_volume_attachment1:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param1
instance_uuid: server_cmaui1
groups:
- addOn:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: volume
+ members:
+ - cmaui_volume1
+ - cmaui_volume2
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/addOn.yml
@@ -265,12 +269,4 @@ topology_template:
- cmaui_port_2
- server_cmaui2
- server_cmaui1
- - cmaui_port_1
- main:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/main.yml
- description: volume
- members:
- - cmaui_volume1
- - cmaui_volume2 \ No newline at end of file
+ - cmaui_port_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/MANIFEST.json
index 1f762d0ccc..1f762d0ccc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/addOn.yml
index 1083268acf..d362468a3a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/addOn.yml
@@ -105,6 +105,12 @@ resources:
volume_id: {get_param: cmaui_volume_param2}
instance_uuid: {get_resource: server_cmaui2}
+ cmaui_volume_attachment4:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: [cmaui_volume_param1,0]}
+ instance_uuid: {get_resource: server_cmaui2}
+
server_cmaui1:
type: OS::Nova::Server
properties:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/main.yml
index 89734ad14b..89734ad14b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/multiconnection/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedAddOn/inputfiles/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..3fc881856b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,6958 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ network_name:
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui2:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_cmaui1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui2:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui2:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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.usage_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_server_cmaui2:
+ type: org.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.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui2:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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.usage_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui4_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui4_test_nested2Level:
+ type: org.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_server_cmaui3_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_util_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui4_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui6_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui4:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui3:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_server_cmaui3:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui4:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui4:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui3:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui3:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_4:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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.usage_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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.usage_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui3:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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.usage_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_3:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui3:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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.usage_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_4:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu.delta_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui5_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui6_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui4:
+ type: org.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_server_cmaui8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui3:
+ type: org.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_server_cmaui6_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_server_cmaui6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui6:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui5:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui5:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui6:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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.usage_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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.usage_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui6:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui6:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6:
+ type: org.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_server_cmaui8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui5:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui5:
+ type: org.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.usage_server_cmaui8_test_nested4Level:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: org.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_server_cmaui5:
+ type: org.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_server_cmaui6:
+ type: org.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_server_cmaui7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui8:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui7:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui8:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui8:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui7:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui7:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui7:
+ type: org.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_cmaui_port_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_8:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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.usage_server_cmaui7:
+ type: org.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.usage_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui8:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui7:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui8:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui8:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui7:
+ type: org.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_server_cmaui8:
+ type: org.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/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..f618ad4beb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,178 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: shared_vol2
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ shared_nova:
+ hidden: false
+ immutable: false
+ type: string
+ shared_vol1:
+ hidden: false
+ immutable: false
+ type: string
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: shared_vol1
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ requirements:
+ - local_storage_server_cmaui2:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui1:
+ capability: tosca.capabilities.Attachment
+ node: test_vol2
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui4_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui3_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol2
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ test_nestedInvalidConnectionToNova:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: shared_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_vol1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: shared_vol1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - local_storage_server_cmaui7_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ - local_storage_server_cmaui5:
+ capability: tosca.capabilities.Attachment
+ node: test_vol1
+ relationship: tosca.relationships.AttachesTo
+ test_vol2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ base_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_vol1
+ - test_vol2
+ - test_nova
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_nestedInvalidConnectionToNova
+ - test_resourceGroup \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0ff3b96235
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,1532 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 1
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: network_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui2
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui2:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 1
+ server_cmaui1:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - cmaui_port_2
+ - server_cmaui2
+ - server_cmaui1
+ - test_nested2Level
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ scalable_server_cmaui1:
+ - server_cmaui1
+ - scalable
+ scalable_server_cmaui2:
+ - server_cmaui2
+ - scalable
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_6_test_nested3Level
+ host_server_cmaui1:
+ - server_cmaui1
+ - host
+ disk.root.size_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui3
+ scalable_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level
+ host_server_cmaui2:
+ - server_cmaui2
+ - host
+ disk.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui6_test_nested3Level
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui3
+ disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui4
+ disk.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui4
+ network.incoming.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui5_test_nested3Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui3
+ scalable_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui7_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_6_test_nested3Level
+ disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_4
+ disk.write.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui5_test_nested3Level
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_5_test_nested3Level
+ attachment_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_6_test_nested3Level
+ instance_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui7_test_nested4Level_test_nested3Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui3
+ feature_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes.rate
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ feature_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui3
+ endpoint_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui6_test_nested3Level
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui1:
+ - server_cmaui1
+ - memory.resident
+ memory.resident_server_cmaui2:
+ - server_cmaui2
+ - memory.resident
+ endpoint_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui5_test_nested3Level
+ instance_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui4
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui3
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ os_server_cmaui1:
+ - server_cmaui1
+ - os
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui6_test_nested3Level
+ disk.device.allocation_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui4
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ os_server_cmaui2:
+ - server_cmaui2
+ - os
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_5_test_nested3Level
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui4
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui3
+ disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui5_test_nested3Level
+ disk.device.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui6_test_nested3Level
+ disk.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes
+ disk.latency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui2:
+ - server_cmaui2
+ - instance
+ instance_server_cmaui1:
+ - server_cmaui1
+ - instance
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui5_test_nested3Level
+ disk.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui5_test_nested3Level
+ disk.device.write.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui3
+ disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_4
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui3
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui1:
+ - server_cmaui1
+ - vcpus
+ vcpus_server_cmaui2:
+ - server_cmaui2
+ - vcpus
+ disk.device.read.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui6_test_nested3Level
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui3
+ disk.read.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui4
+ vcpus_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui8_test_nested4Level_test_nested3Level
+ feature_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui4
+ feature_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_5_test_nested3Level
+ attachment_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3
+ disk.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests.rate
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui4
+ os_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui5_test_nested3Level
+ binding_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui5_test_nested3Level
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui2:
+ - server_cmaui2
+ - disk.ephemeral.size
+ disk.device.capacity_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui5_test_nested3Level
+ disk.ephemeral.size_server_cmaui1:
+ - server_cmaui1
+ - disk.ephemeral.size
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui4
+ disk.device.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes
+ endpoint_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui4
+ instance_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui6_test_nested3Level
+ disk.device.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes
+ cpu.delta_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui5_test_nested3Level
+ disk.root.size_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_8_test_nested4Level_test_nested3Level
+ instance_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui5_test_nested3Level
+ cpu.delta_server_cmaui2:
+ - server_cmaui2
+ - cpu.delta
+ cpu.delta_server_cmaui1:
+ - server_cmaui1
+ - cpu.delta
+ cpu_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui5_test_nested3Level
+ memory.resident_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui5_test_nested3Level
+ disk.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests
+ memory_server_cmaui1:
+ - server_cmaui1
+ - memory
+ memory_server_cmaui2:
+ - server_cmaui2
+ - memory
+ network.outgoing.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes
+ disk.ephemeral.size_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui6_test_nested3Level
+ disk.root.size_server_cmaui1:
+ - server_cmaui1
+ - disk.root.size
+ disk.write.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui4
+ host_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui5_test_nested3Level
+ disk.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests
+ disk.device.read.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui4
+ feature_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui5_test_nested3Level
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_4
+ cpu.delta_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui6_test_nested3Level
+ disk.device.latency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui5_test_nested3Level
+ disk.root.size_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui6_test_nested3Level
+ disk.device.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui6_test_nested3Level
+ disk.write.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui3
+ disk.write.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui6_test_nested3Level
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ memory_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui6_test_nested3Level
+ binding_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_6_test_nested3Level
+ disk.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.allocation
+ disk.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.allocation
+ vcpus_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui5_test_nested3Level
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ endpoint_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui3
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui5_test_nested3Level
+ binding_server_cmaui2:
+ - server_cmaui2
+ - binding
+ binding_server_cmaui1:
+ - server_cmaui1
+ - binding
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3
+ disk.write.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui4
+ disk.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.latency
+ disk.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.latency
+ cpu_util_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui3
+ disk.read.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui3
+ host_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui6_test_nested3Level
+ disk.device.read.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui3
+ disk.iops_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui6_test_nested3Level
+ disk.device.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ memory_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui3
+ disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui6_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.device.read.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui4
+ host_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui6_test_nested3Level
+ attachment_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_4
+ cpu.delta_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_4
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui3
+ binding_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui6_test_nested3Level
+ disk.read.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui5_test_nested3Level
+ cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui4
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_6_test_nested3Level
+ disk.device.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui5_test_nested3Level
+ feature_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_4
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level
+ memory_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui5_test_nested3Level
+ disk.latency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui4
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_4
+ disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui4
+ disk.device.write.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui4
+ memory.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui8_test_nested4Level_test_nested3Level
+ instance_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui5_test_nested3Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui2:
+ - server_cmaui2
+ - disk.root.size
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ cpu.delta_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui4
+ disk.latency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ disk.write.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui3
+ network.incoming.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ disk.read.bytes.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui4
+ memory_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui8_test_nested4Level_test_nested3Level
+ memory_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui4
+ disk.allocation_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui6_test_nested3Level
+ binding_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui4
+ disk.device.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests.rate
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui5_test_nested3Level
+ disk.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.iops
+ binding_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_6_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.iops
+ disk.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui6_test_nested3Level
+ disk.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui5_test_nested3Level
+ disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_server_cmaui2:
+ - server_cmaui2
+ - feature
+ cpu_util_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui6_test_nested3Level
+ binding_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui3
+ feature_server_cmaui1:
+ - server_cmaui1
+ - feature
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ binding_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_5_test_nested3Level
+ cpu_server_cmaui2:
+ - server_cmaui2
+ - cpu
+ disk.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui5_test_nested3Level
+ cpu_server_cmaui1:
+ - server_cmaui1
+ - cpu
+ cpu_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui3
+ disk.device.iops_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui3
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui3
+ disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests
+ network.incoming.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3
+ network.incoming.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_4
+ cpu_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui4
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui3
+ disk.write.bytes_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui3
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_6_test_nested3Level
+ disk.device.read.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui5_test_nested3Level
+ memory.resident_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui4
+ disk.device.iops_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui5_test_nested3Level
+ disk.allocation_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui4
+ disk.ephemeral.size_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui3
+ disk.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.capacity
+ disk.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.capacity
+ disk.device.latency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui4
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui6_test_nested3Level
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui3
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.read.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui3
+ memory.usage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui4
+ scalable_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui5_test_nested3Level
+ os_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui7_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ os_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.device.usage
+ disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.device.usage
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.usage
+ memory.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui3
+ disk.read.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui4
+ disk.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.usage
+ disk.write.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui4
+ disk.device.write.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui6_test_nested3Level
+ cpu_util_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui1:
+ - server_cmaui1
+ - endpoint
+ memory.resident_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui6_test_nested3Level
+ endpoint_server_cmaui2:
+ - server_cmaui2
+ - endpoint
+ disk.capacity_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui4
+ disk.allocation_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui5_test_nested3Level
+ network.incoming.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_4
+ disk.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui6_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.device.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.device.latency
+ disk.device.read.requests_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui3
+ disk.latency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui6_test_nested3Level
+ binding_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui5_test_nested3Level
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui7_test_nested4Level_test_nested3Level
+ feature_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_5_test_nested3Level
+ memory.usage_server_cmaui2:
+ - server_cmaui2
+ - memory.usage
+ os_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui3
+ disk.device.latency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui6_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes.rate
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes.rate
+ memory.usage_server_cmaui1:
+ - server_cmaui1
+ - memory.usage
+ vcpus_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui4
+ disk.write.bytes.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui3
+ memory.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui5_test_nested3Level
+ disk.device.allocation_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui5_test_nested3Level
+ disk.write.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui4
+ os_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui4
+ scalable_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui4
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_5_test_nested3Level
+ memory.usage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui6_test_nested3Level
+ disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui4
+ host_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui3
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui5_test_nested3Level
+ disk.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.read.requests
+ disk.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.read.requests
+ disk.device.write.requests.rate_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui4
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui8_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_6_test_nested3Level
+ binding_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_4
+ disk.device.write.bytes_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui4
+ network.incoming.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_4
+ disk.device.read.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui6_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui6_test_nested3Level
+ disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui6_test_nested3Level
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_8_test_nested4Level_test_nested3Level
+ memory_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.usage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui5_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_5_test_nested3Level
+ disk.device.allocation_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui6_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes.rate
+ disk.device.capacity_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui6_test_nested3Level
+ disk.device.write.requests_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui5_test_nested3Level
+ disk.device.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests
+ disk.device.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes.rate
+ disk.allocation_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui3
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level
+ disk.iops_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui4
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.latency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui3
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3
+ disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.device.allocation
+ disk.device.capacity_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui3
+ disk.iops_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui3
+ disk.capacity_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui5_test_nested3Level
+ attachment_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui4
+ disk.device.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.device.capacity
+ scalable_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui3
+ os_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui6_test_nested3Level
+ disk.ephemeral.size_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui4
+ disk.device.write.requests.rate_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui3
+ scalable_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui6_test_nested3Level
+ host_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.read.bytes_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui6_test_nested3Level
+ binding_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3
+ cpu_util_server_cmaui1:
+ - server_cmaui1
+ - cpu_util
+ cpu_util_server_cmaui2:
+ - server_cmaui2
+ - cpu_util
+ host_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui4
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_6_test_nested3Level
+ disk.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui6_test_nested3Level
+ disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui6_test_nested3Level
+ disk.device.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.device.iops
+ disk.device.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.device.iops
+ disk.device.read.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests.rate
+ disk.iops_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui8_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui6_test_nested3Level
+ requirements:
+ dependency_server_cmaui1:
+ - server_cmaui1
+ - dependency
+ dependency_server_cmaui2:
+ - server_cmaui2
+ - dependency
+ local_storage_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui6_test_nested3Level
+ link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_5_test_nested3Level
+ dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_6_test_nested3Level
+ local_storage_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui3
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ dependency_server_cmaui3_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui3
+ local_storage_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui7_test_nested4Level_test_nested3Level
+ link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level
+ link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ dependency_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui8_test_nested4Level_test_nested3Level
+ link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_6_test_nested3Level
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ link_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_4
+ dependency_server_cmaui7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui7_test_nested4Level_test_nested3Level
+ local_storage_server_cmaui8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui8_test_nested4Level_test_nested3Level
+ dependency_server_cmaui6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui6_test_nested3Level
+ local_storage_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui5_test_nested3Level
+ local_storage_server_cmaui2:
+ - server_cmaui2
+ - local_storage
+ local_storage_server_cmaui1:
+ - server_cmaui1
+ - local_storage
+ dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_5_test_nested3Level
+ local_storage_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui4
+ link_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_server_cmaui4_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui4
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ dependency_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_4
+ dependency_server_cmaui5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui5_test_nested3Level \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..b6c066b812
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,1192 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui3
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui4:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ server_cmaui3:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui4
+ relationship: tosca.relationships.network.BindsTo
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_3
+ - server_cmaui4
+ - server_cmaui3
+ - cmaui_port_4
+ - test_nested3Level
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ scalable_server_cmaui3:
+ - server_cmaui3
+ - scalable
+ scalable_server_cmaui4:
+ - server_cmaui4
+ - scalable
+ disk.write.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui6
+ cpu_util_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.requests.rate
+ disk.device.read.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui3:
+ - server_cmaui3
+ - disk.iops
+ host_server_cmaui4:
+ - server_cmaui4
+ - host
+ disk.device.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui8_test_nested4Level
+ host_server_cmaui3:
+ - server_cmaui3
+ - host
+ disk.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui7_test_nested4Level
+ host_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui6
+ vcpus_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui5
+ vcpus_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui8_test_nested4Level
+ disk.write.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui5
+ feature_server_cmaui3:
+ - server_cmaui3
+ - feature
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.iops_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui8_test_nested4Level
+ feature_server_cmaui4:
+ - server_cmaui4
+ - feature
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui8_test_nested4Level
+ cpu_server_cmaui4:
+ - server_cmaui4
+ - cpu
+ cpu_server_cmaui3:
+ - server_cmaui3
+ - cpu
+ disk.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui7_test_nested4Level
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_7_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui7_test_nested4Level
+ host_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui5
+ disk.device.write.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui6
+ disk.read.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui7_test_nested4Level
+ disk.capacity_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui4:
+ - server_cmaui4
+ - disk.iops
+ cpu_util_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui5
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_5
+ os_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.requests
+ disk.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui7_test_nested4Level
+ disk.device.read.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.requests
+ disk.device.write.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui5
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui8_test_nested4Level
+ disk.read.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui5
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_6
+ disk.read.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_6
+ network.outpoing.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_5
+ disk.write.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui5
+ os_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui6
+ memory.resident_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui8_test_nested4Level
+ disk.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui8_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_6
+ disk.read.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.read.bytes.rate
+ disk.write.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui5
+ memory.resident_server_cmaui3:
+ - server_cmaui3
+ - memory.resident
+ disk.device.write.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui5
+ memory.resident_server_cmaui4:
+ - server_cmaui4
+ - memory.resident
+ os_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui7_test_nested4Level
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ binding_cmaui_port_4:
+ - cmaui_port_4
+ - binding
+ disk.device.read.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui5
+ disk.device.capacity_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui7_test_nested4Level
+ disk.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui8_test_nested4Level
+ feature_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_6
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui5
+ instance_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui8_test_nested4Level
+ disk.capacity_server_cmaui3:
+ - server_cmaui3
+ - disk.capacity
+ disk.capacity_server_cmaui4:
+ - server_cmaui4
+ - disk.capacity
+ disk.device.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui6
+ disk.latency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui7_test_nested4Level
+ scalable_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui6
+ binding_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_6
+ disk.capacity_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui8_test_nested4Level
+ cpu_util_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui7_test_nested4Level
+ network.incoming.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ os_server_cmaui3:
+ - server_cmaui3
+ - os
+ disk.device.write.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui6
+ os_server_cmaui4:
+ - server_cmaui4
+ - os
+ disk.latency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui5
+ disk.write.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui8_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ network.incoming.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets.rate
+ feature_cmaui_port_4:
+ - cmaui_port_4
+ - feature
+ memory.resident_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui7_test_nested4Level
+ disk.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui8_test_nested4Level
+ memory_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui6
+ memory.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui5
+ cpu_util_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui8_test_nested4Level
+ instance_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui5
+ cpu.delta_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui6
+ disk.read.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.read.bytes
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_5
+ disk.allocation_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui5
+ disk.read.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.read.bytes
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level
+ instance_server_cmaui4:
+ - server_cmaui4
+ - instance
+ instance_server_cmaui3:
+ - server_cmaui3
+ - instance
+ disk.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui7_test_nested4Level
+ disk.device.latency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui5
+ disk.device.latency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui7_test_nested4Level
+ disk.iops_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui7_test_nested4Level
+ cpu.delta_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui8_test_nested4Level
+ disk.device.latency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui6
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level
+ disk.device.iops_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui6
+ disk.ephemeral.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui3:
+ - server_cmaui3
+ - disk.device.usage
+ disk.device.read.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui5
+ disk.usage_server_cmaui3:
+ - server_cmaui3
+ - disk.usage
+ disk.device.read.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.bytes
+ disk.usage_server_cmaui4:
+ - server_cmaui4
+ - disk.usage
+ vcpus_server_cmaui3:
+ - server_cmaui3
+ - vcpus
+ vcpus_server_cmaui4:
+ - server_cmaui4
+ - vcpus
+ disk.device.usage_server_cmaui4:
+ - server_cmaui4
+ - disk.device.usage
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_5
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui7_test_nested4Level
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level
+ vcpus_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui7_test_nested4Level
+ memory_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui8_test_nested4Level
+ memory.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui8_test_nested4Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui3:
+ - server_cmaui3
+ - endpoint
+ disk.device.write.requests.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui5
+ endpoint_server_cmaui4:
+ - server_cmaui4
+ - endpoint
+ disk.root.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui8_test_nested4Level
+ disk.device.capacity_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui6
+ disk.read.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui6
+ disk.capacity_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui5
+ feature_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui5
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_5
+ feature_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui8_test_nested4Level
+ endpoint_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui8_test_nested4Level
+ cpu_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui8_test_nested4Level
+ network.outpoing.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_6
+ disk.device.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui8_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level
+ binding_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_5
+ disk.device.iops_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui7_test_nested4Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_5
+ disk.write.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.write.requests.rate
+ scalable_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui5
+ disk.device.latency_server_cmaui3:
+ - server_cmaui3
+ - disk.device.latency
+ disk.device.latency_server_cmaui4:
+ - server_cmaui4
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.outpoing.packets
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level
+ disk.device.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui7_test_nested4Level
+ host_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui8_test_nested4Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_8_test_nested4Level
+ disk.device.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui8_test_nested4Level
+ disk.ephemeral.size_server_cmaui4:
+ - server_cmaui4
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.write.requests.rate
+ disk.ephemeral.size_server_cmaui3:
+ - server_cmaui3
+ - disk.ephemeral.size
+ endpoint_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui6
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_5
+ disk.device.read.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.bytes
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui8_test_nested4Level
+ memory.usage_server_cmaui4:
+ - server_cmaui4
+ - memory.usage
+ disk.device.write.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui7_test_nested4Level
+ memory.usage_server_cmaui3:
+ - server_cmaui3
+ - memory.usage
+ cpu.delta_server_cmaui3:
+ - server_cmaui3
+ - cpu.delta
+ binding_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui5
+ disk.write.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.write.bytes
+ cpu.delta_server_cmaui4:
+ - server_cmaui4
+ - cpu.delta
+ disk.device.iops_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui8_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.bytes.rate
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level
+ disk.write.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.write.requests
+ disk.write.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.write.requests
+ memory_server_cmaui3:
+ - server_cmaui3
+ - memory
+ memory_server_cmaui4:
+ - server_cmaui4
+ - memory
+ disk.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui6
+ memory_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui7_test_nested4Level
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ instance_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui5
+ disk.device.allocation_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui6
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui5
+ disk.ephemeral.size_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui6
+ disk.device.read.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui6
+ disk.device.allocation_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui5
+ disk.device.write.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui6
+ disk.device.write.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui8_test_nested4Level
+ binding_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui8_test_nested4Level
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ disk.allocation_server_cmaui4:
+ - server_cmaui4
+ - disk.allocation
+ scalable_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui8_test_nested4Level
+ disk.allocation_server_cmaui3:
+ - server_cmaui3
+ - disk.allocation
+ network.incoming.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level
+ disk.device.read.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui8_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui8_test_nested4Level
+ cpu_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui5
+ binding_server_cmaui4:
+ - server_cmaui4
+ - binding
+ binding_server_cmaui3:
+ - server_cmaui3
+ - binding
+ disk.capacity_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui6
+ instance_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui6
+ disk.read.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.read.requests
+ disk.read.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui5
+ disk.read.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.read.requests
+ network.incoming.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_6
+ disk.latency_server_cmaui3:
+ - server_cmaui3
+ - disk.latency
+ disk.latency_server_cmaui4:
+ - server_cmaui4
+ - disk.latency
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level
+ disk.allocation_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui6
+ disk.device.write.bytes_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.bytes
+ disk.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui5
+ binding_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui7_test_nested4Level
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui8_test_nested4Level
+ scalable_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui7_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_6
+ disk.device.read.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui7_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ disk.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui7_test_nested4Level
+ disk.device.write.requests_server_cmaui4:
+ - server_cmaui4
+ - disk.device.write.requests
+ memory.resident_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui6
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui8_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes.rate
+ disk.write.bytes_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui5
+ disk.latency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui6
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level
+ disk.device.capacity_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui5
+ disk.root.size_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui6
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level
+ disk.device.latency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui6
+ disk.device.read.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui6
+ cpu_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui7_test_nested4Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_7_test_nested4Level
+ disk.root.size_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui7_test_nested4Level
+ disk.device.write.requests_server_cmaui3:
+ - server_cmaui3
+ - disk.device.write.requests
+ cpu.delta_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui7_test_nested4Level
+ disk.write.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.write.bytes.rate
+ disk.allocation_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui8_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.bytes.rate
+ disk.ephemeral.size_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui8_test_nested4Level
+ attachment_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_6
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_6
+ memory.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui5
+ network.outgoing.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ attachment_cmaui_port_4:
+ - cmaui_port_4
+ - attachment
+ host_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui7_test_nested4Level
+ disk.device.allocation_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui7_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui7_test_nested4Level
+ disk.latency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui8_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui7_test_nested4Level
+ disk.device.allocation_server_cmaui4:
+ - server_cmaui4
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui3:
+ - server_cmaui3
+ - disk.device.allocation
+ feature_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui7_test_nested4Level
+ disk.usage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui7_test_nested4Level
+ disk.device.usage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui8_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_7_test_nested4Level
+ cpu.delta_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui5
+ network.incoming.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_6
+ cpu_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui6
+ disk.write.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui7_test_nested4Level
+ disk.read.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui5
+ disk.write.bytes_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui8_test_nested4Level
+ disk.device.read.requests_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui5
+ attachment_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_5
+ feature_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui6
+ memory_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui5
+ disk.device.capacity_server_cmaui4:
+ - server_cmaui4
+ - disk.device.capacity
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level
+ disk.device.capacity_server_cmaui3:
+ - server_cmaui3
+ - disk.device.capacity
+ disk.write.bytes.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui6
+ disk.write.requests.rate_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui6
+ disk.device.iops_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui5
+ disk.ephemeral.size_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui5
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui7_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui7_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level
+ disk.read.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui6
+ disk.device.read.requests_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui7_test_nested4Level
+ disk.device.write.bytes.rate_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui5
+ disk.device.write.requests_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui6
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level
+ cpu_util_server_cmaui3:
+ - server_cmaui3
+ - cpu_util
+ cpu_util_server_cmaui4:
+ - server_cmaui4
+ - cpu_util
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level
+ memory.resident_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui5
+ disk.root.size_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui5
+ network.outgoing.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes
+ disk.write.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui6
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui3:
+ - server_cmaui3
+ - disk.root.size
+ disk.root.size_server_cmaui4:
+ - server_cmaui4
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes.rate
+ endpoint_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui7_test_nested4Level
+ vcpus_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui6
+ os_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui5
+ disk.read.bytes_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui6
+ disk.device.iops_server_cmaui3:
+ - server_cmaui3
+ - disk.device.iops
+ disk.device.iops_server_cmaui4:
+ - server_cmaui4
+ - disk.device.iops
+ feature_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_5
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_5
+ disk.device.read.requests.rate_server_cmaui4:
+ - server_cmaui4
+ - disk.device.read.requests.rate
+ disk.read.requests_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui8_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui3:
+ - server_cmaui3
+ - disk.device.read.requests.rate
+ memory.usage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui6
+ requirements:
+ dependency_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_6
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_4:
+ - cmaui_port_4
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ dependency_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui6
+ link_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_6
+ link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_8_test_nested4Level
+ local_storage_server_cmaui6_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui6
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_8_test_nested4Level
+ dependency_cmaui_port_4:
+ - cmaui_port_4
+ - dependency
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ dependency_server_cmaui3:
+ - server_cmaui3
+ - dependency
+ dependency_server_cmaui4:
+ - server_cmaui4
+ - dependency
+ link_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_5
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_7_test_nested4Level
+ local_storage_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui7_test_nested4Level
+ local_storage_server_cmaui4:
+ - server_cmaui4
+ - local_storage
+ local_storage_server_cmaui3:
+ - server_cmaui3
+ - local_storage
+ dependency_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui8_test_nested4Level
+ local_storage_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui5
+ local_storage_server_cmaui8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui8_test_nested4Level
+ dependency_server_cmaui7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui7_test_nested4Level
+ dependency_server_cmaui5_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui5
+ link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_7_test_nested4Level
+ dependency_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_5 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..920856d15d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,846 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ server_cmaui6:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ server_cmaui5:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui5
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui6
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - server_cmaui6
+ - test_nested4Level
+ - server_cmaui5
+ - cmaui_port_5
+ - cmaui_port_6
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.requests.rate
+ disk.device.read.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui8
+ scalable_server_cmaui5:
+ - server_cmaui5
+ - scalable
+ disk.device.write.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.requests.rate
+ scalable_server_cmaui6:
+ - server_cmaui6
+ - scalable
+ host_server_cmaui5:
+ - server_cmaui5
+ - host
+ disk.device.write.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui8
+ host_server_cmaui6:
+ - server_cmaui6
+ - host
+ disk.device.capacity_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui8
+ disk.device.allocation_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui8
+ disk.ephemeral.size_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui8
+ feature_server_cmaui6:
+ - server_cmaui6
+ - feature
+ disk.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui7
+ feature_server_cmaui5:
+ - server_cmaui5
+ - feature
+ cpu_server_cmaui5:
+ - server_cmaui5
+ - cpu
+ disk.read.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui8
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_7
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_8
+ disk.iops_server_cmaui5:
+ - server_cmaui5
+ - disk.iops
+ disk.iops_server_cmaui6:
+ - server_cmaui6
+ - disk.iops
+ disk.root.size_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui7
+ disk.device.read.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.requests
+ cpu_server_cmaui6:
+ - server_cmaui6
+ - cpu
+ instance_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui7
+ disk.device.capacity_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui7
+ disk.latency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui8
+ memory_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui8
+ disk.root.size_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui8
+ disk.read.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.read.bytes.rate
+ disk.allocation_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui7
+ memory.resident_server_cmaui5:
+ - server_cmaui5
+ - memory.resident
+ memory.resident_server_cmaui6:
+ - server_cmaui6
+ - memory.resident
+ disk.device.allocation_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui7
+ binding_cmaui_port_5:
+ - cmaui_port_5
+ - binding
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_8
+ binding_cmaui_port_6:
+ - cmaui_port_6
+ - binding
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_8
+ binding_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui7
+ disk.device.iops_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui8
+ cpu_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui7
+ disk.capacity_server_cmaui5:
+ - server_cmaui5
+ - disk.capacity
+ disk.capacity_server_cmaui6:
+ - server_cmaui6
+ - disk.capacity
+ disk.device.latency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui7
+ network.incoming.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes
+ os_server_cmaui6:
+ - server_cmaui6
+ - os
+ disk.capacity_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui8
+ os_server_cmaui5:
+ - server_cmaui5
+ - os
+ memory.resident_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui8
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_8
+ feature_cmaui_port_5:
+ - cmaui_port_5
+ - feature
+ feature_cmaui_port_6:
+ - cmaui_port_6
+ - feature
+ feature_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui8
+ attachment_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_7
+ network.incoming.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets.rate
+ memory_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui7
+ disk.write.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui8
+ cpu.delta_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui7
+ disk.device.read.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui7
+ feature_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_8
+ instance_server_cmaui6:
+ - server_cmaui6
+ - instance
+ instance_server_cmaui5:
+ - server_cmaui5
+ - instance
+ disk.read.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.read.bytes
+ network.outpoing.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_7
+ attachment_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_8
+ disk.read.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.read.bytes
+ disk.device.read.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui8
+ disk.device.read.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui8
+ feature_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_7
+ network.incoming.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets.rate
+ disk.device.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui7
+ memory.resident_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui7
+ disk.device.read.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.bytes
+ disk.usage_server_cmaui5:
+ - server_cmaui5
+ - disk.usage
+ disk.device.usage_server_cmaui5:
+ - server_cmaui5
+ - disk.device.usage
+ memory.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui8
+ disk.device.usage_server_cmaui6:
+ - server_cmaui6
+ - disk.device.usage
+ disk.usage_server_cmaui6:
+ - server_cmaui6
+ - disk.usage
+ vcpus_server_cmaui5:
+ - server_cmaui5
+ - vcpus
+ vcpus_server_cmaui6:
+ - server_cmaui6
+ - vcpus
+ network.incoming.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_7
+ disk.read.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui7
+ instance_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui8
+ endpoint_server_cmaui5:
+ - server_cmaui5
+ - endpoint
+ endpoint_server_cmaui6:
+ - server_cmaui6
+ - endpoint
+ os_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui7
+ binding_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui8
+ network.outpoing.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.outpoing.packets
+ disk.write.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui8
+ cpu_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui8
+ disk.device.latency_server_cmaui5:
+ - server_cmaui5
+ - disk.device.latency
+ disk.device.latency_server_cmaui6:
+ - server_cmaui6
+ - disk.device.latency
+ disk.ephemeral.size_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui7
+ disk.device.write.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui8
+ disk.ephemeral.size_server_cmaui6:
+ - server_cmaui6
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.write.requests.rate
+ disk.ephemeral.size_server_cmaui5:
+ - server_cmaui5
+ - disk.ephemeral.size
+ disk.device.write.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui8
+ disk.device.iops_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui7
+ disk.write.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui8
+ disk.device.write.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui7
+ disk.write.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui7
+ memory.usage_server_cmaui5:
+ - server_cmaui5
+ - memory.usage
+ cpu_util_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui7
+ disk.device.read.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui7
+ memory.usage_server_cmaui6:
+ - server_cmaui6
+ - memory.usage
+ disk.device.write.requests.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui8
+ host_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui8
+ endpoint_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui8
+ cpu.delta_server_cmaui6:
+ - server_cmaui6
+ - cpu.delta
+ cpu.delta_server_cmaui5:
+ - server_cmaui5
+ - cpu.delta
+ disk.write.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.write.bytes
+ host_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui7
+ disk.write.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.write.requests
+ disk.write.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.write.requests
+ disk.read.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui8
+ cpu_util_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui8
+ scalable_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui8
+ memory_server_cmaui5:
+ - server_cmaui5
+ - memory
+ memory_server_cmaui6:
+ - server_cmaui6
+ - memory
+ disk.device.read.bytes_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui8
+ cpu_util_server_cmaui5:
+ - server_cmaui5
+ - cpu_util
+ cpu_util_server_cmaui6:
+ - server_cmaui6
+ - cpu_util
+ vcpus_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui7
+ disk.write.requests_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui8
+ disk.read.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui7
+ scalable_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui7
+ disk.device.write.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui7
+ endpoint_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui7
+ vcpus_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui8
+ disk.write.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui7
+ network.incoming.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets
+ binding_server_cmaui6:
+ - server_cmaui6
+ - binding
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_7
+ binding_server_cmaui5:
+ - server_cmaui5
+ - binding
+ disk.read.bytes.rate_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui8
+ network.incoming.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets
+ disk.allocation_server_cmaui6:
+ - server_cmaui6
+ - disk.allocation
+ disk.device.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui8
+ disk.allocation_server_cmaui5:
+ - server_cmaui5
+ - disk.allocation
+ disk.read.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.read.requests
+ disk.latency_server_cmaui5:
+ - server_cmaui5
+ - disk.latency
+ disk.latency_server_cmaui6:
+ - server_cmaui6
+ - disk.latency
+ disk.read.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.read.requests
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_7
+ disk.device.write.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui7
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_8
+ disk.device.write.bytes_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui7
+ disk.iops_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui7
+ network.outgoing.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes.rate
+ disk.device.write.requests_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes.rate
+ os_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui8
+ disk.write.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui7
+ disk.device.read.requests.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui7
+ disk.device.read.requests.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.requests.rate
+ network.outpoing.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_8
+ disk.device.read.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.read.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.read.bytes.rate
+ binding_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_8
+ disk.write.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.write.bytes.rate
+ disk.write.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.write.bytes.rate
+ attachment_cmaui_port_6:
+ - cmaui_port_6
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_7
+ network.outgoing.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_5:
+ - cmaui_port_5
+ - attachment
+ disk.device.allocation_server_cmaui6:
+ - server_cmaui6
+ - disk.device.allocation
+ disk.write.bytes_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui7
+ disk.device.allocation_server_cmaui5:
+ - server_cmaui5
+ - disk.device.allocation
+ cpu.delta_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui8
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_8
+ disk.device.capacity_server_cmaui6:
+ - server_cmaui6
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui5:
+ - server_cmaui5
+ - disk.device.capacity
+ binding_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_7
+ memory.usage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui7
+ disk.latency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui7
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_7
+ disk.iops_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui8
+ disk.read.requests_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui7
+ disk.capacity_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui7
+ disk.allocation_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui8
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ network.incoming.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes.rate
+ disk.device.latency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui8
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_8
+ disk.root.size_server_cmaui6:
+ - server_cmaui6
+ - disk.root.size
+ network.outgoing.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes
+ disk.root.size_server_cmaui5:
+ - server_cmaui5
+ - disk.root.size
+ network.incoming.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes.rate
+ network.incoming.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_7
+ disk.device.write.bytes.rate_server_cmaui6:
+ - server_cmaui6
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui5:
+ - server_cmaui5
+ - disk.device.write.bytes.rate
+ disk.usage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui8
+ disk.device.read.bytes.rate_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui7
+ disk.device.iops_server_cmaui5:
+ - server_cmaui5
+ - disk.device.iops
+ disk.device.iops_server_cmaui6:
+ - server_cmaui6
+ - disk.device.iops
+ feature_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui7
+ requirements:
+ dependency_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_7
+ dependency_cmaui_port_6:
+ - cmaui_port_6
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_8
+ local_storage_server_cmaui6:
+ - server_cmaui6
+ - local_storage
+ local_storage_server_cmaui5:
+ - server_cmaui5
+ - local_storage
+ dependency_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui8
+ local_storage_server_cmaui8_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui8
+ link_cmaui_port_6:
+ - cmaui_port_6
+ - link
+ link_cmaui_port_5:
+ - cmaui_port_5
+ - link
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_8
+ dependency_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui7
+ link_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_7
+ local_storage_server_cmaui7_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui7
+ dependency_server_cmaui5:
+ - server_cmaui5
+ - dependency
+ dependency_cmaui_port_5:
+ - cmaui_port_5
+ - dependency
+ dependency_server_cmaui6:
+ - server_cmaui6
+ - 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/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..d518dc0cf4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,488 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui7
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui8
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui8:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ server_cmaui7:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_7
+ - cmaui_port_8
+ - server_cmaui8
+ - server_cmaui7
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ disk.device.write.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.requests.rate
+ disk.device.write.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.requests.rate
+ memory.usage_server_cmaui8:
+ - server_cmaui8
+ - memory.usage
+ scalable_server_cmaui7:
+ - server_cmaui7
+ - scalable
+ scalable_server_cmaui8:
+ - server_cmaui8
+ - scalable
+ memory.usage_server_cmaui7:
+ - server_cmaui7
+ - memory.usage
+ cpu.delta_server_cmaui7:
+ - server_cmaui7
+ - cpu.delta
+ disk.write.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.write.bytes
+ cpu.delta_server_cmaui8:
+ - server_cmaui8
+ - cpu.delta
+ host_server_cmaui8:
+ - server_cmaui8
+ - host
+ host_server_cmaui7:
+ - server_cmaui7
+ - host
+ disk.write.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.write.requests
+ disk.write.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.write.requests
+ feature_server_cmaui7:
+ - server_cmaui7
+ - feature
+ memory_server_cmaui7:
+ - server_cmaui7
+ - memory
+ memory_server_cmaui8:
+ - server_cmaui8
+ - memory
+ cpu_util_server_cmaui7:
+ - server_cmaui7
+ - cpu_util
+ cpu_util_server_cmaui8:
+ - server_cmaui8
+ - cpu_util
+ disk.iops_server_cmaui8:
+ - server_cmaui8
+ - disk.iops
+ disk.iops_server_cmaui7:
+ - server_cmaui7
+ - disk.iops
+ disk.device.read.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.requests
+ cpu_server_cmaui8:
+ - server_cmaui8
+ - cpu
+ cpu_server_cmaui7:
+ - server_cmaui7
+ - cpu
+ binding_server_cmaui8:
+ - server_cmaui8
+ - binding
+ binding_server_cmaui7:
+ - server_cmaui7
+ - binding
+ network.incoming.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets
+ disk.allocation_server_cmaui8:
+ - server_cmaui8
+ - disk.allocation
+ disk.allocation_server_cmaui7:
+ - server_cmaui7
+ - disk.allocation
+ network.incoming.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets
+ disk.latency_server_cmaui7:
+ - server_cmaui7
+ - disk.latency
+ disk.latency_server_cmaui8:
+ - server_cmaui8
+ - disk.latency
+ disk.read.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.read.requests
+ disk.read.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.read.requests
+ memory.resident_server_cmaui7:
+ - server_cmaui7
+ - memory.resident
+ memory.resident_server_cmaui8:
+ - server_cmaui8
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.read.bytes.rate
+ disk.device.write.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.bytes
+ binding_cmaui_port_7:
+ - cmaui_port_7
+ - binding
+ binding_cmaui_port_8:
+ - cmaui_port_8
+ - binding
+ disk.device.write.requests_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.requests
+ network.outgoing.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes
+ disk.capacity_server_cmaui7:
+ - server_cmaui7
+ - disk.capacity
+ disk.capacity_server_cmaui8:
+ - server_cmaui8
+ - disk.capacity
+ disk.device.write.requests_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.requests
+ os_server_cmaui7:
+ - server_cmaui7
+ - os
+ network.outgoing.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes.rate
+ os_server_cmaui8:
+ - server_cmaui8
+ - os
+ disk.device.read.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.requests.rate
+ disk.device.read.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.requests.rate
+ disk.write.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.write.bytes.rate
+ feature_cmaui_port_7:
+ - cmaui_port_7
+ - feature
+ disk.device.read.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.bytes.rate
+ feature_cmaui_port_8:
+ - cmaui_port_8
+ - feature
+ network.outgoing.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_7:
+ - cmaui_port_7
+ - attachment
+ attachment_cmaui_port_8:
+ - cmaui_port_8
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.packets.rate
+ instance_server_cmaui8:
+ - server_cmaui8
+ - instance
+ instance_server_cmaui7:
+ - server_cmaui7
+ - instance
+ disk.read.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.read.bytes
+ disk.read.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.read.bytes
+ network.incoming.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets.rate
+ disk.device.capacity_server_cmaui8:
+ - server_cmaui8
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui7:
+ - server_cmaui7
+ - disk.device.capacity
+ disk.device.allocation_server_cmaui8:
+ - server_cmaui8
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui7:
+ - server_cmaui7
+ - disk.device.allocation
+ disk.device.usage_server_cmaui8:
+ - server_cmaui8
+ - disk.device.usage
+ disk.device.read.bytes_server_cmaui7:
+ - server_cmaui7
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui8:
+ - server_cmaui8
+ - disk.device.read.bytes
+ disk.device.usage_server_cmaui7:
+ - server_cmaui7
+ - disk.device.usage
+ disk.usage_server_cmaui7:
+ - server_cmaui7
+ - disk.usage
+ disk.usage_server_cmaui8:
+ - server_cmaui8
+ - disk.usage
+ vcpus_server_cmaui7:
+ - server_cmaui7
+ - vcpus
+ vcpus_server_cmaui8:
+ - server_cmaui8
+ - vcpus
+ endpoint_server_cmaui7:
+ - server_cmaui7
+ - endpoint
+ endpoint_server_cmaui8:
+ - server_cmaui8
+ - endpoint
+ disk.device.latency_server_cmaui7:
+ - server_cmaui7
+ - disk.device.latency
+ disk.device.latency_server_cmaui8:
+ - server_cmaui8
+ - disk.device.latency
+ network.incoming.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes
+ disk.root.size_server_cmaui7:
+ - server_cmaui7
+ - disk.root.size
+ network.outpoing.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.outpoing.packets
+ feature_server_cmaui8:
+ - server_cmaui8
+ - feature
+ disk.root.size_server_cmaui8:
+ - server_cmaui8
+ - disk.root.size
+ network.outpoing.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.outpoing.packets
+ network.outgoing.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes
+ disk.ephemeral.size_server_cmaui8:
+ - server_cmaui8
+ - disk.ephemeral.size
+ disk.write.requests.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_cmaui8:
+ - server_cmaui8
+ - disk.device.write.bytes.rate
+ disk.ephemeral.size_server_cmaui7:
+ - server_cmaui7
+ - disk.ephemeral.size
+ disk.device.write.bytes.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.device.write.bytes.rate
+ disk.write.requests.rate_server_cmaui7:
+ - server_cmaui7
+ - disk.write.requests.rate
+ disk.device.iops_server_cmaui7:
+ - server_cmaui7
+ - disk.device.iops
+ disk.device.iops_server_cmaui8:
+ - server_cmaui8
+ - disk.device.iops
+ requirements:
+ dependency_cmaui_port_8:
+ - cmaui_port_8
+ - dependency
+ dependency_cmaui_port_7:
+ - cmaui_port_7
+ - dependency
+ link_cmaui_port_8:
+ - cmaui_port_8
+ - link
+ link_cmaui_port_7:
+ - cmaui_port_7
+ - link
+ local_storage_server_cmaui8:
+ - server_cmaui8
+ - local_storage
+ local_storage_server_cmaui7:
+ - server_cmaui7
+ - local_storage
+ dependency_server_cmaui7:
+ - server_cmaui7
+ - dependency
+ dependency_server_cmaui8:
+ - server_cmaui8
+ - 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/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..2d7942b41a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,37 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "base.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/addOn.yml
new file mode 100644
index 0000000000..147e69dc80
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/addOn.yml
@@ -0,0 +1,46 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ cmaui_cinder_volume_size:
+ type: string
+ CMAUI_volume_type:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+ shared_vol1:
+ type: string
+ p2:
+ type: string
+ description: shared_vol2
+ shared_nova:
+ type: string
+
+resources:
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_param: shared_vol1 }
+ p2: { get_param: p2 }
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: shared_vol1 }
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNova:
+ type: nested1.yml
+ properties:
+ p1: { get_param: shared_nova} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/base.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/base.yml
new file mode 100644
index 0000000000..9dc2c6bcc1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/base.yml
@@ -0,0 +1,43 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ cmaui_cinder_volume_size:
+ type: string
+ CMAUI_volume_type:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_vol1:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: cmaui_cinder_volume_size}
+ volume_type: {get_param: CMAUI_volume_type}
+
+ test_vol2:
+ type: OS::Cinder::Volume
+ properties:
+ size: {get_param: cmaui_cinder_volume_size}
+ volume_type: {get_param: CMAUI_volume_type}
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+outputs:
+ shared_vol1:
+ value: {get_resource: test_vol1}
+ p2:
+ value: {get_resource: test_vol2}
+ shared_nova:
+ value: {get_resource: test_nova} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..7ceb43c9a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,93 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ network_name:
+ type: string
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment1:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui1}
+
+ cmaui_volume_attachment2:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui1}
+
+ cmaui_volume_attachment3:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui2}
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: network_name }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 1]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+
+ server_cmaui2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 1]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..c1f10f58e4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,95 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment4:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui3}
+
+ cmaui_volume_attachment5:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui3}
+
+ cmaui_volume_attachment6:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui4}
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_3 }
+
+ server_cmaui4:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..f6dd5e5c47
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,91 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment7:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui5}
+
+ cmaui_volume_attachment8:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui5}
+
+ cmaui_volume_attachment9:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui6}
+
+ cmaui_port_5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui5:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_5 }
+
+ server_cmaui6:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..1e81bd632f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharedNestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,83 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_volume_attachment10:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p1}
+ instance_uuid: {get_resource: server_cmaui7}
+
+ cmaui_volume_attachment11:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui7}
+
+ cmaui_volume_attachment12:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ volume_id: {get_param: p2}
+ instance_uuid: {get_resource: server_cmaui8}
+
+ cmaui_port_7:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_8:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui7:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_7 }
+
+ server_cmaui8:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index fd5eae6858..9d971de1e5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,41 +11,72 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_volume_param2:
type: string
description: nova server id
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
shared_vol1:
type: string
description: nova server id
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui2:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -77,6 +84,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_cmaui1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui1:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -84,41 +98,57 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ memory.usage_server_cmaui2:
+ type: org.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_server_cmaui1:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- endpoint_server_cmaui1:
- type: tosca.capabilities.Endpoint.Admin
+ scalable_server_cmaui2:
+ type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui1:
- type: tosca.capabilities.OperatingSystem
+ cpu.delta_server_cmaui2:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.Scalable
+ disk.device.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.Endpoint.Admin
+ cpu.delta_server_cmaui1:
+ type: org.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_cmaui_port_2:
- type: tosca.capabilities.Attachment
+ disk.iops_server_cmaui1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -129,13 +159,33 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui2:
- type: tosca.capabilities.OperatingSystem
+ disk.device.write.requests.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -146,13 +196,533 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui2:
+ type: org.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_server_cmaui1:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
+ disk.read.requests_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui2:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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.usage_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
index 383ef54a4e..c8cf1df9cd 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
cmaui_cinder_volume_size:
@@ -92,23 +68,23 @@ topology_template:
node: test_vol2
relationship: tosca.relationships.AttachesTo
groups:
- addOn:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nested
- main:
+ - test_vol1
+ - test_vol2
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/main.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_vol1
- - test_vol2
+ - test_nested
outputs:
out1_not_shared:
value: test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
index 68a602e14a..72de5fec5d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -89,6 +65,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -96,6 +78,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -133,6 +118,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -140,6 +131,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -148,7 +142,7 @@ topology_template:
node: server_cmaui1
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -161,43 +155,328 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ memory.usage_server_cmaui2:
+ - server_cmaui2
+ - memory.usage
scalable_server_cmaui1:
- server_cmaui1
- scalable
- endpoint_server_cmaui1:
- - server_cmaui1
- - endpoint
- os_server_cmaui1:
- - server_cmaui1
- - os
scalable_server_cmaui2:
- server_cmaui2
- scalable
- endpoint_server_cmaui2:
+ cpu.delta_server_cmaui2:
- server_cmaui2
- - endpoint
- attachment_cmaui_port_2:
- - cmaui_port_2
- - attachment
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests.rate
+ cpu.delta_server_cmaui1:
+ - server_cmaui1
+ - cpu.delta
+ disk.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.iops
host_server_cmaui1:
- server_cmaui1
- host
- os_server_cmaui2:
+ disk.device.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui2:
- server_cmaui2
- - os
- binding_server_cmaui2:
+ - disk.iops
+ disk.device.write.bytes.rate_server_cmaui2:
- server_cmaui2
- - binding
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes.rate
+ memory.usage_server_cmaui1:
+ - server_cmaui1
+ - memory.usage
host_server_cmaui2:
- server_cmaui2
- host
+ disk.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests
+ memory_server_cmaui1:
+ - server_cmaui1
+ - memory
+ memory_server_cmaui2:
+ - server_cmaui2
+ - memory
+ disk.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes
+ feature_server_cmaui2:
+ - server_cmaui2
+ - feature
+ feature_server_cmaui1:
+ - server_cmaui1
+ - feature
+ disk.root.size_server_cmaui1:
+ - server_cmaui1
+ - disk.root.size
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ disk.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests
+ cpu_server_cmaui2:
+ - server_cmaui2
+ - cpu
+ cpu_server_cmaui1:
+ - server_cmaui1
+ - cpu
+ disk.device.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.allocation
+ disk.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.allocation
+ disk.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ binding_server_cmaui2:
+ - server_cmaui2
+ - binding
+ disk.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.read.requests
binding_server_cmaui1:
- server_cmaui1
- binding
+ disk.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.read.requests
+ disk.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.latency
+ disk.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.latency
+ memory.resident_server_cmaui1:
+ - server_cmaui1
+ - memory.resident
+ memory.resident_server_cmaui2:
+ - server_cmaui2
+ - memory.resident
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ disk.device.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes
+ disk.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.capacity
+ disk.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.capacity
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ os_server_cmaui1:
+ - server_cmaui1
+ - os
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ os_server_cmaui2:
+ - server_cmaui2
+ - os
+ disk.device.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes.rate
+ disk.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes.rate
+ disk.device.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.device.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes.rate
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ disk.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes
+ instance_server_cmaui2:
+ - server_cmaui2
+ - instance
+ disk.device.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.device.allocation
+ instance_server_cmaui1:
+ - server_cmaui1
+ - instance
+ disk.device.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.device.allocation
+ disk.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes
+ disk.device.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.device.usage
+ disk.device.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.device.usage
+ disk.device.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.device.capacity
+ disk.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.usage
+ vcpus_server_cmaui1:
+ - server_cmaui1
+ - vcpus
+ vcpus_server_cmaui2:
+ - server_cmaui2
+ - vcpus
+ disk.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.usage
+ endpoint_server_cmaui1:
+ - server_cmaui1
+ - endpoint
+ endpoint_server_cmaui2:
+ - server_cmaui2
+ - endpoint
+ cpu_util_server_cmaui1:
+ - server_cmaui1
+ - cpu_util
+ cpu_util_server_cmaui2:
+ - server_cmaui2
+ - cpu_util
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui2:
+ - server_cmaui2
+ - disk.root.size
+ disk.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests.rate
+ disk.device.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.device.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.device.latency
+ disk.device.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.device.iops
+ disk.device.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.device.iops
+ disk.ephemeral.size_server_cmaui2:
+ - server_cmaui2
+ - disk.ephemeral.size
+ disk.device.read.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests.rate
+ disk.ephemeral.size_server_cmaui1:
+ - server_cmaui1
+ - disk.ephemeral.size
+ disk.device.read.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests.rate
+ disk.device.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes
requirements:
+ dependency_server_cmaui1:
+ - server_cmaui1
+ - dependency
+ dependency_server_cmaui2:
+ - server_cmaui2
+ - dependency
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_2:
- cmaui_port_2
- link
@@ -207,6 +486,9 @@ topology_template:
local_storage_server_cmaui2:
- server_cmaui2
- local_storage
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
local_storage_server_cmaui1:
- server_cmaui1
- local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index fd5eae6858..9d971de1e5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,41 +11,72 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_volume_param2:
type: string
description: nova server id
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
shared_vol1:
type: string
description: nova server id
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui2:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -77,6 +84,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_cmaui1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui1:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -84,41 +98,57 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ memory.usage_server_cmaui2:
+ type: org.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_server_cmaui1:
type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- endpoint_server_cmaui1:
- type: tosca.capabilities.Endpoint.Admin
+ scalable_server_cmaui2:
+ type: tosca.capabilities.Scalable
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui1:
- type: tosca.capabilities.OperatingSystem
+ cpu.delta_server_cmaui2:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.Scalable
+ disk.device.write.requests.rate_server_cmaui2:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.Endpoint.Admin
+ cpu.delta_server_cmaui1:
+ type: org.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_cmaui_port_2:
- type: tosca.capabilities.Attachment
+ disk.iops_server_cmaui1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -129,13 +159,33 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui2:
- type: tosca.capabilities.OperatingSystem
+ disk.device.write.requests.rate_server_cmaui1:
+ type: org.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_server_cmaui2:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -146,13 +196,533 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_cmaui1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui2:
+ type: org.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_server_cmaui1:
type: tosca.capabilities.network.Bindable
occurrences:
- 1
- UNBOUNDED
+ disk.read.requests_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui2:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui2:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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.usage_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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.usage_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui2:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui1:
+ type: org.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_server_cmaui2:
+ type: org.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_server_cmaui1:
+ type: org.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/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml
index f279e7f83d..e73284b3b5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -126,6 +102,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -133,6 +115,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -157,15 +142,7 @@ topology_template:
node: test_vol2
relationship: tosca.relationships.AttachesTo
groups:
- addOn:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/addOn.yml
- description: |
- Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
- members:
- - test_nested
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
@@ -176,6 +153,14 @@ topology_template:
- test_vol2
- server_cmaui
- cmaui_port_0
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested
outputs:
out1_not_shared:
value: test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml
index 68a602e14a..72de5fec5d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumeconnection/sharednestednotconnected/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -89,6 +65,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -96,6 +78,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -133,6 +118,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -140,6 +131,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -148,7 +142,7 @@ topology_template:
node: server_cmaui1
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -161,43 +155,328 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ memory.usage_server_cmaui2:
+ - server_cmaui2
+ - memory.usage
scalable_server_cmaui1:
- server_cmaui1
- scalable
- endpoint_server_cmaui1:
- - server_cmaui1
- - endpoint
- os_server_cmaui1:
- - server_cmaui1
- - os
scalable_server_cmaui2:
- server_cmaui2
- scalable
- endpoint_server_cmaui2:
+ cpu.delta_server_cmaui2:
- server_cmaui2
- - endpoint
- attachment_cmaui_port_2:
- - cmaui_port_2
- - attachment
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests.rate
+ cpu.delta_server_cmaui1:
+ - server_cmaui1
+ - cpu.delta
+ disk.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.iops
host_server_cmaui1:
- server_cmaui1
- host
- os_server_cmaui2:
+ disk.device.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests.rate
+ disk.iops_server_cmaui2:
- server_cmaui2
- - os
- binding_server_cmaui2:
+ - disk.iops
+ disk.device.write.bytes.rate_server_cmaui2:
- server_cmaui2
- - binding
+ - disk.device.write.bytes.rate
+ disk.device.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes.rate
+ memory.usage_server_cmaui1:
+ - server_cmaui1
+ - memory.usage
host_server_cmaui2:
- server_cmaui2
- host
+ disk.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests
+ memory_server_cmaui1:
+ - server_cmaui1
+ - memory
+ memory_server_cmaui2:
+ - server_cmaui2
+ - memory
+ disk.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes
+ disk.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes
+ feature_server_cmaui2:
+ - server_cmaui2
+ - feature
+ feature_server_cmaui1:
+ - server_cmaui1
+ - feature
+ disk.root.size_server_cmaui1:
+ - server_cmaui1
+ - disk.root.size
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ disk.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests
+ cpu_server_cmaui2:
+ - server_cmaui2
+ - cpu
+ cpu_server_cmaui1:
+ - server_cmaui1
+ - cpu
+ disk.device.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests
+ disk.device.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.allocation
+ disk.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.allocation
+ disk.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes.rate
+ disk.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ binding_server_cmaui2:
+ - server_cmaui2
+ - binding
+ disk.read.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.read.requests
binding_server_cmaui1:
- server_cmaui1
- binding
+ disk.read.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.read.requests
+ disk.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.latency
+ disk.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.latency
+ memory.resident_server_cmaui1:
+ - server_cmaui1
+ - memory.resident
+ memory.resident_server_cmaui2:
+ - server_cmaui2
+ - memory.resident
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ disk.device.write.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.bytes
+ disk.device.write.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.bytes
+ disk.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.capacity
+ disk.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.capacity
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ os_server_cmaui1:
+ - server_cmaui1
+ - os
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ os_server_cmaui2:
+ - server_cmaui2
+ - os
+ disk.device.read.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes.rate
+ disk.write.bytes.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.bytes.rate
+ disk.write.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.bytes.rate
+ disk.device.write.requests_server_cmaui1:
+ - server_cmaui1
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui2:
+ - server_cmaui2
+ - disk.device.write.requests
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.device.read.bytes.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes.rate
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ disk.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.read.bytes
+ instance_server_cmaui2:
+ - server_cmaui2
+ - instance
+ disk.device.allocation_server_cmaui2:
+ - server_cmaui2
+ - disk.device.allocation
+ instance_server_cmaui1:
+ - server_cmaui1
+ - instance
+ disk.device.allocation_server_cmaui1:
+ - server_cmaui1
+ - disk.device.allocation
+ disk.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.read.bytes
+ disk.device.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.device.usage
+ disk.device.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.device.usage
+ disk.device.capacity_server_cmaui2:
+ - server_cmaui2
+ - disk.device.capacity
+ disk.device.capacity_server_cmaui1:
+ - server_cmaui1
+ - disk.device.capacity
+ disk.usage_server_cmaui2:
+ - server_cmaui2
+ - disk.usage
+ vcpus_server_cmaui1:
+ - server_cmaui1
+ - vcpus
+ vcpus_server_cmaui2:
+ - server_cmaui2
+ - vcpus
+ disk.usage_server_cmaui1:
+ - server_cmaui1
+ - disk.usage
+ endpoint_server_cmaui1:
+ - server_cmaui1
+ - endpoint
+ endpoint_server_cmaui2:
+ - server_cmaui2
+ - endpoint
+ cpu_util_server_cmaui1:
+ - server_cmaui1
+ - cpu_util
+ cpu_util_server_cmaui2:
+ - server_cmaui2
+ - cpu_util
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.root.size_server_cmaui2:
+ - server_cmaui2
+ - disk.root.size
+ disk.write.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.write.requests.rate
+ disk.write.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.write.requests.rate
+ disk.device.latency_server_cmaui1:
+ - server_cmaui1
+ - disk.device.latency
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.device.latency_server_cmaui2:
+ - server_cmaui2
+ - disk.device.latency
+ disk.device.iops_server_cmaui1:
+ - server_cmaui1
+ - disk.device.iops
+ disk.device.iops_server_cmaui2:
+ - server_cmaui2
+ - disk.device.iops
+ disk.ephemeral.size_server_cmaui2:
+ - server_cmaui2
+ - disk.ephemeral.size
+ disk.device.read.requests.rate_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.requests.rate
+ disk.ephemeral.size_server_cmaui1:
+ - server_cmaui1
+ - disk.ephemeral.size
+ disk.device.read.requests.rate_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.requests.rate
+ disk.device.read.bytes_server_cmaui2:
+ - server_cmaui2
+ - disk.device.read.bytes
+ disk.device.read.bytes_server_cmaui1:
+ - server_cmaui1
+ - disk.device.read.bytes
requirements:
+ dependency_server_cmaui1:
+ - server_cmaui1
+ - dependency
+ dependency_server_cmaui2:
+ - server_cmaui2
+ - dependency
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_2:
- cmaui_port_2
- link
@@ -207,6 +486,9 @@ topology_template:
local_storage_server_cmaui2:
- server_cmaui2
- local_storage
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
local_storage_server_cmaui1:
- server_cmaui1
- local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumemulticonnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumemulticonnection/expectedoutputfiles/MainServiceTemplate.yaml
index 8a24ebce83..00c7996cf9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumemulticonnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumemulticonnection/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,23 +2,25 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui_image:
@@ -288,19 +290,19 @@ topology_template:
relationship: tosca.relationships.network.BindsTo
relationship_templates:
cmaui_volume_attachment2:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param2
instance_uuid: server_cmaui1
cmaui_volume_attachment3:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param2
instance_uuid: server_cmaui2
cmaui_volume_attachment1:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id:
get_input: cmaui_volume_param1
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumesharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumesharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
index 5e78625e01..5b3b793b1b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumesharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/novatovolumesharednestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,23 +2,25 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
topology_template:
inputs:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 44aca0ee4d..c600a5f1f9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,28 +11,49 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -64,14 +61,73 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -79,28 +135,250 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_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
endpoint_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_cmaui_port_0:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_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/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
index 052286f8a9..79d7b564f8 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
left_vn_fqdn:
@@ -213,7 +189,7 @@ topology_template:
node: test_net
relationship: tosca.relationships.network.LinksTo
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
index cfe7f567c5..95669eaeba 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -92,6 +68,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -99,6 +81,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -107,7 +92,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -118,28 +103,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ attachment_cmaui_port_0:
+ - cmaui_port_0
+ - attachment
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_0:
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_0:
- cmaui_port_0
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
link_cmaui_port_0:
- cmaui_port_0
- 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/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 351b12fd58..5163613c02 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,48 +11,85 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
abc_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
abc_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
security_group_name:
description: not impotrtant
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
abc_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
abc_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -84,6 +97,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_abc:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_abc:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -91,33 +111,60 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_abc_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_abc_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- scalable_server_abc:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.OperatingSystem
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_abc_port_1:
- type: tosca.capabilities.Attachment
+ disk.write.bytes.rate_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -126,10 +173,9 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- host_server_abc:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ disk.read.bytes.rate_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -138,6 +184,24 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -145,18 +209,133 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_server_abc:
+ cpu_util_server_cmaui:
+ type: org.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_abc_port_1:
type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_abc:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Endpoint.Admin
+ disk.device.write.requests_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_1:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -165,43 +344,529 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests.rate_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_abc_port_1:
+ type: org.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_cmaui_port_2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.root.size_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_abc:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_abc:
+ type: org.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.nested2:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
properties:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
description: not impotrtant
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
abc_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -209,14 +874,78 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -224,28 +953,245 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_cmaui_port_1:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
index 427e7be436..4f0f52d340 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
left_vn_fqdn:
@@ -312,23 +288,23 @@ topology_template:
node: test_net1
relationship: tosca.relationships.network.LinksTo
groups:
- addOn:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nested2
- - test_nested3
- - test_nested1
- main:
+ - template_NetworkPolicy
+ - test_net2
+ - test_net1
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/main.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - template_NetworkPolicy
- - test_net2
- - test_net1 \ No newline at end of file
+ - test_nested2
+ - test_nested3
+ - test_nested1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
index cd5b767492..15e635979b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.abc:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -104,6 +80,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -111,6 +93,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p2
requirements:
@@ -148,6 +133,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -155,6 +146,9 @@ topology_template:
get_input:
- abc_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p2
requirements:
@@ -166,6 +160,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -173,6 +173,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -181,7 +184,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested1:
+ nested1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested1.yml
@@ -195,49 +198,367 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested1
capabilities:
- scalable_server_abc:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_abc:
- server_abc
- - scalable
- os_server_cmaui:
+ - disk.write.bytes.rate
+ disk.device.allocation_server_cmaui:
- server_cmaui
- - os
- attachment_abc_port_1:
- - abc_port_1
- - attachment
+ - disk.device.allocation
+ memory.resident_server_abc:
+ - server_abc
+ - memory.resident
scalable_server_cmaui:
- server_cmaui
- scalable
- host_server_abc:
- - server_abc
- - host
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
os_server_abc:
- server_abc
- os
+ cpu_server_abc:
+ - server_abc
+ - cpu
+ network.outgoing.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.packets.rate
+ disk.device.usage_server_abc:
+ - server_abc
+ - disk.device.usage
host_server_cmaui:
- server_cmaui
- host
- binding_server_abc:
- - server_abc
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ binding_abc_port_1:
+ - abc_port_1
- binding
- endpoint_server_cmaui:
+ disk.device.write.requests_server_abc:
+ - server_abc
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui:
- server_cmaui
- - endpoint
- binding_server_cmaui:
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ feature_abc_port_1:
+ - abc_port_1
+ - feature
+ disk.write.requests_server_abc:
+ - server_abc
+ - disk.write.requests
+ instance_server_cmaui:
- server_cmaui
- - binding
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.capacity_server_abc:
+ - server_abc
+ - disk.capacity
+ disk.device.write.bytes_server_abc:
+ - server_abc
+ - disk.device.write.bytes
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.read.bytes.rate
+ disk.iops_server_abc:
+ - server_abc
+ - disk.iops
+ attachment_abc_port_1:
+ - abc_port_1
+ - attachment
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ disk.read.bytes_server_abc:
+ - server_abc
+ - disk.read.bytes
+ network.outpoing.packets_abc_port_1:
+ - abc_port_1
+ - network.outpoing.packets
endpoint_server_abc:
- server_abc
- endpoint
+ disk.write.requests.rate_server_abc:
+ - server_abc
+ - disk.write.requests.rate
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ instance_server_abc:
+ - server_abc
+ - instance
+ network.incoming.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.device.write.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.write.bytes.rate
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ disk.allocation_server_abc:
+ - server_abc
+ - disk.allocation
+ disk.device.iops_server_abc:
+ - server_abc
+ - disk.device.iops
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.packets_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets
attachment_cmaui_port_2:
- cmaui_port_2
- attachment
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ disk.root.size_server_abc:
+ - server_abc
+ - disk.root.size
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.latency_server_abc:
+ - server_abc
+ - disk.device.latency
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ memory_server_abc:
+ - server_abc
+ - memory
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.device.read.bytes_server_abc:
+ - server_abc
+ - disk.device.read.bytes
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ memory.usage_server_abc:
+ - server_abc
+ - memory.usage
+ disk.read.requests_server_abc:
+ - server_abc
+ - disk.read.requests
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.usage_server_abc:
+ - server_abc
+ - disk.usage
+ scalable_server_abc:
+ - server_abc
+ - scalable
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.write.bytes_server_abc:
+ - server_abc
+ - disk.write.bytes
+ disk.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.read.bytes.rate
+ disk.device.read.requests.rate_server_abc:
+ - server_abc
+ - disk.device.read.requests.rate
+ network.outgoing.bytes_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_server_abc:
+ - server_abc
+ - disk.ephemeral.size
+ cpu_util_server_abc:
+ - server_abc
+ - cpu_util
+ binding_server_abc:
+ - server_abc
+ - binding
+ disk.device.capacity_server_abc:
+ - server_abc
+ - disk.device.capacity
+ network.outgoing.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_abc:
+ - server_abc
+ - disk.device.allocation
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ disk.device.write.requests.rate_server_abc:
+ - server_abc
+ - disk.device.write.requests.rate
+ disk.device.read.requests_server_abc:
+ - server_abc
+ - disk.device.read.requests
+ host_server_abc:
+ - server_abc
+ - host
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_abc:
+ - server_abc
+ - cpu.delta
+ disk.latency_server_abc:
+ - server_abc
+ - disk.latency
+ feature_server_abc:
+ - server_abc
+ - feature
+ vcpus_server_abc:
+ - server_abc
+ - vcpus
requirements:
+ dependency_abc_port_1:
+ - abc_port_1
+ - dependency
+ dependency_server_abc:
+ - server_abc
+ - dependency
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_abc_port_1:
- abc_port_1
- link
@@ -247,6 +568,9 @@ topology_template:
link_cmaui_port_1:
- cmaui_port_1
- link
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
local_storage_server_abc:
- server_abc
- local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
index 992e1c017c..1d2d9ada48 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -93,6 +69,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -100,6 +82,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -108,7 +93,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested2:
+ nested2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested2.yml
@@ -119,28 +104,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested2
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_1:
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
- cmaui_port_1
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_1:
- cmaui_port_1
- 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/services/heattotosca/porttonetconnection/multi/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
index 641b84337f..8b3212a3d2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -106,6 +82,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -113,6 +95,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: shared_network_id
requirements:
@@ -125,19 +110,19 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- addOn:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/addOn.yml
- description: cmaui server template for vMMSC
- members:
- - server_cmaui
- - cmaui_port_0
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_net \ No newline at end of file
+ - test_net
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: cmaui server template for vMMSC
+ members:
+ - server_cmaui
+ - cmaui_port_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/MANIFEST.json
index 1f762d0ccc..1f762d0ccc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/addOn.yml
index e6c5954fb0..e6c5954fb0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/addOn.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/main.yml
index 73a2e3b45c..73a2e3b45c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/sharedAddOn/inputfiles/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 8db67317a4..53137592ad 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,39 +11,49 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
- p2:
- type: string
- p3:
- type: string
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
- - link_cmaui_port_2:
- capability: tosca.capabilities.network.Linkable
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
node: tosca.nodes.Root
- relationship: tosca.relationships.network.LinksTo
+ relationship: tosca.relationships.DependsOn
occurrences:
- - 1
- - 1
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -75,21 +61,97 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -97,28 +159,62 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- os_server_cmaui:
- type: tosca.capabilities.OperatingSystem
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Endpoint.Admin
+ feature_cmaui_port_0:
+ type: tosca.capabilities.Node
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.device.latency_server_cmaui:
+ type: org.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_cmaui_port_2:
- type: tosca.capabilities.Attachment
+ disk.device.write.requests_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.read.requests_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -127,8 +223,240 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_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/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
index db605c9de0..43427622c2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,78 +2,24 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.jsa:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
topology_template:
inputs:
- contrail_net_name:
- hidden: false
- immutable: false
- type: string
jsa_net_name:
hidden: false
immutable: false
type: string
description: network name of jsa log network
- jsa_name:
- hidden: false
- immutable: false
- type: string
node_templates:
- test_nestedInvalidConnectionToNetwork:
- type: org.openecomp.resource.abstract.nodes.heat.nested
- directives:
- - substitutable
- properties:
- p1: test_nova
- service_template_filter:
- substitute_service_template: nestedServiceTemplate.yaml
- test_contrailV2_net:
- type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
- properties:
- network_name:
- get_input: contrail_net_name
test_net:
type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
properties:
shared: true
network_name:
get_input: jsa_net_name
- test_nova:
- type: org.openecomp.resource.vfc.nodes.heat.jsa
- properties:
- image: image
- name:
- get_input: jsa_name
test_nested:
type: org.openecomp.resource.abstract.nodes.heat.nested
directives:
@@ -82,29 +28,18 @@ topology_template:
p1: test_net
service_template_filter:
substitute_service_template: nestedServiceTemplate.yaml
- p2:
- get_attribute:
- - test_contrailV2_net
- - fq_name
requirements:
- - link_cmaui_port_1:
- capability: tosca.capabilities.network.Linkable
- node: test_contrailV2_net
- relationship: tosca.relationships.network.LinksTo
- link_cmaui_port_0:
capability: tosca.capabilities.network.Linkable
node: test_net
relationship: tosca.relationships.network.LinksTo
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nestedInvalidConnectionToNetwork
- - test_contrailV2_net
- test_net
- - test_nova
- test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
index 12cfaca893..299788856f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -47,14 +23,6 @@ topology_template:
immutable: false
type: string
description: UID of OAM network
- p2:
- hidden: false
- immutable: false
- type: string
- p3:
- hidden: false
- immutable: false
- type: string
cmaui_image:
hidden: false
immutable: false
@@ -83,24 +51,6 @@ topology_template:
immutable: false
type: string
node_templates:
- cmaui_port_2:
- type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
- properties:
- replacement_policy: AUTO
- security_groups:
- - get_input: security_group_name
- fixed_ips:
- - ip_address:
- get_input:
- - cmaui_oam_ips
- - 0
- network:
- get_input: p3
- requirements:
- - binding:
- capability: tosca.capabilities.network.Bindable
- node: server_cmaui
- relationship: tosca.relationships.network.BindsTo
server_cmaui:
type: org.openecomp.resource.vfc.nodes.heat.cmaui
properties:
@@ -118,6 +68,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -125,8 +81,13 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
- get_input: p2
+ get_input:
+ - p1
+ - 0
requirements:
- binding:
capability: tosca.capabilities.network.Bindable
@@ -136,6 +97,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -143,6 +110,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -151,53 +121,223 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
description: cmaui server template for vMMSC
members:
- - cmaui_port_2
- server_cmaui
- cmaui_port_1
- cmaui_port_0
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
- os_server_cmaui:
+ cpu_util_server_cmaui:
- server_cmaui
- - os
- endpoint_server_cmaui:
+ - cpu_util
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui:
- server_cmaui
- - endpoint
- binding_server_cmaui:
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
- server_cmaui
- - binding
- attachment_cmaui_port_2:
- - cmaui_port_2
- - attachment
- scalable_server_cmaui:
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
- server_cmaui
- - scalable
+ - disk.read.requests
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
attachment_cmaui_port_0:
- cmaui_port_0
- attachment
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
link_cmaui_port_0:
- cmaui_port_0
- link
- link_cmaui_port_2:
- - cmaui_port_2
- - link
link_cmaui_port_1:
- cmaui_port_1
- 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/services/heattotosca/porttonetconnection/nested/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/main.yml
index 3d23ff660a..c99d5635bc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/main.yml
@@ -7,36 +7,15 @@ parameters:
jsa_net_name:
type: string
description: network name of jsa log network
- contrail_net_name:
- type: string
- jsa_name:
- type: string
resources:
- test_nova:
- type: OS::Nova::Server
- properties:
- name: {get_param: jsa_name}
- image: image
-
test_net:
type: OS::Neutron::Net
properties:
name: {get_param: jsa_net_name}
shared: True
- test_contrailV2_net:
- type: OS::ContrailV2::VirtualNetwork
- properties:
- name: { get_param: contrail_net_name }
-
test_nested:
type: nested.yml
properties:
p1: { get_resource: test_net}
- p2: { get_attr: [ test_contrailV2_net, fq_name ] }
-
- test_nestedInvalidConnectionToNetwork:
- type: nested.yml
- properties:
- p1: { get_resource: test_nova} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/nested.yml
index fb2c8e12e5..61b1d2db5b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/nested.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nested/inputfiles/nested.yml
@@ -6,10 +6,6 @@ parameters:
p1:
type: string
description: UID of OAM network
- p2:
- type: string
- p3:
- type: string
security_group_name:
type: comma_delimited_list
description: CMAUI1, CMAUI2 server names
@@ -41,15 +37,7 @@ resources:
cmaui_port_1:
type: OS::Neutron::Port
properties:
- network: { get_param: p2 }
- fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
- security_groups: [{get_param: security_group_name}]
- replacement_policy: AUTO
-
- cmaui_port_2:
- type: OS::Neutron::Port
- properties:
- network: { get_param: p3 }
+ network: { get_param: [p1,0] }
fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
security_groups: [{get_param: security_group_name}]
replacement_policy: AUTO
@@ -63,5 +51,4 @@ resources:
flavor: { get_param: cmaui_flavor }
networks:
- port: { get_resource: cmaui_port_0 }
- - port: { get_resource: cmaui_port_1 }
- - port: { get_resource: cmaui_port_2 } \ No newline at end of file
+ - port: { get_resource: cmaui_port_1 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..0e22fb2b3d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4327 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_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_cmaui_port_1_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_cmaui_port_2:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..f769955b70
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,143 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nestedInvalidConnectionToNetwork:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_net
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_attribute:
+ - test_contrailV2_net
+ - fq_name
+ requirements:
+ - link_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_2_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_1_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ list_join:
+ - ':'
+ - get_attribute:
+ - test_contrail_net
+ - fq_name
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_cmaui_port_3_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrail_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrail_net
+ relationship: tosca.relationships.network.LinksTo
+ test_contrailV2_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_contrail_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nestedInvalidConnectionToNetwork
+ - test_nested1Level
+ - test_resourceGroup
+ - test_contrailV2_net
+ - test_net
+ - test_contrail_net
+ - test_nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..06a78392f9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,933 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - server_cmaui
+ - test_nested2Level
+ - cmaui_port_0
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested3Level
+ network.incoming.packets_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_2
+ network.incoming.bytes_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_2_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_1
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui
+ network.incoming.bytes_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_2
+ disk.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level
+ cpu.delta_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested3Level
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_2_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested3Level
+ network.incoming.bytes_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3_test_nested3Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested4Level_test_nested3Level
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_2
+ disk.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3_test_nested3Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes
+ network.incoming.bytes.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_1
+ network.outpoing.packets_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_1
+ disk.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3_test_nested3Level
+ attachment_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_2
+ binding_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2_test_nested3Level
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ feature_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_2_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ vcpus_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested3Level
+ network.incoming.packets_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_2_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3_test_nested3Level
+ cpu_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui
+ network.incoming.bytes_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_2_test_nested3Level
+ disk.root.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested3Level
+ memory.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested3Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested3Level
+ instance_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_2
+ memory_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui
+ network.outgoing.bytes_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_1
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ feature_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui
+ disk.device.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_1
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui
+ network.outgoing.bytes_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_2
+ disk.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_1
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_2
+ feature_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3_test_nested4Level_test_nested3Level
+ binding_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_1
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui
+ attachment_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_2_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested3Level
+ attachment_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_1
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_1
+ network.outgoing.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ disk.device.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui
+ attachment_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_2
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui
+ feature_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_2
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ feature_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_2
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3Level
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested3Level
+ vcpus_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui
+ binding_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
+ memory.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui
+ feature_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ attachment_cmaui_port_0:
+ - cmaui_port_0
+ - attachment
+ network.outpoing.packets_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_2_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui
+ binding_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ disk.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui
+ network.incoming.packets.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ binding_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui
+ network.incoming.packets_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3_test_nested3Level
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ attachment_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3_test_nested3Level
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ disk.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu.delta_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested4Level_test_nested3Level
+ binding_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3_test_nested3Level
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.incoming.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_2_test_nested3Level
+ feature_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_1
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_2_test_nested3Level
+ network.incoming.packets_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_1
+ disk.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested3Level
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_2
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_0:
+ - cmaui_port_0
+ - link
+ link_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3_test_nested3Level
+ dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level
+ link_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_2
+ dependency_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3_test_nested3Level
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
+ dependency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_2_test_nested3Level
+ link_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level
+ link_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_1
+ dependency_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_2_test_nested4Level_test_nested3Level
+ link_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level
+ binding_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level
+ link_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_2_test_nested3Level
+ dependency_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..f24b153ad2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,789 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_2
+ - test_nested3Level
+ - server_cmaui
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui
+ network.outgoing.bytes_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_3
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_2
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui_test_nested4Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level
+ binding_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_2
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui_test_nested4Level
+ feature_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_3_test_nested4Level
+ network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_3_test_nested4Level
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.incoming.bytes_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_2
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ instance_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_3_test_nested4Level
+ disk.device.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_3
+ network.outgoing.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_2_test_nested4Level
+ network.outgoing.bytes_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_2
+ feature_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui
+ memory.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui
+ feature_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_3
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ binding_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_3
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ memory_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui
+ feature_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_2
+ network.outgoing.packets.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_2
+ network.incoming.packets_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_2
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ feature_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_2_test_nested4Level
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui_test_nested4Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ attachment_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_3
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui_test_nested4Level
+ cpu_util_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui
+ memory.resident_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui
+ network.incoming.bytes_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_2_test_nested4Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level
+ cpu.delta_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui_test_nested4Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_3_test_nested4Level
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ memory_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ disk.device.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_3_test_nested4Level
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ disk.root.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui
+ cpu_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_2
+ attachment_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_3_test_nested4Level
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_2_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_2_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_3
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_3_test_nested4Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_2_test_nested4Level
+ disk.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui_test_nested4Level
+ disk.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_3_test_nested4Level
+ disk.device.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ disk.device.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui_test_nested4Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ network.incoming.bytes.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.incoming.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_2_test_nested4Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level
+ disk.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui_test_nested4Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_3_test_nested4Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ disk.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui
+ binding_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_3_test_nested4Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui_test_nested4Level
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ attachment_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_2_test_nested4Level
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ instance_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui
+ network.incoming.packets.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_2
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.incoming.bytes_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_3
+ cpu_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui
+ disk.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui
+ network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_2_test_nested4Level
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui
+ attachment_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_2
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui_test_nested4Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_2
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui_test_nested4Level
+ binding_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_2_test_nested4Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui_test_nested4Level
+ requirements:
+ dependency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ dependency_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_3_test_nested4Level
+ link_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_2_test_nested4Level
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_2
+ dependency_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_2_test_nested4Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ dependency_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_3
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui_test_nested4Level
+ link_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ dependency_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_2
+ link_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_3_test_nested4Level
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..7b4d97a49b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,574 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - cmaui_port_3
+ - test_nested4Level
+ - cmaui_port_2
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ binding_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_2
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.bytes_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_2
+ memory_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui
+ network.outpoing.packets_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_3
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ instance_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ network.outpoing.packets_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_2
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ feature_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_2
+ cpu_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui
+ vcpus_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui
+ disk.device.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ network.incoming.bytes_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_3
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_2
+ attachment_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_2
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.device.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ attachment_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_3
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui
+ network.incoming.packets.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_2
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ disk.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_3
+ binding_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_3
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ feature_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ network.outgoing.packets.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ feature_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_3
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.packets_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_3
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_3
+ disk.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ cpu.delta_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui
+ memory.resident_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_2
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui
+ disk.device.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_2
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ memory.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_2
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.packets_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_2
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.device.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_3
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ dependency_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_2
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ link_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_2
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..03ca09b5f9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,345 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_3
+ - cmaui_port_2
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..c7d4122f3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,32 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/main.yml
new file mode 100644
index 0000000000..b84a3a1575
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/main.yml
@@ -0,0 +1,58 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_contrailV2_net:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_contrail_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_net}
+ p2: { get_attr: [ test_contrailV2_net, fq_name ] }
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { list_join: [':', { get_attr: [ test_contrail_net, fq_name ] } ] }
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNetwork:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_nova} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..66ec32fab7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,54 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_0 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..2af4650541
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,67 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..2eacdf794b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,64 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_2 }
+ - port: { get_resource: cmaui_port_3 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..deca174ac0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/nestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,56 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_2 }
+ - port: { get_resource: cmaui_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index edb1307945..6602b62fcb 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,48 +11,85 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
shared_network_id1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
abc_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
abc_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
security_group_name:
description: not impotrtant
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
abc_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
abc_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -84,6 +97,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_abc:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_abc:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -91,33 +111,60 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_abc_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_abc_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- scalable_server_abc:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.OperatingSystem
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_abc_port_1:
- type: tosca.capabilities.Attachment
+ disk.write.bytes.rate_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -126,10 +173,9 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- host_server_abc:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ disk.read.bytes.rate_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -138,6 +184,24 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -145,18 +209,133 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_server_abc:
+ cpu_util_server_cmaui:
+ type: org.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_abc_port_1:
type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_abc:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Endpoint.Admin
+ disk.device.write.requests_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_1:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -165,43 +344,529 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests.rate_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_abc_port_1:
+ type: org.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_cmaui_port_2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.root.size_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_abc:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_abc:
+ type: org.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.nested2:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
properties:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
description: not impotrtant
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
abc_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -209,14 +874,78 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -224,28 +953,245 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_cmaui_port_1:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
index a762422392..0ef23f2905 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,43 +2,12 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
-node_types:
- org.openecomp.resource.vfc.nodes.heat.jsa:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
topology_template:
inputs:
- shared_test_nova:
- hidden: false
- immutable: false
- type: string
shared_network_id1:
hidden: false
immutable: false
@@ -54,20 +23,7 @@ topology_template:
immutable: false
type: string
description: network name of jsa log network
- jsa_name:
- hidden: false
- immutable: false
- type: string
node_templates:
- test_nestedInvalidConnectionToNetwork:
- type: org.openecomp.resource.abstract.nodes.heat.nested1
- directives:
- - substitutable
- properties:
- service_template_filter:
- substitute_service_template: nested1ServiceTemplate.yaml
- shared_network_id1:
- get_input: shared_test_nova
test_net2:
type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
properties:
@@ -142,31 +98,23 @@ topology_template:
capability: tosca.capabilities.network.Linkable
node: test_net1
relationship: tosca.relationships.network.LinksTo
- test_nova:
- type: org.openecomp.resource.vfc.nodes.heat.jsa
- properties:
- image: image
- name:
- get_input: jsa_name
groups:
- addOn:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nestedInvalidConnectionToNetwork
- - test_nested2
- - test_nested3
- - test_nested1
- main:
+ - test_net2
+ - test_net1
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/main.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_net2
- - test_net1
- - test_nova \ No newline at end of file
+ - test_nested2
+ - test_nested3
+ - test_nested1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
index 2096251177..3e4b05d8df 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.abc:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -104,6 +80,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -111,6 +93,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p2
requirements:
@@ -148,6 +133,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -155,6 +146,9 @@ topology_template:
get_input:
- abc_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p2
requirements:
@@ -166,6 +160,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -173,6 +173,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: shared_network_id1
requirements:
@@ -181,7 +184,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested1:
+ nested1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested1.yml
@@ -195,49 +198,367 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested1
capabilities:
- scalable_server_abc:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_abc:
- server_abc
- - scalable
- os_server_cmaui:
+ - disk.write.bytes.rate
+ disk.device.allocation_server_cmaui:
- server_cmaui
- - os
- attachment_abc_port_1:
- - abc_port_1
- - attachment
+ - disk.device.allocation
+ memory.resident_server_abc:
+ - server_abc
+ - memory.resident
scalable_server_cmaui:
- server_cmaui
- scalable
- host_server_abc:
- - server_abc
- - host
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
os_server_abc:
- server_abc
- os
+ cpu_server_abc:
+ - server_abc
+ - cpu
+ network.outgoing.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.packets.rate
+ disk.device.usage_server_abc:
+ - server_abc
+ - disk.device.usage
host_server_cmaui:
- server_cmaui
- host
- binding_server_abc:
- - server_abc
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ binding_abc_port_1:
+ - abc_port_1
- binding
- endpoint_server_cmaui:
+ disk.device.write.requests_server_abc:
+ - server_abc
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui:
- server_cmaui
- - endpoint
- binding_server_cmaui:
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ feature_abc_port_1:
+ - abc_port_1
+ - feature
+ disk.write.requests_server_abc:
+ - server_abc
+ - disk.write.requests
+ instance_server_cmaui:
- server_cmaui
- - binding
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.capacity_server_abc:
+ - server_abc
+ - disk.capacity
+ disk.device.write.bytes_server_abc:
+ - server_abc
+ - disk.device.write.bytes
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.read.bytes.rate
+ disk.iops_server_abc:
+ - server_abc
+ - disk.iops
+ attachment_abc_port_1:
+ - abc_port_1
+ - attachment
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ disk.read.bytes_server_abc:
+ - server_abc
+ - disk.read.bytes
+ network.outpoing.packets_abc_port_1:
+ - abc_port_1
+ - network.outpoing.packets
endpoint_server_abc:
- server_abc
- endpoint
+ disk.write.requests.rate_server_abc:
+ - server_abc
+ - disk.write.requests.rate
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ instance_server_abc:
+ - server_abc
+ - instance
+ network.incoming.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.device.write.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.write.bytes.rate
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ disk.allocation_server_abc:
+ - server_abc
+ - disk.allocation
+ disk.device.iops_server_abc:
+ - server_abc
+ - disk.device.iops
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.packets_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets
attachment_cmaui_port_2:
- cmaui_port_2
- attachment
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ disk.root.size_server_abc:
+ - server_abc
+ - disk.root.size
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.latency_server_abc:
+ - server_abc
+ - disk.device.latency
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ memory_server_abc:
+ - server_abc
+ - memory
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.device.read.bytes_server_abc:
+ - server_abc
+ - disk.device.read.bytes
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ memory.usage_server_abc:
+ - server_abc
+ - memory.usage
+ disk.read.requests_server_abc:
+ - server_abc
+ - disk.read.requests
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.usage_server_abc:
+ - server_abc
+ - disk.usage
+ scalable_server_abc:
+ - server_abc
+ - scalable
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.write.bytes_server_abc:
+ - server_abc
+ - disk.write.bytes
+ disk.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.read.bytes.rate
+ disk.device.read.requests.rate_server_abc:
+ - server_abc
+ - disk.device.read.requests.rate
+ network.outgoing.bytes_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_server_abc:
+ - server_abc
+ - disk.ephemeral.size
+ cpu_util_server_abc:
+ - server_abc
+ - cpu_util
+ binding_server_abc:
+ - server_abc
+ - binding
+ disk.device.capacity_server_abc:
+ - server_abc
+ - disk.device.capacity
+ network.outgoing.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_abc:
+ - server_abc
+ - disk.device.allocation
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ disk.device.write.requests.rate_server_abc:
+ - server_abc
+ - disk.device.write.requests.rate
+ disk.device.read.requests_server_abc:
+ - server_abc
+ - disk.device.read.requests
+ host_server_abc:
+ - server_abc
+ - host
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_abc:
+ - server_abc
+ - cpu.delta
+ disk.latency_server_abc:
+ - server_abc
+ - disk.latency
+ feature_server_abc:
+ - server_abc
+ - feature
+ vcpus_server_abc:
+ - server_abc
+ - vcpus
requirements:
+ dependency_abc_port_1:
+ - abc_port_1
+ - dependency
+ dependency_server_abc:
+ - server_abc
+ - dependency
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_abc_port_1:
- abc_port_1
- link
@@ -247,6 +568,9 @@ topology_template:
link_cmaui_port_1:
- cmaui_port_1
- link
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
local_storage_server_abc:
- server_abc
- local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
index 992e1c017c..1d2d9ada48 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested2
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -93,6 +69,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -100,6 +82,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -108,7 +93,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested2:
+ nested2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested2.yml
@@ -119,28 +104,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested2
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_1:
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
- cmaui_port_1
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_1:
- cmaui_port_1
- 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/services/heattotosca/porttonetconnection/shared/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/addOn.yml
index ca1cf7d31d..507bfcaa08 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/addOn.yml
@@ -11,8 +11,7 @@ parameters:
shared_network_id2:
type: string
description: network name of jsa log network
- shared_test_nova:
- type: string
+
resources:
test_nested1:
@@ -30,9 +29,4 @@ resources:
type: nested1.yml
properties:
shared_network_id1: { get_param: shared_network_id1}
- p2: { get_param: shared_network_id2}
-
- test_nestedInvalidConnectionToNetwork:
- type: nested1.yml
- properties:
- shared_network_id1: { get_param: shared_test_nova} \ No newline at end of file
+ p2: { get_param: shared_network_id2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/main.yml
index 3c015747ff..9601c0f86d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/shared/inputfiles/main.yml
@@ -8,9 +8,6 @@ parameters:
type: string
description: network name of jsa log network
- jsa_name:
- type: string
-
resources:
test_net1:
type: OS::Neutron::Net
@@ -24,16 +21,9 @@ resources:
name: {get_param: jsa_net_name}
shared: True
- test_nova:
- type: OS::Nova::Server
- properties:
- name: {get_param: jsa_name}
- image: image
-
outputs:
shared_network_id1:
value: {get_resource: test_net1}
+
shared_network_id2:
- value: {get_resource: test_net2}
- shared_test_nova:
- value: {get_resource: test_nova} \ No newline at end of file
+ value: {get_resource: test_net2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
index 641b84337f..8b3212a3d2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttocontrailv2virtualnetworkconnection/multi/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -106,6 +82,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -113,6 +95,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: shared_network_id
requirements:
@@ -125,19 +110,19 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- addOn:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/addOn.yml
- description: cmaui server template for vMMSC
- members:
- - server_cmaui
- - cmaui_port_0
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_net \ No newline at end of file
+ - test_net
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: cmaui server template for vMMSC
+ members:
+ - server_cmaui
+ - cmaui_port_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/MANIFEST.json
index 1f762d0ccc..1f762d0ccc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/addOn.yml
index e6c5954fb0..e6c5954fb0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/addOn.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/main.yml
index 73a2e3b45c..73a2e3b45c 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/multi/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedAddOn/inputfiles/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..7d178ebfc1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4327 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_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_cmaui_port_1_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_2_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_cmaui_port_2:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_2_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..04b5a5333b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,174 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ shared_test_nova:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_contrail_net:
+ hidden: false
+ immutable: false
+ type: string
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_contrailV2_net:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nestedInvalidConnectionToNetwork:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ shared_test_net:
+ get_input: shared_test_nova
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_input: shared_test_contrailV2_net
+ shared_test_net:
+ get_input: shared_test_net
+ requirements:
+ - link_cmaui_port_2_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_3_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_2_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_1_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net
+ relationship: tosca.relationships.network.LinksTo
+ test_nestedPassArrayParam:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ shared_test_net:
+ get_input:
+ - shared_test_net
+ - 0
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ shared_test_net:
+ get_input: shared_test_contrail_net
+ requirements:
+ - link_cmaui_port_3_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrail_net
+ relationship: tosca.relationships.network.LinksTo
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrail_net
+ relationship: tosca.relationships.network.LinksTo
+ test_contrailV2_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_contrail_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ base_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_contrailV2_net
+ - test_net
+ - test_contrail_net
+ - test_nova
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nestedInvalidConnectionToNetwork
+ - test_nested1Level
+ - test_nestedPassArrayParam
+ - test_resourceGroup \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0a3ffe60ed
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,933 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ shared_test_net:
+ get_input: shared_test_net
+ cmaui_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: shared_test_net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - server_cmaui
+ - test_nested2Level
+ - cmaui_port_0
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested3Level
+ network.incoming.packets_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_2
+ network.incoming.bytes_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_2_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_1
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui
+ network.incoming.bytes_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_2
+ disk.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level
+ cpu.delta_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested3Level
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_2_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested3Level
+ network.incoming.bytes_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3_test_nested3Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested4Level_test_nested3Level
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_2
+ disk.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3_test_nested3Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes
+ network.incoming.bytes.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_1
+ network.outpoing.packets_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_1
+ disk.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3_test_nested3Level
+ attachment_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_2
+ binding_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2_test_nested3Level
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ feature_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_2_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ vcpus_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested3Level
+ network.incoming.packets_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_2_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3_test_nested3Level
+ cpu_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui
+ network.incoming.bytes_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_2_test_nested3Level
+ disk.root.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested3Level
+ memory.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested3Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested3Level
+ instance_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_2
+ memory_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui
+ network.outgoing.bytes_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_1
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ feature_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui
+ disk.device.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_1
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui
+ network.outgoing.bytes_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_2
+ disk.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_1
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_2
+ feature_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3_test_nested4Level_test_nested3Level
+ binding_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_1
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui
+ attachment_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_2_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested3Level
+ attachment_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_1
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_1
+ network.outgoing.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ disk.device.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui
+ attachment_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_2
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui
+ feature_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_2
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level
+ feature_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_2
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3Level
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested3Level
+ vcpus_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui
+ binding_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
+ memory.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui
+ feature_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_2_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ attachment_cmaui_port_0:
+ - cmaui_port_0
+ - attachment
+ network.outpoing.packets_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_2_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui
+ binding_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ disk.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui
+ network.incoming.packets.rate_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ binding_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui
+ network.incoming.packets_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3_test_nested3Level
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ attachment_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3_test_nested3Level
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ disk.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu.delta_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested4Level_test_nested3Level
+ binding_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3_test_nested3Level
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.incoming.bytes.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_2_test_nested3Level
+ feature_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_1
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_2_test_nested3Level
+ network.incoming.packets_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_1
+ disk.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested3Level
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_2
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_0:
+ - cmaui_port_0
+ - link
+ link_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3_test_nested3Level
+ dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level
+ link_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_2
+ dependency_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3_test_nested3Level
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
+ dependency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_2_test_nested3Level
+ link_cmaui_port_3_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3_test_nested4Level_test_nested3Level
+ link_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_1
+ dependency_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_2_test_nested4Level_test_nested3Level
+ link_cmaui_port_2_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_2_test_nested4Level_test_nested3Level
+ binding_cmaui_port_2_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_2
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level
+ link_cmaui_port_2_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_2_test_nested3Level
+ dependency_cmaui_port_1_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..bd0c372216
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,789 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: shared_test_net
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ shared_test_net:
+ get_input: shared_test_net
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: shared_test_net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_2
+ - test_nested3Level
+ - server_cmaui
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui
+ network.outgoing.bytes_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_3
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_2
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui_test_nested4Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level
+ binding_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_2
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui_test_nested4Level
+ feature_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_3_test_nested4Level
+ network.incoming.packets_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_3_test_nested4Level
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.incoming.bytes_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_2
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ instance_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_3_test_nested4Level
+ disk.device.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_3
+ network.outgoing.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_2_test_nested4Level
+ network.outgoing.bytes_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_2
+ feature_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui
+ memory.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui
+ feature_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_3
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ binding_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_3
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ memory_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui
+ feature_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_2
+ network.outgoing.packets.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_2
+ network.incoming.packets_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_2
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ feature_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_2_test_nested4Level
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui_test_nested4Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ attachment_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_3
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui_test_nested4Level
+ cpu_util_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui
+ memory.resident_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui
+ network.incoming.bytes_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_2_test_nested4Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level
+ cpu.delta_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui_test_nested4Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.incoming.bytes_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_3_test_nested4Level
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ memory_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ disk.device.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ network.incoming.packets.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_3_test_nested4Level
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ disk.root.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui
+ cpu_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_2
+ attachment_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_3_test_nested4Level
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_2_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_2_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_3
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_3_test_nested4Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ network.outpoing.packets_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_2_test_nested4Level
+ disk.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui_test_nested4Level
+ disk.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_3_test_nested4Level
+ disk.device.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ disk.device.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui_test_nested4Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ network.incoming.bytes.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.incoming.bytes.rate_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_2_test_nested4Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level
+ disk.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui_test_nested4Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_3_test_nested4Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ disk.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui
+ binding_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_3_test_nested4Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui_test_nested4Level
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ attachment_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_2_test_nested4Level
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ instance_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui
+ network.incoming.packets.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_2
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.incoming.bytes_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_3
+ cpu_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui
+ disk.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui
+ network.incoming.packets_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_2_test_nested4Level
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ disk.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui
+ attachment_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_2
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui_test_nested4Level
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui_test_nested4Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_2
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui_test_nested4Level
+ binding_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_2_test_nested4Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui_test_nested4Level
+ requirements:
+ dependency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ dependency_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_3_test_nested4Level
+ link_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_2_test_nested4Level
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_2
+ dependency_cmaui_port_2_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_2_test_nested4Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ dependency_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_3
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui_test_nested4Level
+ link_cmaui_port_3_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ dependency_cmaui_port_2_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_2
+ link_cmaui_port_3_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_3_test_nested4Level
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..3b60bb0b6d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,574 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ shared_test_net:
+ get_input: shared_test_net
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: shared_test_net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - cmaui_port_3
+ - test_nested4Level
+ - cmaui_port_2
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ binding_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_2
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.bytes_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_2
+ memory_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui
+ network.outpoing.packets_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_3
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ instance_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ network.outpoing.packets_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_2
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ feature_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_2
+ cpu_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui
+ vcpus_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui
+ disk.device.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ network.incoming.bytes_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_3
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_2
+ attachment_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_2
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.device.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ attachment_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_3
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui
+ network.incoming.packets.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_2
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ disk.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ network.outgoing.bytes_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_3
+ binding_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_3
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ feature_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ network.outgoing.packets.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ feature_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_3
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.packets_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_3
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_3
+ disk.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ cpu.delta_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui
+ memory.resident_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_2
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui
+ disk.device.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ network.outgoing.bytes_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_2
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ memory.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_2
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.packets_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_2
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.device.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_3
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ dependency_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_2
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_3_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ link_cmaui_port_2_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_2
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..9b6b5ffdf5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,345 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ shared_test_net:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: shared_test_net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: p2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_3
+ - cmaui_port_2
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..2d7942b41a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,37 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "base.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/addOn.yml
new file mode 100644
index 0000000000..aa4d929eab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/addOn.yml
@@ -0,0 +1,44 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ shared_test_net:
+ type: string
+ shared_test_contrailV2_net:
+ type: string
+ shared_test_contrail_net:
+ type: string
+ shared_test_nova:
+ type: string
+
+resources:
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: shared_test_contrailV2_net}
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ shared_test_net: { get_param: shared_test_contrail_net }
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNetwork:
+ type: nested1.yml
+ properties:
+ shared_test_net: { get_param: shared_test_nova}
+
+ test_nestedPassArrayParam:
+ type: nested1.yml
+ properties:
+ shared_test_net: { get_param: [shared_test_net,0]} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/base.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/base.yml
new file mode 100644
index 0000000000..f14ea1e2c7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/base.yml
@@ -0,0 +1,48 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ type: string
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ test_net:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_contrailV2_net:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_contrail_net:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+outputs:
+ shared_test_net:
+ value: {get_resource: test_net}
+ shared_test_contrailV2_net:
+ value: { list_join: [':', { get_attr: [ test_contrailV2_net, fq_name ] } ] }
+ shared_test_contrail_net:
+ value: { get_attr: [ test_contrail_net, fq_name ] }
+ shared_test_nova:
+ value: {get_resource: test_nova}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..878b77e287
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,54 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_0:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: shared_test_net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_0 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..7e08f5cfb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,67 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: shared_test_net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: shared_test_net}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..02ee8d61e1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,64 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: shared_test_net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_2 }
+ - port: { get_resource: cmaui_port_3 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ shared_test_net: { get_param: shared_test_net}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..dcc60e1d2c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetconnection/sharedNestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,56 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ shared_test_net:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+resources:
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: p2 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: shared_test_net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_2 }
+ - port: { get_resource: cmaui_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 44aca0ee4d..c600a5f1f9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,28 +11,49 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
security_group_name:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -64,14 +61,73 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_0:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -79,28 +135,250 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_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
endpoint_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ disk.device.iops_server_cmaui:
+ type: org.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_cmaui_port_0:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_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/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/MainServiceTemplate.yaml
index c364c62d6d..23d80fdc81 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
jsa_net_name:
@@ -73,7 +49,7 @@ topology_template:
node: test_net
relationship: tosca.relationships.network.LinksTo
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/nestedServiceTemplate.yaml
index cfe7f567c5..95669eaeba 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttonetresourcegroupconnection/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -92,6 +68,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -99,6 +81,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -107,7 +92,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -118,28 +103,172 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ attachment_cmaui_port_0:
+ - cmaui_port_0
+ - attachment
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.iops
+ disk.device.iops_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_0:
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_0:
- cmaui_port_0
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
link_cmaui_port_0:
- cmaui_port_0
- 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/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 8744a29bc3..d7dac6ebc8 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested1:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,48 +11,85 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
abc_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
abc_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
security_group_name:
description: not impotrtant
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
abc_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
abc_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -84,6 +97,13 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_server_abc:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_abc:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -91,33 +111,60 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_abc_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_abc_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
- scalable_server_abc:
- type: tosca.capabilities.Scalable
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.OperatingSystem
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_abc_port_1:
- type: tosca.capabilities.Attachment
+ disk.write.bytes.rate_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -126,10 +173,9 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- host_server_abc:
- type: tosca.capabilities.Container
- valid_source_types:
- - tosca.nodes.SoftwareComponent
+ disk.read.bytes.rate_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -138,6 +184,24 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -145,18 +209,133 @@ node_types:
occurrences:
- 1
- UNBOUNDED
- binding_server_abc:
+ cpu_util_server_cmaui:
+ type: org.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_abc_port_1:
type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_abc:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Endpoint.Admin
+ disk.device.write.requests_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_1:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
occurrences:
- 1
- UNBOUNDED
@@ -165,13 +344,476 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ disk.write.requests.rate_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_abc_port_1:
+ type: org.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_cmaui_port_2:
type: tosca.capabilities.Attachment
occurrences:
- 1
- UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
type: tosca.capabilities.Attachment
occurrences:
- 1
+ - UNBOUNDED
+ disk.root.size_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_abc:
+ type: org.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_abc_port_1:
+ type: org.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_abc_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_abc:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_abc:
+ type: org.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_server_abc:
+ type: org.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_server_abc:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_abc:
+ type: org.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/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml
index 5a6dfd9376..82dba4052f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
shared_network_id1:
@@ -111,21 +87,21 @@ topology_template:
node: test_net1
relationship: tosca.relationships.network.LinksTo
groups:
- addOn:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - mvs_modules
- - test_nested1
- main:
+ - test_net2
+ - test_net1
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/main.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_net2
- - test_net1 \ No newline at end of file
+ - mvs_modules
+ - test_nested1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/nested1ServiceTemplate.yaml
index cd5b767492..15e635979b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/nested1ServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/porttosharednetresourcegrouplinking/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested1
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.abc:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -104,6 +80,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -111,6 +93,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p2
requirements:
@@ -148,6 +133,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -155,6 +146,9 @@ topology_template:
get_input:
- abc_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p2
requirements:
@@ -166,6 +160,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -173,6 +173,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: p1
requirements:
@@ -181,7 +184,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested1:
+ nested1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested1.yml
@@ -195,49 +198,367 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested1
capabilities:
- scalable_server_abc:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_abc:
- server_abc
- - scalable
- os_server_cmaui:
+ - disk.write.bytes.rate
+ disk.device.allocation_server_cmaui:
- server_cmaui
- - os
- attachment_abc_port_1:
- - abc_port_1
- - attachment
+ - disk.device.allocation
+ memory.resident_server_abc:
+ - server_abc
+ - memory.resident
scalable_server_cmaui:
- server_cmaui
- scalable
- host_server_abc:
- - server_abc
- - host
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
os_server_abc:
- server_abc
- os
+ cpu_server_abc:
+ - server_abc
+ - cpu
+ network.outgoing.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.packets.rate
+ disk.device.usage_server_abc:
+ - server_abc
+ - disk.device.usage
host_server_cmaui:
- server_cmaui
- host
- binding_server_abc:
- - server_abc
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ binding_abc_port_1:
+ - abc_port_1
- binding
- endpoint_server_cmaui:
+ disk.device.write.requests_server_abc:
+ - server_abc
+ - disk.device.write.requests
+ disk.device.write.requests_server_cmaui:
- server_cmaui
- - endpoint
- binding_server_cmaui:
+ - disk.device.write.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ feature_abc_port_1:
+ - abc_port_1
+ - feature
+ disk.write.requests_server_abc:
+ - server_abc
+ - disk.write.requests
+ instance_server_cmaui:
- server_cmaui
- - binding
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.capacity_server_abc:
+ - server_abc
+ - disk.capacity
+ disk.device.write.bytes_server_abc:
+ - server_abc
+ - disk.device.write.bytes
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.read.bytes.rate
+ disk.iops_server_abc:
+ - server_abc
+ - disk.iops
+ attachment_abc_port_1:
+ - abc_port_1
+ - attachment
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ disk.read.bytes_server_abc:
+ - server_abc
+ - disk.read.bytes
+ network.outpoing.packets_abc_port_1:
+ - abc_port_1
+ - network.outpoing.packets
endpoint_server_abc:
- server_abc
- endpoint
+ disk.write.requests.rate_server_abc:
+ - server_abc
+ - disk.write.requests.rate
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ instance_server_abc:
+ - server_abc
+ - instance
+ network.incoming.packets.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets.rate
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.device.write.bytes.rate_server_abc:
+ - server_abc
+ - disk.device.write.bytes.rate
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ disk.allocation_server_abc:
+ - server_abc
+ - disk.allocation
+ disk.device.iops_server_abc:
+ - server_abc
+ - disk.device.iops
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.incoming.packets_abc_port_1:
+ - abc_port_1
+ - network.incoming.packets
attachment_cmaui_port_2:
- cmaui_port_2
- attachment
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ disk.root.size_server_abc:
+ - server_abc
+ - disk.root.size
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.latency_server_abc:
+ - server_abc
+ - disk.device.latency
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ memory_server_abc:
+ - server_abc
+ - memory
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.device.read.bytes_server_abc:
+ - server_abc
+ - disk.device.read.bytes
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ memory.usage_server_abc:
+ - server_abc
+ - memory.usage
+ disk.read.requests_server_abc:
+ - server_abc
+ - disk.read.requests
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.usage_server_abc:
+ - server_abc
+ - disk.usage
+ scalable_server_abc:
+ - server_abc
+ - scalable
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ disk.write.bytes_server_abc:
+ - server_abc
+ - disk.write.bytes
+ disk.read.bytes.rate_server_abc:
+ - server_abc
+ - disk.read.bytes.rate
+ disk.device.read.requests.rate_server_abc:
+ - server_abc
+ - disk.device.read.requests.rate
+ network.outgoing.bytes_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes
+ network.incoming.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes.rate
+ disk.ephemeral.size_server_abc:
+ - server_abc
+ - disk.ephemeral.size
+ cpu_util_server_abc:
+ - server_abc
+ - cpu_util
+ binding_server_abc:
+ - server_abc
+ - binding
+ disk.device.capacity_server_abc:
+ - server_abc
+ - disk.device.capacity
+ network.outgoing.bytes.rate_abc_port_1:
+ - abc_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_abc_port_1:
+ - abc_port_1
+ - network.incoming.bytes
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.device.allocation_server_abc:
+ - server_abc
+ - disk.device.allocation
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ disk.device.write.requests.rate_server_abc:
+ - server_abc
+ - disk.device.write.requests.rate
+ disk.device.read.requests_server_abc:
+ - server_abc
+ - disk.device.read.requests
+ host_server_abc:
+ - server_abc
+ - host
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ cpu.delta_server_abc:
+ - server_abc
+ - cpu.delta
+ disk.latency_server_abc:
+ - server_abc
+ - disk.latency
+ feature_server_abc:
+ - server_abc
+ - feature
+ vcpus_server_abc:
+ - server_abc
+ - vcpus
requirements:
+ dependency_abc_port_1:
+ - abc_port_1
+ - dependency
+ dependency_server_abc:
+ - server_abc
+ - dependency
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_abc_port_1:
- abc_port_1
- link
@@ -247,6 +568,9 @@ topology_template:
link_cmaui_port_1:
- cmaui_port_1
- link
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
local_storage_server_abc:
- server_abc
- local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/expectedoutputfiles/MainServiceTemplate.yaml
index c253158ad4..ea87be355a 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.smp:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -506,10 +482,42 @@ topology_template:
get_input: multi_anti_affinity_param
group1:
get_input: fe_smp_affinity_param
+ server_smp4:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ metadata:
+ jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ user_data_format: RAW
+ name:
+ get_input: smp_name_2
+ scheduler_hints:
+ group1:
+ get_input:
+ - multi_anti_affinity_param
+ - 0
port3:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -521,6 +529,15 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -532,6 +549,15 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -543,6 +569,15 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ 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
network:
get_input: port_name
requirements:
@@ -572,16 +607,12 @@ topology_template:
group:
get_input: be_affinity_param
groups:
- FE_SMP_Affinity:
+ FE_SMP_Affinity_group:
type: tosca.groups.Root
members:
- server_smp2
- server_smp3
- Multi_Anti_Affinity:
- type: tosca.groups.Root
- members:
- - server_smp3
- addOn1:
+ addOn1_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/addOn1.yml
@@ -589,16 +620,21 @@ topology_template:
members:
- port1
- server_smp1
- addOn3:
+ addOn3_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/addOn3.yml
description: ASC Template
members:
- server_smp3
+ - server_smp4
- port3
- port4
- addOn2:
+ Multi_Anti_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp3
+ addOn2_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/addOn2.yml
@@ -606,29 +642,29 @@ topology_template:
members:
- server_smp2
- port2
- BE_Affinity:
+ BE_Affinity_group:
type: tosca.groups.Root
members:
- server_smp1
policies:
- FE_SMP_Affinity:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group
+ FE_SMP_Affinity_policy:
type: org.openecomp.policies.placement.Colocate
properties:
name: abc
affinity: host
targets:
- - FE_SMP_Affinity
- Multi_Anti_Affinity:
+ - FE_SMP_Affinity_group
+ Multi_Anti_Affinity_policy:
type: org.openecomp.policies.placement.Antilocate
properties:
name: def
container_type: host
targets:
- - Multi_Anti_Affinity
- BE_Affinity:
- type: org.openecomp.policies.placement.Colocate
- properties:
- name: def
- affinity: host
- targets:
- - BE_Affinity \ No newline at end of file
+ - Multi_Anti_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/MANIFEST.json
index bcc4ef51b1..bcc4ef51b1 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn1.yml
index 79306fe04e..79306fe04e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn1.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn1.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn2.yml
index 9918c0bfda..9918c0bfda 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn2.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn2.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn3.yml
index 95382efb69..0eac2f8829 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/addOn3.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/addOn3.yml
@@ -53,6 +53,20 @@ resources:
jx_vm_role: smp2
user_data_format: RAW
+ server_smp4:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: smp_name_2 }
+ image: { get_param: image_smp_name }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: flavor_smp_name }
+ scheduler_hints: { group1: { get_param: [multi_anti_affinity_param,0] } }
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ jx_lab_name: {get_param: lab_name}
+ jx_vm_role: smp2
+ user_data_format: RAW
+
port3:
type: OS::Neutron::Port
properties:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/main.yml
index cc814efbd9..cc814efbd9 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securitygrouptonovaconnectionmulti/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityGroupToNovaAddOn/inputfiles/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..b2eb38f367
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4409 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_4:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ type: org.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.usage_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_8:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_8:
+ type: org.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_cmaui_port_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.allocation_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..6616fbb42b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,272 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: jsa_security_group1
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2: jsa_security_group2
+ test_nestedInvalidConnectionToNova:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1: test_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1: jsa_security_group2
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ jsa_security_group1:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cmaui_port_6_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_3_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_4_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_1
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_5_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ jsa_security_group2:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cmaui_port_3_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_2
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_1
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_7_test_nested4Level
+ node: test_resourceGroup
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_5
+ node: test_resourceGroup
+ relationship: org.openecomp.relationships.AttachesTo
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_nestedInvalidConnectionToNova
+ - test_resourceGroup
+ - jsa_security_group1
+ - jsa_security_group2
+ - test_nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..42b1a26b87
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,1002 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - cmaui_port_2
+ - server_cmaui
+ - test_nested2Level
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_6_test_nested3Level
+ binding_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_6_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ binding_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_5_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3
+ feature_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui
+ disk.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested3Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ cpu.delta_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_6_test_nested3Level
+ network.incoming.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_4
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui
+ network.incoming.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3
+ attachment_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_6_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_5_test_nested3Level
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested3Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_7_test_nested4Level_test_nested3Level
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_4
+ disk.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_6_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_5_test_nested3Level
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_5_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.device.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_4
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ vcpus_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_5_test_nested3Level
+ cpu_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui
+ network.incoming.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_4
+ feature_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_5_test_nested3Level
+ disk.root.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested3Level
+ memory.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested3Level
+ attachment_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested3Level
+ instance_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui
+ disk.device.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested4Level_test_nested3Level
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ feature_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested3Level
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui
+ network.outgoing.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_4
+ disk.device.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_5_test_nested3Level
+ cpu_util_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested3Level
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_6_test_nested3Level
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ disk.device.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_6_test_nested3Level
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested3Level
+ binding_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_4
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_4
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested3Level
+ vcpus_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ attachment_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_4
+ memory.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_5_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_4
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui
+ feature_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested3Level
+ network.incoming.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ disk.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui
+ feature_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_4
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level
+ attachment_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_7_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_4
+ binding_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ disk.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu.delta_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_6_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested3Level
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_5_test_nested3Level
+ dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_6_test_nested3Level
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level
+ link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_6_test_nested3Level
+ dependency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ link_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_4
+ dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_5_test_nested3Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ link_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_4 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..c2319a006c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,796 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_3
+ - cmaui_port_4
+ - test_nested3Level
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui_test_nested4Level
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui_test_nested4Level
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui_test_nested4Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui_test_nested4Level
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ instance_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level
+ feature_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_7_test_nested4Level
+ memory.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ memory_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_5
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui_test_nested4Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_6
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_6
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_5
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_6
+ cpu_util_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_6
+ disk.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui
+ memory.resident_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level
+ cpu.delta_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui_test_nested4Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui
+ binding_cmaui_port_4:
+ - cmaui_port_4
+ - binding
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ feature_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_6
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_8_test_nested4Level
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_6
+ memory_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ disk.device.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes.rate
+ binding_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_6
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui_test_nested4Level
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.root.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui_test_nested4Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_7_test_nested4Level
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ network.incoming.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets.rate
+ feature_cmaui_port_4:
+ - cmaui_port_4
+ - feature
+ attachment_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_6
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_6
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.packets.rate
+ disk.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui_test_nested4Level
+ attachment_cmaui_port_4:
+ - cmaui_port_4
+ - attachment
+ disk.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.device.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_5
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level
+ disk.device.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_7_test_nested4Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui_test_nested4Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ network.incoming.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_6
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level
+ disk.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level
+ attachment_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_5
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui_test_nested4Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui_test_nested4Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_5
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_8_test_nested4Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_5
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.outpoing.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_6
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outgoing.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ instance_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui
+ binding_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_5
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_5
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui
+ disk.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.outpoing.packets
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_8_test_nested4Level
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ feature_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_5
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_5
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui_test_nested4Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_5
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui_test_nested4Level
+ requirements:
+ link_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_5
+ dependency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_6
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_7_test_nested4Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_4:
+ - cmaui_port_4
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui_test_nested4Level
+ link_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_6
+ link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_8_test_nested4Level
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_7_test_nested4Level
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_8_test_nested4Level
+ dependency_cmaui_port_4:
+ - cmaui_port_4
+ - dependency
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ dependency_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_5
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..d907a4db05
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,578 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - test_nested4Level
+ - cmaui_port_5
+ - cmaui_port_6
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ memory_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ instance_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ cpu_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui
+ vcpus_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui
+ disk.device.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_7
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.device.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_8
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui
+ network.incoming.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_7
+ disk.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui
+ network.incoming.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_7
+ disk.device.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_8
+ disk.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_5:
+ - cmaui_port_5
+ - binding
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_8
+ binding_cmaui_port_6:
+ - cmaui_port_6
+ - binding
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_8
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ feature_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_8
+ network.outpoing.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_8
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui
+ feature_cmaui_port_5:
+ - cmaui_port_5
+ - feature
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui
+ feature_cmaui_port_6:
+ - cmaui_port_6
+ - feature
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui
+ attachment_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_7
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui
+ binding_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_8
+ network.incoming.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets.rate
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ attachment_cmaui_port_6:
+ - cmaui_port_6
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_7
+ network.outgoing.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_5:
+ - cmaui_port_5
+ - attachment
+ feature_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_8
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outpoing.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_7
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ attachment_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_8
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_8
+ disk.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_7
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ network.incoming.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets.rate
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ cpu.delta_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui
+ memory.resident_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui
+ binding_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_7
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_7
+ disk.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui
+ disk.device.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui
+ network.incoming.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_7
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_8
+ memory.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui
+ network.outpoing.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.outpoing.packets
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.outgoing.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes
+ network.outpoing.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.outpoing.packets
+ network.outgoing.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.device.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.incoming.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_7
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ requirements:
+ dependency_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_7
+ dependency_cmaui_port_6:
+ - cmaui_port_6
+ - dependency
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_8
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ link_cmaui_port_6:
+ - cmaui_port_6
+ - link
+ link_cmaui_port_5:
+ - cmaui_port_5
+ - link
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_8
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui
+ link_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_7
+ dependency_cmaui_port_5:
+ - cmaui_port_5
+ - 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/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..720662bde6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,350 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_7
+ - cmaui_port_8
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ feature_cmaui_port_7:
+ - cmaui_port_7
+ - feature
+ feature_cmaui_port_8:
+ - cmaui_port_8
+ - feature
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.outgoing.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_7:
+ - cmaui_port_7
+ - attachment
+ attachment_cmaui_port_8:
+ - cmaui_port_8
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.packets.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets.rate
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.incoming.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets
+ network.incoming.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.outgoing.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.outpoing.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.outpoing.packets
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outpoing.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.outpoing.packets
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ binding_cmaui_port_7:
+ - cmaui_port_7
+ - binding
+ network.outgoing.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes
+ binding_cmaui_port_8:
+ - cmaui_port_8
+ - binding
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.incoming.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.outgoing.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes.rate
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ dependency_cmaui_port_8:
+ - cmaui_port_8
+ - dependency
+ dependency_cmaui_port_7:
+ - cmaui_port_7
+ - dependency
+ link_cmaui_port_8:
+ - cmaui_port_8
+ - link
+ link_cmaui_port_7:
+ - cmaui_port_7
+ - link
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..c7d4122f3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,32 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/main.yml
new file mode 100644
index 0000000000..2b177868ae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/main.yml
@@ -0,0 +1,78 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ security_group_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ jsa_security_group1:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ jsa_security_group2:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: jsa_security_group1}
+ p2: { get_resource: jsa_security_group2}
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_resource: jsa_security_group2}
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNova:
+ type: nested1.yml
+ properties:
+ p1: { get_resource: test_nova} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..c73fcf63d7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,65 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}, {get_param: p2}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+ - port: { get_resource: cmaui_port_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..b4655fa35d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,70 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}, {get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_3 }
+ - port: { get_resource: cmaui_port_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..55538833a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,66 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_5 }
+ - port: { get_resource: cmaui_port_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..ce3ffb76a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/nestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,58 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_7:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_8:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2},{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_7 }
+ - port: { get_resource: cmaui_port_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_QRouterCloudConfig b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_QRouterCloudConfig
index 51c7176ee6..51c7176ee6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_QRouterCloudConfig
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_QRouterCloudConfig
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_QRouterTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_QRouterTemplate.yaml
index aae1455919..aae1455919 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_QRouterTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_QRouterTemplate.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBAgentCloudConfig b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBAgentCloudConfig
index 83f57aceb8..83f57aceb8 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBAgentCloudConfig
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBAgentCloudConfig
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBAgentTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBAgentTemplate.yaml
index 80a65d17fc..80a65d17fc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBAgentTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBAgentTemplate.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBCloudConfig b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBCloudConfig
index 78b6c652ce..78b6c652ce 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBCloudConfig
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBCloudConfig
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBTemplate.yaml
index afc435adaf..afc435adaf 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vLBTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vLBTemplate.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vProbeCloudConfig b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vProbeCloudConfig
index f31b3dde85..f31b3dde85 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vProbeCloudConfig
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vProbeCloudConfig
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vProbeTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vProbeTemplate.yaml
index d343ee5595..d343ee5595 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEAdd_On_Module_vProbeTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEAdd_On_Module_vProbeTemplate.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEBase_Module.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEBase_Module.env
index 76907855eb..76907855eb 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEBase_Module.env
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEBase_Module.env
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEBase_Module.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEBase_Module.yaml
index 5d0a5457ca..5d0a5457ca 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/FEBase_Module.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/FEBase_Module.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..c476085cb3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/MANIFEST.json
@@ -0,0 +1,89 @@
+{
+ "name": "",
+ "description": "",
+ "data": [
+ {
+ "file": "FEAdd_On_Module_vLBTemplate.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "FEAdd_On_Module_QRouterTemplate.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "FEBase_Module.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "FEBase_Module.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "FEAdd_On_Module_vLBAgentTemplate.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "FEAdd_On_Module_vProbeTemplate.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "qrouterdependencies.json",
+ "type": "OTHER"
+ },
+ {
+ "file": "vlbagentdependencies_with_vLB.json",
+ "type": "OTHER"
+ },
+ {
+ "file": "wait_for_resources.py",
+ "type": "OTHER"
+ },
+ {
+ "file": "vprobedependencies.json",
+ "type": "OTHER"
+ },
+ {
+ "file": "FEAdd_On_Module_vProbeCloudConfig",
+ "type": "OTHER"
+ },
+ {
+ "file": "call_home.py",
+ "type": "OTHER"
+ },
+ {
+ "file": "check_availability.py",
+ "type": "OTHER"
+ },
+ {
+ "file": "vlbdependencies.json",
+ "type": "OTHER"
+ },
+ {
+ "file": "FEAdd_On_Module_QRouterCloudConfig",
+ "type": "OTHER"
+ },
+ {
+ "file": "vlbagentdependencies_without_vLB.json",
+ "type": "OTHER"
+ },
+ {
+ "file": "FEAdd_On_Module_vLBAgentCloudConfig",
+ "type": "OTHER"
+ },
+ {
+ "file": "register_status.py",
+ "type": "OTHER"
+ },
+ {
+ "file": "FEAdd_On_Module_vLBCloudConfig",
+ "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/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/call_home.py b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/call_home.py
index 54f2a69c09..54f2a69c09 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/call_home.py
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/call_home.py
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/check_availability.py b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/check_availability.py
index e93b372f15..e93b372f15 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/check_availability.py
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/check_availability.py
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/qrouterdependencies.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/qrouterdependencies.json
index 0a570b612b..0a570b612b 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/qrouterdependencies.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/qrouterdependencies.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/register_status.py b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/register_status.py
index 98adafaf2f..98adafaf2f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/register_status.py
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/register_status.py
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbagentdependencies_with_vLB.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbagentdependencies_with_vLB.json
index 0304a18f0e..0304a18f0e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbagentdependencies_with_vLB.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbagentdependencies_with_vLB.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbagentdependencies_without_vLB.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbagentdependencies_without_vLB.json
index 1af6af96c5..1af6af96c5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbagentdependencies_without_vLB.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbagentdependencies_without_vLB.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbdependencies.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbdependencies.json
index b0a0da7b52..b0a0da7b52 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vlbdependencies.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vlbdependencies.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vprobedependencies.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vprobedependencies.json
index 78768cf545..78768cf545 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/vprobedependencies.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/vprobedependencies.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/wait_for_resources.py b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/wait_for_resources.py
index 5d960d659e..5d960d659e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/wait_for_resources.py
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/inputfiles/wait_for_resources.py
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_QRouterTemplateServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_QRouterTemplateServiceTemplate.yaml
new file mode 100644
index 0000000000..ce5bddcbb4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_QRouterTemplateServiceTemplate.yaml
@@ -0,0 +1,565 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: FEAdd_On_Module_QRouterTemplate
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.qrouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ version_number:
+ hidden: false
+ immutable: false
+ type: string
+ vf_module_name:
+ hidden: false
+ immutable: false
+ type: string
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ ntp_timezone:
+ hidden: false
+ immutable: false
+ type: string
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_names:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_index:
+ hidden: false
+ immutable: false
+ type: float
+ qrouter_volume_type_1:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_volume_type_2:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_node_count:
+ hidden: false
+ immutable: false
+ type: float
+ qrouter_volume_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_volume_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_volume_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_volume_type_0:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_volume_size_0:
+ hidden: false
+ immutable: false
+ type: float
+ qrouter_volume_size_1:
+ hidden: false
+ immutable: false
+ type: float
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_volume_size_2:
+ hidden: false
+ immutable: false
+ type: float
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.qrouter
+ properties:
+ flavor:
+ get_input: qrouter_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: qrouter_image_name
+ metadata:
+ machine_type: qrouter
+ vf_module_id:
+ get_input: vf_module_id
+ cluster_name:
+ get_input: qrouter_cluster_name
+ cdr_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_cdr_network_port.fixed_ip_0s
+ repo_ip_0:
+ get_input: rpmrepository_ip_0
+ mount_colon__slash_data: qrouter_volume_0
+ version_number:
+ get_input: version_number
+ machine_name:
+ get_input:
+ - qrouter_names
+ - get_input: qrouter_index
+ vf_module_name:
+ get_input: vf_module_name
+ ntp_timezone:
+ get_input: ntp_timezone
+ vnf_id:
+ get_input: vnf_id
+ oam_private_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_oam_private_net_network_port.fixed_ip_0s
+ mount_colon__slash_log: qrouter_volume_1
+ region:
+ get_input: region_name
+ mount_colon__slash_config: qrouter_volume_2
+ tenant:
+ get_input: tenant_name
+ config_drive: true
+ personality:
+ /root/RegisterStatus/register_status.py:
+ get_artifact:
+ - SELF
+ - register_status
+ /root/CheckAvailability/check_availability.py:
+ get_artifact:
+ - SELF
+ - check_availability
+ /tmp/wait_for_resources.py:
+ get_artifact:
+ - SELF
+ - wait_for_resources
+ /root/call_home.py:
+ get_artifact:
+ - SELF
+ - call_home
+ /root/dependencies.json:
+ get_artifact:
+ - SELF
+ - qrouterdependencies
+ user_data_format: RAW
+ name:
+ get_input:
+ - qrouter_names
+ - get_input: qrouter_index
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: qrouter_volume_0
+ relationship: qrouter_volume_0_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: qrouter_volume_1
+ relationship: qrouter_volume_1_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: qrouter_volume_2
+ relationship: qrouter_volume_2_att
+ artifacts:
+ call_home:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/call_home.py
+ check_availability:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/check_availability.py
+ qrouterdependencies:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/qrouterdependencies.json
+ wait_for_resources:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/wait_for_resources.py
+ register_status:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/register_status.py
+ qrouter_volume_1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: qrouter_volume_type_1
+ size: '(get_input : qrouter_volume_size_1) * 1024'
+ description:
+ get_input: qrouter_volume_name_1
+ qrouter_volume_0:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: qrouter_volume_type_0
+ size: '(get_input : qrouter_volume_size_0) * 1024'
+ description:
+ get_input: qrouter_volume_name_0
+ cdr_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ qrouter_volume_2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: qrouter_volume_type_2
+ size: '(get_input : qrouter_volume_size_2) * 1024'
+ description:
+ get_input: qrouter_volume_name_2
+ oam_private_net_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ relationship_templates:
+ qrouter_volume_0_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: qrouter_volume_0
+ instance_uuid: QRouter
+ qrouter_volume_2_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: qrouter_volume_2
+ instance_uuid: QRouter
+ qrouter_volume_1_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: qrouter_volume_1
+ instance_uuid: QRouter
+ groups:
+ FEAdd_On_Module_QRouterTemplate_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/FEAdd_On_Module_QRouterTemplate.yaml
+ members:
+ - QRouter
+ - qrouter_volume_1
+ - qrouter_volume_0
+ - cdr_network_port
+ - qrouter_volume_2
+ - oam_private_net_network_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.FEAdd_On_Module_QRouterTemplate
+ capabilities:
+ disk.usage_QRouter:
+ - QRouter
+ - disk.usage
+ network.outgoing.bytes_cdr_network_port:
+ - cdr_network_port
+ - network.outgoing.bytes
+ disk.write.bytes_QRouter:
+ - QRouter
+ - disk.write.bytes
+ attachment_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - attachment
+ feature_qrouter_volume_1:
+ - qrouter_volume_1
+ - feature
+ disk.device.write.bytes_QRouter:
+ - QRouter
+ - disk.device.write.bytes
+ feature_qrouter_volume_2:
+ - qrouter_volume_2
+ - feature
+ endpoint_QRouter:
+ - QRouter
+ - endpoint
+ feature_qrouter_volume_0:
+ - qrouter_volume_0
+ - feature
+ attachment_qrouter_volume_2:
+ - qrouter_volume_2
+ - attachment
+ disk.capacity_QRouter:
+ - QRouter
+ - disk.capacity
+ attachment_qrouter_volume_0:
+ - qrouter_volume_0
+ - attachment
+ disk.read.bytes.rate_QRouter:
+ - QRouter
+ - disk.read.bytes.rate
+ attachment_qrouter_volume_1:
+ - qrouter_volume_1
+ - attachment
+ attachment_cdr_network_port:
+ - cdr_network_port
+ - attachment
+ network.incoming.packets_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.packets
+ network.outgoing.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes.rate
+ instance_QRouter:
+ - QRouter
+ - instance
+ disk.device.latency_QRouter:
+ - QRouter
+ - disk.device.latency
+ disk.device.usage_QRouter:
+ - QRouter
+ - disk.device.usage
+ disk.ephemeral.size_QRouter:
+ - QRouter
+ - disk.ephemeral.size
+ disk.device.iops_QRouter:
+ - QRouter
+ - disk.device.iops
+ network.outpoing.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outpoing.packets
+ network.outpoing.packets_cdr_network_port:
+ - cdr_network_port
+ - network.outpoing.packets
+ disk.device.read.bytes_QRouter:
+ - QRouter
+ - disk.device.read.bytes
+ disk.iops_QRouter:
+ - QRouter
+ - disk.iops
+ feature_cdr_network_port:
+ - cdr_network_port
+ - feature
+ disk.device.read.requests.rate_QRouter:
+ - QRouter
+ - disk.device.read.requests.rate
+ disk.read.bytes_QRouter:
+ - QRouter
+ - disk.read.bytes
+ memory.resident_QRouter:
+ - QRouter
+ - memory.resident
+ host_QRouter:
+ - QRouter
+ - host
+ network.incoming.bytes_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.bytes
+ memory_QRouter:
+ - QRouter
+ - memory
+ disk.device.read.requests_QRouter:
+ - QRouter
+ - disk.device.read.requests
+ scalable_QRouter:
+ - QRouter
+ - scalable
+ os_QRouter:
+ - QRouter
+ - os
+ network.incoming.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes
+ disk.write.bytes.rate_QRouter:
+ - QRouter
+ - disk.write.bytes.rate
+ feature_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - feature
+ cpu_util_QRouter:
+ - QRouter
+ - cpu_util
+ network.incoming.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes.rate
+ disk.device.write.requests_QRouter:
+ - QRouter
+ - disk.device.write.requests
+ disk.device.read.bytes.rate_QRouter:
+ - QRouter
+ - disk.device.read.bytes.rate
+ network.incoming.bytes.rate_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.bytes.rate
+ disk.device.allocation_QRouter:
+ - QRouter
+ - disk.device.allocation
+ network.outgoing.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes
+ disk.device.capacity_QRouter:
+ - QRouter
+ - disk.device.capacity
+ feature_QRouter:
+ - QRouter
+ - feature
+ disk.read.requests_QRouter:
+ - QRouter
+ - disk.read.requests
+ disk.device.write.bytes.rate_QRouter:
+ - QRouter
+ - disk.device.write.bytes.rate
+ disk.write.requests_QRouter:
+ - QRouter
+ - disk.write.requests
+ disk.root.size_QRouter:
+ - QRouter
+ - disk.root.size
+ memory.usage_QRouter:
+ - QRouter
+ - memory.usage
+ network.outgoing.bytes.rate_cdr_network_port:
+ - cdr_network_port
+ - network.outgoing.bytes.rate
+ binding_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - binding
+ cpu_QRouter:
+ - QRouter
+ - cpu
+ vcpus_QRouter:
+ - QRouter
+ - vcpus
+ disk.allocation_QRouter:
+ - QRouter
+ - disk.allocation
+ network.incoming.packets.rate_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.packets.rate
+ network.incoming.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets
+ network.incoming.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets.rate
+ disk.device.write.requests.rate_QRouter:
+ - QRouter
+ - disk.device.write.requests.rate
+ cpu.delta_QRouter:
+ - QRouter
+ - cpu.delta
+ binding_QRouter:
+ - QRouter
+ - binding
+ binding_cdr_network_port:
+ - cdr_network_port
+ - binding
+ network.outgoing.packets.rate_cdr_network_port:
+ - cdr_network_port
+ - network.outgoing.packets.rate
+ disk.latency_QRouter:
+ - QRouter
+ - disk.latency
+ disk.write.requests.rate_QRouter:
+ - QRouter
+ - disk.write.requests.rate
+ network.outgoing.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.packets.rate
+ requirements:
+ local_storage_QRouter:
+ - QRouter
+ - local_storage
+ dependency_QRouter:
+ - QRouter
+ - dependency
+ dependency_qrouter_volume_1:
+ - qrouter_volume_1
+ - dependency
+ dependency_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - dependency
+ dependency_qrouter_volume_0:
+ - qrouter_volume_0
+ - dependency
+ dependency_cdr_network_port:
+ - cdr_network_port
+ - dependency
+ link_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - link
+ dependency_qrouter_volume_2:
+ - qrouter_volume_2
+ - dependency
+ link_cdr_network_port:
+ - cdr_network_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/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBAgentTemplateServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBAgentTemplateServiceTemplate.yaml
new file mode 100644
index 0000000000..d31b276241
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBAgentTemplateServiceTemplate.yaml
@@ -0,0 +1,690 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: FEAdd_On_Module_vLBAgentTemplate
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vLBAgent:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ packet_mirror_network:
+ hidden: false
+ immutable: false
+ type: string
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ vProbe_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ vlb_agent_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ vf_module_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_node_count:
+ hidden: false
+ immutable: false
+ type: float
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ ntp_timezone:
+ hidden: false
+ immutable: false
+ type: string
+ packet_internal_network:
+ hidden: false
+ immutable: false
+ type: string
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_version_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_type:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_node_count:
+ hidden: false
+ immutable: false
+ type: float
+ vLBAgent_volume_type_0:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_volume_type_1:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_volume_size_1:
+ hidden: false
+ immutable: false
+ type: float
+ vLBAgent_volume_type_2:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_names:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
+ vLBAgent_volume_size_2:
+ hidden: false
+ immutable: false
+ type: float
+ vLBAgent_volume_size_0:
+ hidden: false
+ immutable: false
+ type: float
+ vLBAgent_index:
+ hidden: false
+ immutable: false
+ type: float
+ vLBAgent_volume_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_volume_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ vLBAgent_volume_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ packet_mirror_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: packet_mirror_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vLBAgentInstance
+ relationship: tosca.relationships.network.BindsTo
+ vLBAgentInstance:
+ type: org.openecomp.resource.vfc.nodes.heat.vLBAgent
+ properties:
+ flavor:
+ get_input: vLBAgent_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: vlb_agent_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ packet_mirror_network_cidr:
+ get_attribute:
+ - packet_mirror_network_port
+ - subnets
+ - 0
+ - cidr
+ packet_internal_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_packet_internal_network_port.fixed_ip_0s
+ version_number:
+ get_input: vLBAgent_version_name
+ machine_name:
+ get_input:
+ - vLBAgent_names
+ - get_input: vLBAgent_index
+ vf_module_name:
+ get_input: vf_module_name
+ vLB_node_count:
+ get_input: vLB_node_count
+ ntp_timezone:
+ get_input: ntp_timezone
+ vnf_id:
+ get_input: vnf_id
+ mount_colon__slash_log: vLBAgent_volume_1
+ mount_colon__slash_config: vLBAgent_volume_2
+ oam_private_network_cidr:
+ get_attribute:
+ - oam_private_net_network_port
+ - subnets
+ - 0
+ - cidr
+ tenant:
+ get_input: tenant_name
+ machine_type: vLBAgent
+ cluster_name:
+ get_input: vLBAgent_cluster_name
+ repo_ip_0:
+ get_input: rpmrepository_ip_0
+ mount_colon__slash_data: vLBAgent_volume_0
+ vLBAgentInstance:
+ get_input: vLBAgent_index
+ vLBAgent_id:
+ - UNSUPPORTED_RESOURCE_vLBAgent_id
+ vLBAgent_version_name:
+ get_input: vLBAgent_version_name
+ packet_internal_network_cidr:
+ get_attribute:
+ - packet_internal_network_port
+ - subnets
+ - 0
+ - cidr
+ vLBAgent_type:
+ get_input: vLBAgent_type
+ DPDK: DPDK_IP
+ oam_private_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_oam_private_net_network_port.fixed_ip_0s
+ packet_mirror_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_packet_mirror_network_port.fixed_ip_0s
+ vLBAgent_name:
+ get_input:
+ - vLBAgent_names
+ - get_input: vLBAgent_index
+ region:
+ get_input: region_name
+ manager_oam_direct_ip_0:
+ get_input: manager_oam_direct_ip_0
+ config_drive: true
+ personality:
+ /root/RegisterStatus/register_status.py:
+ get_artifact:
+ - SELF
+ - register_status
+ /root/dependencies_with_vLB.json:
+ get_artifact:
+ - SELF
+ - vlbagentdependencies_with_vLB
+ /root/CheckAvailability/check_availability.py:
+ get_artifact:
+ - SELF
+ - check_availability
+ /root/dependencies_without_vLB.json:
+ get_artifact:
+ - SELF
+ - vlbagentdependencies_without_vLB
+ /tmp/wait_for_resources.py:
+ get_artifact:
+ - SELF
+ - wait_for_resources
+ /root/call_home.py:
+ get_artifact:
+ - SELF
+ - call_home
+ user_data_format: RAW
+ name:
+ get_input:
+ - vLBAgent_names
+ - get_input: vLBAgent_index
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vLBAgent_volume_0
+ relationship: vLBAgent_volume_0_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vLBAgent_volume_1
+ relationship: vLBAgent_volume_1_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vLBAgent_volume_2
+ relationship: vLBAgent_volume_2_att
+ artifacts:
+ call_home:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/call_home.py
+ check_availability:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/check_availability.py
+ vlbagentdependencies_without_vLB:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/vlbagentdependencies_without_vLB.json
+ vlbagentdependencies_with_vLB:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/vlbagentdependencies_with_vLB.json
+ wait_for_resources:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/wait_for_resources.py
+ register_status:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/register_status.py
+ vLBAgent_volume_0:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vLBAgent_volume_type_0
+ size: '(get_input : vLBAgent_volume_size_0) * 1024'
+ description:
+ get_input: vLBAgent_volume_name_0
+ oam_private_net_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vLBAgentInstance
+ relationship: tosca.relationships.network.BindsTo
+ vLBAgent_volume_1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vLBAgent_volume_type_1
+ size: '(get_input : vLBAgent_volume_size_1) * 1024'
+ description:
+ get_input: vLBAgent_volume_name_1
+ vLBAgent_volume_2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vLBAgent_volume_type_2
+ size: '(get_input : vLBAgent_volume_size_2) * 1024'
+ description:
+ get_input: vLBAgent_volume_name_2
+ packet_internal_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: packet_internal_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vLBAgentInstance
+ relationship: tosca.relationships.network.BindsTo
+ relationship_templates:
+ vLBAgent_volume_0_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vLBAgent_volume_0
+ instance_uuid: vLBAgentInstance
+ vLBAgent_volume_2_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vLBAgent_volume_2
+ instance_uuid: vLBAgentInstance
+ vLBAgent_volume_1_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vLBAgent_volume_1
+ instance_uuid: vLBAgentInstance
+ groups:
+ FEAdd_On_Module_vLBAgentTemplate_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/FEAdd_On_Module_vLBAgentTemplate.yaml
+ members:
+ - packet_mirror_network_port
+ - vLBAgentInstance
+ - vLBAgent_volume_0
+ - oam_private_net_network_port
+ - vLBAgent_volume_1
+ - vLBAgent_volume_2
+ - packet_internal_network_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.FEAdd_On_Module_vLBAgentTemplate
+ capabilities:
+ disk.device.read.requests_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.read.requests
+ attachment_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - attachment
+ network.incoming.packets_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.packets
+ disk.device.usage_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.usage
+ network.outgoing.bytes_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outgoing.bytes
+ disk.read.requests_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.read.requests
+ network.outgoing.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes.rate
+ cpu_util_vLBAgentInstance:
+ - vLBAgentInstance
+ - cpu_util
+ network.outpoing.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outpoing.packets
+ feature_vLBAgent_volume_1:
+ - vLBAgent_volume_1
+ - feature
+ feature_vLBAgent_volume_0:
+ - vLBAgent_volume_0
+ - feature
+ feature_vLBAgent_volume_2:
+ - vLBAgent_volume_2
+ - feature
+ network.incoming.bytes.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outgoing.bytes.rate
+ disk.usage_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.usage
+ disk.device.capacity_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.capacity
+ disk.device.iops_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.iops
+ binding_packet_internal_network_port:
+ - packet_internal_network_port
+ - binding
+ disk.device.write.bytes_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.write.bytes
+ network.incoming.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes
+ feature_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - feature
+ network.outpoing.packets_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outpoing.packets
+ network.incoming.bytes_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.bytes
+ network.incoming.packets_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.packets
+ endpoint_vLBAgentInstance:
+ - vLBAgentInstance
+ - endpoint
+ binding_vLBAgentInstance:
+ - vLBAgentInstance
+ - binding
+ disk.allocation_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.allocation
+ memory.resident_vLBAgentInstance:
+ - vLBAgentInstance
+ - memory.resident
+ attachment_packet_internal_network_port:
+ - packet_internal_network_port
+ - attachment
+ network.incoming.packets.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outgoing.packets.rate
+ disk.read.bytes_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.read.bytes
+ memory.usage_vLBAgentInstance:
+ - vLBAgentInstance
+ - memory.usage
+ network.incoming.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes.rate
+ scalable_vLBAgentInstance:
+ - vLBAgentInstance
+ - scalable
+ disk.latency_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.latency
+ disk.device.allocation_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.allocation
+ cpu_vLBAgentInstance:
+ - vLBAgentInstance
+ - cpu
+ disk.device.write.requests_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.write.requests
+ disk.write.bytes_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.write.bytes
+ network.outgoing.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes
+ memory_vLBAgentInstance:
+ - vLBAgentInstance
+ - memory
+ disk.device.write.bytes.rate_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.write.bytes.rate
+ network.outgoing.packets.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.packets.rate
+ disk.iops_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.iops
+ instance_vLBAgentInstance:
+ - vLBAgentInstance
+ - instance
+ network.outgoing.bytes_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.bytes
+ network.incoming.bytes_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.bytes
+ disk.device.read.requests.rate_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.read.requests.rate
+ os_vLBAgentInstance:
+ - vLBAgentInstance
+ - os
+ network.incoming.packets.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.packets.rate
+ attachment_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - attachment
+ disk.write.requests.rate_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.write.requests.rate
+ attachment_vLBAgent_volume_0:
+ - vLBAgent_volume_0
+ - attachment
+ binding_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - binding
+ disk.device.read.bytes_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.read.bytes
+ attachment_vLBAgent_volume_2:
+ - vLBAgent_volume_2
+ - attachment
+ attachment_vLBAgent_volume_1:
+ - vLBAgent_volume_1
+ - attachment
+ host_vLBAgentInstance:
+ - vLBAgentInstance
+ - host
+ disk.device.write.requests.rate_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.write.requests.rate
+ feature_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - feature
+ binding_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - binding
+ network.incoming.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets
+ network.incoming.bytes.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.bytes.rate
+ network.incoming.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets.rate
+ disk.device.read.bytes.rate_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.read.bytes.rate
+ cpu.delta_vLBAgentInstance:
+ - vLBAgentInstance
+ - cpu.delta
+ disk.capacity_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.capacity
+ disk.root.size_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.root.size
+ network.outgoing.bytes.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.bytes.rate
+ disk.ephemeral.size_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.ephemeral.size
+ feature_vLBAgentInstance:
+ - vLBAgentInstance
+ - feature
+ disk.device.latency_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.device.latency
+ disk.write.requests_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.write.requests
+ network.outpoing.packets_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outpoing.packets
+ vcpus_vLBAgentInstance:
+ - vLBAgentInstance
+ - vcpus
+ disk.read.bytes.rate_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.read.bytes.rate
+ feature_packet_internal_network_port:
+ - packet_internal_network_port
+ - feature
+ disk.write.bytes.rate_vLBAgentInstance:
+ - vLBAgentInstance
+ - disk.write.bytes.rate
+ network.outgoing.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.packets.rate
+ requirements:
+ dependency_vLBAgentInstance:
+ - vLBAgentInstance
+ - dependency
+ dependency_packet_internal_network_port:
+ - packet_internal_network_port
+ - dependency
+ link_packet_internal_network_port:
+ - packet_internal_network_port
+ - link
+ dependency_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - dependency
+ dependency_vLBAgent_volume_1:
+ - vLBAgent_volume_1
+ - dependency
+ dependency_vLBAgent_volume_2:
+ - vLBAgent_volume_2
+ - dependency
+ dependency_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - dependency
+ link_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - link
+ dependency_vLBAgent_volume_0:
+ - vLBAgent_volume_0
+ - dependency
+ link_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - link
+ local_storage_vLBAgentInstance:
+ - vLBAgentInstance
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBTemplateServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBTemplateServiceTemplate.yaml
new file mode 100644
index 0000000000..e6c6845c42
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vLBTemplateServiceTemplate.yaml
@@ -0,0 +1,667 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: FEAdd_On_Module_vLBTemplate
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vLB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ packet_mirror_network:
+ hidden: false
+ immutable: false
+ type: string
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ vProbe_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_version_name:
+ hidden: false
+ immutable: false
+ type: string
+ vf_module_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_node_count:
+ hidden: false
+ immutable: false
+ type: float
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ ntp_timezone:
+ hidden: false
+ immutable: false
+ type: string
+ packet_internal_network:
+ hidden: false
+ immutable: false
+ type: string
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_type:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_names:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
+ vLB_index:
+ hidden: false
+ immutable: false
+ type: float
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_type_1:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_type_2:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_type_0:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_size_1:
+ hidden: false
+ immutable: false
+ type: float
+ vlb_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_size_0:
+ hidden: false
+ immutable: false
+ type: float
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_volume_size_2:
+ hidden: false
+ immutable: false
+ type: float
+ node_templates:
+ packet_mirror_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: packet_mirror_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vLBInstance
+ relationship: tosca.relationships.network.BindsTo
+ vLB_volume_1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vLB_volume_type_1
+ size: '(get_input : vLB_volume_size_1) * 1024'
+ vLB_volume_0:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vLB_volume_type_0
+ size: '(get_input : vLB_volume_size_0) * 1024'
+ vLB_volume_2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vLB_volume_type_2
+ size: '(get_input : vLB_volume_size_2) * 1024'
+ oam_private_net_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vLBInstance
+ relationship: tosca.relationships.network.BindsTo
+ packet_internal_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: packet_internal_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: vLBInstance
+ relationship: tosca.relationships.network.BindsTo
+ vLBInstance:
+ type: org.openecomp.resource.vfc.nodes.heat.vLB
+ properties:
+ flavor:
+ get_input: vLB_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: vlb_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ packet_mirror_network_cidr:
+ get_attribute:
+ - packet_mirror_network_port
+ - subnets
+ - 0
+ - cidr
+ packet_internal_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_packet_internal_network_port.fixed_ip_0s
+ version_number:
+ get_input: vLB_version_name
+ machine_name:
+ get_input:
+ - vLB_names
+ - get_input: vLB_index
+ vf_module_name:
+ get_input: vf_module_name
+ ntp_timezone:
+ get_input: ntp_timezone
+ vnf_id:
+ get_input: vnf_id
+ mount_colon__slash_log: vLB_volume_1
+ mount_colon__slash_config: vLB_volume_2
+ oam_private_network_cidr:
+ get_attribute:
+ - oam_private_net_network_port
+ - subnets
+ - 0
+ - cidr
+ tenant:
+ get_input: tenant_name
+ machine_type: vLB
+ cluster_name:
+ get_input: vLB_cluster_name
+ repo_ip_0:
+ get_input: rpmrepository_ip_0
+ mount_colon__slash_data: vLB_volume_0
+ vLBAgentInstance:
+ get_input: vLB_index
+ vLBAgent_id:
+ - UNSUPPORTED_RESOURCE_vLB_id
+ vLBAgent_version_name:
+ get_input: vLB_version_name
+ packet_internal_network_cidr:
+ get_attribute:
+ - packet_internal_network_port
+ - subnets
+ - 0
+ - cidr
+ vLBAgent_type:
+ get_input: vLB_type
+ DPDK: DPDK_IP
+ oam_private_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_oam_private_net_network_port.fixed_ip_0s
+ packet_mirror_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_packet_mirror_network_port.fixed_ip_0s
+ vLBAgent_name:
+ get_input:
+ - vLB_names
+ - get_input: vLB_index
+ region:
+ get_input: region_name
+ manager_oam_direct_ip_0:
+ get_input: manager_oam_direct_ip_0
+ config_drive: true
+ personality:
+ /root/RegisterStatus/register_status.py:
+ get_artifact:
+ - SELF
+ - register_status
+ /root/CheckAvailability/check_availability.py:
+ get_artifact:
+ - SELF
+ - check_availability
+ /tmp/wait_for_resources.py:
+ get_artifact:
+ - SELF
+ - wait_for_resources
+ /root/call_home.py:
+ get_artifact:
+ - SELF
+ - call_home
+ /root/dependencies.json:
+ get_artifact:
+ - SELF
+ - vlbdependencies
+ user_data_format: RAW
+ name:
+ get_input:
+ - vLB_names
+ - get_input: vLB_index
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vLB_volume_0
+ relationship: vLB_volume_0_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vLB_volume_1
+ relationship: vLB_volume_1_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vLB_volume_2
+ relationship: vLB_volume_2_att
+ artifacts:
+ call_home:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/call_home.py
+ check_availability:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/check_availability.py
+ vlbdependencies:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/vlbdependencies.json
+ wait_for_resources:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/wait_for_resources.py
+ register_status:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/register_status.py
+ relationship_templates:
+ vLB_volume_2_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vLB_volume_2
+ instance_uuid: vLBInstance
+ vLB_volume_1_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vLB_volume_1
+ instance_uuid: vLBInstance
+ vLB_volume_0_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vLB_volume_0
+ instance_uuid: vLBInstance
+ groups:
+ FEAdd_On_Module_vLBTemplate_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/FEAdd_On_Module_vLBTemplate.yaml
+ members:
+ - packet_mirror_network_port
+ - vLB_volume_1
+ - vLB_volume_0
+ - vLB_volume_2
+ - oam_private_net_network_port
+ - packet_internal_network_port
+ - vLBInstance
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.FEAdd_On_Module_vLBTemplate
+ capabilities:
+ attachment_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - attachment
+ network.incoming.packets_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.packets
+ disk.iops_vLBInstance:
+ - vLBInstance
+ - disk.iops
+ feature_vLBInstance:
+ - vLBInstance
+ - feature
+ vcpus_vLBInstance:
+ - vLBInstance
+ - vcpus
+ os_vLBInstance:
+ - vLBInstance
+ - os
+ disk.device.write.bytes.rate_vLBInstance:
+ - vLBInstance
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes.rate
+ disk.write.bytes.rate_vLBInstance:
+ - vLBInstance
+ - disk.write.bytes.rate
+ network.outpoing.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outpoing.packets
+ memory.usage_vLBInstance:
+ - vLBInstance
+ - memory.usage
+ host_vLBInstance:
+ - vLBInstance
+ - host
+ network.incoming.bytes.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outgoing.bytes.rate
+ disk.device.capacity_vLBInstance:
+ - vLBInstance
+ - disk.device.capacity
+ binding_packet_internal_network_port:
+ - packet_internal_network_port
+ - binding
+ instance_vLBInstance:
+ - vLBInstance
+ - instance
+ network.incoming.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes
+ binding_vLBInstance:
+ - vLBInstance
+ - binding
+ feature_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - feature
+ disk.device.latency_vLBInstance:
+ - vLBInstance
+ - disk.device.latency
+ network.outpoing.packets_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outpoing.packets
+ network.incoming.bytes_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.bytes
+ network.incoming.packets_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_vLBInstance:
+ - vLBInstance
+ - disk.device.read.requests.rate
+ attachment_packet_internal_network_port:
+ - packet_internal_network_port
+ - attachment
+ network.incoming.packets.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes.rate
+ memory_vLBInstance:
+ - vLBInstance
+ - memory
+ cpu.delta_vLBInstance:
+ - vLBInstance
+ - cpu.delta
+ disk.write.bytes_vLBInstance:
+ - vLBInstance
+ - disk.write.bytes
+ network.outgoing.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes
+ disk.write.requests_vLBInstance:
+ - vLBInstance
+ - disk.write.requests
+ attachment_vLB_volume_2:
+ - vLB_volume_2
+ - attachment
+ disk.ephemeral.size_vLBInstance:
+ - vLBInstance
+ - disk.ephemeral.size
+ disk.device.iops_vLBInstance:
+ - vLBInstance
+ - disk.device.iops
+ network.outgoing.packets.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.packets.rate
+ disk.capacity_vLBInstance:
+ - vLBInstance
+ - disk.capacity
+ disk.device.read.bytes_vLBInstance:
+ - vLBInstance
+ - disk.device.read.bytes
+ attachment_vLB_volume_0:
+ - vLB_volume_0
+ - attachment
+ attachment_vLB_volume_1:
+ - vLB_volume_1
+ - attachment
+ disk.root.size_vLBInstance:
+ - vLBInstance
+ - disk.root.size
+ disk.allocation_vLBInstance:
+ - vLBInstance
+ - disk.allocation
+ memory.resident_vLBInstance:
+ - vLBInstance
+ - memory.resident
+ network.outgoing.bytes_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.bytes
+ disk.write.requests.rate_vLBInstance:
+ - vLBInstance
+ - disk.write.requests.rate
+ disk.device.write.requests_vLBInstance:
+ - vLBInstance
+ - disk.device.write.requests
+ network.incoming.bytes_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.bytes
+ network.incoming.packets.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.packets.rate
+ attachment_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - attachment
+ disk.read.requests_vLBInstance:
+ - vLBInstance
+ - disk.read.requests
+ binding_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - binding
+ disk.device.read.requests_vLBInstance:
+ - vLBInstance
+ - disk.device.read.requests
+ disk.latency_vLBInstance:
+ - vLBInstance
+ - disk.latency
+ feature_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - feature
+ binding_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - binding
+ network.incoming.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets
+ network.incoming.bytes.rate_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - network.incoming.bytes.rate
+ network.incoming.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets.rate
+ disk.device.write.requests.rate_vLBInstance:
+ - vLBInstance
+ - disk.device.write.requests.rate
+ disk.read.bytes_vLBInstance:
+ - vLBInstance
+ - disk.read.bytes
+ scalable_vLBInstance:
+ - vLBInstance
+ - scalable
+ disk.device.read.bytes.rate_vLBInstance:
+ - vLBInstance
+ - disk.device.read.bytes.rate
+ disk.read.bytes.rate_vLBInstance:
+ - vLBInstance
+ - disk.read.bytes.rate
+ disk.device.write.bytes_vLBInstance:
+ - vLBInstance
+ - disk.device.write.bytes
+ feature_vLB_volume_1:
+ - vLB_volume_1
+ - feature
+ network.outgoing.bytes.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.bytes.rate
+ cpu_vLBInstance:
+ - vLBInstance
+ - cpu
+ feature_vLB_volume_2:
+ - vLB_volume_2
+ - feature
+ endpoint_vLBInstance:
+ - vLBInstance
+ - endpoint
+ network.outpoing.packets_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outpoing.packets
+ disk.device.allocation_vLBInstance:
+ - vLBInstance
+ - disk.device.allocation
+ disk.device.usage_vLBInstance:
+ - vLBInstance
+ - disk.device.usage
+ feature_vLB_volume_0:
+ - vLB_volume_0
+ - feature
+ disk.usage_vLBInstance:
+ - vLBInstance
+ - disk.usage
+ feature_packet_internal_network_port:
+ - packet_internal_network_port
+ - feature
+ cpu_util_vLBInstance:
+ - vLBInstance
+ - cpu_util
+ network.outgoing.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.packets.rate
+ requirements:
+ dependency_vLB_volume_0:
+ - vLB_volume_0
+ - dependency
+ dependency_vLB_volume_1:
+ - vLB_volume_1
+ - dependency
+ local_storage_vLBInstance:
+ - vLBInstance
+ - local_storage
+ dependency_packet_internal_network_port:
+ - packet_internal_network_port
+ - dependency
+ link_packet_internal_network_port:
+ - packet_internal_network_port
+ - link
+ dependency_vLB_volume_2:
+ - vLB_volume_2
+ - dependency
+ dependency_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - dependency
+ dependency_packet_mirror_network_port:
+ - packet_mirror_network_port
+ - dependency
+ link_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - link
+ dependency_vLBInstance:
+ - vLBInstance
+ - dependency
+ link_packet_mirror_network_port:
+ - packet_mirror_network_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/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vProbeTemplateServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vProbeTemplateServiceTemplate.yaml
new file mode 100644
index 0000000000..9808460108
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/FEAdd_On_Module_vProbeTemplateServiceTemplate.yaml
@@ -0,0 +1,694 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: FEAdd_On_Module_vProbeTemplate
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vprobe:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_volume_type_0:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_volume_type_1:
+ hidden: false
+ immutable: false
+ type: string
+ qrouter_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_volume_type_2:
+ hidden: false
+ immutable: false
+ type: string
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ vProbe_cluster_name:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_type:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ vf_module_name:
+ hidden: false
+ immutable: false
+ type: string
+ vLB_node_count:
+ hidden: false
+ immutable: false
+ type: float
+ domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ ntp_timezone:
+ hidden: false
+ immutable: false
+ type: string
+ packet_internal_network:
+ hidden: false
+ immutable: false
+ type: string
+ vProbe_version_name:
+ hidden: false
+ immutable: false
+ type: string
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ region_name:
+ hidden: false
+ immutable: false
+ type: string
+ qtrace_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_AppDependenciesMachineType:
+ hidden: false
+ immutable: false
+ type: string
+ manager_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ win_domain_name:
+ hidden: false
+ immutable: false
+ type: string
+ tenant_name:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_volume_size_2:
+ hidden: false
+ immutable: false
+ type: float
+ vprobe_volume_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_volume_size_0:
+ hidden: false
+ immutable: false
+ type: float
+ vprobe_volume_name_1:
+ hidden: false
+ immutable: false
+ type: string
+ vprobe_volume_size_1:
+ hidden: false
+ immutable: false
+ type: float
+ vprobe_volume_name_2:
+ hidden: false
+ immutable: false
+ type: string
+ security_group:
+ hidden: false
+ immutable: false
+ type: string
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ vProbe_node_count:
+ hidden: false
+ immutable: false
+ type: float
+ vprobe_names:
+ hidden: false
+ immutable: false
+ type: list
+ entry_schema:
+ type: string
+ vprobe_index:
+ hidden: false
+ immutable: false
+ type: float
+ manager_oam_direct_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ rpmrepository_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ ProbeInstance:
+ type: org.openecomp.resource.vfc.nodes.heat.vprobe
+ properties:
+ flavor:
+ get_input: vprobe_flavor_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: vprobe_image_name
+ metadata:
+ ProbeInstance:
+ get_input: vprobe_index
+ vf_module_id:
+ get_input: vf_module_id
+ probe_id: P_ID
+ cdr_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_cdr_network_port.fixed_ip_0s
+ packet_internal_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_packet_internal_network_port.fixed_ip_0s
+ version_number:
+ get_input: vProbe_version_name
+ vprobe_type:
+ get_input: vprobe_type
+ machine_name:
+ get_input:
+ - vprobe_names
+ - get_input: vprobe_index
+ vf_module_name:
+ get_input: vf_module_name
+ vLB_node_count:
+ get_input: vLB_node_count
+ ntp_timezone:
+ get_input: ntp_timezone
+ vProbe_version_name:
+ get_input: vProbe_version_name
+ vnf_id:
+ get_input: vnf_id
+ mount_colon__slash_log: vprobe_volume_1
+ probe_name:
+ get_input:
+ - vprobe_names
+ - get_input: vprobe_index
+ mount_colon__slash_config: vprobe_volume_2
+ oam_private_network_cidr:
+ get_attribute:
+ - oam_private_net_network_port
+ - subnets
+ - 0
+ - cidr
+ tenant:
+ get_input: tenant_name
+ machine_type: vProbe
+ cluster_name:
+ get_input: vProbe_cluster_name
+ cdr_network_cidr:
+ get_attribute:
+ - cdr_network_port
+ - subnets
+ - 0
+ - cidr
+ repo_ip_0:
+ get_input: rpmrepository_ip_0
+ mount_colon__slash_data: vprobe_volume_0
+ AppDependencies:
+ get_input: vprobe_AppDependenciesMachineType
+ packet_internal_network_cidr:
+ get_attribute:
+ - packet_internal_network_port
+ - subnets
+ - 0
+ - cidr
+ vProbe_node_count:
+ get_input: vProbe_node_count
+ DPDK: DPDK_IP
+ oam_private_network_ip_0:
+ - UNSUPPORTED_ATTRIBUTE_oam_private_net_network_port.fixed_ip_0s
+ region:
+ get_input: region_name
+ manager_oam_direct_ip_0:
+ get_input: manager_oam_direct_ip_0
+ config_drive: true
+ personality:
+ /root/RegisterStatus/register_status.py:
+ get_artifact:
+ - SELF
+ - register_status
+ /root/CheckAvailability/check_availability.py:
+ get_artifact:
+ - SELF
+ - check_availability
+ /tmp/wait_for_resources.py:
+ get_artifact:
+ - SELF
+ - wait_for_resources
+ /root/call_home.py:
+ get_artifact:
+ - SELF
+ - call_home
+ /root/dependencies.json:
+ get_artifact:
+ - SELF
+ - vprobedependencies
+ user_data_format: RAW
+ name:
+ get_input:
+ - vprobe_names
+ - get_input: vprobe_index
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vprobe_volume_0
+ relationship: vprobe_volume_0_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vprobe_volume_1
+ relationship: vprobe_volume_1_att
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: vprobe_volume_2
+ relationship: vprobe_volume_2_att
+ artifacts:
+ call_home:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/call_home.py
+ check_availability:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/check_availability.py
+ vprobedependencies:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/vprobedependencies.json
+ wait_for_resources:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/wait_for_resources.py
+ register_status:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/register_status.py
+ vprobe_volume_2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vprobe_volume_type_2
+ size: '(get_input : vprobe_volume_size_2) * 1024'
+ description:
+ get_input: vprobe_volume_name_2
+ vprobe_volume_1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vprobe_volume_type_1
+ size: '(get_input : vprobe_volume_size_1) * 1024'
+ description:
+ get_input: vprobe_volume_name_1
+ vprobe_volume_0:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: vprobe_volume_type_0
+ size: '(get_input : vprobe_volume_size_0) * 1024'
+ description:
+ get_input: vprobe_volume_name_0
+ cdr_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ProbeInstance
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam_private
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ProbeInstance
+ relationship: tosca.relationships.network.BindsTo
+ packet_internal_network_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
+ security_groups:
+ - get_input: security_group
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: packet_internal_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: ProbeInstance
+ relationship: tosca.relationships.network.BindsTo
+ relationship_templates:
+ vprobe_volume_0_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vprobe_volume_0
+ instance_uuid: ProbeInstance
+ vprobe_volume_1_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vprobe_volume_1
+ instance_uuid: ProbeInstance
+ vprobe_volume_2_att:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: vprobe_volume_2
+ instance_uuid: ProbeInstance
+ groups:
+ FEAdd_On_Module_vProbeTemplate_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/FEAdd_On_Module_vProbeTemplate.yaml
+ members:
+ - ProbeInstance
+ - vprobe_volume_2
+ - vprobe_volume_1
+ - vprobe_volume_0
+ - cdr_network_port
+ - oam_private_net_network_port
+ - packet_internal_network_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.FEAdd_On_Module_vProbeTemplate
+ capabilities:
+ disk.device.write.bytes.rate_ProbeInstance:
+ - ProbeInstance
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes_cdr_network_port:
+ - cdr_network_port
+ - network.outgoing.bytes
+ disk.device.write.requests_ProbeInstance:
+ - ProbeInstance
+ - disk.device.write.requests
+ attachment_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - attachment
+ disk.iops_ProbeInstance:
+ - ProbeInstance
+ - disk.iops
+ network.incoming.packets_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.packets
+ attachment_cdr_network_port:
+ - cdr_network_port
+ - attachment
+ network.incoming.packets_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.packets
+ feature_ProbeInstance:
+ - ProbeInstance
+ - feature
+ network.outgoing.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes.rate
+ network.outpoing.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outpoing.packets
+ network.outpoing.packets_cdr_network_port:
+ - cdr_network_port
+ - network.outpoing.packets
+ network.incoming.bytes.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.bytes.rate
+ disk.device.latency_ProbeInstance:
+ - ProbeInstance
+ - disk.device.latency
+ feature_cdr_network_port:
+ - cdr_network_port
+ - feature
+ disk.write.bytes.rate_ProbeInstance:
+ - ProbeInstance
+ - disk.write.bytes.rate
+ network.incoming.bytes_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.bytes
+ host_ProbeInstance:
+ - ProbeInstance
+ - host
+ binding_packet_internal_network_port:
+ - packet_internal_network_port
+ - binding
+ network.incoming.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes
+ memory_ProbeInstance:
+ - ProbeInstance
+ - memory
+ feature_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - feature
+ attachment_packet_internal_network_port:
+ - packet_internal_network_port
+ - attachment
+ disk.device.read.requests_ProbeInstance:
+ - ProbeInstance
+ - disk.device.read.requests
+ network.incoming.bytes.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.bytes.rate
+ memory.resident_ProbeInstance:
+ - ProbeInstance
+ - memory.resident
+ disk.device.allocation_ProbeInstance:
+ - ProbeInstance
+ - disk.device.allocation
+ disk.device.write.requests.rate_ProbeInstance:
+ - ProbeInstance
+ - disk.device.write.requests.rate
+ cpu_ProbeInstance:
+ - ProbeInstance
+ - cpu
+ disk.read.bytes_ProbeInstance:
+ - ProbeInstance
+ - disk.read.bytes
+ scalable_ProbeInstance:
+ - ProbeInstance
+ - scalable
+ network.incoming.bytes.rate_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.bytes.rate
+ disk.write.bytes_ProbeInstance:
+ - ProbeInstance
+ - disk.write.bytes
+ network.outgoing.bytes_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.bytes
+ disk.device.capacity_ProbeInstance:
+ - ProbeInstance
+ - disk.device.capacity
+ endpoint_ProbeInstance:
+ - ProbeInstance
+ - endpoint
+ network.outgoing.packets.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.packets.rate
+ disk.ephemeral.size_ProbeInstance:
+ - ProbeInstance
+ - disk.ephemeral.size
+ disk.read.bytes.rate_ProbeInstance:
+ - ProbeInstance
+ - disk.read.bytes.rate
+ disk.latency_ProbeInstance:
+ - ProbeInstance
+ - disk.latency
+ os_ProbeInstance:
+ - ProbeInstance
+ - os
+ network.outgoing.bytes_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.bytes
+ network.incoming.bytes_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.bytes
+ cpu_util_ProbeInstance:
+ - ProbeInstance
+ - cpu_util
+ instance_ProbeInstance:
+ - ProbeInstance
+ - instance
+ disk.device.read.bytes_ProbeInstance:
+ - ProbeInstance
+ - disk.device.read.bytes
+ disk.device.write.bytes_ProbeInstance:
+ - ProbeInstance
+ - disk.device.write.bytes
+ disk.device.usage_ProbeInstance:
+ - ProbeInstance
+ - disk.device.usage
+ vcpus_ProbeInstance:
+ - ProbeInstance
+ - vcpus
+ attachment_vprobe_volume_2:
+ - vprobe_volume_2
+ - attachment
+ network.incoming.packets.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.incoming.packets.rate
+ attachment_vprobe_volume_1:
+ - vprobe_volume_1
+ - attachment
+ attachment_vprobe_volume_0:
+ - vprobe_volume_0
+ - attachment
+ network.outgoing.bytes.rate_cdr_network_port:
+ - cdr_network_port
+ - network.outgoing.bytes.rate
+ binding_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - binding
+ binding_ProbeInstance:
+ - ProbeInstance
+ - binding
+ disk.read.requests_ProbeInstance:
+ - ProbeInstance
+ - disk.read.requests
+ disk.capacity_ProbeInstance:
+ - ProbeInstance
+ - disk.capacity
+ disk.write.requests.rate_ProbeInstance:
+ - ProbeInstance
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cdr_network_port:
+ - cdr_network_port
+ - network.incoming.packets.rate
+ feature_vprobe_volume_1:
+ - vprobe_volume_1
+ - feature
+ feature_vprobe_volume_2:
+ - vprobe_volume_2
+ - feature
+ network.incoming.packets_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets
+ feature_vprobe_volume_0:
+ - vprobe_volume_0
+ - feature
+ network.incoming.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.incoming.packets.rate
+ disk.device.read.requests.rate_ProbeInstance:
+ - ProbeInstance
+ - disk.device.read.requests.rate
+ disk.write.requests_ProbeInstance:
+ - ProbeInstance
+ - disk.write.requests
+ disk.root.size_ProbeInstance:
+ - ProbeInstance
+ - disk.root.size
+ disk.allocation_ProbeInstance:
+ - ProbeInstance
+ - disk.allocation
+ memory.usage_ProbeInstance:
+ - ProbeInstance
+ - memory.usage
+ disk.usage_ProbeInstance:
+ - ProbeInstance
+ - disk.usage
+ network.outgoing.bytes.rate_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outgoing.bytes.rate
+ binding_cdr_network_port:
+ - cdr_network_port
+ - binding
+ disk.device.iops_ProbeInstance:
+ - ProbeInstance
+ - disk.device.iops
+ cpu.delta_ProbeInstance:
+ - ProbeInstance
+ - cpu.delta
+ network.outgoing.packets.rate_cdr_network_port:
+ - cdr_network_port
+ - network.outgoing.packets.rate
+ network.outpoing.packets_packet_internal_network_port:
+ - packet_internal_network_port
+ - network.outpoing.packets
+ feature_packet_internal_network_port:
+ - packet_internal_network_port
+ - feature
+ disk.device.read.bytes.rate_ProbeInstance:
+ - ProbeInstance
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - network.outgoing.packets.rate
+ requirements:
+ dependency_packet_internal_network_port:
+ - packet_internal_network_port
+ - dependency
+ link_packet_internal_network_port:
+ - packet_internal_network_port
+ - link
+ dependency_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - dependency
+ dependency_cdr_network_port:
+ - cdr_network_port
+ - dependency
+ link_oam_private_net_network_port:
+ - oam_private_net_network_port
+ - link
+ dependency_vprobe_volume_1:
+ - vprobe_volume_1
+ - dependency
+ dependency_ProbeInstance:
+ - ProbeInstance
+ - dependency
+ dependency_vprobe_volume_0:
+ - vprobe_volume_0
+ - dependency
+ link_cdr_network_port:
+ - cdr_network_port
+ - link
+ local_storage_ProbeInstance:
+ - ProbeInstance
+ - local_storage
+ dependency_vprobe_volume_2:
+ - vprobe_volume_2
+ - 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/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..4d7aa4f012
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,2661 @@
+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.FEAdd_On_Module_QRouterTemplate:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_private_net_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ version_number:
+ type: string
+ required: true
+ status: SUPPORTED
+ vf_module_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ domain_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ ntp_timezone:
+ type: string
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ region_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ manager_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_names:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ tenant_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ cdr_network:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ qrouter_volume_type_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_volume_type_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_node_count:
+ type: float
+ required: true
+ status: SUPPORTED
+ qrouter_volume_name_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_volume_name_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_volume_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_volume_type_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_volume_size_0:
+ type: float
+ required: true
+ status: SUPPORTED
+ qrouter_volume_size_1:
+ type: float
+ required: true
+ status: SUPPORTED
+ manager_oam_direct_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_volume_size_2:
+ type: float
+ required: true
+ status: SUPPORTED
+ rpmrepository_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_QRouter:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_QRouter:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_qrouter_volume_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_qrouter_volume_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cdr_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cdr_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_qrouter_volume_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_oam_private_net_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_private_net_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.usage_QRouter:
+ type: org.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_cdr_network_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_QRouter:
+ type: org.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_oam_private_net_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_qrouter_volume_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_QRouter:
+ type: org.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_qrouter_volume_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_QRouter:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_qrouter_volume_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_qrouter_volume_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_QRouter:
+ type: org.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_qrouter_volume_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_QRouter:
+ type: org.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_qrouter_volume_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cdr_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cdr_network_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_oam_private_net_network_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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_oam_private_net_network_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_cdr_network_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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_cdr_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_QRouter:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cdr_network_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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_QRouter:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_oam_private_net_network_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_QRouter:
+ type: org.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_oam_private_net_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_QRouter:
+ type: org.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_oam_private_net_network_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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_cdr_network_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_QRouter:
+ type: org.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_oam_private_net_network_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_QRouter:
+ type: org.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_QRouter:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_cdr_network_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_oam_private_net_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ cpu_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_cdr_network_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_oam_private_net_network_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_oam_private_net_network_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.rate_QRouter:
+ type: org.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_QRouter:
+ type: org.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_QRouter:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cdr_network_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_cdr_network_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_QRouter:
+ type: org.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_QRouter:
+ type: org.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_oam_private_net_network_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.FEAdd_On_Module_vLBAgentTemplate:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ packet_mirror_network:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_private_net_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vProbe_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vlb_agent_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vf_module_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_node_count:
+ type: float
+ required: true
+ status: SUPPORTED
+ domain_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ ntp_timezone:
+ type: string
+ required: true
+ status: SUPPORTED
+ packet_internal_network:
+ type: string
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ region_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ manager_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ tenant_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_version_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_type:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_node_count:
+ type: float
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_type_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_type_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_size_1:
+ type: float
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_type_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_names:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vLBAgent_volume_size_2:
+ type: float
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_size_0:
+ type: float
+ required: true
+ status: SUPPORTED
+ vLBAgent_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_name_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_name_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLBAgent_volume_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ manager_oam_direct_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ rpmrepository_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_packet_mirror_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_packet_mirror_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_vLBAgentInstance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_vLBAgentInstance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vLBAgent_volume_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_oam_private_net_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_private_net_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_vLBAgent_volume_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vLBAgent_volume_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_packet_internal_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_packet_internal_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.read.requests_vLBAgentInstance:
+ type: org.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_oam_private_net_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_packet_internal_network_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_vLBAgentInstance:
+ type: org.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_packet_mirror_network_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_vLBAgentInstance:
+ type: org.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_oam_private_net_network_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_vLBAgentInstance:
+ type: org.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_oam_private_net_network_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_vLBAgent_volume_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_vLBAgent_volume_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_vLBAgent_volume_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_packet_internal_network_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_packet_mirror_network_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.usage_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_packet_internal_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_vLBAgentInstance:
+ type: org.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_oam_private_net_network_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_oam_private_net_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_packet_mirror_network_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_packet_mirror_network_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_packet_mirror_network_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_vLBAgentInstance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_vLBAgentInstance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_packet_internal_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_packet_mirror_network_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_packet_mirror_network_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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_oam_private_net_network_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_vLBAgentInstance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_oam_private_net_network_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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_packet_internal_network_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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_packet_internal_network_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_packet_internal_network_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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_packet_internal_network_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_packet_mirror_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_vLBAgentInstance:
+ type: org.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_vLBAgent_volume_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_oam_private_net_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes_vLBAgentInstance:
+ type: org.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_vLBAgent_volume_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_vLBAgent_volume_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_vLBAgentInstance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_vLBAgentInstance:
+ type: org.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_packet_mirror_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_packet_mirror_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_oam_private_net_network_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_packet_mirror_network_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_oam_private_net_network_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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_packet_internal_network_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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_packet_internal_network_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_vLBAgentInstance:
+ type: org.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_vLBAgentInstance:
+ type: org.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_packet_internal_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_vLBAgentInstance:
+ type: org.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_oam_private_net_network_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.FEAdd_On_Module_vLBTemplate:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ packet_mirror_network:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_private_net_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vProbe_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_version_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vf_module_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_node_count:
+ type: float
+ required: true
+ status: SUPPORTED
+ domain_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ ntp_timezone:
+ type: string
+ required: true
+ status: SUPPORTED
+ packet_internal_network:
+ type: string
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_type:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ region_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ manager_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ tenant_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_names:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vLB_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_name_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_type_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_name_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_type_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_type_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_size_1:
+ type: float
+ required: true
+ status: SUPPORTED
+ vlb_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_size_0:
+ type: float
+ required: true
+ status: SUPPORTED
+ manager_oam_direct_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ rpmrepository_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_volume_size_2:
+ type: float
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_packet_mirror_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_packet_mirror_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_vLB_volume_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vLB_volume_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vLB_volume_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_oam_private_net_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_private_net_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_packet_internal_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_packet_internal_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_vLBInstance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_vLBInstance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ attachment_oam_private_net_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_packet_internal_network_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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_vLBInstance:
+ type: org.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_vLBInstance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_vLBInstance:
+ type: org.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_packet_mirror_network_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_oam_private_net_network_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_vLBInstance:
+ type: org.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_oam_private_net_network_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_vLBInstance:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_vLBInstance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_packet_internal_network_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_packet_mirror_network_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_vLBInstance:
+ type: org.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_packet_internal_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_vLBInstance:
+ type: org.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_oam_private_net_network_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_vLBInstance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_oam_private_net_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_vLBInstance:
+ type: org.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_packet_mirror_network_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_packet_mirror_network_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_packet_mirror_network_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_vLBInstance:
+ type: org.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_packet_internal_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_packet_mirror_network_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_packet_mirror_network_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_oam_private_net_network_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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_oam_private_net_network_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_vLBInstance:
+ type: org.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_vLB_volume_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_packet_internal_network_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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_vLB_volume_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_vLB_volume_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_packet_internal_network_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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_packet_internal_network_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_packet_internal_network_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_packet_mirror_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_vLBInstance:
+ type: org.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_oam_private_net_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_packet_mirror_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_packet_mirror_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_oam_private_net_network_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_packet_mirror_network_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_oam_private_net_network_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.rate_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_vLB_volume_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_packet_internal_network_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_vLBInstance:
+ type: org.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_vLB_volume_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_vLBInstance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_packet_internal_network_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_vLBInstance:
+ type: org.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_vLBInstance:
+ type: org.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_vLB_volume_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_vLBInstance:
+ type: org.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_packet_internal_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_vLBInstance:
+ type: org.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_oam_private_net_network_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.FEAdd_On_Module_vProbeTemplate:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_volume_type_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_volume_type_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ qrouter_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_volume_type_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_private_net_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vProbe_cluster_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_type:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vf_module_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vLB_node_count:
+ type: float
+ required: true
+ status: SUPPORTED
+ domain_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ ntp_timezone:
+ type: string
+ required: true
+ status: SUPPORTED
+ packet_internal_network:
+ type: string
+ required: true
+ status: SUPPORTED
+ vProbe_version_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ region_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ qtrace_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_AppDependenciesMachineType:
+ type: string
+ required: true
+ status: SUPPORTED
+ manager_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ win_domain_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ tenant_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_volume_size_2:
+ type: float
+ required: true
+ status: SUPPORTED
+ vprobe_volume_name_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_volume_size_0:
+ type: float
+ required: true
+ status: SUPPORTED
+ vprobe_volume_name_1:
+ type: string
+ required: true
+ status: SUPPORTED
+ vprobe_volume_size_1:
+ type: float
+ required: true
+ status: SUPPORTED
+ vprobe_volume_name_2:
+ type: string
+ required: true
+ status: SUPPORTED
+ security_group:
+ type: string
+ required: true
+ status: SUPPORTED
+ cdr_network:
+ type: string
+ required: true
+ status: SUPPORTED
+ vProbe_node_count:
+ type: float
+ required: true
+ status: SUPPORTED
+ vprobe_names:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vprobe_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ manager_oam_direct_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ rpmrepository_ip_0:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_ProbeInstance:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_ProbeInstance:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vprobe_volume_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vprobe_volume_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_vprobe_volume_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cdr_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cdr_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_oam_private_net_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_oam_private_net_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_packet_internal_network_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_packet_internal_network_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ disk.device.write.bytes.rate_ProbeInstance:
+ type: org.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_cdr_network_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_ProbeInstance:
+ type: org.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_oam_private_net_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_ProbeInstance:
+ type: org.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_packet_internal_network_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_cdr_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cdr_network_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_ProbeInstance:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_oam_private_net_network_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_oam_private_net_network_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_cdr_network_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_packet_internal_network_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_ProbeInstance:
+ type: org.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_cdr_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_ProbeInstance:
+ type: org.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_cdr_network_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
+ host_ProbeInstance:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_packet_internal_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_oam_private_net_network_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_ProbeInstance:
+ type: org.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_oam_private_net_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_packet_internal_network_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_ProbeInstance:
+ type: org.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_oam_private_net_network_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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cdr_network_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_ProbeInstance:
+ type: org.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_oam_private_net_network_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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_packet_internal_network_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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_packet_internal_network_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_packet_internal_network_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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_vprobe_volume_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_packet_internal_network_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_vprobe_volume_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_vprobe_volume_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cdr_network_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_oam_private_net_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_ProbeInstance:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_cdr_network_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_vprobe_volume_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_vprobe_volume_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_oam_private_net_network_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_vprobe_volume_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_oam_private_net_network_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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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.usage_ProbeInstance:
+ type: org.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_packet_internal_network_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_cdr_network_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_ProbeInstance:
+ type: org.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_ProbeInstance:
+ type: org.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_cdr_network_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_packet_internal_network_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_packet_internal_network_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_ProbeInstance:
+ type: org.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_oam_private_net_network_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 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/MainServiceTemplate.yaml
index eb63b32fdf..b6e1ec9cd6 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortGetResource/out/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
vprobe_volume_type_0:
@@ -826,6 +802,22 @@ topology_template:
capability: tosca.capabilities.Node
node: security_group
relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_internal_network
+ relationship: tosca.relationships.DependsOn
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_internal_network
+ relationship: tosca.relationships.DependsOn
packet_mirror_network:
type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
properties:
@@ -934,11 +926,11 @@ topology_template:
node: vLB
relationship: org.openecomp.relationships.AttachesTo
- port:
- capability: attachment_packet_mirror_network_port
+ capability: attachment_packet_internal_network_port
node: vLB
relationship: org.openecomp.relationships.AttachesTo
- port:
- capability: attachment_packet_internal_network_port
+ capability: attachment_packet_mirror_network_port
node: vLB
relationship: org.openecomp.relationships.AttachesTo
- port:
@@ -946,11 +938,11 @@ topology_template:
node: vLBAgent
relationship: org.openecomp.relationships.AttachesTo
- port:
- capability: attachment_packet_mirror_network_port
+ capability: attachment_packet_internal_network_port
node: vLBAgent
relationship: org.openecomp.relationships.AttachesTo
- port:
- capability: attachment_packet_internal_network_port
+ capability: attachment_packet_mirror_network_port
node: vLBAgent
relationship: org.openecomp.relationships.AttachesTo
- port:
@@ -1063,7 +1055,7 @@ topology_template:
node: packet_internal_network
relationship: tosca.relationships.DependsOn
groups:
- FEBase_Module:
+ FEBase_Module_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/FEBase_Module.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
index 72905b3b21..aed01b886e 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -98,10 +74,43 @@ topology_template:
type: string
description: UID of OAM network
node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input:
+ - security_group_id1
+ - 0
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
cmaui_port_2:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_id
- get_input: security_group_id3
@@ -110,6 +119,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: shared_network_id
server_cmaui:
@@ -285,6 +297,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_id1
- get_input: security_group_id2
@@ -293,6 +311,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: shared_network_id
requirements:
@@ -304,6 +325,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_id1
fixed_ips:
@@ -311,6 +338,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: shared_network_id
requirements:
@@ -319,22 +349,23 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- addOn:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - jsa_security_group1
+ - jsa_security_group2
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/addOn.yml
description: cmaui server template for vMMSC
members:
+ - cmaui_port_3
- cmaui_port_2
- server_cmaui
- cmaui_port_1
- - cmaui_port_0
- main:
- type: org.openecomp.groups.heat.HeatStack
- properties:
- heat_file: ../Artifacts/main.yml
- description: |
- Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
- members:
- - jsa_security_group1
- - jsa_security_group2 \ No newline at end of file
+ - cmaui_port_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/MANIFEST.json
index ba27604c3f..1f762d0ccc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/MANIFEST.json
@@ -4,13 +4,14 @@
"version": "2013-05-23",
"data": [
{
- "file": "OCS-fw.yml",
+ "file": "main.yml",
"type": "HEAT",
- "isBase": "false"
+ "isBase": "true"
},
{
- "file": "main.yml",
- "type": "HEAT"
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
}
]
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/addOn.yml
index 24dc9d7678..1d1a42b5bc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/addOn.yml
@@ -60,6 +60,13 @@ resources:
security_groups: [{get_param: security_group_id},{get_param: security_group_id3}]
replacement_policy: AUTO
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: [security_group_id1,0]}]
+ replacement_policy: AUTO
+
server_cmaui:
type: OS::Nova::Server
properties:
@@ -69,4 +76,5 @@ resources:
flavor: { get_param: cmaui_flavor }
networks:
- port: { get_resource: cmaui_port_0 }
- - port: { get_resource: cmaui_port_1 } \ No newline at end of file
+ - port: { get_resource: cmaui_port_1 }
+ - port: { get_resource: cmaui_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/main.yml
index 8a6e72c1ba..8a6e72c1ba 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectionmulti/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityRulesToPortSharedAddOn/inputfiles/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/MANIFEST.json
deleted file mode 100644
index 1daa39bfdc..0000000000
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportconnectiongetresource/inputfiles/MANIFEST.json
+++ /dev/null
@@ -1,89 +0,0 @@
-{
- "name": "",
- "description": "",
- "data": [
- {
- "file": "FEAdd_On_Module_vLBTemplate.yaml",
- "type": "HEAT",
- "isBase": "false"
- },
- {
- "file": "FEAdd_On_Module_QRouterTemplate.yaml",
- "type": "HEAT",
- "isBase": "false"
- },
- {
- "file": "FEBase_Module.yaml",
- "type": "HEAT",
- "isBase": "true",
- "data": [
- {
- "file": "FEBase_Module.env",
- "type": "HEAT_ENV"
- }
- ]
- },
- {
- "file": "FEAdd_On_Module_vLBAgentTemplate.yaml",
- "type": "HEAT",
- "isBase": "false"
- },
- {
- "file": "FEAdd_On_Module_vProbeTemplate.yaml",
- "type": "HEAT",
- "isBase": "false"
- },
- {
- "file": "qrouterdependencies.json",
- "type": "OTHER"
- },
- {
- "file": "vlbagentdependencies_with_vLB.json",
- "type": "OTHER"
- },
- {
- "file": "wait_for_resources.py",
- "type": "OTHER"
- },
- {
- "file": "vprobedependencies.json",
- "type": "OTHER"
- },
- {
- "file": "FEAdd_On_Module_vProbeCloudConfig",
- "type": "OTHER"
- },
- {
- "file": "call_home.py",
- "type": "OTHER"
- },
- {
- "file": "check_availability.py",
- "type": "OTHER"
- },
- {
- "file": "vlbdependencies.json",
- "type": "OTHER"
- },
- {
- "file": "FEAdd_On_Module_QRouterCloudConfig",
- "type": "OTHER"
- },
- {
- "file": "vlbagentdependencies_without_vLB.json",
- "type": "OTHER"
- },
- {
- "file": "FEAdd_On_Module_vLBAgentCloudConfig",
- "type": "OTHER"
- },
- {
- "file": "register_status.py",
- "type": "OTHER"
- },
- {
- "file": "FEAdd_On_Module_vLBCloudConfig",
- "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/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..aa5edaeda1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,544 @@
+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.nested:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ description: cmaui_oam_ips
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_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_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_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/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
index 21e8ec8cdb..b656ef8c37 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
security_group_name:
@@ -210,7 +186,7 @@ topology_template:
substitute_service_template: nestedServiceTemplate.yaml
p2: jsa_security_group2
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
index c41ad87568..ca93e1639f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -79,6 +55,35 @@ topology_template:
type: string
description: UID of OAM network
node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input:
+ - p1
+ - 0
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
server_cmaui:
type: org.openecomp.resource.vfc.nodes.heat.cmaui
properties:
@@ -96,6 +101,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: p1
fixed_ips:
@@ -103,6 +114,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -114,6 +128,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: p1
- get_input: p2
@@ -122,6 +142,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -130,46 +153,263 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
description: cmaui server template for vMMSC
members:
+ - cmaui_port_3
- server_cmaui
- cmaui_port_1
- cmaui_port_0
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
- os_server_cmaui:
+ cpu_util_server_cmaui:
- server_cmaui
- - os
- endpoint_server_cmaui:
+ - cpu_util
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.device.latency_server_cmaui:
- server_cmaui
- - endpoint
- binding_server_cmaui:
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
- server_cmaui
- - binding
- scalable_server_cmaui:
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
- server_cmaui
- - scalable
+ - disk.read.requests
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
attachment_cmaui_port_0:
- cmaui_port_0
- attachment
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
attachment_cmaui_port_1:
- cmaui_port_1
- attachment
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
link_cmaui_port_0:
- cmaui_port_0
- link
link_cmaui_port_1:
- cmaui_port_1
+ - link
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ link_cmaui_port_3:
+ - cmaui_port_3
- 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/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/inputfiles/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/inputfiles/nested.yml
index 7708565ef1..7d57ea65d2 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/inputfiles/nested.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityrulestoportnestedconnection/inputfiles/nested.yml
@@ -46,6 +46,14 @@ resources:
security_groups: [{get_param: p1}]
replacement_policy: AUTO
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: [p1,0]}]
+ replacement_policy: AUTO
+
server_cmaui:
type: OS::Nova::Server
properties:
@@ -55,4 +63,5 @@ resources:
flavor: { get_param: cmaui_flavor }
networks:
- port: { get_resource: cmaui_port_0 }
- - port: { get_resource: cmaui_port_1 } \ No newline at end of file
+ - port: { get_resource: cmaui_port_1 }
+ - port: { get_resource: cmaui_port_3 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9a271b018d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,466 @@
+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.nested:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ description: cmaui_port_1
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ shared_security_group_id1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml
index dc4eb45cda..58b238e8e7 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
security_group_name:
@@ -54,6 +30,17 @@ topology_template:
type: string
description: network name of jsa log network
node_templates:
+ test_nestedArrayParam:
+ type: org.openecomp.resource.abstract.nodes.heat.nested
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nestedServiceTemplate.yaml
+ p2:
+ get_input:
+ - shared_security_group_id2
+ - 0
jsa_security_group1:
type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
properties:
@@ -222,20 +209,21 @@ topology_template:
shared_security_group_id1:
get_input: shared_security_group_id1
groups:
- addOn:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - test_nested
- main:
+ - jsa_security_group1
+ - jsa_security_group2
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/main.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - jsa_security_group1
- - jsa_security_group2 \ No newline at end of file
+ - test_nestedArrayParam
+ - test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/nestedServiceTemplate.yaml
index 491e691e80..37943d1bc0 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -83,6 +59,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
fixed_ips:
@@ -90,6 +72,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -114,6 +99,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: shared_security_group_id1
- get_input: p2
@@ -122,6 +113,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -130,7 +124,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -142,34 +136,211 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- attachment_cmaui_port_2:
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
- cmaui_port_2
- - attachment
- scalable_server_cmaui:
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_1:
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
- cmaui_port_1
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_2:
- cmaui_port_2
- link
link_cmaui_port_1:
- cmaui_port_1
- - link \ No newline at end of file
+ - link
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/inputfiles/addOn.yml
index 0e7619a478..53d3a24208 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/inputfiles/addOn.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/securityruletosharedportlinking/inputfiles/addOn.yml
@@ -24,3 +24,8 @@ resources:
properties:
shared_security_group_id1: { get_param: shared_security_group_id1}
p2: { get_param: shared_security_group_id2}
+
+ test_nestedArrayParam:
+ type: nested.yml
+ properties:
+ p2: { get_param: [shared_security_group_id2,0]}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..b2eb38f367
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,4409 @@
+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.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested2Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_4_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_5_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested2Level:
+ type: org.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_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_cmaui_port_3_test_nested2Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ type: org.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_server_cmaui_test_nested3Level_test_nested2Level:
+ type: org.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.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_3:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_3:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_4:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_4:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested3Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_3:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_4:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_6_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_4:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui_test_nested3Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_3:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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.usage_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_cmaui_port_3:
+ type: org.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_cmaui_port_4:
+ type: org.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_cmaui_port_7_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_8_test_nested4Level_test_nested3Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_server_cmaui_test_nested3Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_5_test_nested3Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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_cmaui_port_5_test_nested3Level:
+ type: org.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_server_cmaui_test_nested4Level_test_nested3Level:
+ type: org.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.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui_test_nested4Level:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_5:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_5:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_6:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_6:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ type: org.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.usage_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_5:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_cmaui_port_6:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_test_nested4Level:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_cmaui_test_nested4Level:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_cmaui_port_6:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_6:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_server_cmaui_test_nested4Level:
+ type: org.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_cmaui_port_5:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7_test_nested4Level:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ p1:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ net:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_cmaui_port_7:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_7:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_cmaui_port_8:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_8:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_8:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_cmaui_port_8:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_cmaui_port_8:
+ type: org.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_cmaui_port_8:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.allocation_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_7:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_7:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_8:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..d3f98b3c71
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,299 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.jsa:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ shared_test_nova:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ shared_test_group2:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ p2:
+ get_input: shared_test_group2
+ test_nestedInvalidConnectionToNova:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: shared_test_nova
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: shared_test_group2
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ jsa_security_group1:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cmaui_port_6_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_3_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_4_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_1
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_5_test_nested3Level_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ jsa_security_group2:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ port_range_max: 65535
+ remote_ip_prefix: ::/0
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ requirements:
+ - port:
+ capability: attachment_cmaui_port_3_test_nested2Level
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_2
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_1
+ node: test_nested1Level
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_7_test_nested4Level
+ node: test_resourceGroup
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_cmaui_port_5
+ node: test_resourceGroup
+ relationship: org.openecomp.relationships.AttachesTo
+ test_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.jsa
+ properties:
+ image: image
+ name:
+ get_input: jsa_name
+ groups:
+ base_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - jsa_security_group1
+ - jsa_security_group2
+ - test_nova
+ addOn_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/addOn.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - test_nested1Level
+ - test_nestedInvalidConnectionToNova
+ - test_resourceGroup \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..42b1a26b87
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,1002 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - cmaui_port_2
+ - server_cmaui
+ - test_nested2Level
+ - cmaui_port_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ capabilities:
+ os_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.device.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_6_test_nested3Level
+ binding_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_6_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested3Level
+ disk.device.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested3Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ endpoint_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested3Level
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ binding_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_5_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_3
+ feature_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui
+ disk.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui_test_nested3Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested4Level_test_nested3Level
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ cpu.delta_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_6_test_nested3Level
+ network.incoming.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_4
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui
+ network.incoming.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_3
+ attachment_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_6_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_5_test_nested3Level
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ memory.resident_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested3Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_7_test_nested4Level_test_nested3Level
+ os_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_4
+ disk.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested4Level_test_nested3Level
+ instance_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_6_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested4Level_test_nested3Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ binding_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested3Level
+ feature_test_nested2Level:
+ - test_nested2Level
+ - feature
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ os_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - os_server_cmaui_test_nested3Level
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_5_test_nested3Level
+ network.incoming.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_5_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.device.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ network.outgoing.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_4
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ vcpus_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested3Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ endpoint_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - endpoint_server_cmaui
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_5_test_nested3Level
+ cpu_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested3Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui
+ network.incoming.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_4
+ feature_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_3
+ network.outpoing.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_5_test_nested3Level
+ disk.root.size_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.root.size_server_cmaui_test_nested3Level
+ memory.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested3Level
+ attachment_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_3
+ binding_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui_test_nested3Level
+ instance_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - instance_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.ephemeral.size_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.ephemeral.size_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested3Level
+ disk.device.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.allocation_server_cmaui
+ disk.device.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.iops_server_cmaui
+ binding_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - binding_server_cmaui
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui_test_nested4Level_test_nested3Level
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ feature_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level
+ scalable_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui_test_nested3Level
+ disk.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes_server_cmaui
+ disk.device.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.latency_server_cmaui_test_nested3Level
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_3
+ disk.usage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested3Level
+ disk.capacity_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui
+ network.outgoing.bytes_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_4
+ disk.device.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.usage_server_cmaui
+ disk.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.packets_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_5_test_nested3Level
+ cpu_util_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui_test_nested3Level
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ disk.latency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui_test_nested4Level_test_nested3Level
+ disk.capacity_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.capacity_server_cmaui_test_nested3Level
+ disk.device.write.requests.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_6_test_nested3Level
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ disk.device.read.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested3Level
+ cpu_util_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu_util_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level
+ network.outpoing.packets_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_3
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.device.write.bytes_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui_test_nested3Level
+ host_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui
+ network.incoming.packets_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets_cmaui_port_6_test_nested3Level
+ memory_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested3Level
+ binding_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_4
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested3Level
+ network.incoming.packets.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_4
+ feature_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested4Level_test_nested3Level
+ disk.latency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.latency_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui_test_nested3Level
+ vcpus_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - vcpus_server_cmaui
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ disk.iops_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
+ attachment_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_4
+ memory.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.usage_server_cmaui
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_5_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_4
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.read.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui
+ feature_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_server_cmaui_test_nested3Level
+ memory_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory_server_cmaui_test_nested4Level_test_nested3Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - cpu_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.iops_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.iops_server_cmaui_test_nested3Level
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ network.incoming.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.packets.rate_cmaui_port_3
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.device.write.bytes_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_3
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ disk.device.read.requests_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.read.requests_server_cmaui_test_nested3Level
+ network.incoming.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes_cmaui_port_6_test_nested3Level
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ scalable_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - scalable_server_cmaui
+ disk.usage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.usage_server_cmaui
+ feature_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_4
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level
+ attachment_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - attachment_cmaui_port_5_test_nested3Level
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level
+ memory.resident_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested4Level_test_nested3Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_7_test_nested4Level_test_nested3Level
+ host_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - host_server_cmaui_test_nested3Level
+ network.outpoing.packets_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - network.outpoing.packets_cmaui_port_4
+ binding_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - binding_cmaui_port_3
+ disk.device.write.requests_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.device.write.requests_server_cmaui
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.read.bytes.rate_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ disk.allocation_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested4Level_test_nested3Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes_cmaui_port_6_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu.delta_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - cpu.delta_server_cmaui
+ feature_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_test_nested3Level
+ feature_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - feature_cmaui_port_6_test_nested3Level
+ network.outgoing.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.outgoing.bytes.rate_cmaui_port_3
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - memory.resident_server_cmaui_test_nested4Level_test_nested3Level
+ network.incoming.bytes.rate_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - network.incoming.bytes.rate_cmaui_port_3
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level
+ disk.allocation_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - disk.allocation_server_cmaui_test_nested3Level
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ link_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_5_test_nested3Level
+ dependency_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_6_test_nested3Level
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_8_test_nested4Level_test_nested3Level
+ dependency_test_nested2Level:
+ - test_nested2Level
+ - dependency
+ link_cmaui_port_2:
+ - cmaui_port_2
+ - link
+ link_cmaui_port_1:
+ - cmaui_port_1
+ - link
+ link_cmaui_port_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_8_test_nested4Level_test_nested3Level
+ link_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_3
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
+ link_cmaui_port_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_6_test_nested3Level
+ dependency_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - dependency
+ link_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_4
+ dependency_cmaui_port_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_5_test_nested3Level
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ local_storage_server_cmaui_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui
+ dependency_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_server_cmaui_test_nested3Level
+ local_storage_server_cmaui_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested3Level
+ link_cmaui_port_3_test_nested2Level:
+ - test_nested2Level
+ - link_cmaui_port_3
+ dependency_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_7_test_nested4Level_test_nested3Level
+ dependency_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - dependency_test_nested3Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - local_storage_server_cmaui_test_nested4Level_test_nested3Level
+ dependency_cmaui_port_4_test_nested2Level:
+ - test_nested2Level
+ - dependency_cmaui_port_4 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..c2319a006c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,796 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ p2:
+ get_input: p1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - cmaui_port_3
+ - cmaui_port_4
+ - test_nested3Level
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui_test_nested4Level
+ vcpus_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ disk.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui
+ disk.device.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui_test_nested4Level
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ memory.resident_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui_test_nested4Level
+ network.incoming.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_7_test_nested4Level
+ disk.capacity_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui_test_nested4Level
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ os_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui_test_nested4Level
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui_test_nested4Level
+ memory.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui_test_nested4Level
+ network.outgoing.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ instance_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.capacity_server_cmaui
+ feature_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level
+ feature_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui
+ attachment_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_7_test_nested4Level
+ memory.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.usage_server_cmaui
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ binding_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ memory_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_5
+ network.incoming.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets
+ disk.device.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui_test_nested4Level
+ network.outgoing.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_6
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_7_test_nested4Level
+ disk.ephemeral.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui
+ network.incoming.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_6
+ disk.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_5
+ vcpus_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - vcpus_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_6
+ cpu_util_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_8_test_nested4Level
+ endpoint_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_6
+ disk.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui
+ memory.resident_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - memory.resident_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.ephemeral.size_server_cmaui_test_nested4Level
+ cpu.delta_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui
+ disk.device.read.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui_test_nested4Level
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_3:
+ - cmaui_port_3
+ - binding
+ disk.device.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.bytes.rate_server_cmaui
+ binding_cmaui_port_4:
+ - cmaui_port_4
+ - binding
+ disk.device.write.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui_test_nested4Level
+ endpoint_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - endpoint_server_cmaui
+ disk.device.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests_server_cmaui
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ feature_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_6
+ feature_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_8_test_nested4Level
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.incoming.bytes.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_6
+ memory_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - memory_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.bytes.rate
+ disk.device.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes.rate
+ binding_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_6
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.incoming.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes
+ disk.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui_test_nested4Level
+ network.incoming.bytes_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ disk.root.size_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_8_test_nested4Level
+ network.outpoing.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_8_test_nested4Level
+ cpu_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui_test_nested4Level
+ feature_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_7_test_nested4Level
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ network.incoming.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.packets.rate
+ feature_cmaui_port_3:
+ - cmaui_port_3
+ - feature
+ network.incoming.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.packets.rate
+ feature_cmaui_port_4:
+ - cmaui_port_4
+ - feature
+ attachment_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_6
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_6
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ network.outgoing.packets.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.packets.rate
+ disk.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests.rate_server_cmaui
+ attachment_cmaui_port_3:
+ - cmaui_port_3
+ - attachment
+ disk.write.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui_test_nested4Level
+ attachment_cmaui_port_4:
+ - cmaui_port_4
+ - attachment
+ disk.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.iops_server_cmaui
+ host_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui_test_nested4Level
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.allocation_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests_server_cmaui_test_nested4Level
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.packets.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.outgoing.packets.rate
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.device.iops_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui
+ network.incoming.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_5
+ disk.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.allocation_server_cmaui_test_nested4Level
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ os_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - os_server_cmaui_test_nested4Level
+ network.outpoing.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_7_test_nested4Level
+ disk.device.latency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.latency_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_8_test_nested4Level
+ binding_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_7_test_nested4Level
+ disk.root.size_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.root.size_server_cmaui_test_nested4Level
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ network.incoming.bytes_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_6
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.read.bytes.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui_test_nested4Level
+ disk.read.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_8_test_nested4Level
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.usage_server_cmaui_test_nested4Level
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui_test_nested4Level
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui_test_nested4Level
+ attachment_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_5
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ feature_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - feature_server_cmaui_test_nested4Level
+ binding_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_7_test_nested4Level
+ disk.read.bytes_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes_server_cmaui_test_nested4Level
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ host_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - host_server_cmaui
+ scalable_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui_test_nested4Level
+ network.incoming.bytes.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_5
+ network.incoming.packets_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_8_test_nested4Level
+ feature_test_nested3Level:
+ - test_nested3Level
+ - feature
+ disk.device.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes_server_cmaui
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_8_test_nested4Level
+ attachment_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - attachment_cmaui_port_8_test_nested4Level
+ disk.read.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.read.bytes.rate_server_cmaui
+ disk.device.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.bytes.rate_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.capacity_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.capacity_server_cmaui
+ disk.usage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui_test_nested4Level
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes_cmaui_port_5
+ disk.device.allocation_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.allocation_server_cmaui_test_nested4Level
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets.rate_cmaui_port_7_test_nested4Level
+ disk.write.requests_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.requests_server_cmaui
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.outpoing.packets_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - network.outpoing.packets_cmaui_port_6
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outgoing.bytes_cmaui_port_4:
+ - cmaui_port_4
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_7_test_nested4Level
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ instance_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - instance_server_cmaui
+ binding_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_5
+ network.incoming.bytes.rate_cmaui_port_3:
+ - cmaui_port_3
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_4:
+ - cmaui_port_4
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.bytes_cmaui_port_5
+ cpu_util_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu_util_server_cmaui_test_nested4Level
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ cpu_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - cpu_server_cmaui
+ disk.usage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.usage_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes_server_cmaui
+ network.outpoing.packets_cmaui_port_3:
+ - cmaui_port_3
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_4:
+ - cmaui_port_4
+ - network.outpoing.packets
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.bytes.rate_cmaui_port_7_test_nested4Level
+ binding_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_cmaui_port_8_test_nested4Level
+ scalable_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - scalable_server_cmaui
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ feature_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - feature_cmaui_port_5
+ cpu.delta_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - cpu.delta_server_cmaui_test_nested4Level
+ network.incoming.packets_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.incoming.packets_cmaui_port_5
+ disk.device.iops_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.device.iops_server_cmaui_test_nested4Level
+ disk.write.bytes.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.write.bytes.rate_server_cmaui
+ disk.device.read.requests.rate_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - disk.device.read.requests.rate_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.read.requests_server_cmaui_test_nested4Level
+ network.outgoing.packets.rate_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - network.outgoing.packets.rate_cmaui_port_5
+ disk.latency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - disk.latency_server_cmaui_test_nested4Level
+ requirements:
+ link_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_5
+ dependency_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui
+ dependency_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_6
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_7_test_nested4Level
+ local_storage_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui_test_nested4Level
+ dependency_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_test_nested4Level
+ link_cmaui_port_4:
+ - cmaui_port_4
+ - link
+ link_cmaui_port_3:
+ - cmaui_port_3
+ - link
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_server_cmaui_test_nested4Level
+ link_cmaui_port_6_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_6
+ link_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_8_test_nested4Level
+ dependency_test_nested3Level:
+ - test_nested3Level
+ - dependency
+ link_cmaui_port_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_cmaui_port_7_test_nested4Level
+ dependency_cmaui_port_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_8_test_nested4Level
+ dependency_cmaui_port_4:
+ - cmaui_port_4
+ - dependency
+ dependency_cmaui_port_3:
+ - cmaui_port_3
+ - dependency
+ dependency_cmaui_port_5_test_nested3Level:
+ - test_nested3Level
+ - dependency_cmaui_port_5
+ local_storage_server_cmaui_test_nested3Level:
+ - test_nested3Level
+ - local_storage_server_cmaui \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..d907a4db05
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,578 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ p1:
+ get_input: p1
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ p2:
+ get_input: p2
+ cmaui_port_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - test_nested4Level
+ - cmaui_port_5
+ - cmaui_port_6
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ memory_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory_server_cmaui
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ instance_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - instance_server_cmaui
+ disk.root.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.root.size_server_cmaui
+ disk.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes_server_cmaui
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ cpu_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_server_cmaui
+ vcpus_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - vcpus_server_cmaui
+ disk.device.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.usage_server_cmaui
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ network.incoming.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_7
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.latency_server_cmaui
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ disk.device.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.capacity_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes.rate_cmaui_port_8
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ host_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - host_server_cmaui
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ disk.device.read.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests.rate_server_cmaui
+ network.incoming.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets
+ network.incoming.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_7
+ disk.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.allocation_server_cmaui
+ network.incoming.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets
+ disk.device.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_7
+ disk.device.write.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.bytes_server_cmaui
+ disk.device.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests.rate_server_cmaui
+ disk.device.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.iops_server_cmaui
+ disk.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.requests_server_cmaui
+ disk.ephemeral.size_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.ephemeral.size_server_cmaui
+ binding_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - binding_server_cmaui
+ network.outgoing.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_8
+ disk.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.usage_server_cmaui
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_5:
+ - cmaui_port_5
+ - binding
+ network.incoming.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_8
+ binding_cmaui_port_6:
+ - cmaui_port_6
+ - binding
+ network.outgoing.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_8
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ feature_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - feature_server_cmaui
+ disk.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes.rate_server_cmaui
+ network.outgoing.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes
+ network.incoming.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.capacity_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.capacity_server_cmaui
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ scalable_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - scalable_server_cmaui
+ network.incoming.bytes_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_8
+ network.outpoing.packets_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_8
+ disk.device.read.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes.rate_server_cmaui
+ feature_cmaui_port_5:
+ - cmaui_port_5
+ - feature
+ disk.device.allocation_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.allocation_server_cmaui
+ feature_cmaui_port_6:
+ - cmaui_port_6
+ - feature
+ disk.device.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.write.requests_server_cmaui
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.bytes.rate_server_cmaui
+ attachment_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_7
+ disk.write.requests.rate_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests.rate_server_cmaui
+ binding_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_8
+ network.incoming.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.packets.rate
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ attachment_cmaui_port_6:
+ - cmaui_port_6
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.packets.rate_cmaui_port_7
+ network.outgoing.packets.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_5:
+ - cmaui_port_5
+ - attachment
+ feature_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_8
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outpoing.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outpoing.packets_cmaui_port_7
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ attachment_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - attachment_cmaui_port_8
+ network.outgoing.bytes.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes.rate_cmaui_port_8
+ disk.iops_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.iops_server_cmaui
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ feature_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - feature_cmaui_port_7
+ endpoint_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - endpoint_server_cmaui
+ network.incoming.packets.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.packets.rate
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ cpu.delta_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu.delta_server_cmaui
+ memory.resident_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.resident_server_cmaui
+ binding_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - binding_cmaui_port_7
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ network.outgoing.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.outgoing.bytes_cmaui_port_7
+ disk.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.read.bytes_server_cmaui
+ disk.device.read.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.requests_server_cmaui
+ disk.write.requests_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.write.requests_server_cmaui
+ disk.device.latency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.latency_server_cmaui
+ network.incoming.packets_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets_cmaui_port_7
+ feature_test_nested4Level:
+ - test_nested4Level
+ - feature
+ os_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - os_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_6:
+ - cmaui_port_6
+ - network.incoming.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.incoming.packets.rate_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.packets.rate_cmaui_port_8
+ memory.usage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - memory.usage_server_cmaui
+ network.outpoing.packets_cmaui_port_5:
+ - cmaui_port_5
+ - network.outpoing.packets
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ network.outgoing.bytes_cmaui_port_6:
+ - cmaui_port_6
+ - network.outgoing.bytes
+ network.outpoing.packets_cmaui_port_6:
+ - cmaui_port_6
+ - network.outpoing.packets
+ network.outgoing.bytes_cmaui_port_5:
+ - cmaui_port_5
+ - network.outgoing.bytes
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.device.read.bytes_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - disk.device.read.bytes_server_cmaui
+ cpu_util_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - cpu_util_server_cmaui
+ network.incoming.bytes.rate_cmaui_port_5:
+ - cmaui_port_5
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ network.incoming.bytes_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - network.incoming.bytes_cmaui_port_7
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ requirements:
+ dependency_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_7
+ dependency_cmaui_port_6:
+ - cmaui_port_6
+ - dependency
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ dependency_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - dependency_cmaui_port_8
+ local_storage_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - local_storage_server_cmaui
+ link_cmaui_port_6:
+ - cmaui_port_6
+ - link
+ link_cmaui_port_5:
+ - cmaui_port_5
+ - link
+ dependency_test_nested4Level:
+ - test_nested4Level
+ - dependency
+ link_cmaui_port_8_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_8
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_server_cmaui_test_nested4Level:
+ - test_nested4Level
+ - dependency_server_cmaui
+ link_cmaui_port_7_test_nested4Level:
+ - test_nested4Level
+ - link_cmaui_port_7
+ dependency_cmaui_port_5:
+ - cmaui_port_5
+ - 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/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..720662bde6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,350 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ net:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p1
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ cmaui_port_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: p2
+ - get_input: p2
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network:
+ get_input: net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - cmaui_port_7
+ - cmaui_port_8
+ - server_cmaui
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ feature_cmaui_port_7:
+ - cmaui_port_7
+ - feature
+ feature_cmaui_port_8:
+ - cmaui_port_8
+ - feature
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ network.outgoing.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.packets.rate
+ attachment_cmaui_port_7:
+ - cmaui_port_7
+ - attachment
+ attachment_cmaui_port_8:
+ - cmaui_port_8
+ - attachment
+ network.outgoing.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.packets.rate
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ network.incoming.packets.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets.rate
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ network.incoming.packets.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets.rate
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.packets
+ network.incoming.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.packets
+ network.incoming.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes.rate
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ network.outgoing.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ network.outpoing.packets_cmaui_port_7:
+ - cmaui_port_7
+ - network.outpoing.packets
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.outpoing.packets_cmaui_port_8:
+ - cmaui_port_8
+ - network.outpoing.packets
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ binding_cmaui_port_7:
+ - cmaui_port_7
+ - binding
+ network.outgoing.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes
+ binding_cmaui_port_8:
+ - cmaui_port_8
+ - binding
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_7:
+ - cmaui_port_7
+ - network.outgoing.bytes.rate
+ network.incoming.bytes_cmaui_port_8:
+ - cmaui_port_8
+ - network.incoming.bytes
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ network.incoming.bytes_cmaui_port_7:
+ - cmaui_port_7
+ - network.incoming.bytes
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ network.outgoing.bytes.rate_cmaui_port_8:
+ - cmaui_port_8
+ - network.outgoing.bytes.rate
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ requirements:
+ dependency_cmaui_port_8:
+ - cmaui_port_8
+ - dependency
+ dependency_cmaui_port_7:
+ - cmaui_port_7
+ - dependency
+ link_cmaui_port_8:
+ - cmaui_port_8
+ - link
+ link_cmaui_port_7:
+ - cmaui_port_7
+ - link
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..2d7942b41a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,37 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "base.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "addOn.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/addOn.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/addOn.yml
new file mode 100644
index 0000000000..8bee2ca27a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/addOn.yml
@@ -0,0 +1,38 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ p1:
+ type: string
+ shared_test_group2:
+ type: string
+ shared_test_nova:
+ type: string
+
+resources:
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: shared_test_group2}
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: shared_test_group2}
+ indx: "%index%"
+
+ test_nestedInvalidConnectionToNova:
+ type: nested1.yml
+ properties:
+ p1: { get_param: shared_test_nova}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/base.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/base.yml
new file mode 100644
index 0000000000..c4beb0fd50
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/base.yml
@@ -0,0 +1,68 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ jsa_name:
+ type: string
+ security_group_name:
+ type: string
+ description: network name of jsa log network
+
+resources:
+ jsa_security_group1:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ jsa_security_group2:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: ems security group
+ name: {get_param: security_group_name}
+ rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"},
+ {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}
+ ]
+
+ test_nova:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: jsa_name}
+ image: image
+
+outputs:
+ p1:
+ value: {get_resource: jsa_security_group1}
+ shared_test_group2:
+ value: {get_resource: jsa_security_group2}
+ shared_test_nova:
+ value: {get_resource: test_nova}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..c73fcf63d7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,65 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_1:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}, {get_param: p2}]
+ replacement_policy: AUTO
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_1 }
+ - port: { get_resource: cmaui_port_2 }
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..b4655fa35d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,70 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ description: UID of OAM network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_3:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}, {get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_4:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_3 }
+ - port: { get_resource: cmaui_port_4 }
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..55538833a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,66 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ indx:
+ type: number
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_5:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_6:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_5 }
+ - port: { get_resource: cmaui_port_6 }
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ p1: { get_param: p1}
+ p2: { get_param: p2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..ce3ffb76a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnection/sharedNestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,58 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ p1:
+ type: string
+ description: UID of OAM network
+ p2:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ net:
+ type: string
+resources:
+
+ cmaui_port_7:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p1}]
+ replacement_policy: AUTO
+
+ cmaui_port_8:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: net }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: p2},{get_param: p2}]
+ replacement_policy: AUTO
+
+ server_cmaui:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: cmaui_port_7 }
+ - port: { get_resource: cmaui_port_8 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml
index 1696e6ea39..a187040255 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityrulestoportconnectionmulti/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,23 +2,25 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui_image:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml
index 5ed12af4ae..1ab32c35ed 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportlinking/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,23 +2,25 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
topology_template:
inputs:
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
index 267fa61cd4..6270231f88 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
@@ -35,36 +11,65 @@ node_types:
cmaui_names:
type: list
description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
entry_schema:
type: string
p1:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
p2:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
cmaui_image:
type: string
description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
cmaui_flavor:
type: string
description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
availability_zone_0:
type: string
description: availabilityzone name
+ required: true
+ status: SUPPORTED
cmaui_oam_ips:
type: string
+ required: true
+ status: SUPPORTED
net:
type: string
description: UID of OAM network
+ required: true
+ status: SUPPORTED
requirements:
+ - dependency_cmaui_port_2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_2:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- local_storage_server_cmaui:
capability: tosca.capabilities.Attachment
node: tosca.nodes.BlockStorage
@@ -72,14 +77,89 @@ node_types:
occurrences:
- 0
- UNBOUNDED
+ - dependency_cmaui_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
- link_cmaui_port_1:
capability: tosca.capabilities.network.Linkable
- node: tosca.nodes.Root
relationship: tosca.relationships.network.LinksTo
occurrences:
- 1
- 1
capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_port_2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
host_server_cmaui:
type: tosca.capabilities.Container
valid_source_types:
@@ -87,33 +167,299 @@ node_types:
occurrences:
- 1
- UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
type: tosca.capabilities.OperatingSystem
occurrences:
- 1
- UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_cmaui_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_cmaui_port_2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_2:
+ type: org.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_cmaui_port_1:
+ type: org.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_server_cmaui:
type: tosca.capabilities.Endpoint.Admin
occurrences:
- 1
- UNBOUNDED
- binding_server_cmaui:
- type: tosca.capabilities.network.Bindable
+ disk.iops_server_cmaui:
+ type: org.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_cmaui_port_2:
- type: tosca.capabilities.Attachment
+ disk.device.iops_server_cmaui:
+ type: org.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_server_cmaui:
- type: tosca.capabilities.Scalable
+ network.incoming.bytes_cmaui_port_2:
+ type: org.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_cmaui_port_1:
- type: tosca.capabilities.Attachment
+ disk.read.bytes_server_cmaui:
+ type: org.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_cmaui_port_1:
+ type: org.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/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml
index 9466ebff85..a7a2b36685 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
security_group_name:
@@ -224,20 +200,20 @@ topology_template:
node: mvs_modules
relationship: org.openecomp.relationships.AttachesTo
groups:
- addOn:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/addOn.yml
+ heat_file: ../Artifacts/main.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - mvs_modules
- main:
+ - jsa_security_group1
+ - jsa_security_group2
+ addOn_group:
type: org.openecomp.groups.heat.HeatStack
properties:
- heat_file: ../Artifacts/main.yml
+ heat_file: ../Artifacts/addOn.yml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - jsa_security_group1
- - jsa_security_group2 \ No newline at end of file
+ - mvs_modules \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/nestedServiceTemplate.yaml
index 729e969c0c..e3a89fd3a3 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/securityruletosharedportresourcegrouplinking/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -82,6 +58,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: p1
fixed_ips:
@@ -89,6 +71,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -113,6 +98,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: p1
- get_input: p2
@@ -121,6 +112,9 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network:
get_input: net
requirements:
@@ -129,7 +123,7 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- nested:
+ nested_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/nested.yml
@@ -141,34 +135,211 @@ topology_template:
substitution_mappings:
node_type: org.openecomp.resource.abstract.nodes.heat.nested
capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ network.incoming.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ feature_cmaui_port_1:
+ - cmaui_port_1
+ - feature
+ feature_cmaui_port_2:
+ - cmaui_port_2
+ - feature
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
host_server_cmaui:
- server_cmaui
- host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ attachment_cmaui_port_2:
+ - cmaui_port_2
+ - attachment
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.bytes_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ network.outgoing.packets.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.packets.rate
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ network.outgoing.bytes_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ attachment_cmaui_port_1:
+ - cmaui_port_1
+ - attachment
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ network.incoming.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.packets
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
os_server_cmaui:
- server_cmaui
- os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ binding_cmaui_port_1:
+ - cmaui_port_1
+ - binding
+ binding_cmaui_port_2:
+ - cmaui_port_2
+ - binding
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.incoming.bytes.rate
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outpoing.packets_cmaui_port_1:
+ - cmaui_port_1
+ - network.outpoing.packets
+ network.outpoing.packets_cmaui_port_2:
+ - cmaui_port_2
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_cmaui_port_2:
+ - cmaui_port_2
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_cmaui_port_1:
+ - cmaui_port_1
+ - network.outgoing.bytes.rate
endpoint_server_cmaui:
- server_cmaui
- endpoint
- binding_server_cmaui:
+ disk.iops_server_cmaui:
- server_cmaui
- - binding
- attachment_cmaui_port_2:
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ network.incoming.bytes_cmaui_port_2:
- cmaui_port_2
- - attachment
- scalable_server_cmaui:
+ - network.incoming.bytes
+ disk.read.bytes_server_cmaui:
- server_cmaui
- - scalable
- attachment_cmaui_port_1:
+ - disk.read.bytes
+ network.incoming.bytes_cmaui_port_1:
- cmaui_port_1
- - attachment
+ - network.incoming.bytes
requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
local_storage_server_cmaui:
- server_cmaui
- local_storage
+ dependency_cmaui_port_1:
+ - cmaui_port_1
+ - dependency
link_cmaui_port_2:
- cmaui_port_2
- link
link_cmaui_port_1:
- cmaui_port_1
- - link \ No newline at end of file
+ - link
+ dependency_cmaui_port_2:
+ - cmaui_port_2
+ - 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/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..e88182ac3d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,128 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.nested:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ p1:
+ type: string
+ required: true
+ status: SUPPORTED
+ p2:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_Vlan_3_arrayParameter:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_3_arrayParameter:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_2:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_1:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..812a53ba68
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,343 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ network: test_net1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui_nova
+ relationship: tosca.relationships.network.BindsTo
+ test_nested_invalidConnection:
+ type: org.openecomp.resource.abstract.nodes.heat.nested
+ directives:
+ - substitutable
+ properties:
+ p1: test_Vlan1
+ service_template_filter:
+ substitute_service_template: nestedServiceTemplate.yaml
+ p2: server_cmaui_nova
+ test_net2:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - test_net1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui_nova
+ relationship: tosca.relationships.network.BindsTo
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested
+ directives:
+ - substitutable
+ properties:
+ p1: template_VMInt_OAM_lb_1
+ service_template_filter:
+ substitute_service_template: nestedServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ p2: cmaui_port_2
+ net2: test_net2
+ net1: test_net1
+ requirements:
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding_template_Vlan_2:
+ capability: tosca.capabilities.network.Bindable
+ node: cmaui_port_2
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_1:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ test_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_Vlan2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - template_VMInt_OAM_lb_1
+ name: vlan
+ virtual_network_refs:
+ - test_net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ test_Vlan1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - test_Vlan2
+ name: vlan
+ virtual_network_refs:
+ - test_net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ server_cmaui_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ test_nested:
+ type: org.openecomp.resource.abstract.nodes.heat.nested
+ directives:
+ - substitutable
+ properties:
+ p1: template_VMInt_OAM_lb_1
+ service_template_filter:
+ substitute_service_template: nestedServiceTemplate.yaml
+ p2: cmaui_port_2
+ net2: test_net2
+ net1: test_net1
+ requirements:
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding_template_Vlan_2:
+ capability: tosca.capabilities.network.Bindable
+ node: cmaui_port_2
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_1:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - cmaui_port_2
+ - test_nested_invalidConnection
+ - test_net2
+ - template_VMInt_OAM_lb_1
+ - test_resourceGroup
+ - test_net1
+ - test_Vlan2
+ - test_Vlan1
+ - server_cmaui_nova
+ - test_nested \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..401fc4a776
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/expectedoutputfiles/nestedServiceTemplate.yaml
@@ -0,0 +1,240 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ p1:
+ hidden: false
+ immutable: false
+ type: string
+ p2:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ net2:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ net1:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ node_templates:
+ template_Vlan_3_arrayParameter:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input:
+ - p2
+ - 0
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input:
+ - net2
+ - 1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: p2
+ - get_input: p1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net2
+ - get_input: net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: p1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ groups:
+ nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested.yml
+ description: cmaui server template for vMMSC
+ members:
+ - template_Vlan_3_arrayParameter
+ - template_Vlan_2
+ - template_Vlan_1
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested
+ requirements:
+ link_template_Vlan_1:
+ - template_Vlan_1
+ - link
+ link_template_Vlan_3_arrayParameter:
+ - template_Vlan_3_arrayParameter
+ - link
+ link_template_Vlan_2:
+ - template_Vlan_2
+ - link
+ binding_template_Vlan_2:
+ - template_Vlan_2
+ - binding
+ binding_template_Vlan_1:
+ - template_Vlan_1
+ - binding
+ binding_template_Vlan_3_arrayParameter:
+ - template_Vlan_3_arrayParameter
+ - binding \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..aca75b5055
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/main.yml
new file mode 100644
index 0000000000..8bdc627afc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/main.yml
@@ -0,0 +1,187 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ description: network name of jsa log network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ oam_sec_group_name:
+ type: string
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+resources:
+ test_net1:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+ test_net2:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ server_cmaui_nova:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: cmaui_port_2 }
+
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_resource: test_net1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: test_net1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ test_Vlan1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name: vlan
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_resource: test_net1 }]
+ virtual_machine_interface_refs: [{ get_resource: test_Vlan2 }]
+
+ test_Vlan2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name: vlan
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_resource: test_net1 }]
+ virtual_machine_interface_refs: [{ get_resource: template_VMInt_OAM_lb_1 }]
+
+ test_nested:
+ type: nested.yml
+ properties:
+ p1: { get_resource: template_VMInt_OAM_lb_1}
+ p2: { get_resource: cmaui_port_2}
+ net1: { get_resource: test_net1}
+ net2: { get_resource: test_net2}
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested.yml
+ properties:
+ p1: { get_resource: template_VMInt_OAM_lb_1}
+ p2: { get_resource: cmaui_port_2}
+ net1: { get_resource: test_net1}
+ net2: { get_resource: test_net2}
+
+ test_nested_invalidConnection:
+ type: nested.yml
+ properties:
+ p1: { get_resource: test_Vlan1}
+ p2: { get_resource: server_cmaui_nova}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/nested.yml
new file mode 100644
index 0000000000..cf4a1dea10
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nested/inputfiles/nested.yml
@@ -0,0 +1,159 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ p1:
+ type: string
+ p2:
+ type: string
+ net1:
+ type: string
+ net2:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+resources:
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net1 }]
+ virtual_machine_interface_refs: [{ get_param: p1 }]
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net2 },{ get_param: net1 }]
+ virtual_machine_interface_refs: [{ get_param: p2 }, { get_param: p1 }]
+
+ template_Vlan_3_arrayParameter:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: [net2,1] }]
+ virtual_machine_interface_refs: [{ get_param: [p2,0]}]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..03dd95d822
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,664 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.nested1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ port1:
+ type: string
+ required: true
+ status: SUPPORTED
+ port2:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_2:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_1:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_4_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_3_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ org.openecomp.resource.abstract.nodes.heat.nested2:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port1:
+ type: string
+ required: true
+ status: SUPPORTED
+ port2:
+ type: string
+ required: true
+ status: SUPPORTED
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_Vlan_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_8_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_7_test_nested4Level_test_nested3Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_6_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_6_test_nested3Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_5_test_nested3Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_5_test_nested3Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_4:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_4:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_3:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_3:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ org.openecomp.resource.abstract.nodes.heat.nested3:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port1:
+ type: string
+ required: true
+ status: SUPPORTED
+ port2:
+ type: string
+ required: true
+ status: SUPPORTED
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_Vlan_8_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_8_test_nested4Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_7_test_nested4Level:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_6:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_6:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_5:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_5:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ org.openecomp.resource.abstract.nodes.heat.nested4:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ required: true
+ status: SUPPORTED
+ lb_st_interface_type_oam:
+ type: string
+ required: true
+ status: SUPPORTED
+ oam_sec_group_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ net2:
+ type: string
+ required: true
+ status: SUPPORTED
+ net1:
+ type: string
+ required: true
+ status: SUPPORTED
+ indx:
+ type: float
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port1:
+ type: string
+ required: true
+ status: SUPPORTED
+ port2:
+ type: string
+ required: true
+ status: SUPPORTED
+ vlan_ids:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ lb_st_vlan_type_oam:
+ type: string
+ description: dummy
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ subinterface_name_prefix:
+ type: string
+ required: true
+ status: SUPPORTED
+ subinterface_instance_index:
+ type: float
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - link_template_Vlan_8:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_8:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ - link_template_Vlan_7:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_template_Vlan_7:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..888a0f727c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,313 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ contrail_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ jsa_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: network name of jsa log network
+ node_templates:
+ cmaui_port_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ network: test_net1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui_nova
+ relationship: tosca.relationships.network.BindsTo
+ test_nested1Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ net2:
+ get_attribute:
+ - test_contrailV2_net2
+ - fq_name
+ net1: test_net1
+ port1: template_VMInt_OAM_lb_1
+ port2: cmaui_port_2
+ requirements:
+ - link_template_Vlan_2:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_1:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_4_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_3_test_nested2Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net2
+ relationship: tosca.relationships.network.LinksTo
+ - binding_template_Vlan_2:
+ capability: tosca.capabilities.network.Bindable
+ node: cmaui_port_2
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_1:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_6_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_5_test_nested3Level_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_4_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_3_test_nested2Level:
+ capability: tosca.capabilities.network.Bindable
+ node: template_VMInt_OAM_lb_1
+ relationship: tosca.relationships.network.BindsTo
+ test_contrailV2_net2:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
+ properties:
+ network_name:
+ get_input: contrail_net_name
+ template_VMInt_OAM_lb_1:
+ type: org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface
+ properties:
+ security_group_refs:
+ - get_input: oam_sec_group_name
+ virtual_network_refs:
+ - test_net1
+ virtual_machine_interface_properties:
+ virtual_machine_interface_properties_service_interface_type:
+ get_input: lb_st_interface_type_oam
+ port_tuple_refs:
+ - get_input: template_PortTuple_LB1
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: test_net1
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui_nova
+ relationship: tosca.relationships.network.BindsTo
+ test_resourceGroup:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 9
+ mandatory: true
+ net1:
+ list_join:
+ - ':'
+ - get_attribute:
+ - test_contrailV2_net2
+ - fq_name
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ port1: cmaui_port_2
+ requirements:
+ - link_template_Vlan_7_test_nested4Level:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net2
+ relationship: tosca.relationships.network.LinksTo
+ - link_template_Vlan_6:
+ capability: tosca.capabilities.network.Linkable
+ node: test_contrailV2_net2
+ relationship: tosca.relationships.network.LinksTo
+ - binding_template_Vlan_7_test_nested4Level:
+ capability: tosca.capabilities.network.Bindable
+ node: cmaui_port_2
+ relationship: tosca.relationships.network.BindsTo
+ - binding_template_Vlan_6:
+ capability: tosca.capabilities.network.Bindable
+ node: cmaui_port_2
+ relationship: tosca.relationships.network.BindsTo
+ test_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ test_nestedInvalidConnection:
+ type: org.openecomp.resource.abstract.nodes.heat.nested1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested1ServiceTemplate.yaml
+ net1: server_cmaui_nova
+ port1: server_cmaui_nova
+ server_cmaui_nova:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ contrail_service_instance_ind: true
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ groups:
+ main_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/main.yml
+ description: |
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pnet2854 PROD)
+ members:
+ - cmaui_port_2
+ - test_nested1Level
+ - test_contrailV2_net2
+ - template_VMInt_OAM_lb_1
+ - test_resourceGroup
+ - test_net1
+ - test_nestedInvalidConnection
+ - server_cmaui_nova \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
new file mode 100644
index 0000000000..721a990b3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested1ServiceTemplate.yaml
@@ -0,0 +1,244 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ net2:
+ hidden: false
+ immutable: false
+ type: string
+ net1:
+ hidden: false
+ immutable: false
+ type: string
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ port1:
+ hidden: false
+ immutable: false
+ type: string
+ port2:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_Vlan_2:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port2
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: indx
+ virtual_network_refs:
+ - get_input: net2
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: indx
+ virtual_network_refs:
+ - get_input: net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ test_nested2Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested2
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested2ServiceTemplate.yaml
+ net2:
+ get_input: net2
+ net1:
+ get_input: net1
+ port1:
+ get_input: port1
+ port2:
+ get_input: port2
+ groups:
+ nested1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested1.yml
+ description: nested1
+ members:
+ - template_Vlan_2
+ - template_Vlan_1
+ - test_nested2Level
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested1
+ requirements:
+ link_template_Vlan_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_6_test_nested3Level
+ binding_template_Vlan_3_test_nested2Level:
+ - test_nested2Level
+ - binding_template_Vlan_3
+ binding_template_Vlan_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_Vlan_5_test_nested3Level
+ binding_template_Vlan_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_Vlan_8_test_nested4Level_test_nested3Level
+ binding_template_Vlan_6_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_Vlan_6_test_nested3Level
+ link_template_Vlan_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_7_test_nested4Level_test_nested3Level
+ binding_template_Vlan_7_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - binding_template_Vlan_7_test_nested4Level_test_nested3Level
+ link_template_Vlan_4_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_4
+ link_template_Vlan_1:
+ - template_Vlan_1
+ - link
+ link_template_Vlan_2:
+ - template_Vlan_2
+ - link
+ binding_template_Vlan_2:
+ - template_Vlan_2
+ - binding
+ binding_template_Vlan_1:
+ - template_Vlan_1
+ - binding
+ link_template_Vlan_5_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_5_test_nested3Level
+ link_template_Vlan_3_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_3
+ binding_template_Vlan_4_test_nested2Level:
+ - test_nested2Level
+ - binding_template_Vlan_4
+ link_template_Vlan_8_test_nested4Level_test_nested3Level_test_nested2Level:
+ - test_nested2Level
+ - link_template_Vlan_8_test_nested4Level_test_nested3Level \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
new file mode 100644
index 0000000000..35ce74b929
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested2ServiceTemplate.yaml
@@ -0,0 +1,287 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested2
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ net2:
+ hidden: false
+ immutable: false
+ type: string
+ net1:
+ hidden: false
+ immutable: false
+ type: string
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ port1:
+ hidden: false
+ immutable: false
+ type: string
+ port2:
+ hidden: false
+ immutable: false
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested3Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested3
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested3ServiceTemplate.yaml
+ count: 3
+ mandatory: true
+ net2:
+ get_input: net1
+ net1:
+ get_input: net1
+ indx:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ port1:
+ get_input: port1
+ port2:
+ get_input: port1
+ template_Vlan_4:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net2
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_3:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port1
+ - get_input: port2
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net2
+ - get_input: net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ groups:
+ nested2_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested2.yml
+ description: nested2
+ members:
+ - test_nested3Level
+ - template_Vlan_4
+ - template_Vlan_3
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested2
+ requirements:
+ binding_template_Vlan_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_Vlan_8_test_nested4Level
+ link_template_Vlan_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_Vlan_7_test_nested4Level
+ link_template_Vlan_5_test_nested3Level:
+ - test_nested3Level
+ - link_template_Vlan_5
+ link_template_Vlan_6_test_nested3Level:
+ - test_nested3Level
+ - link_template_Vlan_6
+ link_template_Vlan_3:
+ - template_Vlan_3
+ - link
+ link_template_Vlan_4:
+ - template_Vlan_4
+ - link
+ link_template_Vlan_8_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - link_template_Vlan_8_test_nested4Level
+ binding_template_Vlan_6_test_nested3Level:
+ - test_nested3Level
+ - binding_template_Vlan_6
+ binding_template_Vlan_4:
+ - template_Vlan_4
+ - binding
+ binding_template_Vlan_7_test_nested4Level_test_nested3Level:
+ - test_nested3Level
+ - binding_template_Vlan_7_test_nested4Level
+ binding_template_Vlan_3:
+ - template_Vlan_3
+ - binding
+ binding_template_Vlan_5_test_nested3Level:
+ - test_nested3Level
+ - binding_template_Vlan_5 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
new file mode 100644
index 0000000000..f9aae6f57c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested3ServiceTemplate.yaml
@@ -0,0 +1,266 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested3
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ net2:
+ hidden: false
+ immutable: false
+ type: string
+ net1:
+ hidden: false
+ immutable: false
+ type: string
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ port1:
+ hidden: false
+ immutable: false
+ type: string
+ port2:
+ hidden: false
+ immutable: false
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ test_nested4Level:
+ type: org.openecomp.resource.abstract.nodes.heat.nested4
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested4ServiceTemplate.yaml
+ net2:
+ get_input: net2
+ net1:
+ get_input: net1
+ port1:
+ get_input: port1
+ port2:
+ get_input: port2
+ template_Vlan_6:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_5:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port2
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net2
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ groups:
+ nested3_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested3.yml
+ description: nested3
+ members:
+ - test_nested4Level
+ - template_Vlan_6
+ - template_Vlan_5
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested3
+ requirements:
+ link_template_Vlan_8_test_nested4Level:
+ - test_nested4Level
+ - link_template_Vlan_8
+ link_template_Vlan_7_test_nested4Level:
+ - test_nested4Level
+ - link_template_Vlan_7
+ binding_template_Vlan_8_test_nested4Level:
+ - test_nested4Level
+ - binding_template_Vlan_8
+ link_template_Vlan_5:
+ - template_Vlan_5
+ - link
+ link_template_Vlan_6:
+ - template_Vlan_6
+ - link
+ binding_template_Vlan_7_test_nested4Level:
+ - test_nested4Level
+ - binding_template_Vlan_7
+ binding_template_Vlan_6:
+ - template_Vlan_6
+ - binding
+ binding_template_Vlan_5:
+ - template_Vlan_5
+ - binding \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
new file mode 100644
index 0000000000..dd4017d37a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/expectedoutputfiles/nested4ServiceTemplate.yaml
@@ -0,0 +1,238 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested4
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ template_PortTuple_LB1:
+ hidden: false
+ immutable: false
+ type: string
+ lb_st_interface_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ oam_sec_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ net2:
+ hidden: false
+ immutable: false
+ type: string
+ net1:
+ hidden: false
+ immutable: false
+ type: string
+ indx:
+ hidden: false
+ immutable: false
+ type: float
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ port1:
+ hidden: false
+ immutable: false
+ type: string
+ port2:
+ hidden: false
+ immutable: false
+ type: string
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ lb_st_vlan_type_oam:
+ hidden: false
+ immutable: false
+ type: string
+ description: dummy
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ subinterface_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ cmaui_oam_ips:
+ hidden: false
+ immutable: false
+ type: string
+ node_templates:
+ template_Vlan_8:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port2
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net2
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ template_Vlan_7:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: port1
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input: net1
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input: lb_st_vlan_type_oam
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ groups:
+ nested4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested4.yml
+ description: nested4
+ members:
+ - template_Vlan_8
+ - template_Vlan_7
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested4
+ requirements:
+ link_template_Vlan_7:
+ - template_Vlan_7
+ - link
+ link_template_Vlan_8:
+ - template_Vlan_8
+ - link
+ binding_template_Vlan_8:
+ - template_Vlan_8
+ - binding
+ binding_template_Vlan_7:
+ - template_Vlan_7
+ - binding \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..c7d4122f3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/MANIFEST.json
@@ -0,0 +1,32 @@
+{
+ "name": "Port to Network multi nested test",
+ "description": "HOT template to create multi nested of 4 levels",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "main.yml",
+ "type": "HEAT",
+ "isBase": "true"
+ },
+ {
+ "file": "nested1.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested2.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested3.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "nested4.yml",
+ "type": "HEAT",
+ "isBase": "false"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/main.yml
new file mode 100644
index 0000000000..cc5d856d07
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/main.yml
@@ -0,0 +1,105 @@
+heat_template_version: 2013-05-23
+
+description: >
+ Version 2.0 02-09-2016 (Authors: Paul Phillips, pnet2854 PROD)
+
+parameters:
+ jsa_net_name:
+ type: string
+ jsa_name:
+ type: string
+ description: network name of jsa log network
+ contrail_net_name:
+ type: string
+ description: network name of jsa log network
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ oam_sec_group_name:
+ type: string
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+
+resources:
+ test_net1:
+ type: OS::Neutron::Net
+ properties:
+ name: {get_param: jsa_net_name}
+ shared: True
+
+ test_contrailV2_net2:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: { get_param: contrail_net_name }
+
+ server_cmaui_nova:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [cmaui_names, 0]}
+ image: { get_param: cmaui_image }
+ availability_zone: { get_param: availability_zone_0 }
+ flavor: { get_param: cmaui_flavor }
+ networks:
+ - port: { get_resource: template_VMInt_OAM_lb_1 }
+ - port: { get_resource: cmaui_port_2 }
+
+ template_VMInt_OAM_lb_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam },
+ }
+ virtual_network_refs: [{ get_resource: test_net1 }]
+ port_tuple_refs: [{ get_param: template_PortTuple_LB1 }]
+ security_group_refs: [{ get_param: oam_sec_group_name}]
+
+ cmaui_port_2:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: test_net1 }
+ fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}]
+ security_groups: [{get_param: security_group_name}]
+ replacement_policy: AUTO
+
+ test_nested1Level:
+ type: nested1.yml
+ properties:
+ net1: { get_resource: test_net1}
+ net2: { get_attr: [ test_contrailV2_net2, fq_name ] }
+ port1: { get_resource: template_VMInt_OAM_lb_1}
+ port2: { get_resource: cmaui_port_2}
+
+ test_resourceGroup:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 9
+ resource_def:
+ type: nested3.yml
+ properties:
+ net1: { list_join: [':', { get_attr: [ test_contrailV2_net2, fq_name ] } ] }
+ port1: { get_resource: cmaui_port_2 }
+ indx: "%index%"
+
+ test_nestedInvalidConnection:
+ type: nested1.yml
+ properties:
+ net1: { get_resource: server_cmaui_nova }
+ port1: { get_resource: server_cmaui_nova }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested1.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested1.yml
new file mode 100644
index 0000000000..13ff47a45d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested1.yml
@@ -0,0 +1,125 @@
+heat_template_version: 2013-05-23
+
+description: nested1
+
+parameters:
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+ net1:
+ type: string
+ net2:
+ type: string
+ port1:
+ type: string
+ port2:
+ type: string
+ indx:
+ type: number
+resources:
+
+ template_Vlan_1:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: indx } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net1 }]
+ virtual_machine_interface_refs: [{ get_param: port1 }]
+
+ template_Vlan_2:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: indx } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net2 }]
+ virtual_machine_interface_refs: [{ get_param: port2 }]
+
+ test_nested2Level:
+ type: nested2.yml
+ properties:
+ net1: { get_param: net1}
+ net2: { get_param: net2}
+ port1: { get_param: port1}
+ port2: { get_param: port2}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested2.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested2.yml
new file mode 100644
index 0000000000..9c4d7a36ae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested2.yml
@@ -0,0 +1,154 @@
+heat_template_version: 2013-05-23
+
+description: nested2
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+ net1:
+ type: string
+ net2:
+ type: string
+ port1:
+ type: string
+ port2:
+ type: string
+ indx:
+ type: number
+resources:
+
+ template_Vlan_3:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net2 },{ get_param: net1 }]
+ virtual_machine_interface_refs: [{ get_param: port1 }, { get_param: port2 }]
+
+ template_Vlan_4:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net2 }]
+ virtual_machine_interface_refs: [{ get_param: port1 }]
+
+ test_nested3Level:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: 3
+ resource_def:
+ type: nested3.yml
+ properties:
+ net1: { get_param: net1}
+ net2: { get_param: net1}
+ port1: { get_param: port1}
+ port2: { get_param: port1}
+ indx: "%index%" \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested3.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested3.yml
new file mode 100644
index 0000000000..a0db3e8b28
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested3.yml
@@ -0,0 +1,149 @@
+heat_template_version: 2013-05-23
+
+description: nested3
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+ net1:
+ type: string
+ net2:
+ type: string
+ port1:
+ type: string
+ port2:
+ type: string
+ indx:
+ type: number
+resources:
+
+ template_Vlan_5:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net2 }]
+ virtual_machine_interface_refs: [{ get_param: port2 }]
+
+ template_Vlan_6:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net1 }]
+ virtual_machine_interface_refs: [{ get_param: port1 }]
+
+ test_nested4Level:
+ type: nested4.yml
+ properties:
+ net1: { get_param: net1 }
+ net2: { get_param: net2 }
+ port1: { get_param: port1 }
+ port2: { get_param: port2 } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested4.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested4.yml
new file mode 100644
index 0000000000..30f93f1a03
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/nestedMultiLevels/inputfiles/nested4.yml
@@ -0,0 +1,141 @@
+heat_template_version: 2013-05-23
+
+description: nested4
+
+parameters:
+ lb_st_interface_type_oam:
+ type: string
+ template_PortTuple_LB1:
+ type: string
+ oam_sec_group_name:
+ type: string
+ security_group_name:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_names:
+ type: comma_delimited_list
+ description: CMAUI1, CMAUI2 server names
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ availability_zone_0:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ cmaui_oam_ips:
+ type: string
+ lb_st_vlan_type_oam:
+ description: dummy
+ type: string
+ mac_address:
+ type: string
+ virtual_ip_address:
+ type: string
+ virtual_ipv6_address:
+ type: string
+ vlan_ids:
+ type: string
+ subinterface_name_prefix:
+ type: string
+ subinterface_instance_index:
+ type: number
+ net1:
+ type: string
+ net2:
+ type: string
+ port1:
+ type: string
+ port2:
+ type: string
+ indx:
+ type: number
+resources:
+
+ template_Vlan_7:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net1 }]
+ virtual_machine_interface_refs: [{ get_param: port1 }]
+
+ template_Vlan_8:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME: { get_param: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: net2 }]
+ virtual_machine_interface_refs: [{ get_param: port2 }] \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/base_perimeta_deployment_create.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/base_perimeta_deployment_create.env
new file mode 100644
index 0000000000..360b526e6d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/base_perimeta_deployment_create.env
@@ -0,0 +1,307 @@
+# Template for instantiating
+# - 1xHA SSC instance
+# - MxHA RTP MSC instances
+#
+# This Heat template commissions, partners and configures the Perimeta
+# instances with minimal configuration defined by the following templates.
+# - ssc_a_template.json
+# - msc_a_template.json
+# This/these can be modified as required to obtain the required Perimeta
+# configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+
+parameters:
+ #
+ # General VNF parameters
+ #
+
+ # 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
+
+ # Availability zone for B instances.
+ availability_zone_1: DPA3_D2_AZ2
+
+ # Keypair to use for accessing these Perimeta instances
+ perimeta_keypair: perimeta_key
+
+ # 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
+
+ # UUID of server group to set anti-affinity policy for Perimeta instance.
+ # Only used when doing healing.
+ #
+ # Even though server group is _NOT_ used when a new system is created,
+ # setting it to '', whilst valid, has caused instantiation to fail on some
+ # systems at AT&T. Therefore, we set it to a string even though it will not
+ # be used.
+ perimeta_param_server_group: 'THBAPSA'
+
+ #
+ # Management network parameters
+ #
+
+ # Management network ID
+ mgmt_net_id: a0db940a-c47c-4d05-acd0-0dcd2b46e87a
+
+ # Management network prefix length
+ mgmt_net_plen: 26
+
+ # Default gateway for management network
+ mgmt_net_default_gateway: 10.147.188.131
+
+ # Management network security groups
+ mgmt_net_sec_groups: 67f4f424-d852-4241-8c70-74b8ae210483
+
+ #
+ # Internal high availability network parameters
+ #
+
+ # Internal HA network ID
+ int_ha_net_id: eec17d6a-fbf3-434b-b70f-8229d24d3326
+
+ # Intermal HA network prefix length.
+ int_ha_net_plen: 24
+
+ # Security groups associated with internal HA network
+ int_ha_net_sec_groups: 67f4f424-d852-4241-8c70-74b8ae210483
+
+ #
+ # Trusted/core network parameters
+ #
+
+ # Network ID of trusted/core network.
+ trusted_net_id: dffe19e0-9dc0-4c6e-886d-0554f6d94b6b
+
+ # Security groups associated with trusted/core network
+ trusted_net_sec_groups: 67f4f424-d852-4241-8c70-74b8ae210483
+
+ #
+ # Untrusted/access network parameters
+ #
+
+ # Network ID of untrusted/access network.
+ untrusted_net_id: b4f1a645-5db5-4cc6-91f7-85e722ba6616
+
+ # Security groups associated with untrusted/access network
+ untrusted_net_sec_groups: 67f4f424-d852-4241-8c70-74b8ae210483
+
+ # Number of VLANs to connect to on the untrusted/access network
+ untrusted_num_vlans: 10
+
+ # List of VLAN IDs to use on the untrusted/access network. There must
+ # be at least untrusted_num_vlans entries in this list.
+ untrusted_vlan_ids: ["10", "11", "3456", "234", "123"]
+
+ # List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN IDs list
+ 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]
+
+ #
+ # Unused network parameters
+ #
+
+ # Unused port network ID - this is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id: cfcbf116-4e90-482b-91e5-f4b990115f70
+
+ #
+ # SSC parameters
+ #
+
+ # Flavor to use for creating SSC VM instance
+ ssc_flavor_name: 41e7508e-bf2a-406e-9563-8219c3aa6c02
+
+ # Glance image to use for launching SSC Perimeta instances.
+ ssc_image_name: 3aedaeb5-fbb4-4802-9e1f-a421087d2adb
+
+ # Name of VM A of SSC
+ ssc_a_name_0: ibcx0002vm001ssc001
+
+ # Name of VM B of SSC
+ ssc_b_name_0: ibcx0002vm002ssc001
+
+ # System name of SSC
+ ssc_system_name_0: ibcx0002vm001ssc001pair
+
+ #
+ # SSC IP addresses on management network
+ #
+
+ # Management virtual IPv4 address to use for SSC.
+ ssc_mgmt_vip_0: 10.147.188.133
+
+ # Management fixed IPv4 address to use for SSC A.
+ ssc_a_mgmt_ip_0: 10.147.188.132
+
+ # Management fixed IPv4 address to use for SSC B.
+ ssc_b_mgmt_ip_0: 10.147.188.136
+
+ #
+ # SSC IP addresses on internal HA network
+ #
+
+ # HA fixed IPv4 address to use for SSC A.
+ ssc_a_int_ha_ip_0: 10.0.0.4
+
+ # HA fixed IPv4 address to use for SSC B.
+ ssc_b_int_ha_ip_0: 10.0.0.5
+
+ #
+ # SSC IP addresses on trusted/core network
+ #
+
+ # 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
+
+ # Fixed IPv4 address on trusted/core network for SSC B.
+ ssc_b_trusted_ip_0: 10.1.1.6
+
+ #
+ # SSC IP addresses on untrusted/access network
+ #
+
+ # Virtual IPv4 address on untrusted/access network for SSC.
+ ssc_untrusted_vip_0: 127.0.0.1
+
+ # 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: 127.0.0.1
+
+ # Fixed IPv6 address on untrusted/access network for SSC A.
+ ssc_a_untrusted_v6_ip_0: 2001:1890:1001:2B38::2D:1
+
+ # Fixed IPv4 address on untrusted/access network for SSC B.
+ ssc_b_untrusted_ip_0: 127.0.0.1
+
+ # Fixed IPv6 address on untrusted/access network for SSC B.
+ ssc_b_untrusted_v6_ip_0: 2001:1890:1001:2B38::2D:3
+
+ #
+ # SSC IP addresses on management/Rf network
+ #
+
+ # Virtual IPv4 address on management/Rf network for SSC.
+ ssc_rf_vip_0: 10.147.188.135
+
+ # Fixed IPv4 address on management/Rf network for SSC A.
+ ssc_a_rf_ip_0: 10.147.188.134
+
+ # Fixed IPv4 address on management/Rf network for SSC B.
+ ssc_b_rf_ip_0: 10.147.188.137
+
+
+ #
+ # RTP MSC parameters
+ #
+
+ # Count of required RTP MSCs
+ rtp_msc_count: 1
+
+ # Flavor to use for creating RTP MSC VM instances
+ rtp_msc_flavor_name: 41e7508e-bf2a-406e-9563-8219c3aa6c02
+
+ # Glance image to use for launching RTP MSC Perimeta instances.
+ rtp_msc_image_name: 3aedaeb5-fbb4-4802-9e1f-a421087d2adb
+
+ # List of names of RTP MSC VM A instances
+ rtp_msc_a_names: ["ibcx0002vm003msc001","ibcx0002vm005msc001","ibcx0002vm007msc001","ibcx0002vm009msc001","ibcx0002vm011msc001"]
+
+ # List of names of RTP MSC VM B instances
+ rtp_msc_b_names: ["ibcx0002vm004msc001","ibcx0002vm006msc001","ibcx0002vm008msc001","ibcx0002vm010msc001","ibcx0002vm012msc001"]
+
+ # List of system names of RTP MSC instances
+ rtp_msc_system_names: ["ibcx0002vm003msc001pair","ibcx0002vm005msc001pair","ibcx0002vm007msc001pair","ibcx0002vm009msc001pair","ibcx0002msc001vm011pair"]
+
+ #
+ # RTP MSC IP addresses on management network
+ #
+
+ # Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_mgmt_vips: ["10.147.188.139","10.147.188.142","10.147.188.145","10.147.188.148","10.147.188.151"]
+
+ # Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips: ["10.147.188.138","10.147.188.141","10.147.188.144","10.147.188.147","10.147.188.150"]
+
+ # Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips: ["10.147.188.140","10.147.188.143","10.147.188.146","10.147.188.149","10.147.188.152"]
+
+ # HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_int_ha_ips: ["10.0.0.6","10.0.0.8","10.0.0.10","10.0.0.12","10.0.0.14"]
+
+ # HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips: ["10.0.0.7","10.0.0.9","10.0.0.11","10.0.0.13","10.0.0.15"]
+
+ #
+ # RTP MSC IP addresses on trusted/core network
+ #
+
+ # Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_trusted_vips: ["10.1.1.8","10.1.1.11","10.1.1.14","10.1.1.17","10.1.1.20"]
+
+ # Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ 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"]
+
+ # Fixed IP address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ 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"]
+
+ #
+ # RTP MSC IP addresses on untrusted/access network
+ #
+
+ # Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_vips: ["127.0.0.1","127.0.0.1","127.0.0.1","127.0.0.1","127.0.0.1"]
+
+ # Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ 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"]
+
+ # Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips: ["127.0.0.1","127.0.0.1","127.0.0.1","127.0.0.1","127.0.0.1"]
+
+ # Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ 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"]
+
+ # Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips: ["127.0.0.1","127.0.0.1","127.0.0.1","127.0.0.1","127.0.0.1"]
+
+ # Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ 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"]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/custom.ini b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/custom.ini
new file mode 100644
index 0000000000..77219c21a1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC/inputfiles/custom.ini
@@ -0,0 +1,22 @@
+;******************************************************************************
+;* 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 18000 flowpairs,
+; set limit to 36000
+; mpf_max_flow_pairs=36000 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..394e567d3d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,2919 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.perimeta_ha_swmu:
+ 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
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ required: true
+ status: SUPPORTED
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ required: true
+ status: SUPPORTED
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ vm_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
+ serv3_vips:
+ type: list
+ description: List of service network 3 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ required: true
+ status: SUPPORTED
+ 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
+ mgmt_sec_groups:
+ type: list
+ description: List of security groups to add on management interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 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
+ 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
+ serv3_net_id:
+ type: string
+ description: Service network 3 network UUID
+ required: true
+ status: SUPPORTED
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_vips:
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ serv3_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ unused_net_id:
+ type: string
+ description: Service network unused port network UUID
+ required: true
+ status: SUPPORTED
+ ha_a_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
+ untrusted_v6_vips:
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ type: list
+ description: List of security groups to add on HA interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ system_names:
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ serv3_sec_groups:
+ type: list
+ description: List of security groups to add on serv3 interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_vips:
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ required: true
+ status: SUPPORTED
+ serv3_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_b_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
+ untrusted_a_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ trusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B 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_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ required: true
+ status: SUPPORTED
+ untrusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ ha_network_plen:
+ type: float
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ attributes:
+ server_group_used:
+ type: string
+ description: Server group used for these VMs
+ requirements:
+ - link_perimeta_a_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_serv3_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_serv3_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_a_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_b_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_b_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ attachment_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_a_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_unused_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_perimeta_a_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_unused_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_serv3_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_serv3_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_serv3_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_serv3_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_perimeta_a_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_perimeta_b_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_unused_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_b_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_unused_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_b_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_perimeta_a_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_b_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.perimeta_ha_sw:
+ 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
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ required: true
+ status: SUPPORTED
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ required: true
+ status: SUPPORTED
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ vm_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
+ untrusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ required: true
+ status: SUPPORTED
+ 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
+ mgmt_sec_groups:
+ type: list
+ description: List of security groups to add on management interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 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
+ 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
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_vips:
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ ha_a_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
+ untrusted_v6_vips:
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ type: list
+ description: List of security groups to add on HA interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ system_names:
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_vips:
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ required: true
+ status: SUPPORTED
+ ha_b_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
+ untrusted_a_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ trusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B 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_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ required: true
+ status: SUPPORTED
+ untrusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ ha_network_plen:
+ type: float
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ attributes:
+ server_group_used:
+ type: string
+ description: Server group used for these VMs
+ requirements:
+ - link_perimeta_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_a_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_a_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_b_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ attachment_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_a_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_perimeta_a_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_a_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_perimeta_b_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_b_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_b_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_perimeta_a_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_b_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.perimeta_ha_sw_b:
+ 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
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ required: true
+ status: SUPPORTED
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ required: true
+ status: SUPPORTED
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ vm_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
+ untrusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ required: true
+ status: SUPPORTED
+ 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
+ mgmt_sec_groups:
+ type: list
+ description: List of security groups to add on management interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 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
+ 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
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_vips:
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ ha_a_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
+ untrusted_v6_vips:
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ type: list
+ description: List of security groups to add on HA interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ system_names:
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_vips:
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ required: true
+ status: SUPPORTED
+ ha_b_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
+ untrusted_a_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ trusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B 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_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ required: true
+ status: SUPPORTED
+ untrusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ ha_network_plen:
+ type: float
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ attributes:
+ server_group_used:
+ type: string
+ description: Server group used for these VMs
+ requirements:
+ - link_perimeta_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_b_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ binding_perimeta_b_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_perimeta_b_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_b_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_b_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_b_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vlan_ids:
+ type: list
+ description: List of VLAN IDs to use for subinterfaces
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ parent_interface:
+ type: string
+ description: Parent Contrail interface
+ required: true
+ status: SUPPORTED
+ virtual_ipv6_address:
+ type: string
+ description: virtual IPv6 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ virtual_ip_address:
+ type: string
+ description: virtual IPv4 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ mac_address:
+ type: string
+ description: MAC address to use for subinterface
+ required: true
+ status: SUPPORTED
+ ipv6_address:
+ type: string
+ description: IPv6 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ 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
+ 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
+ ip_address:
+ type: string
+ description: IPv4 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ 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
+ requirements:
+ - link_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: org.openecomp.resource.cp.nodes.network.Port
+ relationship: tosca.relationships.network.BindsTo
+ occurrences:
+ - 1
+ - 1
+ org.openecomp.resource.abstract.nodes.heat.perimeta_ha_sw_a:
+ 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
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ required: true
+ status: SUPPORTED
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ required: true
+ status: SUPPORTED
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ vm_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
+ untrusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ required: true
+ status: SUPPORTED
+ 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
+ mgmt_sec_groups:
+ type: list
+ description: List of security groups to add on management interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 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
+ 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
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_vips:
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ ha_a_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
+ untrusted_v6_vips:
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ type: list
+ description: List of security groups to add on HA interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ system_names:
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_vips:
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ required: true
+ status: SUPPORTED
+ ha_b_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
+ untrusted_a_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ trusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B 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_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ required: true
+ status: SUPPORTED
+ untrusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ ha_network_plen:
+ type: float
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ attributes:
+ server_group_used:
+ type: string
+ description: Server group used for these VMs
+ requirements:
+ - link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_a_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_a_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_perimeta_a_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_a_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_perimeta_a_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_perimeta_a_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.perimeta_ha_swmu_a:
+ 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
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ required: true
+ status: SUPPORTED
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ required: true
+ status: SUPPORTED
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ vm_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
+ serv3_vips:
+ type: list
+ description: List of service network 3 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ required: true
+ status: SUPPORTED
+ 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
+ mgmt_sec_groups:
+ type: list
+ description: List of security groups to add on management interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 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
+ 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
+ serv3_net_id:
+ type: string
+ description: Service network 3 network UUID
+ required: true
+ status: SUPPORTED
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_vips:
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ serv3_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ unused_net_id:
+ type: string
+ description: Service network unused port network UUID
+ required: true
+ status: SUPPORTED
+ ha_a_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
+ untrusted_v6_vips:
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ type: list
+ description: List of security groups to add on HA interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ system_names:
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ serv3_sec_groups:
+ type: list
+ description: List of security groups to add on serv3 interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_vips:
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ required: true
+ status: SUPPORTED
+ serv3_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_b_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
+ untrusted_a_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ trusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B 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_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ required: true
+ status: SUPPORTED
+ untrusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ ha_network_plen:
+ type: float
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ attributes:
+ server_group_used:
+ type: string
+ description: Server group used for these VMs
+ requirements:
+ - link_perimeta_a_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_serv3_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_a_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_a_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_a_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ scalable_perimeta_a_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_a_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_a_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ endpoint_perimeta_a_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_unused_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_perimeta_a_serv3_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_a_unused_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_perimeta_a_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_a_serv3_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.perimeta_ha_swmu_b:
+ 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
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ required: true
+ status: SUPPORTED
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ required: true
+ status: SUPPORTED
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ vm_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
+ serv3_vips:
+ type: list
+ description: List of service network 3 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ required: true
+ status: SUPPORTED
+ 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
+ mgmt_sec_groups:
+ type: list
+ description: List of security groups to add on management interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ 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
+ 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
+ serv3_net_id:
+ type: string
+ description: Service network 3 network UUID
+ required: true
+ status: SUPPORTED
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_vips:
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ serv3_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ unused_net_id:
+ type: string
+ description: Service network unused port network UUID
+ required: true
+ status: SUPPORTED
+ ha_a_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
+ untrusted_v6_vips:
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ type: list
+ description: List of security groups to add on HA interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ system_names:
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ serv3_sec_groups:
+ type: list
+ description: List of security groups to add on serv3 interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_vips:
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ required: true
+ status: SUPPORTED
+ serv3_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ha_b_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
+ untrusted_a_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ trusted_b_ips:
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B 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_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ required: true
+ status: SUPPORTED
+ untrusted_a_ips:
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ ha_network_plen:
+ type: float
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ attributes:
+ server_group_used:
+ type: string
+ description: Server group used for these VMs
+ requirements:
+ - link_perimeta_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_serv3_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_untrusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_perimeta_b_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_perimeta_b_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ binding_perimeta_b_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ os_perimeta_b_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_unused_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_perimeta_b_unused_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_serv3_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_b_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_b_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_b_serv3_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_perimeta_b_untrusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_b_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_b_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ 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/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..d0f309e423
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,737 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- 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,31}$'
+ 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,31}$'
+ rtp_msc_count:
+ hidden: false
+ immutable: false
+ type: float
+ description: Count of required RTP MSCs
+ ssc_b_untrusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ perimeta_param_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+ int_ha_net_plen:
+ hidden: false
+ immutable: false
+ type: float
+ description: Intermal HA network prefix length.
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ 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_mgmt_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management virtual IP address to use for SSC. Only required when predefining VIPs.
+ 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
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints: [
+ ]
+ mgmt_net_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: Management network security groups
+ entry_schema:
+ type: string
+ 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. Only required when predefining virtual IPs.
+ rtp_msc_mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ 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. Only required when predefining fixed IPs.
+ untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ rtp_msc_untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ rtp_msc_system_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of system names of RTP MSC instances
+ entry_schema:
+ type: string
+ ssc_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image to use for launching SSC Perimeta instances.
+ constraints: [
+ ]
+ 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})
+ ssc_b_untrusted_v6_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ rtp_msc_untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ ssc_system_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: System name of SSC
+ constraints:
+ - pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ ssc_b_rf_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+ ssc_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating SSC VM instance
+ constraints: [
+ ]
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network ID
+ constraints: [
+ ]
+ rtp_msc_a_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of names of RTP MSC VM A instances
+ entry_schema:
+ type: string
+ rtp_msc_trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ untrusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints: [
+ ]
+ unused_port_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unused network ID
+ constraints: [
+ ]
+ rtp_msc_b_untrusted_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ rtp_msc_b_mgmt_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ 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. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+ rtp_msc_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ constraints: [
+ ]
+ rtp_msc_b_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of names of RTP MSC VM B instances
+ entry_schema:
+ type: string
+ rtp_msc_b_untrusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal HA network ID
+ constraints: [
+ ]
+ ssc_b_int_ha_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+ ssc_a_trusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC A. Only required when predefining fixed IPs.
+ 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.
+ untrusted_net_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: Security groups associated with untrusted/access network
+ entry_schema:
+ type: string
+ ssc_a_untrusted_v6_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_rf_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ rtp_msc_a_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ rtp_msc_b_trusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ rtp_msc_a_trusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ 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.
+ constraints: [
+ ]
+ ssc_a_mgmt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ rtp_msc_b_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ 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. Only required when predefining virtual IPs.
+ rtp_msc_a_mgmt_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ rtp_msc_index:
+ hidden: false
+ immutable: false
+ type: float
+ description: Index of RTP MSC to create/heal.
+ ssc_a_rf_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ rtp_msc_a_untrusted_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ entry_schema:
+ type: string
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default gateway for management network
+ trusted_net_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: Security groups associated with trusted/core network
+ entry_schema:
+ type: string
+ int_ha_net_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: Security groups associated with internal HA network
+ entry_schema:
+ type: string
+ node_templates:
+ perimeta_ssc:
+ type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_swmu_a
+ directives:
+ - substitutable
+ properties:
+ mgmt_net_plen:
+ get_input: mgmt_net_plen
+ untrusted_b_ips:
+ - get_input: ssc_b_untrusted_ip_0
+ ha_net_id:
+ get_input: int_ha_net_id
+ perimeta_param_server_group:
+ get_input: perimeta_param_server_group
+ untrusted_vlan_networks:
+ get_input: untrusted_vlan_networks
+ perimeta_instance_index: 0
+ untrusted_vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: perimeta_ha_swmu_aServiceTemplate.yaml
+ serv3_net_id:
+ get_input: mgmt_net_id
+ perimeta_keypair:
+ get_input: perimeta_keypair
+ mgmt_vips:
+ - get_input: ssc_mgmt_vip_0
+ untrusted_vips:
+ - get_input: ssc_untrusted_vip_0
+ serv3_a_ips:
+ - get_input: ssc_a_rf_ip_0
+ unused_net_id:
+ get_input: unused_port_net_id
+ untrusted_v6_vips:
+ - get_input: ssc_untrusted_v6_vip_0
+ ha_sec_groups:
+ get_input: int_ha_net_sec_groups
+ untrusted_num_vlans:
+ get_input: untrusted_num_vlans
+ system_names:
+ - get_input: ssc_system_name_0
+ vm_b_names:
+ - get_input: ssc_b_name_0
+ trusted_vips:
+ - get_input: ssc_trusted_vip_0
+ trusted_net_id:
+ get_input: trusted_net_id
+ untrusted_a_v6_ips:
+ - get_input: ssc_a_untrusted_v6_ip_0
+ mgmt_net_id:
+ get_input: mgmt_net_id
+ perimeta_flavor_name:
+ get_input: ssc_flavor_name
+ ha_network_plen:
+ get_input: int_ha_net_plen
+ vf_module_id:
+ get_input: vf_module_id
+ untrusted_net_id:
+ get_input: untrusted_net_id
+ perimeta_config:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - ssc_a_template
+ params:
+ $COMPLETION_PARAMS: ''
+ $NTP_SERVER_IP_ADDRS:
+ get_input: ntp_server_ip_addrs
+ vm_a_names:
+ - get_input: ssc_a_name_0
+ serv3_vips:
+ - get_input: ssc_rf_vip_0
+ mgmt_sec_groups:
+ get_input: mgmt_net_sec_groups
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_0:
+ get_input: availability_zone_0
+ availability_zone_1:
+ get_input: availability_zone_1
+ ha_a_ips:
+ - get_input: ssc_a_int_ha_ip_0
+ trusted_a_ips:
+ - get_input: ssc_a_trusted_ip_0
+ trusted_sec_groups:
+ get_input: trusted_net_sec_groups
+ serv3_sec_groups:
+ get_input: mgmt_net_sec_groups
+ serv3_b_ips:
+ - get_input: ssc_b_rf_ip_0
+ ha_b_ips:
+ - get_input: ssc_b_int_ha_ip_0
+ untrusted_b_v6_ips:
+ - get_input: ssc_b_untrusted_v6_ip_0
+ mgmt_a_ips:
+ - get_input: ssc_a_mgmt_ip_0
+ vm_role: ssc
+ trusted_b_ips:
+ - get_input: ssc_b_trusted_ip_0
+ perimeta_image_name:
+ get_input: ssc_image_name
+ mgmt_net_default_gateway:
+ get_input: mgmt_net_default_gateway
+ untrusted_a_ips:
+ - get_input: ssc_a_untrusted_ip_0
+ untrusted_sec_groups:
+ get_input: untrusted_net_sec_groups
+ mgmt_b_ips:
+ - get_input: ssc_b_mgmt_ip_0
+ artifacts:
+ ssc_a_template:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/ssc_a_template.json
+ perimeta_rtp_mscs:
+ type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_sw_a
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ untrusted_net_id:
+ get_input: untrusted_net_id
+ mgmt_net_plen:
+ get_input: mgmt_net_plen
+ perimeta_config:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - msc_a_template
+ params:
+ $COMPLETION_PARAMS: ''
+ $NTP_SERVER_IP_ADDRS:
+ get_input: ntp_server_ip_addrs
+ vm_a_names:
+ get_input: rtp_msc_a_names
+ untrusted_b_ips:
+ get_input: rtp_msc_b_untrusted_ips
+ ha_net_id:
+ get_input: int_ha_net_id
+ perimeta_param_server_group:
+ get_input: perimeta_param_server_group
+ untrusted_vlan_networks:
+ get_input: untrusted_vlan_networks
+ mgmt_sec_groups:
+ get_input: mgmt_net_sec_groups
+ perimeta_instance_index:
+ get_input: rtp_msc_index
+ untrusted_vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: perimeta_ha_sw_aServiceTemplate.yaml
+ perimeta_keypair:
+ get_input: perimeta_keypair
+ mgmt_vips:
+ get_input: rtp_msc_mgmt_vips
+ untrusted_vips:
+ get_input: rtp_msc_untrusted_vips
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_0:
+ get_input: availability_zone_0
+ availability_zone_1:
+ get_input: availability_zone_1
+ ha_a_ips:
+ get_input: rtp_msc_a_int_ha_ips
+ untrusted_v6_vips:
+ get_input: rtp_msc_untrusted_v6_vips
+ ha_sec_groups:
+ get_input: int_ha_net_sec_groups
+ trusted_a_ips:
+ get_input: rtp_msc_a_trusted_ips
+ untrusted_num_vlans:
+ get_input: untrusted_num_vlans
+ system_names:
+ get_input: rtp_msc_system_names
+ vm_b_names:
+ get_input: rtp_msc_b_names
+ trusted_sec_groups:
+ get_input: trusted_net_sec_groups
+ trusted_vips:
+ get_input: rtp_msc_trusted_vips
+ trusted_net_id:
+ get_input: trusted_net_id
+ ha_b_ips:
+ get_input: rtp_msc_b_int_ha_ips
+ untrusted_a_v6_ips:
+ get_input: rtp_msc_a_untrusted_v6_ips
+ untrusted_b_v6_ips:
+ get_input: rtp_msc_b_untrusted_v6_ips
+ mgmt_a_ips:
+ get_input: rtp_msc_a_mgmt_ips
+ vm_role: rtp_msc
+ trusted_b_ips:
+ get_input: rtp_msc_b_trusted_ips
+ perimeta_image_name:
+ get_input: rtp_msc_image_name
+ mgmt_net_default_gateway:
+ get_input: mgmt_net_default_gateway
+ untrusted_a_ips:
+ get_input: rtp_msc_a_untrusted_ips
+ untrusted_sec_groups:
+ get_input: untrusted_net_sec_groups
+ mgmt_net_id:
+ get_input: mgmt_net_id
+ perimeta_flavor_name:
+ get_input: rtp_msc_flavor_name
+ ha_network_plen:
+ get_input: int_ha_net_plen
+ mgmt_b_ips:
+ get_input: rtp_msc_b_mgmt_ips
+ artifacts:
+ msc_a_template:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/msc_a_template.json
+ 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 a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+ members:
+ - perimeta_ssc
+ - perimeta_rtp_mscs
+ module_2_perimeta_rtp_msc_rebuild_scaling_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_2_perimeta_rtp_msc_rebuild_scaling.yaml
+ description: |
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+ members:
+ - perimeta_rtp_mscs
+ module_2_perimeta_rtp_msc_a_healing_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_2_perimeta_rtp_msc_a_healing.yaml
+ description: |
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+ members:
+ - perimeta_rtp_mscs
+ module_1_perimeta_ssc_rebuild_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_1_perimeta_ssc_rebuild.yaml
+ description: |
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+ members:
+ - perimeta_ssc
+ module_1_perimeta_ssc_b_healing_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_1_perimeta_ssc_b_healing.yaml
+ description: |
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+ members:
+ - perimeta_ssc
+ module_2_perimeta_rtp_msc_b_healing_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_2_perimeta_rtp_msc_b_healing.yaml
+ description: |
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+ members:
+ - perimeta_rtp_mscs
+ module_1_perimeta_ssc_a_healing_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_1_perimeta_ssc_a_healing.yaml
+ description: |
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+ members:
+ - perimeta_ssc
+ outputs:
+ ssc_server_group:
+ description: Server group for SSC pair
+ value:
+ get_attribute:
+ - perimeta_ssc
+ - server_group_used
+ rtp_msc_server_groups:
+ description: Server groups for RTP MSC pairs
+ value:
+ get_attribute:
+ - perimeta_rtp_mscs
+ - server_group_used
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: 4.0.1 - 2016-10-28 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swServiceTemplate.yaml
new file mode 100644
index 0000000000..3b4f112371
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swServiceTemplate.yaml
@@ -0,0 +1,902 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: perimeta_ha_sw
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm_b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.vm_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
+ untrusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 2 network UUID
+ constraints: [
+ ]
+ mgmt_net_plen:
+ hidden: false
+ immutable: false
+ type: string
+ description: Prefix length of management network
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: Orchestration template configuration for instance.
+ vm_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
+ untrusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ constraints: [
+ ]
+ perimeta_param_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs - ignored
+ 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
+ mgmt_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on management interfaces.
+ entry_schema:
+ type: string
+ 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.
+ 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
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints: [
+ ]
+ mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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.
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ ha_a_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
+ untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on HA interfaces.
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ system_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 1 network UUID
+ constraints: [
+ ]
+ ha_b_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
+ untrusted_a_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ trusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ constraints: [
+ ]
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP address of management default gateway
+ untrusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ constraints: [
+ ]
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints: [
+ ]
+ ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ node_templates:
+ perimeta_b_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_b_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_a_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_a_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ personality:
+ /opt/MetaSwitch/init/custom.ini:
+ get_artifact:
+ - SELF
+ - custom
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group: perimeta_server_group_group
+ artifacts:
+ custom:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/custom.ini
+ perimeta_a_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_b_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_b_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_a_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group: perimeta_server_group_group
+ groups:
+ perimeta_server_group_group:
+ type: tosca.groups.Root
+ members:
+ - perimeta_a_server_0
+ - perimeta_b_server_0
+ perimeta_ha_sw_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/perimeta_ha_sw.yaml
+ description: |
+ HOT template to instantiate a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+ members:
+ - perimeta_b_ha_0_port
+ - perimeta_a_untrusted_0_vlan_ports
+ - perimeta_a_server_0
+ - perimeta_a_mgmt_0_port
+ - perimeta_b_trusted_0_port
+ - perimeta_b_untrusted_0_port
+ - perimeta_b_untrusted_0_vlan_ports
+ - perimeta_a_ha_0_port
+ - perimeta_a_trusted_0_port
+ - perimeta_b_mgmt_0_port
+ - perimeta_a_untrusted_0_port
+ - perimeta_b_server_0
+ outputs:
+ server_group_used:
+ description: Server group used for these VMs
+ value: perimeta_server_group_group
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_sw
+ capabilities:
+ attachment_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - attachment
+ binding_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - binding
+ host_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - host
+ binding_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - binding
+ binding_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - binding
+ binding_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - binding
+ binding_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - binding
+ endpoint_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - endpoint
+ attachment_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - attachment
+ attachment_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - attachment
+ attachment_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - attachment
+ scalable_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - scalable
+ binding_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - binding
+ binding_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - binding
+ attachment_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - attachment
+ os_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - os
+ attachment_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - attachment
+ attachment_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - attachment
+ binding_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - binding
+ binding_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - binding
+ scalable_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - scalable
+ endpoint_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - endpoint
+ binding_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - binding
+ os_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - os
+ host_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - host
+ attachment_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - attachment
+ requirements:
+ link_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - link
+ link_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - link
+ link_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - link
+ link_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - link
+ link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ - perimeta_b_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ local_storage_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - local_storage
+ link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ - perimeta_a_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ link_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - link
+ link_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - link
+ link_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - link
+ link_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - link
+ local_storage_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - local_storage
+ policies:
+ perimeta_server_group_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name:
+ str_replace:
+ template: $SYSTEM_server_group
+ params:
+ $SYSTEM:
+ get_input:
+ - system_names
+ - get_input: perimeta_instance_index
+ container_type: host
+ targets:
+ - perimeta_server_group_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_aServiceTemplate.yaml
new file mode 100644
index 0000000000..31ae5e5dec
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_aServiceTemplate.yaml
@@ -0,0 +1,613 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: perimeta_ha_sw_a
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm_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
+ untrusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 2 network UUID
+ constraints: [
+ ]
+ mgmt_net_plen:
+ hidden: false
+ immutable: false
+ type: string
+ description: Prefix length of management network
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: Orchestration template configuration for instance.
+ vm_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
+ untrusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ constraints: [
+ ]
+ perimeta_param_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs - ignored
+ 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
+ mgmt_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on management interfaces.
+ entry_schema:
+ type: string
+ 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.
+ 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
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints: [
+ ]
+ mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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.
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ ha_a_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
+ untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on HA interfaces.
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ system_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 1 network UUID
+ constraints: [
+ ]
+ ha_b_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
+ untrusted_a_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ trusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ constraints: [
+ ]
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP address of management default gateway
+ untrusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ constraints: [
+ ]
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints: [
+ ]
+ ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ node_templates:
+ perimeta_a_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_a_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_a_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ personality:
+ /opt/MetaSwitch/init/custom.ini:
+ get_artifact:
+ - SELF
+ - custom
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group:
+ get_input: perimeta_param_server_group
+ artifacts:
+ custom:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/custom.ini
+ perimeta_a_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_a_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ perimeta_ha_sw_a_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/perimeta_ha_sw_a.yaml
+ description: |
+ HOT template to instantiate a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+ members:
+ - perimeta_a_untrusted_0_vlan_ports
+ - perimeta_a_server_0
+ - perimeta_a_mgmt_0_port
+ - perimeta_a_ha_0_port
+ - perimeta_a_trusted_0_port
+ - perimeta_a_untrusted_0_port
+ outputs:
+ server_group_used:
+ description: Server group used for these VMs
+ value:
+ get_input: perimeta_param_server_group
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_sw_a
+ capabilities:
+ scalable_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - scalable
+ attachment_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - attachment
+ binding_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - binding
+ host_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - host
+ attachment_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - attachment
+ attachment_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - attachment
+ attachment_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - attachment
+ binding_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - binding
+ binding_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - binding
+ binding_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - binding
+ endpoint_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - endpoint
+ binding_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - binding
+ os_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - os
+ requirements:
+ link_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - link
+ link_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - link
+ link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ - perimeta_a_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ link_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - link
+ link_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - link
+ local_storage_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_bServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_bServiceTemplate.yaml
new file mode 100644
index 0000000000..76916a7ed6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_sw_bServiceTemplate.yaml
@@ -0,0 +1,604 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: perimeta_ha_sw_b
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm_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
+ untrusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 2 network UUID
+ constraints: [
+ ]
+ mgmt_net_plen:
+ hidden: false
+ immutable: false
+ type: string
+ description: Prefix length of management network
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: Orchestration template configuration for instance.
+ vm_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
+ untrusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ constraints: [
+ ]
+ perimeta_param_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs - ignored
+ 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
+ mgmt_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on management interfaces.
+ entry_schema:
+ type: string
+ 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.
+ 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
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints: [
+ ]
+ mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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.
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ ha_a_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
+ untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on HA interfaces.
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ system_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 1 network UUID
+ constraints: [
+ ]
+ ha_b_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
+ untrusted_a_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ trusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ constraints: [
+ ]
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP address of management default gateway
+ untrusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ constraints: [
+ ]
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints: [
+ ]
+ ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ node_templates:
+ perimeta_b_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_b_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_b_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_b_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group:
+ get_input: perimeta_param_server_group
+ groups:
+ perimeta_ha_sw_b_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/perimeta_ha_sw_b.yaml
+ description: |
+ HOT template to instantiate a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+ members:
+ - perimeta_b_ha_0_port
+ - perimeta_b_trusted_0_port
+ - perimeta_b_untrusted_0_port
+ - perimeta_b_untrusted_0_vlan_ports
+ - perimeta_b_mgmt_0_port
+ - perimeta_b_server_0
+ outputs:
+ server_group_used:
+ description: Server group used for these VMs
+ value:
+ get_input: perimeta_param_server_group
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_sw_b
+ capabilities:
+ binding_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - binding
+ binding_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - binding
+ binding_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - binding
+ os_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - os
+ binding_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - binding
+ binding_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - binding
+ scalable_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - scalable
+ attachment_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - attachment
+ attachment_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - attachment
+ endpoint_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - endpoint
+ attachment_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - attachment
+ host_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - host
+ attachment_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - attachment
+ requirements:
+ link_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - link
+ link_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - link
+ link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ - perimeta_b_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ local_storage_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - local_storage
+ link_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - link
+ link_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_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/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmuServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmuServiceTemplate.yaml
new file mode 100644
index 0000000000..841e26b953
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmuServiceTemplate.yaml
@@ -0,0 +1,1076 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: perimeta_ha_swmu
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm_b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ org.openecomp.resource.vfc.nodes.heat.vm_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
+ untrusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 2 network UUID
+ constraints: [
+ ]
+ mgmt_net_plen:
+ hidden: false
+ immutable: false
+ type: string
+ description: Prefix length of management network
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: Orchestration template configuration for instance.
+ vm_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
+ serv3_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 3 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ constraints: [
+ ]
+ perimeta_param_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs - ignored
+ 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
+ mgmt_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on management interfaces.
+ entry_schema:
+ type: string
+ 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.
+ 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
+ serv3_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 3 network UUID
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints: [
+ ]
+ mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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.
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ serv3_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ entry_schema:
+ type: string
+ unused_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network unused port network UUID
+ ha_a_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
+ untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on HA interfaces.
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ system_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ serv3_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on serv3 interfaces.
+ entry_schema:
+ type: string
+ trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 1 network UUID
+ constraints: [
+ ]
+ serv3_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_b_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
+ untrusted_a_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ trusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ constraints: [
+ ]
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP address of management default gateway
+ untrusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ constraints: [
+ ]
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints: [
+ ]
+ ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ node_templates:
+ perimeta_a_unused_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: unused_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_a_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_a_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_b_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_b_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_unused_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: unused_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_b_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_serv3_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: serv3_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - serv3_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - serv3_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: serv3_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_serv3_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: serv3_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - serv3_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - serv3_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: serv3_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ personality:
+ /opt/MetaSwitch/init/custom.ini:
+ get_artifact:
+ - SELF
+ - custom
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group: perimeta_server_group_group
+ artifacts:
+ custom:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/custom.ini
+ perimeta_b_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_a_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group: perimeta_server_group_group
+ groups:
+ perimeta_ha_swmu_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/perimeta_ha_swmu.yaml
+ description: |
+ HOT template to instantiate a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+ members:
+ - perimeta_a_unused_0_port
+ - perimeta_a_untrusted_0_vlan_ports
+ - perimeta_a_mgmt_0_port
+ - perimeta_b_untrusted_0_port
+ - perimeta_b_untrusted_0_vlan_ports
+ - perimeta_b_unused_0_port
+ - perimeta_a_trusted_0_port
+ - perimeta_b_mgmt_0_port
+ - perimeta_b_ha_0_port
+ - perimeta_b_serv3_0_port
+ - perimeta_a_serv3_0_port
+ - perimeta_a_server_0
+ - perimeta_b_trusted_0_port
+ - perimeta_a_ha_0_port
+ - perimeta_a_untrusted_0_port
+ - perimeta_b_server_0
+ perimeta_server_group_group:
+ type: tosca.groups.Root
+ members:
+ - perimeta_a_server_0
+ - perimeta_b_server_0
+ outputs:
+ server_group_used:
+ description: Server group used for these VMs
+ value: perimeta_server_group_group
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_swmu
+ capabilities:
+ attachment_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - attachment
+ binding_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - binding
+ host_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - host
+ binding_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - binding
+ binding_perimeta_b_unused_0_port:
+ - perimeta_b_unused_0_port
+ - binding
+ binding_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - binding
+ binding_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - binding
+ binding_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - binding
+ endpoint_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - endpoint
+ attachment_perimeta_b_unused_0_port:
+ - perimeta_b_unused_0_port
+ - attachment
+ attachment_perimeta_a_serv3_0_port:
+ - perimeta_a_serv3_0_port
+ - attachment
+ attachment_perimeta_b_serv3_0_port:
+ - perimeta_b_serv3_0_port
+ - attachment
+ attachment_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - attachment
+ attachment_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - attachment
+ attachment_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - attachment
+ binding_perimeta_b_serv3_0_port:
+ - perimeta_b_serv3_0_port
+ - binding
+ binding_perimeta_a_serv3_0_port:
+ - perimeta_a_serv3_0_port
+ - binding
+ scalable_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - scalable
+ binding_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - binding
+ binding_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - binding
+ attachment_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - attachment
+ os_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - os
+ attachment_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - attachment
+ attachment_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - attachment
+ binding_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - binding
+ binding_perimeta_a_unused_0_port:
+ - perimeta_a_unused_0_port
+ - binding
+ binding_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - binding
+ scalable_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - scalable
+ attachment_perimeta_a_unused_0_port:
+ - perimeta_a_unused_0_port
+ - attachment
+ endpoint_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - endpoint
+ binding_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - binding
+ os_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - os
+ host_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - host
+ attachment_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - attachment
+ requirements:
+ link_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - link
+ link_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - link
+ link_perimeta_a_unused_0_port:
+ - perimeta_a_unused_0_port
+ - link
+ link_perimeta_b_serv3_0_port:
+ - perimeta_b_serv3_0_port
+ - link
+ link_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - link
+ link_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - link
+ local_storage_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - local_storage
+ link_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - link
+ link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ - perimeta_b_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ local_storage_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - local_storage
+ link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ - perimeta_a_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ link_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - link
+ link_perimeta_a_serv3_0_port:
+ - perimeta_a_serv3_0_port
+ - link
+ link_perimeta_b_unused_0_port:
+ - perimeta_b_unused_0_port
+ - link
+ link_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - link
+ link_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - link
+ policies:
+ perimeta_server_group_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name:
+ str_replace:
+ template: $SYSTEM_server_group
+ params:
+ $SYSTEM:
+ get_input:
+ - system_names
+ - get_input: perimeta_instance_index
+ container_type: host
+ targets:
+ - perimeta_server_group_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_aServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_aServiceTemplate.yaml
new file mode 100644
index 0000000000..1c2a0473a7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_aServiceTemplate.yaml
@@ -0,0 +1,719 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: perimeta_ha_swmu_a
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm_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
+ untrusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 2 network UUID
+ constraints: [
+ ]
+ mgmt_net_plen:
+ hidden: false
+ immutable: false
+ type: string
+ description: Prefix length of management network
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: Orchestration template configuration for instance.
+ vm_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
+ serv3_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 3 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ constraints: [
+ ]
+ perimeta_param_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs - ignored
+ 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
+ mgmt_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on management interfaces.
+ entry_schema:
+ type: string
+ 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.
+ 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
+ serv3_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 3 network UUID
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints: [
+ ]
+ mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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.
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ serv3_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ entry_schema:
+ type: string
+ unused_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network unused port network UUID
+ ha_a_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
+ untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on HA interfaces.
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ system_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ serv3_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on serv3 interfaces.
+ entry_schema:
+ type: string
+ trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 1 network UUID
+ constraints: [
+ ]
+ serv3_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_b_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
+ untrusted_a_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ trusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ constraints: [
+ ]
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP address of management default gateway
+ untrusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ constraints: [
+ ]
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints: [
+ ]
+ ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ node_templates:
+ perimeta_a_unused_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: unused_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_a_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_a_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_serv3_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: serv3_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - serv3_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - serv3_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: serv3_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ personality:
+ /opt/MetaSwitch/init/custom.ini:
+ get_artifact:
+ - SELF
+ - custom
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group:
+ get_input: perimeta_param_server_group
+ artifacts:
+ custom:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/custom.ini
+ perimeta_a_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_a_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_a_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_a_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_a_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_a_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_a_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ perimeta_ha_swmu_a_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/perimeta_ha_swmu_a.yaml
+ description: |
+ HOT template to instantiate a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+ members:
+ - perimeta_a_unused_0_port
+ - perimeta_a_untrusted_0_vlan_ports
+ - perimeta_a_serv3_0_port
+ - perimeta_a_server_0
+ - perimeta_a_mgmt_0_port
+ - perimeta_a_ha_0_port
+ - perimeta_a_trusted_0_port
+ - perimeta_a_untrusted_0_port
+ outputs:
+ server_group_used:
+ description: Server group used for these VMs
+ value:
+ get_input: perimeta_param_server_group
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_swmu_a
+ capabilities:
+ scalable_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - scalable
+ attachment_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - attachment
+ binding_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - binding
+ host_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - host
+ attachment_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - attachment
+ attachment_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - attachment
+ attachment_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - attachment
+ binding_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - binding
+ binding_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - binding
+ binding_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - binding
+ endpoint_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - endpoint
+ binding_perimeta_a_unused_0_port:
+ - perimeta_a_unused_0_port
+ - binding
+ attachment_perimeta_a_serv3_0_port:
+ - perimeta_a_serv3_0_port
+ - attachment
+ attachment_perimeta_a_unused_0_port:
+ - perimeta_a_unused_0_port
+ - attachment
+ binding_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - binding
+ os_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - os
+ binding_perimeta_a_serv3_0_port:
+ - perimeta_a_serv3_0_port
+ - binding
+ requirements:
+ link_perimeta_a_trusted_0_port:
+ - perimeta_a_trusted_0_port
+ - link
+ link_perimeta_a_unused_0_port:
+ - perimeta_a_unused_0_port
+ - link
+ link_perimeta_a_mgmt_0_port:
+ - perimeta_a_mgmt_0_port
+ - link
+ link_contrail_vmi_subinterface_perimeta_a_untrusted_0_vlan_ports:
+ - perimeta_a_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ link_perimeta_a_untrusted_0_port:
+ - perimeta_a_untrusted_0_port
+ - link
+ link_perimeta_a_serv3_0_port:
+ - perimeta_a_serv3_0_port
+ - link
+ link_perimeta_a_ha_0_port:
+ - perimeta_a_ha_0_port
+ - link
+ local_storage_perimeta_a_server_0:
+ - perimeta_a_server_0
+ - local_storage \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_bServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_bServiceTemplate.yaml
new file mode 100644
index 0000000000..980339af58
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/perimeta_ha_swmu_bServiceTemplate.yaml
@@ -0,0 +1,710 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: perimeta_ha_swmu_b
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.vm_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
+ untrusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 2 network UUID
+ constraints: [
+ ]
+ mgmt_net_plen:
+ hidden: false
+ immutable: false
+ type: string
+ description: Prefix length of management network
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: Orchestration template configuration for instance.
+ vm_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
+ serv3_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 3 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ constraints: [
+ ]
+ perimeta_param_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs - ignored
+ 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
+ mgmt_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on management interfaces.
+ entry_schema:
+ type: string
+ 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.
+ 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
+ serv3_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 3 network UUID
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints: [
+ ]
+ mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 virtual IP addresses for all instances.
+ 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.
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ serv3_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ entry_schema:
+ type: string
+ unused_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network unused port network UUID
+ ha_a_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
+ untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ ha_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on HA interfaces.
+ entry_schema:
+ type: string
+ trusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: Number of VLANs to connect to on the untrusted/access network
+ system_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ vm_b_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
+ trusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ serv3_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on serv3 interfaces.
+ entry_schema:
+ type: string
+ trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of service network 1 virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network 1 network UUID
+ constraints: [
+ ]
+ serv3_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ entry_schema:
+ type: string
+ ha_b_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
+ untrusted_a_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_b_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ entry_schema:
+ type: string
+ mgmt_a_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
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ trusted_b_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ constraints: [
+ ]
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP address of management default gateway
+ untrusted_a_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ entry_schema:
+ type: string
+ untrusted_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on untrusted interfaces.
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ constraints: [
+ ]
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints: [
+ ]
+ ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ mgmt_b_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
+ node_templates:
+ perimeta_b_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: ha_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - ha_b_ips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_serv3_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: serv3_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - serv3_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - serv3_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: serv3_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: trusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - trusted_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: untrusted_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ - ip_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: untrusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_untrusted_0_vlan_ports:
+ type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ directives:
+ - substitutable
+ properties:
+ vlan_ids:
+ get_input: untrusted_vlan_ids
+ service_template_filter:
+ substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
+ count:
+ get_input: untrusted_num_vlans
+ mandatory: false
+ parent_interface: perimeta_b_untrusted_0_port
+ virtual_ipv6_address:
+ get_input:
+ - untrusted_v6_vips
+ - get_input: perimeta_instance_index
+ virtual_ip_address:
+ get_input:
+ - untrusted_vips
+ - get_input: perimeta_instance_index
+ mac_address:
+ get_attribute:
+ - perimeta_b_untrusted_0_port
+ - mac_address
+ ipv6_address:
+ get_input:
+ - untrusted_b_v6_ips
+ - get_input: perimeta_instance_index
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ subinterface_instance_index:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ ip_address:
+ get_input:
+ - untrusted_b_ips
+ - get_input: perimeta_instance_index
+ vlan_networks:
+ get_input: untrusted_vlan_networks
+ requirements:
+ - binding_contrail_vmi_subinterface:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_untrusted_0_port
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_unused_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: unused_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ get_input: mgmt_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - mgmt_b_ips
+ - get_input: perimeta_instance_index
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_b_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.vm_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
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input:
+ - vm_b_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group:
+ get_input: perimeta_param_server_group
+ groups:
+ perimeta_ha_swmu_b_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/perimeta_ha_swmu_b.yaml
+ description: |
+ HOT template to instantiate a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+ members:
+ - perimeta_b_ha_0_port
+ - perimeta_b_serv3_0_port
+ - perimeta_b_trusted_0_port
+ - perimeta_b_untrusted_0_port
+ - perimeta_b_untrusted_0_vlan_ports
+ - perimeta_b_unused_0_port
+ - perimeta_b_mgmt_0_port
+ - perimeta_b_server_0
+ outputs:
+ server_group_used:
+ description: Server group used for these VMs
+ value:
+ get_input: perimeta_param_server_group
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_swmu_b
+ capabilities:
+ binding_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - binding
+ binding_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - binding
+ binding_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - binding
+ os_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - os
+ binding_perimeta_b_unused_0_port:
+ - perimeta_b_unused_0_port
+ - binding
+ binding_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - binding
+ attachment_perimeta_b_unused_0_port:
+ - perimeta_b_unused_0_port
+ - attachment
+ binding_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - binding
+ attachment_perimeta_b_serv3_0_port:
+ - perimeta_b_serv3_0_port
+ - attachment
+ scalable_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - scalable
+ attachment_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - attachment
+ attachment_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_0_port
+ - attachment
+ endpoint_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - endpoint
+ binding_perimeta_b_serv3_0_port:
+ - perimeta_b_serv3_0_port
+ - binding
+ attachment_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - attachment
+ host_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - host
+ attachment_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - attachment
+ requirements:
+ link_perimeta_b_untrusted_0_port:
+ - perimeta_b_untrusted_0_port
+ - link
+ link_perimeta_b_serv3_0_port:
+ - perimeta_b_serv3_0_port
+ - link
+ link_perimeta_b_ha_0_port:
+ - perimeta_b_ha_0_port
+ - link
+ link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
+ - perimeta_b_untrusted_0_vlan_ports
+ - link_contrail_vmi_subinterface
+ local_storage_perimeta_b_server_0:
+ - perimeta_b_server_0
+ - local_storage
+ link_perimeta_b_unused_0_port:
+ - perimeta_b_unused_0_port
+ - link
+ link_perimeta_b_mgmt_0_port:
+ - perimeta_b_mgmt_0_port
+ - link
+ link_perimeta_b_trusted_0_port:
+ - perimeta_b_trusted_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/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/vlan_subinterface_dualServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/vlan_subinterface_dualServiceTemplate.yaml
new file mode 100644
index 0000000000..344092835c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/expectedoutputfiles/vlan_subinterface_dualServiceTemplate.yaml
@@ -0,0 +1,156 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: vlan_subinterface_dual
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ vlan_ids:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of VLAN IDs to use for subinterfaces
+ entry_schema:
+ type: string
+ parent_interface:
+ hidden: false
+ immutable: false
+ type: string
+ description: Parent Contrail interface
+ virtual_ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ description: virtual IPv6 address associated with subinterfaces
+ virtual_ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ description: virtual IPv4 address associated with subinterfaces
+ mac_address:
+ hidden: false
+ immutable: false
+ type: string
+ description: MAC address to use for subinterface
+ ipv6_address:
+ hidden: false
+ immutable: false
+ type: string
+ description: IPv6 address associated with subinterfaces
+ subinterface_name_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ description: Combined with subinterface_instance_index, this is used as the name of the subinterface resource
+ subinterface_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.
+ ip_address:
+ hidden: false
+ immutable: false
+ type: string
+ description: IPv4 address associated with subinterfaces
+ vlan_networks:
+ hidden: false
+ immutable: false
+ 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
+ entry_schema:
+ type: string
+ node_templates:
+ contrail_vmi_subinterface:
+ type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ properties:
+ virtual_machine_interface_refs:
+ - get_input: parent_interface
+ name:
+ str_replace:
+ template: $NAME$VLAN
+ params:
+ $NAME:
+ get_input: subinterface_name_prefix
+ $VLAN:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_network_refs:
+ - get_input:
+ - vlan_networks
+ - get_input: subinterface_instance_index
+ virtual_machine_interface_properties:
+ sub_interface_vlan_tag:
+ get_input:
+ - vlan_ids
+ - get_input: subinterface_instance_index
+ virtual_machine_interface_allowed_address_pairs:
+ allowed_address_pair:
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ip_address
+ ip_prefix_len: 32
+ mac:
+ get_input: mac_address
+ - address_mode: active-standby
+ ip:
+ ip_prefix:
+ get_input: virtual_ipv6_address
+ ip_prefix_len: 128
+ mac:
+ get_input: mac_address
+ virtual_machine_interface_mac_addresses:
+ mac_address:
+ - get_input: mac_address
+ groups:
+ vlan_subinterface_dual_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/vlan_subinterface_dual.yaml
+ description: |
+ HOT template to instantiate a single Contrail VLAN sub-interface with associated instance IP addresses and allowed address pairs
+ members:
+ - contrail_vmi_subinterface
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
+ requirements:
+ binding_contrail_vmi_subinterface:
+ - contrail_vmi_subinterface
+ - binding
+ link_contrail_vmi_subinterface:
+ - contrail_vmi_subinterface
+ - 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/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..f98a0c35f5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/MANIFEST.json
@@ -0,0 +1,94 @@
+{
+ "name": "vTSBC",
+ "description": "",
+ "data": [
+ {
+ "file": "module_2_perimeta_rtp_msc_b_healing.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "module_1_perimeta_ssc_a_healing.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "module_1_perimeta_ssc_rebuild.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "perimeta_ha_swmu.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "perimeta_ha_sw_b.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "module_2_perimeta_rtp_msc_a_healing.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "perimeta_ha_sw.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "vlan_subinterface_dual.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "module_2_perimeta_rtp_msc_rebuild_scaling.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "perimeta_ha_swmu_b.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "module_1_perimeta_ssc_b_healing.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "perimeta_ha_swmu_a.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "base_perimeta_deployment_create.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_perimeta_deployment_create.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "perimeta_ha_sw_a.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "ssc_a_template.json",
+ "type": "OTHER"
+ },
+ {
+ "file": "msc_a_template.json",
+ "type": "OTHER"
+ },
+ {
+ "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/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/base_perimeta_deployment_create.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/base_perimeta_deployment_create.yaml
new file mode 100644
index 0000000000..ce3b53340f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/base_perimeta_deployment_create.yaml
@@ -0,0 +1,442 @@
+# Heat template which intstantiates a Perimeta SSC and up to 10 Perimeta
+# RTP MSCs and up to 10 Perimeta MSRP MSCs. Currently all instances are
+# HA although standalone MSCs may be supported in future.
+#
+# This Heat template commissions, partners and configures the Perimeta SSC and
+# MSCs with basic configuration defined by ssc_a_template.json,
+# msc_a_template.json and mmc_a_template.json. These can be modified
+# as required to obtain the required Perimeta configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+
+parameters:
+ # General VNF parameters
+ vnf_id:
+ type: string
+ description: ID of VNF
+
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints:
+ - custom_constraint: nova.keypair
+ 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)
+ perimeta_param_server_group:
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+
+ # 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
+ mgmt_net_sec_groups:
+ type: comma_delimited_list
+ description: Management network security groups
+
+ # Internal high availability network parameters
+ int_ha_net_id:
+ type: string
+ description: Internal HA network ID
+ constraints:
+ - custom_constraint: neutron.network
+ int_ha_net_plen:
+ type: number
+ description: Intermal HA network prefix length.
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: int_ha_net_plen must be between 0 and 32
+ int_ha_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with internal HA network
+
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with trusted/core network
+
+ # Untrusted/access network parameters
+ untrusted_net_id:
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with untrusted/access network
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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 network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id:
+ type: string
+ description: Unused network ID
+ constraints:
+ - custom_constraint: neutron.network
+
+ # 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_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: VM A name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ 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,31}$'
+ description: VM B name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_system_name_0:
+ type: string
+ description: System name of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: System name must be 32 characters or less and a valid hostname. 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. Only required when predefining VIPs.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on management/Rf network
+ ssc_rf_vip_0:
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ ssc_a_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+
+ # RTP MSC parameters
+ rtp_msc_count:
+ type: number
+ description: Count of required RTP MSCs
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ 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
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM A instances
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM B instances
+ rtp_msc_system_names:
+ type: comma_delimited_list
+ description: List of system names of RTP MSC instances
+
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+resources:
+
+ # Perimeta SSC
+ perimeta_ssc:
+ type: perimeta_ha_swmu.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'ssc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: [{ get_param: ssc_system_name_0 }]
+ vm_a_names: [{ get_param: ssc_a_name_0 }]
+ vm_b_names: [{ get_param: ssc_b_name_0 }]
+ perimeta_instance_index: 0
+ perimeta_image_name: { get_param: ssc_image_name }
+ perimeta_flavor_name: { get_param: ssc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: [{ get_param: ssc_mgmt_vip_0 }]
+ mgmt_a_ips: [{ get_param: ssc_a_mgmt_ip_0 }]
+ mgmt_b_ips: [{ get_param: ssc_b_mgmt_ip_0 }]
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: [{ get_param: ssc_a_int_ha_ip_0 }]
+ ha_b_ips: [{ get_param: ssc_b_int_ha_ip_0 }]
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: [{ get_param: ssc_trusted_vip_0 }]
+ trusted_a_ips: [{ get_param: ssc_a_trusted_ip_0 }]
+ trusted_b_ips: [{ get_param: ssc_b_trusted_ip_0 }]
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: [{ get_param: ssc_untrusted_vip_0 }]
+ untrusted_v6_vips: [{ get_param: ssc_untrusted_v6_vip_0 }]
+ untrusted_a_ips: [{ get_param: ssc_a_untrusted_ip_0 }]
+ untrusted_a_v6_ips: [{ get_param: ssc_a_untrusted_v6_ip_0 }]
+ untrusted_b_ips: [{ get_param: ssc_b_untrusted_ip_0 }]
+ untrusted_b_v6_ips: [{ get_param: ssc_b_untrusted_v6_ip_0 }]
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ serv3_net_id: { get_param: mgmt_net_id }
+ serv3_vips: [{ get_param: ssc_rf_vip_0 }]
+ serv3_a_ips: [{ get_param: ssc_a_rf_ip_0 }]
+ serv3_b_ips: [{ get_param: ssc_b_rf_ip_0 }]
+ serv3_sec_groups: { get_param: mgmt_net_sec_groups }
+ unused_net_id: { get_param: unused_port_net_id }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: ssc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+ # Perimeta RTP MSCs.
+ perimeta_rtp_mscs:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: rtp_msc_count }
+ resource_def:
+ type: perimeta_ha_sw.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'rtp_msc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: { get_param: rtp_msc_system_names }
+ vm_a_names: { get_param: rtp_msc_a_names }
+ vm_b_names: { get_param: rtp_msc_b_names }
+ perimeta_instance_index: "%index%"
+ perimeta_image_name: { get_param: rtp_msc_image_name }
+ perimeta_flavor_name: { get_param: rtp_msc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: { get_param: rtp_msc_mgmt_vips }
+ mgmt_a_ips: { get_param: rtp_msc_a_mgmt_ips }
+ mgmt_b_ips: { get_param: rtp_msc_b_mgmt_ips }
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: { get_param: rtp_msc_a_int_ha_ips }
+ ha_b_ips: { get_param: rtp_msc_b_int_ha_ips }
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: { get_param: rtp_msc_trusted_vips }
+ trusted_a_ips: { get_param: rtp_msc_a_trusted_ips }
+ trusted_b_ips: { get_param: rtp_msc_b_trusted_ips }
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: { get_param: rtp_msc_untrusted_vips }
+ untrusted_v6_vips: { get_param: rtp_msc_untrusted_v6_vips }
+ untrusted_a_ips: { get_param: rtp_msc_a_untrusted_ips }
+ untrusted_a_v6_ips: { get_param: rtp_msc_a_untrusted_v6_ips }
+ untrusted_b_ips: { get_param: rtp_msc_b_untrusted_ips }
+ untrusted_b_v6_ips: { get_param: rtp_msc_b_untrusted_v6_ips }
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: msc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+
+outputs:
+
+ ssc_server_group:
+ description: Server group for SSC pair
+ value: { get_attr: [ perimeta_ssc, server_group_used ] }
+
+ rtp_msc_server_groups:
+ description: Server groups for RTP MSC pairs
+ value: { get_attr: [ perimeta_rtp_mscs, server_group_used ] }
+
+
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: "4.0.1 - 2016-10-28"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_a_healing.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_a_healing.yaml
new file mode 100644
index 0000000000..d00c51a73f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_a_healing.yaml
@@ -0,0 +1,384 @@
+# Heat template which intstantiates a Perimeta SSC and up to 10 Perimeta
+# RTP MSCs and up to 10 Perimeta MSRP MSCs. Currently all instances are
+# HA although standalone MSCs may be supported in future.
+#
+# This Heat template commissions, partners and configures the Perimeta SSC and
+# MSCs with basic configuration defined by ssc_a_template.json,
+# msc_a_template.json and mmc_a_template.json. These can be modified
+# as required to obtain the required Perimeta configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+
+parameters:
+ # General VNF parameters
+ vnf_id:
+ type: string
+ description: ID of VNF
+
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints:
+ - custom_constraint: nova.keypair
+ 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)
+ perimeta_param_server_group:
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+
+ # 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
+ mgmt_net_sec_groups:
+ type: comma_delimited_list
+ description: Management network security groups
+
+ # Internal high availability network parameters
+ int_ha_net_id:
+ type: string
+ description: Internal HA network ID
+ constraints:
+ - custom_constraint: neutron.network
+ int_ha_net_plen:
+ type: number
+ description: Intermal HA network prefix length.
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: int_ha_net_plen must be between 0 and 32
+ int_ha_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with internal HA network
+
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with trusted/core network
+
+ # Untrusted/access network parameters
+ untrusted_net_id:
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with untrusted/access network
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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 network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id:
+ type: string
+ description: Unused network ID
+ constraints:
+ - custom_constraint: neutron.network
+
+ # 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_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: VM A name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ 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,31}$'
+ description: VM B name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_system_name_0:
+ type: string
+ description: System name of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: System name must be 32 characters or less and a valid hostname. 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. Only required when predefining VIPs.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on management/Rf network
+ ssc_rf_vip_0:
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ ssc_a_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+
+ # RTP MSC parameters
+ rtp_msc_count:
+ type: number
+ description: Count of required RTP MSCs
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ 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
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM A instances
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM B instances
+ rtp_msc_system_names:
+ type: comma_delimited_list
+ description: List of system names of RTP MSC instances
+
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+resources:
+
+ # Perimeta SSC
+ perimeta_ssc:
+ type: perimeta_ha_swmu_a.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'ssc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: [{ get_param: ssc_system_name_0 }]
+ vm_a_names: [{ get_param: ssc_a_name_0 }]
+ vm_b_names: [{ get_param: ssc_b_name_0 }]
+ perimeta_instance_index: 0
+ perimeta_image_name: { get_param: ssc_image_name }
+ perimeta_flavor_name: { get_param: ssc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: [{ get_param: ssc_mgmt_vip_0 }]
+ mgmt_a_ips: [{ get_param: ssc_a_mgmt_ip_0 }]
+ mgmt_b_ips: [{ get_param: ssc_b_mgmt_ip_0 }]
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: [{ get_param: ssc_a_int_ha_ip_0 }]
+ ha_b_ips: [{ get_param: ssc_b_int_ha_ip_0 }]
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: [{ get_param: ssc_trusted_vip_0 }]
+ trusted_a_ips: [{ get_param: ssc_a_trusted_ip_0 }]
+ trusted_b_ips: [{ get_param: ssc_b_trusted_ip_0 }]
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: [{ get_param: ssc_untrusted_vip_0 }]
+ untrusted_v6_vips: [{ get_param: ssc_untrusted_v6_vip_0 }]
+ untrusted_a_ips: [{ get_param: ssc_a_untrusted_ip_0 }]
+ untrusted_a_v6_ips: [{ get_param: ssc_a_untrusted_v6_ip_0 }]
+ untrusted_b_ips: [{ get_param: ssc_b_untrusted_ip_0 }]
+ untrusted_b_v6_ips: [{ get_param: ssc_b_untrusted_v6_ip_0 }]
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ serv3_net_id: { get_param: mgmt_net_id }
+ serv3_vips: [{ get_param: ssc_rf_vip_0 }]
+ serv3_a_ips: [{ get_param: ssc_a_rf_ip_0 }]
+ serv3_b_ips: [{ get_param: ssc_b_rf_ip_0 }]
+ serv3_sec_groups: { get_param: mgmt_net_sec_groups }
+ unused_net_id: { get_param: unused_port_net_id }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: ssc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+
+
+outputs:
+
+ ssc_server_group:
+ description: Server group for SSC pair
+ value: { get_attr: [ perimeta_ssc, server_group_used ] }
+
+
+
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: "4.0.1 - 2016-10-28"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_b_healing.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_b_healing.yaml
new file mode 100644
index 0000000000..8af8a1a7ea
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_b_healing.yaml
@@ -0,0 +1,384 @@
+# Heat template which intstantiates a Perimeta SSC and up to 10 Perimeta
+# RTP MSCs and up to 10 Perimeta MSRP MSCs. Currently all instances are
+# HA although standalone MSCs may be supported in future.
+#
+# This Heat template commissions, partners and configures the Perimeta SSC and
+# MSCs with basic configuration defined by ssc_a_template.json,
+# msc_a_template.json and mmc_a_template.json. These can be modified
+# as required to obtain the required Perimeta configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+
+parameters:
+ # General VNF parameters
+ vnf_id:
+ type: string
+ description: ID of VNF
+
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints:
+ - custom_constraint: nova.keypair
+ 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)
+ perimeta_param_server_group:
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+
+ # 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
+ mgmt_net_sec_groups:
+ type: comma_delimited_list
+ description: Management network security groups
+
+ # Internal high availability network parameters
+ int_ha_net_id:
+ type: string
+ description: Internal HA network ID
+ constraints:
+ - custom_constraint: neutron.network
+ int_ha_net_plen:
+ type: number
+ description: Intermal HA network prefix length.
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: int_ha_net_plen must be between 0 and 32
+ int_ha_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with internal HA network
+
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with trusted/core network
+
+ # Untrusted/access network parameters
+ untrusted_net_id:
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with untrusted/access network
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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 network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id:
+ type: string
+ description: Unused network ID
+ constraints:
+ - custom_constraint: neutron.network
+
+ # 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_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: VM A name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ 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,31}$'
+ description: VM B name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_system_name_0:
+ type: string
+ description: System name of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: System name must be 32 characters or less and a valid hostname. 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. Only required when predefining VIPs.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on management/Rf network
+ ssc_rf_vip_0:
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ ssc_a_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+
+ # RTP MSC parameters
+ rtp_msc_count:
+ type: number
+ description: Count of required RTP MSCs
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ 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
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM A instances
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM B instances
+ rtp_msc_system_names:
+ type: comma_delimited_list
+ description: List of system names of RTP MSC instances
+
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+resources:
+
+ # Perimeta SSC
+ perimeta_ssc:
+ type: perimeta_ha_swmu_b.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'ssc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: [{ get_param: ssc_system_name_0 }]
+ vm_a_names: [{ get_param: ssc_a_name_0 }]
+ vm_b_names: [{ get_param: ssc_b_name_0 }]
+ perimeta_instance_index: 0
+ perimeta_image_name: { get_param: ssc_image_name }
+ perimeta_flavor_name: { get_param: ssc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: [{ get_param: ssc_mgmt_vip_0 }]
+ mgmt_a_ips: [{ get_param: ssc_a_mgmt_ip_0 }]
+ mgmt_b_ips: [{ get_param: ssc_b_mgmt_ip_0 }]
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: [{ get_param: ssc_a_int_ha_ip_0 }]
+ ha_b_ips: [{ get_param: ssc_b_int_ha_ip_0 }]
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: [{ get_param: ssc_trusted_vip_0 }]
+ trusted_a_ips: [{ get_param: ssc_a_trusted_ip_0 }]
+ trusted_b_ips: [{ get_param: ssc_b_trusted_ip_0 }]
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: [{ get_param: ssc_untrusted_vip_0 }]
+ untrusted_v6_vips: [{ get_param: ssc_untrusted_v6_vip_0 }]
+ untrusted_a_ips: [{ get_param: ssc_a_untrusted_ip_0 }]
+ untrusted_a_v6_ips: [{ get_param: ssc_a_untrusted_v6_ip_0 }]
+ untrusted_b_ips: [{ get_param: ssc_b_untrusted_ip_0 }]
+ untrusted_b_v6_ips: [{ get_param: ssc_b_untrusted_v6_ip_0 }]
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ serv3_net_id: { get_param: mgmt_net_id }
+ serv3_vips: [{ get_param: ssc_rf_vip_0 }]
+ serv3_a_ips: [{ get_param: ssc_a_rf_ip_0 }]
+ serv3_b_ips: [{ get_param: ssc_b_rf_ip_0 }]
+ serv3_sec_groups: { get_param: mgmt_net_sec_groups }
+ unused_net_id: { get_param: unused_port_net_id }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: ssc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+
+
+outputs:
+
+ ssc_server_group:
+ description: Server group for SSC pair
+ value: { get_attr: [ perimeta_ssc, server_group_used ] }
+
+
+
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: "4.0.1 - 2016-10-28"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_rebuild.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_rebuild.yaml
new file mode 100644
index 0000000000..0a8fc31207
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_1_perimeta_ssc_rebuild.yaml
@@ -0,0 +1,384 @@
+# Heat template which intstantiates a Perimeta SSC and up to 10 Perimeta
+# RTP MSCs and up to 10 Perimeta MSRP MSCs. Currently all instances are
+# HA although standalone MSCs may be supported in future.
+#
+# This Heat template commissions, partners and configures the Perimeta SSC and
+# MSCs with basic configuration defined by ssc_a_template.json,
+# msc_a_template.json and mmc_a_template.json. These can be modified
+# as required to obtain the required Perimeta configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+
+parameters:
+ # General VNF parameters
+ vnf_id:
+ type: string
+ description: ID of VNF
+
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints:
+ - custom_constraint: nova.keypair
+ 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)
+ perimeta_param_server_group:
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+
+ # 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
+ mgmt_net_sec_groups:
+ type: comma_delimited_list
+ description: Management network security groups
+
+ # Internal high availability network parameters
+ int_ha_net_id:
+ type: string
+ description: Internal HA network ID
+ constraints:
+ - custom_constraint: neutron.network
+ int_ha_net_plen:
+ type: number
+ description: Intermal HA network prefix length.
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: int_ha_net_plen must be between 0 and 32
+ int_ha_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with internal HA network
+
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with trusted/core network
+
+ # Untrusted/access network parameters
+ untrusted_net_id:
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with untrusted/access network
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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 network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id:
+ type: string
+ description: Unused network ID
+ constraints:
+ - custom_constraint: neutron.network
+
+ # 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_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: VM A name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ 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,31}$'
+ description: VM B name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_system_name_0:
+ type: string
+ description: System name of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: System name must be 32 characters or less and a valid hostname. 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. Only required when predefining VIPs.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on management/Rf network
+ ssc_rf_vip_0:
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ ssc_a_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+
+ # RTP MSC parameters
+ rtp_msc_count:
+ type: number
+ description: Count of required RTP MSCs
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ 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
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM A instances
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM B instances
+ rtp_msc_system_names:
+ type: comma_delimited_list
+ description: List of system names of RTP MSC instances
+
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+resources:
+
+ # Perimeta SSC
+ perimeta_ssc:
+ type: perimeta_ha_swmu.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'ssc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: [{ get_param: ssc_system_name_0 }]
+ vm_a_names: [{ get_param: ssc_a_name_0 }]
+ vm_b_names: [{ get_param: ssc_b_name_0 }]
+ perimeta_instance_index: 0
+ perimeta_image_name: { get_param: ssc_image_name }
+ perimeta_flavor_name: { get_param: ssc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: [{ get_param: ssc_mgmt_vip_0 }]
+ mgmt_a_ips: [{ get_param: ssc_a_mgmt_ip_0 }]
+ mgmt_b_ips: [{ get_param: ssc_b_mgmt_ip_0 }]
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: [{ get_param: ssc_a_int_ha_ip_0 }]
+ ha_b_ips: [{ get_param: ssc_b_int_ha_ip_0 }]
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: [{ get_param: ssc_trusted_vip_0 }]
+ trusted_a_ips: [{ get_param: ssc_a_trusted_ip_0 }]
+ trusted_b_ips: [{ get_param: ssc_b_trusted_ip_0 }]
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: [{ get_param: ssc_untrusted_vip_0 }]
+ untrusted_v6_vips: [{ get_param: ssc_untrusted_v6_vip_0 }]
+ untrusted_a_ips: [{ get_param: ssc_a_untrusted_ip_0 }]
+ untrusted_a_v6_ips: [{ get_param: ssc_a_untrusted_v6_ip_0 }]
+ untrusted_b_ips: [{ get_param: ssc_b_untrusted_ip_0 }]
+ untrusted_b_v6_ips: [{ get_param: ssc_b_untrusted_v6_ip_0 }]
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ serv3_net_id: { get_param: mgmt_net_id }
+ serv3_vips: [{ get_param: ssc_rf_vip_0 }]
+ serv3_a_ips: [{ get_param: ssc_a_rf_ip_0 }]
+ serv3_b_ips: [{ get_param: ssc_b_rf_ip_0 }]
+ serv3_sec_groups: { get_param: mgmt_net_sec_groups }
+ unused_net_id: { get_param: unused_port_net_id }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: ssc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+
+
+outputs:
+
+ ssc_server_group:
+ description: Server group for SSC pair
+ value: { get_attr: [ perimeta_ssc, server_group_used ] }
+
+
+
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: "4.0.1 - 2016-10-28"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_a_healing.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_a_healing.yaml
new file mode 100644
index 0000000000..e5a1e75a94
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_a_healing.yaml
@@ -0,0 +1,381 @@
+# Heat template which intstantiates a Perimeta SSC and up to 10 Perimeta
+# RTP MSCs and up to 10 Perimeta MSRP MSCs. Currently all instances are
+# HA although standalone MSCs may be supported in future.
+#
+# This Heat template commissions, partners and configures the Perimeta SSC and
+# MSCs with basic configuration defined by ssc_a_template.json,
+# msc_a_template.json and mmc_a_template.json. These can be modified
+# as required to obtain the required Perimeta configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+
+parameters:
+ # General VNF parameters
+ vnf_id:
+ type: string
+ description: ID of VNF
+
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints:
+ - custom_constraint: nova.keypair
+ 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)
+ perimeta_param_server_group:
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+
+ # 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
+ mgmt_net_sec_groups:
+ type: comma_delimited_list
+ description: Management network security groups
+
+ # Internal high availability network parameters
+ int_ha_net_id:
+ type: string
+ description: Internal HA network ID
+ constraints:
+ - custom_constraint: neutron.network
+ int_ha_net_plen:
+ type: number
+ description: Intermal HA network prefix length.
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: int_ha_net_plen must be between 0 and 32
+ int_ha_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with internal HA network
+
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with trusted/core network
+
+ # Untrusted/access network parameters
+ untrusted_net_id:
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with untrusted/access network
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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 network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id:
+ type: string
+ description: Unused network ID
+ constraints:
+ - custom_constraint: neutron.network
+
+ # 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_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: VM A name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ 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,31}$'
+ description: VM B name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_system_name_0:
+ type: string
+ description: System name of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: System name must be 32 characters or less and a valid hostname. 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. Only required when predefining VIPs.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on management/Rf network
+ ssc_rf_vip_0:
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ ssc_a_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+
+ # RTP MSC parameters
+ rtp_msc_count:
+ type: number
+ description: Count of required RTP MSCs
+ rtp_msc_index:
+ type: number
+ description: Index of RTP MSC to create/heal.
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ 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
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM A instances
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM B instances
+ rtp_msc_system_names:
+ type: comma_delimited_list
+ description: List of system names of RTP MSC instances
+
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+resources:
+
+
+ # Perimeta RTP MSCs.
+ perimeta_rtp_mscs:
+ type: perimeta_ha_sw_a.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'rtp_msc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: { get_param: rtp_msc_system_names }
+ vm_a_names: { get_param: rtp_msc_a_names }
+ vm_b_names: { get_param: rtp_msc_b_names }
+ perimeta_instance_index: { get_param: rtp_msc_index }
+ perimeta_image_name: { get_param: rtp_msc_image_name }
+ perimeta_flavor_name: { get_param: rtp_msc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: { get_param: rtp_msc_mgmt_vips }
+ mgmt_a_ips: { get_param: rtp_msc_a_mgmt_ips }
+ mgmt_b_ips: { get_param: rtp_msc_b_mgmt_ips }
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: { get_param: rtp_msc_a_int_ha_ips }
+ ha_b_ips: { get_param: rtp_msc_b_int_ha_ips }
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: { get_param: rtp_msc_trusted_vips }
+ trusted_a_ips: { get_param: rtp_msc_a_trusted_ips }
+ trusted_b_ips: { get_param: rtp_msc_b_trusted_ips }
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: { get_param: rtp_msc_untrusted_vips }
+ untrusted_v6_vips: { get_param: rtp_msc_untrusted_v6_vips }
+ untrusted_a_ips: { get_param: rtp_msc_a_untrusted_ips }
+ untrusted_a_v6_ips: { get_param: rtp_msc_a_untrusted_v6_ips }
+ untrusted_b_ips: { get_param: rtp_msc_b_untrusted_ips }
+ untrusted_b_v6_ips: { get_param: rtp_msc_b_untrusted_v6_ips }
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: msc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+
+outputs:
+
+
+ rtp_msc_server_groups:
+ description: Server groups for RTP MSC pairs
+ value: { get_attr: [ perimeta_rtp_mscs, server_group_used ] }
+
+
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: "4.0.1 - 2016-10-28"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_b_healing.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_b_healing.yaml
new file mode 100644
index 0000000000..b071897d70
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_b_healing.yaml
@@ -0,0 +1,381 @@
+# Heat template which intstantiates a Perimeta SSC and up to 10 Perimeta
+# RTP MSCs and up to 10 Perimeta MSRP MSCs. Currently all instances are
+# HA although standalone MSCs may be supported in future.
+#
+# This Heat template commissions, partners and configures the Perimeta SSC and
+# MSCs with basic configuration defined by ssc_a_template.json,
+# msc_a_template.json and mmc_a_template.json. These can be modified
+# as required to obtain the required Perimeta configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+
+parameters:
+ # General VNF parameters
+ vnf_id:
+ type: string
+ description: ID of VNF
+
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints:
+ - custom_constraint: nova.keypair
+ 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)
+ perimeta_param_server_group:
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+
+ # 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
+ mgmt_net_sec_groups:
+ type: comma_delimited_list
+ description: Management network security groups
+
+ # Internal high availability network parameters
+ int_ha_net_id:
+ type: string
+ description: Internal HA network ID
+ constraints:
+ - custom_constraint: neutron.network
+ int_ha_net_plen:
+ type: number
+ description: Intermal HA network prefix length.
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: int_ha_net_plen must be between 0 and 32
+ int_ha_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with internal HA network
+
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with trusted/core network
+
+ # Untrusted/access network parameters
+ untrusted_net_id:
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with untrusted/access network
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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 network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id:
+ type: string
+ description: Unused network ID
+ constraints:
+ - custom_constraint: neutron.network
+
+ # 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_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: VM A name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ 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,31}$'
+ description: VM B name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_system_name_0:
+ type: string
+ description: System name of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: System name must be 32 characters or less and a valid hostname. 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. Only required when predefining VIPs.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on management/Rf network
+ ssc_rf_vip_0:
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ ssc_a_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+
+ # RTP MSC parameters
+ rtp_msc_count:
+ type: number
+ description: Count of required RTP MSCs
+ rtp_msc_index:
+ type: number
+ description: Index of RTP MSC to create/heal.
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ 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
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM A instances
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM B instances
+ rtp_msc_system_names:
+ type: comma_delimited_list
+ description: List of system names of RTP MSC instances
+
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+resources:
+
+
+ # Perimeta RTP MSCs.
+ perimeta_rtp_mscs:
+ type: perimeta_ha_sw_b.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'rtp_msc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: { get_param: rtp_msc_system_names }
+ vm_a_names: { get_param: rtp_msc_a_names }
+ vm_b_names: { get_param: rtp_msc_b_names }
+ perimeta_instance_index: { get_param: rtp_msc_index }
+ perimeta_image_name: { get_param: rtp_msc_image_name }
+ perimeta_flavor_name: { get_param: rtp_msc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: { get_param: rtp_msc_mgmt_vips }
+ mgmt_a_ips: { get_param: rtp_msc_a_mgmt_ips }
+ mgmt_b_ips: { get_param: rtp_msc_b_mgmt_ips }
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: { get_param: rtp_msc_a_int_ha_ips }
+ ha_b_ips: { get_param: rtp_msc_b_int_ha_ips }
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: { get_param: rtp_msc_trusted_vips }
+ trusted_a_ips: { get_param: rtp_msc_a_trusted_ips }
+ trusted_b_ips: { get_param: rtp_msc_b_trusted_ips }
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: { get_param: rtp_msc_untrusted_vips }
+ untrusted_v6_vips: { get_param: rtp_msc_untrusted_v6_vips }
+ untrusted_a_ips: { get_param: rtp_msc_a_untrusted_ips }
+ untrusted_a_v6_ips: { get_param: rtp_msc_a_untrusted_v6_ips }
+ untrusted_b_ips: { get_param: rtp_msc_b_untrusted_ips }
+ untrusted_b_v6_ips: { get_param: rtp_msc_b_untrusted_v6_ips }
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: msc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+
+outputs:
+
+
+ rtp_msc_server_groups:
+ description: Server groups for RTP MSC pairs
+ value: { get_attr: [ perimeta_rtp_mscs, server_group_used ] }
+
+
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: "4.0.1 - 2016-10-28"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_rebuild_scaling.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_rebuild_scaling.yaml
new file mode 100644
index 0000000000..c85009179e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/module_2_perimeta_rtp_msc_rebuild_scaling.yaml
@@ -0,0 +1,381 @@
+# Heat template which intstantiates a Perimeta SSC and up to 10 Perimeta
+# RTP MSCs and up to 10 Perimeta MSRP MSCs. Currently all instances are
+# HA although standalone MSCs may be supported in future.
+#
+# This Heat template commissions, partners and configures the Perimeta SSC and
+# MSCs with basic configuration defined by ssc_a_template.json,
+# msc_a_template.json and mmc_a_template.json. These can be modified
+# as required to obtain the required Perimeta configuration.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# This template sets up anti-affinity using server group anti-affinity and
+# optionally availability zone anti-affinity.
+#
+# This template will work with any version of Perimeta software from 3.9.20.
+#
+# Pre-requisites are:
+# - existing networks as follows
+# - network for management traffic
+# - network for HA traffic
+# - network for core/trusted service traffic
+# - network for access/untrusted service traffic
+# - pre-loaded Perimeta image
+# - suitable flavor to use for Perimeta SSC
+# - suitable flavor to use for Perimeta RTP MSCs
+# - suitable flavor to use for Perimeta MSRP MSCs
+# - suitable keypair to use for Perimeta
+#
+# Virtual IP address and fixed IP addresses to use for the Perimeta instances
+# must be provided as parameters.
+#
+# Template requires Juno or above and has been tested on Kilo. Note that in
+# some deployments, Heat template validation will fail but actually creating
+# a stack using the template will succeed. This is due to problems with
+# Heat validating nested templates.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a Perimeta SSC plus MxRTP MSCs plus NxMSRP MSCs
+
+parameters:
+ # General VNF parameters
+ vnf_id:
+ type: string
+ description: ID of VNF
+
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing these Perimeta instances
+ constraints:
+ - custom_constraint: nova.keypair
+ 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)
+ perimeta_param_server_group:
+ type: string
+ description: UUID of server group to set anti-affinity policy for Perimeta instance. Only used when doing healing.
+
+ # 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
+ mgmt_net_sec_groups:
+ type: comma_delimited_list
+ description: Management network security groups
+
+ # Internal high availability network parameters
+ int_ha_net_id:
+ type: string
+ description: Internal HA network ID
+ constraints:
+ - custom_constraint: neutron.network
+ int_ha_net_plen:
+ type: number
+ description: Intermal HA network prefix length.
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: int_ha_net_plen must be between 0 and 32
+ int_ha_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with internal HA network
+
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with trusted/core network
+
+ # Untrusted/access network parameters
+ untrusted_net_id:
+ type: string
+ description: Network ID of untrusted/access network.
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_net_sec_groups:
+ type: comma_delimited_list
+ description: Security groups associated with untrusted/access network
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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 network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ unused_port_net_id:
+ type: string
+ description: Unused network ID
+ constraints:
+ - custom_constraint: neutron.network
+
+ # 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_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: VM A name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ 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,31}$'
+ description: VM B name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_system_name_0:
+ type: string
+ description: System name of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: System name must be 32 characters or less and a valid hostname. 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. Only required when predefining VIPs.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A. Only required when predefining fixed IPs.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B. Only required when predefining fixed IPs.
+
+ # 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. Only required when predefining fixed IPs.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on trusted/core network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on untrusted/access network for SSC. Only required when predefining virtual IPs.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on untrusted/access network for SSC B. Only required when predefining fixed IPs.
+
+ # SSC IP addresses on management/Rf network
+ ssc_rf_vip_0:
+ type: string
+ description: Virtual IPv4 address on management/Rf network for SSC. Only required when predefining virtual IPs.
+ ssc_a_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC A. Only required when predefining fixed IPs.
+ ssc_b_rf_ip_0:
+ type: string
+ description: Fixed IPv4 address on management/Rf network for SSC B. Only required when predefining fixed IPs.
+
+ # RTP MSC parameters
+ rtp_msc_count:
+ type: number
+ description: Count of required RTP MSCs
+ rtp_msc_index:
+ type: number
+ description: Index of RTP MSC to create/heal.
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instances
+ 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
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM A instances
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of RTP MSC VM B instances
+ rtp_msc_system_names:
+ type: comma_delimited_list
+ description: List of system names of RTP MSC instances
+
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: Management virtual IP addresses to use for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: Management fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: HA fixed IP addresses to use for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 addresses on trusted/core network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 addresses on trusted/core network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on trusted/core network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+ # RTP MSC IP addresses on untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: Virtual IPv4 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: Virtual IPv6 address on untrusted/access network for RTP MSC instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC A instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: Fixed IPv4 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: Fixed IPv6 address on untrusted/access network for RTP MSC B instances. There must be at least as many as the number of RTP MSCs.
+
+resources:
+
+
+ # Perimeta RTP MSCs.
+ perimeta_rtp_mscs:
+ type: perimeta_ha_sw.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'rtp_msc'
+ vf_module_id: { get_param: vf_module_id }
+ system_names: { get_param: rtp_msc_system_names }
+ vm_a_names: { get_param: rtp_msc_a_names }
+ vm_b_names: { get_param: rtp_msc_b_names }
+ perimeta_instance_index: { get_param: rtp_msc_index }
+ perimeta_image_name: { get_param: rtp_msc_image_name }
+ perimeta_flavor_name: { get_param: rtp_msc_flavor_name }
+ perimeta_keypair: { get_param: perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ mgmt_net_plen: { get_param: mgmt_net_plen }
+ mgmt_net_default_gateway: { get_param: mgmt_net_default_gateway }
+ mgmt_vips: { get_param: rtp_msc_mgmt_vips }
+ mgmt_a_ips: { get_param: rtp_msc_a_mgmt_ips }
+ mgmt_b_ips: { get_param: rtp_msc_b_mgmt_ips }
+ mgmt_sec_groups: { get_param: mgmt_net_sec_groups }
+ ha_net_id: { get_param: int_ha_net_id }
+ ha_network_plen: { get_param: int_ha_net_plen }
+ ha_a_ips: { get_param: rtp_msc_a_int_ha_ips }
+ ha_b_ips: { get_param: rtp_msc_b_int_ha_ips }
+ ha_sec_groups: { get_param: int_ha_net_sec_groups }
+ trusted_net_id: { get_param: trusted_net_id }
+ trusted_vips: { get_param: rtp_msc_trusted_vips }
+ trusted_a_ips: { get_param: rtp_msc_a_trusted_ips }
+ trusted_b_ips: { get_param: rtp_msc_b_trusted_ips }
+ trusted_sec_groups: { get_param: trusted_net_sec_groups }
+ untrusted_net_id: { get_param: untrusted_net_id }
+ untrusted_vips: { get_param: rtp_msc_untrusted_vips }
+ untrusted_v6_vips: { get_param: rtp_msc_untrusted_v6_vips }
+ untrusted_a_ips: { get_param: rtp_msc_a_untrusted_ips }
+ untrusted_a_v6_ips: { get_param: rtp_msc_a_untrusted_v6_ips }
+ untrusted_b_ips: { get_param: rtp_msc_b_untrusted_ips }
+ untrusted_b_v6_ips: { get_param: rtp_msc_b_untrusted_v6_ips }
+ untrusted_sec_groups: { get_param: untrusted_net_sec_groups }
+ untrusted_num_vlans: { get_param: untrusted_num_vlans }
+ untrusted_vlan_ids: { get_param: untrusted_vlan_ids }
+ untrusted_vlan_networks: { get_param: untrusted_vlan_networks }
+ perimeta_param_server_group: { get_param: perimeta_param_server_group }
+ perimeta_config:
+ str_replace:
+ template: {get_file: msc_a_template.json}
+ params:
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $COMPLETION_PARAMS: ''
+
+
+outputs:
+
+
+ rtp_msc_server_groups:
+ description: Server groups for RTP MSC pairs
+ value: { get_attr: [ perimeta_rtp_mscs, server_group_used ] }
+
+
+ msw_template_version:
+ description: Version of the heat templates used to instantiate the VMs
+ value: "4.0.1 - 2016-10-28"
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/msc_a_template.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/msc_a_template.json
new file mode 100644
index 0000000000..4b474f07da
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/msc_a_template.json
@@ -0,0 +1,33 @@
+{
+ // The vnic_assignment parameter is ignored by Perimeta releases prior to
+ // V4.0.00.
+ "vnic_assignment": {
+ "IBG1mgmt": {"mac": "$MGMT_MACADDR"},
+ "IPG1": {"mac": "$HA_MACADDR"},
+ "RPG1": {"mac": "$TRUSTED_MACADDR"},
+ "RPG2": {"mac": "$UNTRUSTED_MACADDR"}
+ },
+ "autocommission":"MSC",
+ "autostart":"true",
+ "autopartner":"",
+ "ip_mgmt_global": "$VIRT_MGMT_IP_ADDR",
+ "ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ "ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ "ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ "ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY",
+ "ip_ha_local": "$LOCAL_HA_IP_ADDR",
+ "ip_ha_remote": "$REMOTE_HA_IP_ADDR",
+ "ip_ha_plen": "$HA_NETWORK_PLEN",
+ "system_name": "$SYSTEM_NAME",
+ "node_local": "$VM_NAME_A",
+ "node_remote": "$VM_NAME_B",
+ "ntp_servers": "$NTP_SERVER_IP_ADDRS",
+ "advanced_media_cpus": "2",
+ "perimeta": {
+ "dpdk_opt_enable":true,
+ "vlans_opt_enable":true
+ }
+
+ //$COMPLETION_PARAMS
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw.yaml
new file mode 100644
index 0000000000..5ba3e968ad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw.yaml
@@ -0,0 +1,480 @@
+# Heat template which intstantiates a 1+1 HA Perimeta instance with 4 or 5
+# 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 a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+
+parameters:
+ 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
+ system_names:
+ type: comma_delimited_list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ vm_a_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ vm_b_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ 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.
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ constraints:
+ - custom_constraint: glance.image
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints:
+ - custom_constraint: nova.flavor
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints:
+ - custom_constraint: nova.keypair
+ 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.
+ 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
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ mgmt_net_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ mgmt_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ mgmt_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ mgmt_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on management interfaces.
+ ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+ ha_network_plen:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: ha_network_plen must be between 0 and 32
+ ha_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ ha_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ ha_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on HA interfaces.
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_vips:
+ type: comma_delimited_list
+ description: List of service network 1 virtual IP addresses for all instances.
+ trusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ trusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ trusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_vips:
+ type: comma_delimited_list
+ description: List of service network 2 virtual IP addresses for all instances.
+ untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ untrusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ untrusted_a_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ untrusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ untrusted_b_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ untrusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on untrusted interfaces.
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+
+resources:
+
+ # Perimeta management ports
+ perimeta_a_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_a_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ perimeta_b_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ # Perimeta core/trusted service network ports
+ #
+ # Dual stack core network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta access/untrusted service network ports
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_a_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_a_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_a_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ perimeta_b_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_b_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_b_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_b_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports (SSC only)
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ # Add any additional service ports here.
+
+ # Only supported in Juno and beyond - used to enforce host anti-affinity
+ # Can be commented out along with references to it if always using
+ # different availability zones.
+ perimeta_server_group:
+ type: OS::Nova::ServerGroup
+ properties:
+ name:
+ str_replace:
+ template: $SYSTEM_server_group
+ params:
+ $SYSTEM: { get_param: [ system_names, { get_param: perimeta_instance_index } ] }
+ policies: ['anti-affinity']
+
+ perimeta_a_server_0:
+ type: OS::Nova::Server
+ depends_on: perimeta_b_server_0
+ properties:
+ name: { get_param: [ vm_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_resource: perimeta_server_group } }
+ metadata:
+ '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 }
+ personality:
+ '/opt/MetaSwitch/init/custom.ini': { get_file: custom.ini }
+
+ networks:
+ - port: { get_resource: perimeta_a_mgmt_0_port }
+ - port: { get_resource: perimeta_a_ha_0_port }
+ - port: { get_resource: perimeta_a_trusted_0_port }
+ - port: { get_resource: perimeta_a_untrusted_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_a_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_a_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_a_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_a_untrusted_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_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: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+ $VIRT_TRUSTED_IP_ADDR: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+ $LOCAL_TRUSTED_IP_ADDR: { get_param: [ trusted_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_TRUSTED_IP_ADDR: { get_param: [ trusted_b_ips, { get_param: perimeta_instance_index } ] }
+ $VIRT_UNTRUSTED_IP_ADDR: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ $VIRT_UNTRUSTED_ALT_IP_ADDR: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ $LOCAL_UNTRUSTED_IP_ADDR: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ $LOCAL_UNTRUSTED_ALT_IP_ADDR: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_UNTRUSTED_IP_ADDR: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_UNTRUSTED_ALT_IP_ADDR: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ $VM_NAME_A: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ $VM_NAME_B: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ $SYSTEM_NAME: { get_param: [ system_names, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [ vm_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_resource: perimeta_server_group } }
+ metadata:
+ '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 }
+ networks:
+ - port: { get_resource: perimeta_b_mgmt_0_port }
+ - port: { get_resource: perimeta_b_ha_0_port }
+ - port: { get_resource: perimeta_b_trusted_0_port }
+ - port: { get_resource: perimeta_b_untrusted_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"
+ //"ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ //"ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ //"ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ //"ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY"
+ }
+
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_b_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_b_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_b_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_b_untrusted_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+
+outputs:
+
+ server_group_used:
+ description: Server group used for these VMs
+ value: { get_resource: perimeta_server_group }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_a.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_a.yaml
new file mode 100644
index 0000000000..4f489e4ffc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_a.yaml
@@ -0,0 +1,332 @@
+# Heat template which intstantiates a 1+1 HA Perimeta instance with 4 or 5
+# 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 a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+
+parameters:
+ 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
+ system_names:
+ type: comma_delimited_list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ vm_a_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ vm_b_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ 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.
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ constraints:
+ - custom_constraint: glance.image
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints:
+ - custom_constraint: nova.flavor
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints:
+ - custom_constraint: nova.keypair
+ 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.
+ 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
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ mgmt_net_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ mgmt_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ mgmt_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ mgmt_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on management interfaces.
+ ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+ ha_network_plen:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: ha_network_plen must be between 0 and 32
+ ha_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ ha_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ ha_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on HA interfaces.
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_vips:
+ type: comma_delimited_list
+ description: List of service network 1 virtual IP addresses for all instances.
+ trusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ trusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ trusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_vips:
+ type: comma_delimited_list
+ description: List of service network 2 virtual IP addresses for all instances.
+ untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ untrusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ untrusted_a_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ untrusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ untrusted_b_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ untrusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on untrusted interfaces.
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+
+resources:
+
+ # Perimeta management ports
+ perimeta_a_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_a_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ # Perimeta core/trusted service network ports
+ #
+ # Dual stack core network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta access/untrusted service network ports
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_a_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_a_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_a_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports (SSC only)
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ # Add any additional service ports here.
+
+ perimeta_a_server_0:
+ type: OS::Nova::Server
+# depends_on: perimeta_b_server_0
+ properties:
+ name: { get_param: [ vm_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_param_server_group } }
+ metadata:
+ '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 }
+ personality:
+ '/opt/MetaSwitch/init/custom.ini': { get_file: custom.ini }
+
+ networks:
+ - port: { get_resource: perimeta_a_mgmt_0_port }
+ - port: { get_resource: perimeta_a_ha_0_port }
+ - port: { get_resource: perimeta_a_trusted_0_port }
+ - port: { get_resource: perimeta_a_untrusted_0_port }
+ availability_zone: { get_param: availability_zone_0 }
+ 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"
+ // "ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ // "ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ // "ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ // "ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY"
+ }
+
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_a_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_a_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_a_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_a_untrusted_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+
+
+outputs:
+
+ server_group_used:
+ description: Server group used for these VMs
+ value: { get_param: perimeta_param_server_group }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_b.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_b.yaml
new file mode 100644
index 0000000000..4b68c3adf2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_sw_b.yaml
@@ -0,0 +1,327 @@
+# Heat template which intstantiates a 1+1 HA Perimeta instance with 4 or 5
+# 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 a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+
+parameters:
+ 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
+ system_names:
+ type: comma_delimited_list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ vm_a_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ vm_b_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ 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.
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ constraints:
+ - custom_constraint: glance.image
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints:
+ - custom_constraint: nova.flavor
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints:
+ - custom_constraint: nova.keypair
+ 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.
+ 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
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ mgmt_net_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ mgmt_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ mgmt_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ mgmt_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on management interfaces.
+ ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+ ha_network_plen:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: ha_network_plen must be between 0 and 32
+ ha_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ ha_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ ha_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on HA interfaces.
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_vips:
+ type: comma_delimited_list
+ description: List of service network 1 virtual IP addresses for all instances.
+ trusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ trusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ trusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_vips:
+ type: comma_delimited_list
+ description: List of service network 2 virtual IP addresses for all instances.
+ untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ untrusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ untrusted_a_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ untrusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ untrusted_b_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ untrusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on untrusted interfaces.
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+
+resources:
+
+ # Perimeta management ports
+ perimeta_b_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_b_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ # Perimeta core/trusted service network ports
+ #
+ # Dual stack core network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_b_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta access/untrusted service network ports
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_b_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_b_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_b_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_b_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports (SSC only)
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ # Add any additional service ports here.
+
+ perimeta_b_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [ vm_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_param_server_group } }
+ metadata:
+ '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 }
+ networks:
+ - port: { get_resource: perimeta_b_mgmt_0_port }
+ - port: { get_resource: perimeta_b_ha_0_port }
+ - port: { get_resource: perimeta_b_trusted_0_port }
+ - port: { get_resource: perimeta_b_untrusted_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"
+ //"ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ //"ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ //"ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ //"ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY"
+ }
+
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_b_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_b_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_b_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_b_untrusted_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+
+outputs:
+
+ server_group_used:
+ description: Server group used for these VMs
+ value: { get_param: perimeta_param_server_group }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu.yaml
new file mode 100644
index 0000000000..7e4307b75f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu.yaml
@@ -0,0 +1,561 @@
+# Heat template which intstantiates a 1+1 HA Perimeta instance with 4 or 5
+# 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 a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+
+parameters:
+ 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
+ system_names:
+ type: comma_delimited_list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ vm_a_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ vm_b_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ 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.
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ constraints:
+ - custom_constraint: glance.image
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints:
+ - custom_constraint: nova.flavor
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints:
+ - custom_constraint: nova.keypair
+ 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.
+ 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
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ mgmt_net_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ mgmt_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ mgmt_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ mgmt_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on management interfaces.
+ ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+ ha_network_plen:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: ha_network_plen must be between 0 and 32
+ ha_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ ha_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ ha_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on HA interfaces.
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_vips:
+ type: comma_delimited_list
+ description: List of service network 1 virtual IP addresses for all instances.
+ trusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ trusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ trusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_vips:
+ type: comma_delimited_list
+ description: List of service network 2 virtual IP addresses for all instances.
+ untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ untrusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ untrusted_a_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ untrusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ untrusted_b_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ untrusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on untrusted interfaces.
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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.
+ serv3_net_id:
+ type: string
+ description: Service network 3 network UUID
+ serv3_vips:
+ type: comma_delimited_list
+ description: List of service network 3 virtual IP addresses for all instances.
+ serv3_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ serv3_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ serv3_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on serv3 interfaces.
+ unused_net_id:
+ type: string
+ description: Service network unused port network UUID
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+
+resources:
+
+ # Perimeta management ports
+ perimeta_a_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_a_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ perimeta_b_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ # Perimeta core/trusted service network ports
+ #
+ # Dual stack core network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta access/untrusted service network ports
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_a_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_a_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_a_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ perimeta_b_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_b_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_b_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_b_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports (SSC only)
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_serv3_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: serv3_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ serv3_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: serv3_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ serv3_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_serv3_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: serv3_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ serv3_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: serv3_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ serv3_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_a_unused_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: unused_net_id }
+
+ perimeta_b_unused_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: unused_net_id }
+
+ # Add any additional service ports here.
+
+ # Only supported in Juno and beyond - used to enforce host anti-affinity
+ # Can be commented out along with references to it if always using
+ # different availability zones.
+ perimeta_server_group:
+ type: OS::Nova::ServerGroup
+ properties:
+ name:
+ str_replace:
+ template: $SYSTEM_server_group
+ params:
+ $SYSTEM: { get_param: [ system_names, { get_param: perimeta_instance_index } ] }
+ policies: ['anti-affinity']
+
+ perimeta_a_server_0:
+ type: OS::Nova::Server
+ depends_on: perimeta_b_server_0
+ properties:
+ name: { get_param: [ vm_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_resource: perimeta_server_group } }
+ metadata:
+ '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 }
+ personality:
+ '/opt/MetaSwitch/init/custom.ini': { get_file: custom.ini }
+
+ networks:
+ - port: { get_resource: perimeta_a_mgmt_0_port }
+ - port: { get_resource: perimeta_a_ha_0_port }
+ - port: { get_resource: perimeta_a_trusted_0_port }
+ - port: { get_resource: perimeta_a_untrusted_0_port }
+ - port: { get_resource: perimeta_a_serv3_0_port }
+ - port: { get_resource: perimeta_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_a_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_a_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_a_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_a_untrusted_0_port, mac_address] }
+ $SERV3_MACADDR: { get_attr: [perimeta_a_serv3_0_port, mac_address] }
+ $SERV4_MACADDR: { get_attr: [perimeta_a_unused_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_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: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+ $VIRT_TRUSTED_IP_ADDR: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+ $LOCAL_TRUSTED_IP_ADDR: { get_param: [ trusted_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_TRUSTED_IP_ADDR: { get_param: [ trusted_b_ips, { get_param: perimeta_instance_index } ] }
+ $VIRT_UNTRUSTED_IP_ADDR: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ $VIRT_UNTRUSTED_ALT_IP_ADDR: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ $LOCAL_UNTRUSTED_IP_ADDR: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ $LOCAL_UNTRUSTED_ALT_IP_ADDR: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_UNTRUSTED_IP_ADDR: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_UNTRUSTED_ALT_IP_ADDR: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ $VIRT_SERV3_IP_ADDR: { get_param: [ serv3_vips, { get_param: perimeta_instance_index } ] }
+ $LOCAL_SERV3_IP_ADDR: { get_param: [ serv3_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_SERV3_IP_ADDR: { get_param: [ serv3_b_ips, { get_param: perimeta_instance_index } ] }
+ $VM_NAME_A: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ $VM_NAME_B: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ $SYSTEM_NAME: { get_param: [ system_names, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [ vm_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_resource: perimeta_server_group } }
+ metadata:
+ '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 }
+ networks:
+ - port: { get_resource: perimeta_b_mgmt_0_port }
+ - port: { get_resource: perimeta_b_ha_0_port }
+ - port: { get_resource: perimeta_b_trusted_0_port }
+ - port: { get_resource: perimeta_b_untrusted_0_port }
+ - port: { get_resource: perimeta_b_serv3_0_port }
+ - port: { get_resource: perimeta_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"
+ //"ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ //"ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ //"ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ //"ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY"
+ }
+
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_b_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_b_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_b_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_b_untrusted_0_port, mac_address] }
+ $SERV3_MACADDR: { get_attr: [perimeta_b_serv3_0_port, mac_address] }
+ $SERV4_MACADDR: { get_attr: [perimeta_b_unused_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+
+outputs:
+
+ server_group_used:
+ description: Server group used for these VMs
+ value: { get_resource: perimeta_server_group }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_a.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_a.yaml
new file mode 100644
index 0000000000..2c4fb50842
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_a.yaml
@@ -0,0 +1,381 @@
+# Heat template which intstantiates a 1+1 HA Perimeta instance with 4 or 5
+# 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 a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+
+parameters:
+ 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
+ system_names:
+ type: comma_delimited_list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ vm_a_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ vm_b_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ 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.
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ constraints:
+ - custom_constraint: glance.image
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints:
+ - custom_constraint: nova.flavor
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints:
+ - custom_constraint: nova.keypair
+ 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.
+ 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
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ mgmt_net_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ mgmt_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ mgmt_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ mgmt_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on management interfaces.
+ ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+ ha_network_plen:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: ha_network_plen must be between 0 and 32
+ ha_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ ha_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ ha_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on HA interfaces.
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_vips:
+ type: comma_delimited_list
+ description: List of service network 1 virtual IP addresses for all instances.
+ trusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ trusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ trusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_vips:
+ type: comma_delimited_list
+ description: List of service network 2 virtual IP addresses for all instances.
+ untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ untrusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ untrusted_a_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ untrusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ untrusted_b_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ untrusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on untrusted interfaces.
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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.
+ serv3_net_id:
+ type: string
+ description: Service network 3 network UUID
+ serv3_vips:
+ type: comma_delimited_list
+ description: List of service network 3 virtual IP addresses for all instances.
+ serv3_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ serv3_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ serv3_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on serv3 interfaces.
+ unused_net_id:
+ type: string
+ description: Service network unused port network UUID
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+
+resources:
+
+ # Perimeta management ports
+ perimeta_a_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_a_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ # Perimeta core/trusted service network ports
+ #
+ # Dual stack core network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta access/untrusted service network ports
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_a_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_a_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_a_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_a_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_a_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports (SSC only)
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_a_serv3_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: serv3_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ serv3_a_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: serv3_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ serv3_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_a_unused_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM: { get_param: [ vm_a_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: unused_net_id }
+
+ # Add any additional service ports here.
+
+ perimeta_a_server_0:
+ type: OS::Nova::Server
+ #depends_on: perimeta_b_server_0
+ properties:
+ name: { get_param: [ vm_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_param_server_group } }
+ metadata:
+ '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 }
+ personality:
+ '/opt/MetaSwitch/init/custom.ini': { get_file: custom.ini }
+
+ networks:
+ - port: { get_resource: perimeta_a_mgmt_0_port }
+ - port: { get_resource: perimeta_a_ha_0_port }
+ - port: { get_resource: perimeta_a_trusted_0_port }
+ - port: { get_resource: perimeta_a_untrusted_0_port }
+ - port: { get_resource: perimeta_a_serv3_0_port }
+ - port: { get_resource: perimeta_a_unused_0_port }
+ availability_zone: { get_param: availability_zone_0 }
+ 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"
+ // "ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ // "ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ // "ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ // "ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY"
+ }
+
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_a_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_a_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_a_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_a_untrusted_0_port, mac_address] }
+ $SERV3_MACADDR: { get_attr: [perimeta_a_serv3_0_port, mac_address] }
+ $SERV4_MACADDR: { get_attr: [perimeta_a_unused_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+
+
+outputs:
+
+ server_group_used:
+ description: Server group used for these VMs
+ value: { get_param: perimeta_param_server_group }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_b.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_b.yaml
new file mode 100644
index 0000000000..77fb15a9a0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/perimeta_ha_swmu_b.yaml
@@ -0,0 +1,376 @@
+# Heat template which intstantiates a 1+1 HA Perimeta instance with 4 or 5
+# 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 a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
+
+parameters:
+ 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
+ system_names:
+ type: comma_delimited_list
+ description: List of system names of Perimeta instances. Name of a specific instance is indexed by perimeta_instance_index
+ vm_a_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ vm_b_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ 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.
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ constraints:
+ - custom_constraint: glance.image
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ constraints:
+ - custom_constraint: nova.flavor
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ constraints:
+ - custom_constraint: nova.keypair
+ 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.
+ 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
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: string
+ description: Prefix length of management network
+ mgmt_net_default_gateway:
+ type: string
+ description: IP address of management default gateway
+ mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ mgmt_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ mgmt_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ mgmt_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on management interfaces.
+ ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+ ha_network_plen:
+ type: number
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: ha_network_plen must be between 0 and 32
+ ha_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ ha_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ ha_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on HA interfaces.
+ trusted_net_id:
+ type: string
+ description: Service network 1 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ trusted_vips:
+ type: comma_delimited_list
+ description: List of service network 1 virtual IP addresses for all instances.
+ trusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
+ trusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
+ trusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ untrusted_net_id:
+ type: string
+ description: Service network 2 network UUID
+ constraints:
+ - custom_constraint: neutron.network
+ untrusted_vips:
+ type: comma_delimited_list
+ description: List of service network 2 virtual IP addresses for all instances.
+ untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of service network 2 alternate virtual IP addresses for all instances.
+ untrusted_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
+ untrusted_a_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
+ untrusted_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
+ untrusted_b_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
+ untrusted_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on untrusted interfaces.
+ untrusted_num_vlans:
+ type: number
+ description: Number of VLANs to connect to on the untrusted/access network
+ untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ 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.
+ serv3_net_id:
+ type: string
+ description: Service network 3 network UUID
+ serv3_vips:
+ type: comma_delimited_list
+ description: List of service network 3 virtual IP addresses for all instances.
+ serv3_a_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
+ serv3_b_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
+ serv3_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on serv3 interfaces.
+ unused_net_id:
+ type: string
+ description: Service network unused port network UUID
+ perimeta_param_server_group:
+ type: string
+ description: Server group to use for these VMs - ignored
+ perimeta_config:
+ type: string
+ description: Orchestration template configuration for instance.
+
+resources:
+
+ # Perimeta management ports
+ perimeta_b_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_mgmt_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: mgmt_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_b_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_ha_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: ha_sec_groups }
+
+ # Perimeta core/trusted service network ports
+ #
+ # Dual stack core network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_b_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_trusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ trusted_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: trusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta access/untrusted service network ports
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_b_untrusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_untrusted_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: untrusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: untrusted_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ - ip_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+
+ # Contrail VLAN subinterfaces
+ perimeta_b_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ subinterface_instance_index: "%index%"
+ subinterface_name_prefix:
+ str_replace:
+ template: $VM_untrusted_port_vlan_
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ parent_interface: { get_resource: perimeta_b_untrusted_0_port }
+ mac_address: { get_attr: [ perimeta_b_untrusted_0_port, mac_address ] }
+ ip_address: { get_param: [ untrusted_b_ips, { get_param: perimeta_instance_index } ] }
+ ipv6_address: { get_param: [ untrusted_b_v6_ips, { get_param: perimeta_instance_index } ] }
+ virtual_ip_address: { get_param: [ untrusted_vips, { get_param: perimeta_instance_index } ] }
+ virtual_ipv6_address: { get_param: [ untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ vlan_ids: { get_param: untrusted_vlan_ids }
+ vlan_networks: { get_param: untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports (SSC only)
+ #
+ # Dual stack access network - if only IPv4 required, comment out second entry
+ # in fixed_ips and allowed_addrsess_pairs parameters.
+ perimeta_b_serv3_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_serv3_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network_id: { get_param: serv3_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ serv3_b_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: serv3_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ serv3_vips, { get_param: perimeta_instance_index } ] }
+
+ perimeta_b_unused_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VM_unused_port
+ params:
+ $VM: { get_param: [ vm_b_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: unused_net_id }
+
+ # Add any additional service ports here.
+
+ perimeta_b_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [ vm_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_param_server_group } }
+ metadata:
+ '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 }
+ networks:
+ - port: { get_resource: perimeta_b_mgmt_0_port }
+ - port: { get_resource: perimeta_b_ha_0_port }
+ - port: { get_resource: perimeta_b_trusted_0_port }
+ - port: { get_resource: perimeta_b_untrusted_0_port }
+ - port: { get_resource: perimeta_b_serv3_0_port }
+ - port: { get_resource: perimeta_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"
+ //"ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ //"ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ //"ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ //"ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY"
+ }
+
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_b_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_b_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_b_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_b_untrusted_0_port, mac_address] }
+ $SERV3_MACADDR: { get_attr: [perimeta_b_serv3_0_port, mac_address] }
+ $SERV4_MACADDR: { get_attr: [perimeta_b_unused_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ ha_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ ha_a_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: ha_network_plen }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ mgmt_b_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ mgmt_a_ips, { get_param: perimeta_instance_index } ] }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+
+outputs:
+
+ server_group_used:
+ description: Server group used for these VMs
+ value: { get_param: perimeta_param_server_group }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/ssc_a_template.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/ssc_a_template.json
new file mode 100644
index 0000000000..7e82527836
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/ssc_a_template.json
@@ -0,0 +1,34 @@
+{
+ // The vnic_assignment parameter is ignored by Perimeta releases prior to
+ // V4.0.00.
+ "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"}
+ },
+ "autocommission":"SSC",
+ "autostart":"true",
+ "autopartner":"",
+ "ip_mgmt_global": "$VIRT_MGMT_IP_ADDR",
+ "ip_mgmt_local": "$LOCAL_MGMT_IP_ADDR",
+ "ip_mgmt_remote": "$REMOTE_MGMT_IP_ADDR",
+ "ip_mgmt_plen": "$MGMT_NETWORK_PLEN",
+ "ip_mgmt_gway": "$MGMT_NETWORK_DEFAULT_GATEWAY",
+ "ip_ha_local": "$LOCAL_HA_IP_ADDR",
+ "ip_ha_remote": "$REMOTE_HA_IP_ADDR",
+ "ip_ha_plen": "$HA_NETWORK_PLEN",
+ "system_name": "$SYSTEM_NAME",
+ "node_local": "$VM_NAME_A",
+ "node_remote": "$VM_NAME_B",
+ "ntp_servers": "$NTP_SERVER_IP_ADDRS",
+ "perimeta": {
+ "dpdk_opt_enable":true,
+ "vlans_opt_enable":true
+ }
+
+ // $COMPLETION_PARAMS
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/vlan_subinterface_dual.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/vlan_subinterface_dual.yaml
new file mode 100644
index 0000000000..5d0a72920c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/subInterfaceToInterfaceConnection/vTSBC_AIC/inputfiles/vlan_subinterface_dual.yaml
@@ -0,0 +1,98 @@
+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:
+ subinterface_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.
+ subinterface_name_prefix:
+ type: string
+ description: Combined with subinterface_instance_index, this is used as the name of the subinterface resource
+ parent_interface:
+ type: string
+ description: Parent Contrail interface
+ mac_address:
+ type: string
+ description: MAC address to use for subinterface
+ ip_address:
+ type: string
+ description: IPv4 address associated with subinterfaces
+ ipv6_address:
+ type: string
+ description: IPv6 address associated with subinterfaces
+ virtual_ip_address:
+ type: string
+ description: virtual IPv4 address associated with subinterfaces
+ virtual_ipv6_address:
+ type: string
+ description: virtual IPv6 address associated with subinterfaces
+ vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use for subinterfaces
+ 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: subinterface_name_prefix }
+ $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
+ }
+ virtual_machine_interface_allowed_address_pairs:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
+ }
+ },
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
+ {
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: [ vlan_networks, { get_param: subinterface_instance_index } ] }]
+ virtual_machine_interface_refs: [{ get_param: 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: [ vlan_networks, { get_param: subinterface_instance_index } ] }]
+ instance_ip_address: { get_param: ip_address }
+ 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: [ vlan_networks, { get_param: subinterface_instance_index } ] }]
+ instance_ip_address: { get_param: ipv6_address }
+ instance_ip_family: v6
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..784a841cad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,333 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB1_template
+ - FSB2_template
+ outputs:
+ simpleOutput1:
+ value: {get_attribute: [ FSB1_template, accessIPv4 ] }
+ simpleOutput2:
+ value: {get_attribute: [ FSB2_template, addresses, key1 ] }
+ complexOutput1:
+ value: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attribute: [FSB1_Internal2, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB2_Internal1,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_Internal1,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..81881e3171
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,259 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ FSB1:
+ type: org.openecomp.resource.abstract.nodes.FSB1
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ compute_FSB1_metadata:
+ - write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb1-oam-ip
+ compute_FSB1_availability_zone:
+ - get_input: fsb_zone
+ port_FSB1_Internal_network:
+ - Internal1-net
+ port_FSB2_Internal_network:
+ - Internal2-net
+ compute_FSB1_name:
+ - get_input: fsb1-name
+ vm_flavor_name:
+ get_input: fsb1-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb1-Internal2-mac
+ port_FSB_OAM_network:
+ - jsa_net1
+ service_template_filter:
+ substitute_service_template: Nested_FSB1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1
+ outputs:
+ simpleOutput1:
+ value:
+ get_attribute:
+ - FSB1_template
+ - accessIPv4
+ simpleOutput2:
+ value:
+ get_attribute:
+ - FSB2_template
+ - addresses
+ - key1
+ complexOutput1:
+ value:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ - get_attribute:
+ - FSB2_Internal2
+ - index
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - FSB1_Internal2
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB2_Internal1
+ - oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_Internal1
+ - accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/mockAbstractNodeTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/mockAbstractNodeTemplate.yaml
new file mode 100644
index 0000000000..e64c023f56
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/mockAbstractNodeTemplate.yaml
@@ -0,0 +1,63 @@
+type: org.openecomp.resource.abstract.nodes.FSB1
+directives:
+- substitutable
+properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ compute_FSB1_metadata:
+ - write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb1-oam-ip
+ compute_FSB1_availability_zone:
+ - get_input: fsb_zone
+ port_FSB1_Internal_network:
+ - Internal1-net
+ port_FSB2_Internal_network:
+ - Internal2-net
+ compute_FSB1_name:
+ - get_input: fsb1-name
+ vm_flavor_name:
+ get_input: fsb1-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb1-Internal2-mac
+ port_FSB_OAM_network:
+ - jsa_net1
+ service_template_filter:
+ substitute_service_template: Nested_FSB1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..db06287d1a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,253 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ size: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_OAM,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - cmaui_volume1
+ - cmaui_volume2
+ - jsa_net1
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3bcdf3d9bf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/cleanMainSt/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,241 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ - get_attribute:
+ - FSB2_Internal2
+ - index
+ size:
+ get_attribute:
+ - FSB1_Internal1
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_OAM
+ - oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_template
+ - accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ FSB1:
+ type: org.openecomp.resource.abstract.nodes.FSB1
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ compute_FSB1_metadata:
+ - write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb1-oam-ip
+ compute_FSB1_availability_zone:
+ - get_input: fsb_zone
+ port_FSB1_Internal_network:
+ - Internal1-net
+ port_FSB2_Internal_network:
+ - Internal2-net
+ compute_FSB1_name:
+ - get_input: fsb1-name
+ vm_flavor_name:
+ get_input: fsb1-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb1-Internal2-mac
+ port_FSB_OAM_network:
+ - jsa_net1
+ service_template_filter:
+ substitute_service_template: Nested_FSB1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - cmaui_volume1
+ - cmaui_volume2
+ - jsa_net1
+ - FSB1
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/VariouseST.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/in/MainServiceTemplate.yaml
index 1f39bfb314..dc7c6e61fd 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/expectedOutput/VariouseST.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/in/MainServiceTemplate.yaml
@@ -2,28 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- org.openecomp.resource.vfc.nodes.heat.pcm:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
topology_template:
inputs:
@@ -94,18 +76,33 @@ topology_template:
immutable: false
type: string
description: pcrf_psm_image_name
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
FSB_1_image:
label: MME_FSB1
hidden: false
immutable: false
type: string
description: MME_FSB1_15B-CP04-r5a01
+ snapshot01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
volume_size:
label: volume size
hidden: false
immutable: false
type: float
description: my volume size 320GB
+ snapshot02:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
fsb1-Internal1-mac:
label: FSB1_internal_mac
hidden: false
@@ -124,6 +121,11 @@ topology_template:
immutable: false
type: string
description: pcm_server_name
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
Internal1_net_name:
label: Internal1_net_name
hidden: false
@@ -148,6 +150,11 @@ topology_template:
immutable: false
type: string
description: FSB1_internal_mac
+ pcm_vol_01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
volume_type:
label: volume type
hidden: false
@@ -166,13 +173,32 @@ topology_template:
immutable: false
type: string
description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
+ type: string
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
jsa_net_name:
label: jsa_net_name
hidden: false
@@ -198,6 +224,11 @@ topology_template:
immutable: false
type: string
description: oam_net_id
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
fsb2-Internal1-mac:
label: FSB1_internal_mac
hidden: false
@@ -216,19 +247,39 @@ topology_template:
immutable: false
type: string
description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
cps_net_name:
label: cps_net_name
hidden: false
immutable: false
type: string
description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
pcrf_security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
+ type: string
Internal1_external:
label: Internal1_external
hidden: false
@@ -236,72 +287,67 @@ topology_template:
type: string
description: Internal1_external
node_templates:
-
- jsa_net:
- type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
- shared: true
- network_name:
- get_input: jsa_net_name
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
jsa_net1:
type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
properties:
shared: true
network_name:
get_input: jsa_net_name
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
properties:
flavor:
get_input: fsb1-flavor
@@ -348,16 +394,37 @@ topology_template:
nimbus-ethernet:
type: tosca.artifacts.Deployment
file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
groups:
- ep-jsa_net:
+ ep-jsa_net_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/ep-jsa_net.yaml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9159c8b742
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,658 @@
+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.FSB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal2_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_FSB2_Internal1_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB2_Internal1_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB2_Internal2_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB2_Internal2:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB2_Internal2:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_FSB1_FSB2_Internal1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB2_Internal1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_FSB1_FSB_OAM:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_FSB1_FSB2_Internal1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.write.requests.rate_FSB1:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_FSB1_FSB2_Internal1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_FSB1:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_FSB1_FSB2_Internal2:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: org.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_FSB1_FSB2_Internal2:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB2_Internal2:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_FSB1:
+ type: org.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_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml
new file mode 100644
index 0000000000..3fd981df0e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoOutParamDuplicatePortType/out/SubstitutionServiceTemplate.yaml
@@ -0,0 +1,456 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal2_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_FSB2_Internal1_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB2_Internal1_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB2_Internal2_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB1_FSB1_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB1_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB1_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ get_input:
+ - port_FSB_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_FSB_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB2_Internal2_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal2_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_FSB1_metadata
+ - index_value
+ name:
+ get_input:
+ - compute_FSB1_name
+ - index_value
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ FSB1_FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB2_Internal1_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal1_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.packets.rate
+ network.incoming.packets_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.incoming.packets
+ network.incoming.packets_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.incoming.packets
+ attachment_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - attachment
+ binding_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - binding
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ network.outgoing.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes.rate
+ feature_FSB1:
+ - FSB1
+ - feature
+ network.outgoing.bytes_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.outgoing.bytes
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes
+ feature_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - feature
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ binding_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - binding
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ binding_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - binding
+ instance_FSB1:
+ - FSB1
+ - instance
+ network.incoming.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ attachment_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - attachment
+ attachment_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - attachment
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ binding_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - binding
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ feature_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - feature
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ network.incoming.packets.rate_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.incoming.packets.rate
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ network.incoming.packets.rate_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.incoming.packets.rate
+ network.outpoing.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outpoing.packets
+ network.incoming.bytes_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.incoming.bytes
+ network.incoming.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets
+ network.incoming.bytes_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.incoming.bytes
+ attachment_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - attachment
+ memory_FSB1:
+ - FSB1
+ - memory
+ network.incoming.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes.rate
+ network.outpoing.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outpoing.packets
+ network.outgoing.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ host_FSB1:
+ - FSB1
+ - host
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ network.incoming.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets.rate
+ network.incoming.bytes.rate_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.incoming.bytes.rate
+ network.incoming.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes.rate
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ network.outgoing.bytes_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.outgoing.bytes
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes.rate
+ network.outgoing.packets.rate_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.outgoing.packets.rate
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ network.outpoing.packets_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.outpoing.packets
+ network.outpoing.packets_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.outpoing.packets
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ network.outgoing.bytes.rate_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - network.outgoing.bytes.rate
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ network.incoming.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ feature_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - feature
+ feature_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - feature
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ dependency_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - dependency
+ link_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - link
+ link_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - link
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
+ dependency_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - dependency
+ link_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - link
+ dependency_FSB1_FSB2_Internal2:
+ - FSB1_FSB2_Internal2
+ - dependency
+ link_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - link
+ dependency_FSB1_FSB2_Internal1:
+ - FSB1_FSB2_Internal1
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/OnlyComponentsST.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/in/MainServiceTemplate.yaml
index 54f39e4219..1d6c6d7151 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/onlyComponents/OnlyComponentsST.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/in/MainServiceTemplate.yaml
@@ -2,28 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- org.openecomp.resource.vfc.nodes.heat.pcm:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
topology_template:
inputs:
@@ -94,18 +76,33 @@ topology_template:
immutable: false
type: string
description: pcrf_psm_image_name
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
FSB_1_image:
label: MME_FSB1
hidden: false
immutable: false
type: string
description: MME_FSB1_15B-CP04-r5a01
+ snapshot01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
volume_size:
label: volume size
hidden: false
immutable: false
type: float
description: my volume size 320GB
+ snapshot02:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
fsb1-Internal1-mac:
label: FSB1_internal_mac
hidden: false
@@ -124,6 +121,11 @@ topology_template:
immutable: false
type: string
description: pcm_server_name
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
Internal1_net_name:
label: Internal1_net_name
hidden: false
@@ -148,6 +150,11 @@ topology_template:
immutable: false
type: string
description: FSB1_internal_mac
+ pcm_vol_01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
volume_type:
label: volume type
hidden: false
@@ -166,13 +173,32 @@ topology_template:
immutable: false
type: string
description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
+ type: string
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
jsa_net_name:
label: jsa_net_name
hidden: false
@@ -198,6 +224,11 @@ topology_template:
immutable: false
type: string
description: oam_net_id
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
fsb2-Internal1-mac:
label: FSB1_internal_mac
hidden: false
@@ -216,19 +247,39 @@ topology_template:
immutable: false
type: string
description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
cps_net_name:
label: cps_net_name
hidden: false
immutable: false
type: string
description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
pcrf_security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
+ type: string
Internal1_external:
label: Internal1_external
hidden: false
@@ -236,59 +287,8 @@ topology_template:
type: string
description: Internal1_external
node_templates:
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
properties:
flavor:
get_input: fsb1-flavor
@@ -336,15 +336,11 @@ topology_template:
type: tosca.artifacts.Deployment
file: ../Artifacts/nimbus-ethernet
groups:
- ep-jsa_net:
+ ep-jsa_net_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/ep-jsa_net.yaml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
+ - FSB1_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..916359eb88
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,298 @@
+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.FSB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_FSB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ memory_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/SubstitutionServiceTemplate.yaml
new file mode 100644
index 0000000000..7c322d53fd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/NoPorts/out/SubstitutionServiceTemplate.yaml
@@ -0,0 +1,196 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ compute_FSB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ node_templates:
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_FSB1_metadata
+ - index_value
+ name:
+ get_input:
+ - compute_FSB1_name
+ - index_value
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1
+ capabilities:
+ memory_FSB1:
+ - FSB1
+ - memory
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ feature_FSB1:
+ - FSB1
+ - feature
+ host_FSB1:
+ - FSB1
+ - host
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ instance_FSB1:
+ - FSB1
+ - instance
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/VariouseST.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/in/MainServiceTemplate.yaml
index 1f39bfb314..d9047f9162 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/test/resources/extractServiceComposition/all/VariouseST.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/in/MainServiceTemplate.yaml
@@ -2,28 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
- org.openecomp.resource.vfc.nodes.heat.pcrf_psm:
- derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
- org.openecomp.resource.vfc.nodes.heat.pcm:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
topology_template:
inputs:
@@ -94,18 +76,33 @@ topology_template:
immutable: false
type: string
description: pcrf_psm_image_name
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
FSB_1_image:
label: MME_FSB1
hidden: false
immutable: false
type: string
description: MME_FSB1_15B-CP04-r5a01
+ snapshot01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
volume_size:
label: volume size
hidden: false
immutable: false
type: float
description: my volume size 320GB
+ snapshot02:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
fsb1-Internal1-mac:
label: FSB1_internal_mac
hidden: false
@@ -124,6 +121,11 @@ topology_template:
immutable: false
type: string
description: pcm_server_name
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
Internal1_net_name:
label: Internal1_net_name
hidden: false
@@ -148,6 +150,11 @@ topology_template:
immutable: false
type: string
description: FSB1_internal_mac
+ pcm_vol_01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
volume_type:
label: volume type
hidden: false
@@ -166,13 +173,32 @@ topology_template:
immutable: false
type: string
description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
+ type: string
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
jsa_net_name:
label: jsa_net_name
hidden: false
@@ -198,6 +224,11 @@ topology_template:
immutable: false
type: string
description: oam_net_id
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
fsb2-Internal1-mac:
label: FSB1_internal_mac
hidden: false
@@ -216,19 +247,39 @@ topology_template:
immutable: false
type: string
description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
cps_net_name:
label: cps_net_name
hidden: false
immutable: false
type: string
description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
pcrf_security_group_name:
hidden: false
immutable: false
type: list
description: CMAUI1, CMAUI2 server names
entry_schema:
- type: String
+ type: string
Internal1_external:
label: Internal1_external
hidden: false
@@ -236,72 +287,56 @@ topology_template:
type: string
description: Internal1_external
node_templates:
-
- jsa_net:
- type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
- shared: true
- network_name:
- get_input: jsa_net_name
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
jsa_net1:
type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
properties:
shared: true
network_name:
get_input: jsa_net_name
- nova_local_type_pcm1:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcm2:
- type: org.openecomp.resource.vfc.nodes.heat.pcm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_local_type_pcrf_psm:
- type: org.openecomp.resource.vfc.nodes.heat.pcrf_psm
- properties:
- flavor:
- get_input: pcm_flavor_name
- availability_zone:
- get_input: availabilityzone_name
- image:
- get_input: pcm_image_name
- config_drive: 'True'
- user_data_format: RAW
- name:
- get_input: pcm_server_name
- user_data: UNSUPPORTED_RESOURCE_server_init
- nova_global_type1:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
- properties:
- flavor:
- get_input: fsb1-flavor
- availability_zone:
- get_input: fsb_zone
- name:
- get_input: fsb1-name
- nova_global_type2:
- type: org.openecomp.resource.vfc.nodes.heat.nova.Server
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
properties:
flavor:
get_input: fsb1-flavor
@@ -348,16 +383,36 @@ topology_template:
nimbus-ethernet:
type: tosca.artifacts.Deployment
file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
groups:
- ep-jsa_net:
+ ep-jsa_net_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/ep-jsa_net.yaml
description: |
Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
members:
- - nova_local_type_pcm1
- - nova_local_type_pcm2
- - nova_local_type_pcrf_psm
- - nova_global_type1
- - nova_global_type2 \ No newline at end of file
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..d570a37afb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,568 @@
+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.FSB1_2:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_FSB1_FSB_OAM:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_FSB1_FSB2_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml
new file mode 100644
index 0000000000..58ea943973
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithIndex/out/SubstitutionServiceTemplate.yaml
@@ -0,0 +1,391 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1_2
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB1_FSB1_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB1_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB1_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB2_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB2_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ get_input:
+ - port_FSB_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_FSB_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_FSB1_metadata
+ - index_value
+ name:
+ get_input:
+ - compute_FSB1_name
+ - index_value
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1_2
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.packets.rate
+ attachment_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - attachment
+ binding_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - binding
+ binding_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - binding
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ network.outgoing.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes.rate
+ feature_FSB1:
+ - FSB1
+ - feature
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes
+ attachment_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - attachment
+ feature_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - feature
+ network.incoming.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets
+ feature_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - feature
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ network.incoming.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets.rate
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ instance_FSB1:
+ - FSB1
+ - instance
+ network.incoming.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ binding_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - binding
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ feature_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - feature
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ network.outpoing.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outpoing.packets
+ network.incoming.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets
+ attachment_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - attachment
+ memory_FSB1:
+ - FSB1
+ - memory
+ network.incoming.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes.rate
+ network.outpoing.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ host_FSB1:
+ - FSB1
+ - host
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ network.incoming.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes
+ network.incoming.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes
+ network.outpoing.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes.rate
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes.rate
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ network.incoming.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ network.incoming.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes.rate
+ network.incoming.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ network.outgoing.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.packets.rate
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ link_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - link
+ dependency_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - dependency
+ link_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - link
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
+ dependency_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - dependency
+ link_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - link
+ dependency_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..611052d787
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,287 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ size: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_Internal2,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB2_template, addresses, {get_attribute: [ FSB2_Internal1,index ] } ]}
+ size: { get_attribute: [FSB1_Internal2, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB2_template,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB1_template
+ - FSB2_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..6183e8703e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,519 @@
+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.FSB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_oam_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_oam_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ binding_FSB1_FSB2_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml
new file mode 100644
index 0000000000..07c6c2528b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/consolidation/out/SubstitutionServiceTemplate.yaml
@@ -0,0 +1,391 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB1_FSB1_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB1_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB1_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB2_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB2_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_FSB1_metadata
+ - index_value
+ name:
+ get_input:
+ - compute_FSB1_name
+ - index_value
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ outputs:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - accessIPv6
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_oam_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - oam_index
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - index
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_oam_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - oam_index
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1
+ capabilities:
+ binding_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - binding
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ feature_FSB1:
+ - FSB1
+ - feature
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes
+ attachment_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - attachment
+ feature_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - feature
+ network.incoming.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ network.incoming.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets.rate
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ instance_FSB1:
+ - FSB1
+ - instance
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ binding_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - binding
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ feature_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - feature
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ network.incoming.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets
+ attachment_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - attachment
+ memory_FSB1:
+ - FSB1
+ - memory
+ network.outpoing.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes.rate
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ host_FSB1:
+ - FSB1
+ - host
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ network.outgoing.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes
+ network.incoming.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes
+ network.outpoing.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes.rate
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes.rate
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ network.incoming.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes.rate
+ network.incoming.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ network.outgoing.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.packets.rate
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ link_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - link
+ dependency_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - dependency
+ link_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - link
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
+ dependency_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..8e6142435e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,431 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ Internal2_name:
+ label: Internal2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_name
+ Internal1_shared:
+ label: Internal1_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_shared
+ FSB1_volume_name:
+ label: FSB1_volume
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_volume_1
+ jsa_cidr:
+ label: jsa_cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_cidr
+ default: 107.243.7.128/26
+ availabilityzone_name:
+ label: availabilityzone_name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone_name
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ pcm_image_name:
+ label: pcm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_image_name
+ Internal2_external:
+ label: Internal2_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_external
+ Internal2_forwarding_mode:
+ label: Internal2_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_forwarding_mode
+ pcrf_psm_flavor_name:
+ label: pcrf_psm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_flavor_name
+ pcrf_psm_image_name:
+ label: pcrf_psm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_image_name
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ FSB_1_image:
+ label: MME_FSB1
+ hidden: false
+ immutable: false
+ type: string
+ description: MME_FSB1_15B-CP04-r5a01
+ snapshot01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ snapshot02:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ Internal2_shared:
+ label: Internal2_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_shared
+ pcm_server_name:
+ label: pcm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_server_name
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal1_net_name:
+ label: Internal1_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_net_name
+ oam_net_name:
+ label: oam_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_name
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ pcm_vol_01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ Internal1_forwarding_mode:
+ label: Internal1_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_forwarding_mode
+ pcrf_cps_net_name:
+ label: pcrf_cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_name:
+ label: cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ pcrf_security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ Internal1_external:
+ label: Internal1_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_external
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ size: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_OAM,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..bf0af32231
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,604 @@
+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.FSB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB_OAM_oam_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_FSB1_FSB_OAM:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_FSB1_FSB2_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml
new file mode 100644
index 0000000000..b20af41093
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/WithOutputParameters/noConsolidation/out/SubstitutionServiceTemplate.yaml
@@ -0,0 +1,448 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB1_FSB1_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB1_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB1_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB2_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB2_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ get_input:
+ - port_FSB_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_FSB_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_FSB1_metadata
+ - index_value
+ name:
+ get_input:
+ - compute_FSB1_name
+ - index_value
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ outputs:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - accessIPv6
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - index
+ entry_schema:
+ type: string
+ FSB1_FSB_OAM_oam_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB_OAM
+ - oam_index
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.packets.rate
+ attachment_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - attachment
+ binding_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - binding
+ binding_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - binding
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ network.outgoing.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes.rate
+ feature_FSB1:
+ - FSB1
+ - feature
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes
+ attachment_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - attachment
+ feature_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - feature
+ network.incoming.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets
+ feature_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - feature
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ network.incoming.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets.rate
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ instance_FSB1:
+ - FSB1
+ - instance
+ network.incoming.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ binding_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - binding
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ feature_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - feature
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ network.outpoing.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outpoing.packets
+ network.incoming.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets
+ attachment_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - attachment
+ memory_FSB1:
+ - FSB1
+ - memory
+ network.incoming.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes.rate
+ network.outpoing.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ host_FSB1:
+ - FSB1
+ - host
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ network.incoming.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes
+ network.incoming.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes
+ network.outpoing.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes.rate
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes.rate
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ network.incoming.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ network.incoming.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes.rate
+ network.incoming.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ network.outgoing.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.packets.rate
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ link_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - link
+ dependency_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - dependency
+ link_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - link
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
+ dependency_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - dependency
+ link_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - link
+ dependency_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c45d65ac5f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,288 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network: Internal2-net
+ device_id: {get_attribute: [FSB2_template, device_id]}
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: {get_attribute: [FSB2_Internal1, device_id]}
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: {get_attribute: [FSB2_Internal1, device_id]}
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ name:
+ get_attribute: [FSB1_Internal1, name]
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ size: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_Internal2,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB2_template, addresses, {get_attribute: [ FSB2_Internal1,index ] } ]}
+ size: { get_attribute: [FSB1_Internal2, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB2_template,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB1_template
+ - FSB2_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..6772f8c594
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,513 @@
+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.FSB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_oam_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_oam_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ binding_FSB1_FSB2_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml
new file mode 100644
index 0000000000..4c5d4ae924
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/consolidation/out/SubstitutionServiceTemplate.yaml
@@ -0,0 +1,390 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB1_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_metadata:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ compute_FSB1_availability_zone:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ compute_FSB1_name:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB1_FSB1_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - device_id
+ mac_address:
+ get_input:
+ - port_FSB1_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB2_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ device_id:
+ get_attribute:
+ - FSB1
+ - device_id
+ network:
+ get_input:
+ - port_FSB2_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_input:
+ - compute_FSB1_availability_zone
+ - index_value
+ flavor:
+ get_input: vm_flavor_name
+ metadata:
+ get_input:
+ - compute_FSB1_metadata
+ - index_value
+ name:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ outputs:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - accessIPv6
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_oam_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - oam_index
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - index
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_oam_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - oam_index
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1
+ capabilities:
+ binding_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - binding
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ feature_FSB1:
+ - FSB1
+ - feature
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes
+ attachment_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - attachment
+ feature_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - feature
+ network.incoming.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ network.incoming.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets.rate
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ instance_FSB1:
+ - FSB1
+ - instance
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ binding_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - binding
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ feature_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - feature
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ network.incoming.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets
+ attachment_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - attachment
+ memory_FSB1:
+ - FSB1
+ - memory
+ network.outpoing.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes.rate
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ host_FSB1:
+ - FSB1
+ - host
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ network.outgoing.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes
+ network.incoming.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes
+ network.outpoing.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes.rate
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes.rate
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ network.incoming.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes.rate
+ network.incoming.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ network.outgoing.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.packets.rate
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ link_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - link
+ dependency_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - dependency
+ link_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - link
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
+ dependency_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..30ec112f14
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,401 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ Internal2_name:
+ label: Internal2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_name
+ Internal1_shared:
+ label: Internal1_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_shared
+ FSB1_volume_name:
+ label: FSB1_volume
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_volume_1
+ jsa_cidr:
+ label: jsa_cidr
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_cidr
+ default: 107.243.7.128/26
+ availabilityzone_name:
+ label: availabilityzone_name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone_name
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ pcm_image_name:
+ label: pcm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_image_name
+ Internal2_external:
+ label: Internal2_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_external
+ Internal2_forwarding_mode:
+ label: Internal2_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_forwarding_mode
+ pcrf_psm_flavor_name:
+ label: pcrf_psm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_flavor_name
+ pcrf_psm_image_name:
+ label: pcrf_psm_image_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_image_name
+ pcrf_vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ FSB_1_image:
+ label: MME_FSB1
+ hidden: false
+ immutable: false
+ type: string
+ description: MME_FSB1_15B-CP04-r5a01
+ snapshot01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ snapshot02:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ Internal2_shared:
+ label: Internal2_shared
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal2_shared
+ pcm_server_name:
+ label: pcm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_server_name
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ Internal1_net_name:
+ label: Internal1_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_net_name
+ oam_net_name:
+ label: oam_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_name
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ pcm_vol_01:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ VMME_FSB1_boot_volume:
+ hidden: false
+ immutable: false
+ type: string
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ pcrf_cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ Internal1_forwarding_mode:
+ label: Internal1_forwarding_mode
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_forwarding_mode
+ pcrf_cps_net_name:
+ label: pcrf_cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_cps_net_name
+ pcm_vol:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_name:
+ label: cps_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: cps_net_name
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ pcrf_security_group_name:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ Internal1_external:
+ label: Internal1_external
+ hidden: false
+ immutable: false
+ type: string
+ description: Internal1_external
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_attribute: [FSB1_template, mac]
+ network: {get_attribute: [jsa_net1, netid] }
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_attribute: [ FSB1_Internal1, myAttr, get_attribute: [FSB1_Internal1, index] ]
+ metadata:
+ get_attribute: [ FSB1_Internal1, myAttr, get_input: index ]
+ name:
+ get_attribute: [ FSB1_Internal1, myAttr, get_attribute: [jsa_net1, index] ]
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ size: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_OAM,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..f1d1182772
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,580 @@
+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.FSB1:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: json
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ attributes:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ FSB1_FSB_OAM_oam_index:
+ type: list
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1_FSB_OAM:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_FSB1_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_FSB1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_FSB1_FSB_OAM:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_FSB1_FSB2_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.capacity_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_FSB1_FSB2_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.read.requests.rate_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_FSB1:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_FSB1:
+ type: org.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_FSB1:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ type: org.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_FSB1_FSB1_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB_OAM:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.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_FSB1_FSB2_Internal:
+ type: org.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_FSB1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml
new file mode 100644
index 0000000000..3ef8780d7e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/creSubstitutionServiceTemplate/updNodesGetAttrInFromInnerNodes/noConsolidation/out/SubstitutionServiceTemplate.yaml
@@ -0,0 +1,423 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Nested_FSB1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ port_FSB_OAM_fixed_ips:
+ type: list
+ required: true
+ entry_schema:
+ type: json
+ port_FSB1_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ constraints:
+ - greater_or_equal: 0
+ port_FSB2_Internal_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ port_FSB2_Internal_mac_address:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ port_FSB_OAM_network:
+ type: list
+ required: true
+ entry_schema:
+ type: string
+ node_templates:
+ FSB1_FSB1_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB1_Internal_network
+ - index_value
+ mac_address:
+ get_attribute:
+ - FSB1
+ - mac
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB2_Internal:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input:
+ - port_FSB2_Internal_network
+ - index_value
+ mac_address:
+ get_input:
+ - port_FSB2_Internal_mac_address
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_FSB_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ get_input:
+ - port_FSB_OAM_fixed_ips
+ - index_value
+ network:
+ get_input:
+ - port_FSB_OAM_network
+ - index_value
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ availability_zone:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - myAttr
+ - get_attribute:
+ - FSB1_FSB1_Internal
+ - index
+ flavor:
+ get_input: vm_flavor_name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ outputs:
+ FSB1_FSB1_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB1_Internal_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB1_Internal
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_accessIPv6:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - accessIPv6
+ entry_schema:
+ type: string
+ FSB1_addresses:
+ type: list
+ value:
+ get_attribute:
+ - FSB1
+ - addresses
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_network_id:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - network_id
+ entry_schema:
+ type: string
+ FSB1_FSB2_Internal_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB2_Internal
+ - index
+ entry_schema:
+ type: string
+ FSB1_FSB_OAM_oam_index:
+ type: list
+ value:
+ get_attribute:
+ - FSB1_FSB_OAM
+ - oam_index
+ entry_schema:
+ type: string
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.FSB1
+ capabilities:
+ network.outgoing.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.packets.rate
+ attachment_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - attachment
+ binding_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - binding
+ binding_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - binding
+ disk.capacity_FSB1:
+ - FSB1
+ - disk.capacity
+ disk.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.read.bytes.rate
+ disk.device.latency_FSB1:
+ - FSB1
+ - disk.device.latency
+ disk.allocation_FSB1:
+ - FSB1
+ - disk.allocation
+ disk.read.bytes_FSB1:
+ - FSB1
+ - disk.read.bytes
+ disk.device.capacity_FSB1:
+ - FSB1
+ - disk.device.capacity
+ cpu_util_FSB1:
+ - FSB1
+ - cpu_util
+ disk.device.write.requests.rate_FSB1:
+ - FSB1
+ - disk.device.write.requests.rate
+ disk.root.size_FSB1:
+ - FSB1
+ - disk.root.size
+ network.outgoing.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes.rate
+ feature_FSB1:
+ - FSB1
+ - feature
+ network.incoming.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes
+ attachment_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - attachment
+ feature_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - feature
+ network.incoming.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets
+ feature_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - feature
+ memory.resident_FSB1:
+ - FSB1
+ - memory.resident
+ network.incoming.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.packets.rate
+ cpu_FSB1:
+ - FSB1
+ - cpu
+ disk.write.requests.rate_FSB1:
+ - FSB1
+ - disk.write.requests.rate
+ instance_FSB1:
+ - FSB1
+ - instance
+ network.incoming.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes
+ disk.device.read.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.read.bytes.rate
+ cpu.delta_FSB1:
+ - FSB1
+ - cpu.delta
+ disk.write.bytes_FSB1:
+ - FSB1
+ - disk.write.bytes
+ binding_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - binding
+ disk.device.read.requests.rate_FSB1:
+ - FSB1
+ - disk.device.read.requests.rate
+ feature_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - feature
+ disk.device.read.requests_FSB1:
+ - FSB1
+ - disk.device.read.requests
+ disk.ephemeral.size_FSB1:
+ - FSB1
+ - disk.ephemeral.size
+ binding_FSB1:
+ - FSB1
+ - binding
+ disk.device.write.bytes_FSB1:
+ - FSB1
+ - disk.device.write.bytes
+ network.outpoing.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outpoing.packets
+ network.incoming.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.packets
+ attachment_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - attachment
+ memory_FSB1:
+ - FSB1
+ - memory
+ network.incoming.bytes.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.bytes.rate
+ network.outpoing.packets_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outpoing.packets
+ network.outgoing.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.outgoing.bytes
+ disk.device.read.bytes_FSB1:
+ - FSB1
+ - disk.device.read.bytes
+ disk.device.usage_FSB1:
+ - FSB1
+ - disk.device.usage
+ disk.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.write.bytes.rate
+ scalable_FSB1:
+ - FSB1
+ - scalable
+ disk.usage_FSB1:
+ - FSB1
+ - disk.usage
+ host_FSB1:
+ - FSB1
+ - host
+ disk.device.allocation_FSB1:
+ - FSB1
+ - disk.device.allocation
+ os_FSB1:
+ - FSB1
+ - os
+ vcpus_FSB1:
+ - FSB1
+ - vcpus
+ disk.write.requests_FSB1:
+ - FSB1
+ - disk.write.requests
+ network.incoming.packets.rate_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets.rate
+ network.outgoing.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.bytes
+ network.incoming.bytes_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes
+ network.outpoing.packets_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outpoing.packets
+ disk.device.write.bytes.rate_FSB1:
+ - FSB1
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.bytes.rate
+ endpoint_FSB1:
+ - FSB1
+ - endpoint
+ network.outgoing.packets.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - network.incoming.bytes.rate
+ disk.latency_FSB1:
+ - FSB1
+ - disk.latency
+ memory.usage_FSB1:
+ - FSB1
+ - memory.usage
+ disk.read.requests_FSB1:
+ - FSB1
+ - disk.read.requests
+ network.incoming.packets_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - network.incoming.packets
+ disk.device.write.requests_FSB1:
+ - FSB1
+ - disk.device.write.requests
+ network.incoming.bytes.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes.rate
+ network.incoming.bytes_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.incoming.bytes
+ disk.iops_FSB1:
+ - FSB1
+ - disk.iops
+ network.outgoing.packets.rate_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - network.outgoing.packets.rate
+ disk.device.iops_FSB1:
+ - FSB1
+ - disk.device.iops
+ requirements:
+ dependency_FSB1:
+ - FSB1
+ - dependency
+ link_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - link
+ dependency_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - dependency
+ link_FSB1_FSB1_Internal:
+ - FSB1_FSB1_Internal
+ - link
+ local_storage_FSB1:
+ - FSB1
+ - local_storage
+ dependency_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - dependency
+ link_FSB1_FSB_OAM:
+ - FSB1_FSB_OAM
+ - link
+ dependency_FSB1_FSB2_Internal:
+ - FSB1_FSB2_Internal
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..304799b589
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/in/MainServiceTemplate.yaml
@@ -0,0 +1,187 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b441d659c0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsDiffType/out/MainServiceTemplate.yaml
@@ -0,0 +1,228 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ port_FSB1_Internal_network:
+ - Internal1-net
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb1-oam-ip
+ port_FSB2_Internal_network:
+ - Internal2-net
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ port_FSB_OAM_network:
+ - jsa_net1
+ compute_FSB_name:
+ - get_input: fsb1-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..d08dd91968
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/in/MainServiceTemplate.yaml
@@ -0,0 +1,164 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB1_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB1_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal2
+ - FSB1_Internal1
+ - FSB1_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..e2adb3038b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/oneComputeMultiplePortsSameType/out/MainServiceTemplate.yaml
@@ -0,0 +1,201 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB1_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB1_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal1_mac_address:
+ - get_input: fsb1-Internal1-mac
+ port_FSB1_Internal2_network:
+ - Internal2-net
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ port_FSB1_Internal1_network:
+ - Internal1-net
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB1_Internal2_mac_address:
+ - get_input: fsb1-Internal2-mac
+ compute_FSB_name:
+ - get_input: fsb1-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal2
+ - FSB1_Internal1
+ - FSB1_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..21715db6f6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/in/MainServiceTemplate.yaml
@@ -0,0 +1,250 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume3
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume4
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume4:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ce35a8ed2a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/createAbstractSubstitute/twoComputesMultiplePorts/out/MainServiceTemplate.yaml
@@ -0,0 +1,299 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume3
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume4
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume4:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ - STATIC-DATA-FSB2
+ port_FSB1_Internal_network:
+ - Internal1-net-fsb1-Internal1
+ - Internal1-net-fsb1-Internal2
+ port_FSB2_Internal_network:
+ - Internal2-net-fsb2-Internal1
+ - Internal2-net-fsb2-Internal2
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ - write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_user_data:
+ - OPTIONAL-DATA-FSB1
+ - null
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ - get_input: fsb2_zone
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb2-Internal1-mac
+ - get_input: fsb2-Internal2-mac
+ compute_FSB_name:
+ - get_input: fsb1-name
+ - get_input: fsb2-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..f71e70e7e8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,204 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ - get_attribute:
+ - FSB2_Internal2
+ - index
+ size:
+ get_attribute:
+ - FSB1_Internal1
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_OAM
+ - oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_template
+ - accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ FSB1:
+ type: org.openecomp.resource.abstract.nodes.FSB1
+ directives:
+ - substitutable
+ properties:
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids_1:
+ get_attribute:
+ - FSB1_template_1
+ - addresses
+ dhcp_agent_ids_2:
+ get_attribute:
+ - FSB1_template_2
+ - addresses
+ dhcp_agent_ids_3:
+ get_attribute:
+ - FSB1_template_3
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal1
+ - network_id
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - cmaui_volume1
+ - cmaui_volume2
+ - jsa_net1
+ - FSB1
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..9715d3c129
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,204 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ - get_attribute:
+ - FSB2_Internal2
+ - index
+ size:
+ get_attribute:
+ - FSB1_Internal1
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_OAM
+ - oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_template
+ - accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ FSB1:
+ type: org.openecomp.resource.abstract.nodes.FSB1
+ directives:
+ - substitutable
+ properties:
+ network_name:
+ get_attribute:
+ - FSB2
+ - FSB2_FSB1_Internal_network_id
+ dhcp_agent_ids_1:
+ get_attribute:
+ - FSB2
+ - FSB1_addresses
+ dhcp_agent_ids_2:
+ get_attribute:
+ - FSB2
+ - FSB1_addresses
+ dhcp_agent_ids_3:
+ get_attribute:
+ - FSB1_template_3
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2
+ - FSB2_FSB2_Internal_network_id
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - cmaui_volume1
+ - cmaui_volume2
+ - jsa_net1
+ - FSB1
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/mockComputeNodeTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/mockComputeNodeTemplate.yaml
new file mode 100644
index 0000000000..9c7b9ab85b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/mockComputeNodeTemplate.yaml
@@ -0,0 +1,9 @@
+type: org.openecomp.resource.vfc.nodes.heat.FSB1
+properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..508c67cffc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,197 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ - get_attribute:
+ - FSB2_Internal2
+ - index
+ size:
+ get_attribute:
+ - FSB1_Internal1
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_OAM
+ - oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_template
+ - accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ FSB1:
+ type: org.openecomp.resource.abstract.nodes.FSB1
+ directives:
+ - substitutable
+ properties:
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB1_Internal2
+ - network_id
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - cmaui_volume1
+ - cmaui_volume2
+ - jsa_net1
+ - FSB1
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a94f9fa87b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/fixNewAbstractNodeTemplate/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,196 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ - get_attribute:
+ - FSB2_Internal2
+ - index
+ size:
+ get_attribute:
+ - FSB1_Internal1
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_OAM
+ - oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1_template
+ - accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ FSB1:
+ type: org.openecomp.resource.abstract.nodes.FSB1
+ directives:
+ - substitutable
+ properties:
+ network_name:
+ get_attribute:
+ - FSB2
+ - FSB2_FSB1_Internal1_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB2
+ - FSB1_addresses
+ tenant_id:
+ get_attribute:
+ - FSB2
+ - FSB2_FSB1_Internal2_network_id
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - cmaui_volume1
+ - cmaui_volume2
+ - jsa_net1
+ - FSB1
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..21d373968b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,240 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB3_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_template
+ - FSB2_template
+ - FSB3_template
+ outputs:
+ simpleOutput1:
+ value: {get_attribute: [ FSB1_template, accessIPv4 ] }
+ simpleOutput2:
+ value: {get_attribute: [ FSB2_template, addresses, key1 ] }
+ complexOutput1:
+ value: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attribute: [FSB1_Internal2, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB2_Internal1,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_Internal1,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..773801f9fa
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern1b/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,294 @@
+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:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ abstract_FSB1_0:
+ type: org.openecomp.resource.abstract.nodes.FSB1_0
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ compute_FSB1_availability_zone:
+ - get_input: fsb_zone
+ port_FSB1_Internal_network:
+ - Internal1-net
+ port_FSB2_Internal_network:
+ - Internal2-net
+ vm_flavor_name:
+ get_input: fsb1-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb1-Internal2-mac
+ service_template_filter:
+ substitute_service_template: Nested_FSB1_0ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ abstract_FSB1_1:
+ type: org.openecomp.resource.abstract.nodes.FSB1_1
+ directives:
+ - substitutable
+ properties:
+ compute_FSB1_availability_zone:
+ - get_input: fsb_zone
+ vm_flavor_name:
+ get_input: fsb1-flavor
+ service_template_filter:
+ substitute_service_template: Nested_FSB1_1ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ abstract_FSB1_2:
+ type: org.openecomp.resource.abstract.nodes.FSB1_2
+ directives:
+ - substitutable
+ properties:
+ compute_FSB1_availability_zone:
+ - get_input: fsb_zone
+ vm_flavor_name:
+ get_input: fsb1-flavor
+ service_template_filter:
+ substitute_service_template: Nested_FSB1_2ServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_FSB1_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage_FSB1:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - abstract_FSB1_0
+ - abstract_FSB1_1
+ - abstract_FSB1_2
+ outputs:
+ simpleOutput1:
+ value:
+ get_attribute:
+ - abstract_FSB1_0
+ - FSB1_accessIPv4
+ simpleOutput2:
+ value:
+ get_attribute:
+ - FSB2_template
+ - addresses
+ - key1
+ complexOutput1:
+ value:
+ get_attribute:
+ - abstract_FSB1_0
+ - FSB1_addresses
+ - get_attribute:
+ - abstract_FSB1_0
+ - FSB1_FSB2_Internal_index
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - FSB1_Internal2
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB2_Internal1
+ - oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - abstract_FSB1_0
+ - FSB1_FSB1_Internal_accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9699fe0770
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,494 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..cce5bd8e1f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/MainServiceTemplate.yaml
@@ -0,0 +1,191 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pcm_001
+ relationship: tosca.relationships.DependsOn
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001
+ - packet_mirror_network
+ - compute_port_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..bf2d561195
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/in/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..bb5951f82a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,494 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..8645c43988
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,191 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: abstract_pcm_server_0
+ relationship: tosca.relationships.DependsOn
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001
+ - packet_mirror_network
+ - compute_port_0
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0b53a2bc16
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesConnectedIn/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9699fe0770
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,494 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b2d310efe5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/MainServiceTemplate.yaml
@@ -0,0 +1,229 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ server_pcm_001:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ server_compute_get_attr_test:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ compute_flavor_name: null
+ image:
+ get_input: compute_image_name
+ metadata:
+ get_attribute:
+ - server_pcm_001
+ - server_pcm_id
+ config_drive:
+ get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ user_data_format:
+ get_attribute:
+ - server_pcm_001
+ - oam_net_gw
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ tenant_id:
+ get_attribute:
+ - server_pcm_001
+ - oam_net_gw
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pcm_001
+ relationship: tosca.relationships.DependsOn
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001
+ - server_compute_get_attr_test
+ - packet_mirror_network
+ - compute_port_0 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..bf2d561195
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..bb5951f82a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,494 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..dd835be885
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,229 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ server_pcm_001:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ server_compute_get_attr_test:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ compute_flavor_name: null
+ image:
+ get_input: compute_image_name
+ metadata:
+ get_attribute:
+ - abstract_pcm_server_0
+ - server_pcm_id
+ config_drive:
+ get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ user_data_format:
+ get_attribute:
+ - abstract_pcm_server_0
+ - oam_net_gw
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ tenant_id:
+ get_attribute:
+ - abstract_pcm_server_0
+ - oam_net_gw
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pcm_001
+ relationship: tosca.relationships.DependsOn
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001
+ - server_compute_get_attr_test
+ - packet_mirror_network
+ - compute_port_0
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0b53a2bc16
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedNodesGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9699fe0770
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,494 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..72eabd0791
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/MainServiceTemplate.yaml
@@ -0,0 +1,240 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ server_compute_get_attr_test:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ compute_flavor_name: null
+ image:
+ get_input: compute_image_name
+ metadata:
+ get_attribute:
+ - abstract_pcm_server
+ - server_pcm_id
+ config_drive:
+ get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ user_data_format:
+ get_attribute:
+ - abstract_pcm_server
+ - oam_net_gw
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ tenant_id:
+ get_attribute:
+ - abstract_pcm_server
+ - oam_net_gw
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pcm_001
+ relationship: tosca.relationships.DependsOn
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001
+ - server_compute_get_attr_test
+ - packet_mirror_network
+ - compute_port_0
+ outputs:
+ output_attr_1:
+ value:
+ get_attribute:
+ - server_pcm_001
+ - accessIPv4
+ output_attr_2:
+ value:
+ get_attribute:
+ - server_pcm_001
+ - accessIPv6
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..bf2d561195
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/in/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - 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/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..bb5951f82a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,494 @@
+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.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - dependency_pcm_port_1:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_server_pcm:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_pcm_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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.iops_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ memory.usage_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_server_pcm:
+ type: org.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_pcm_port_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_pcm_port_1:
+ type: org.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_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_pcm_port_1:
+ type: org.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_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_pcm_port_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_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: org.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_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_pcm_port_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_server_pcm:
+ type: org.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_pcm_port_1:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..0e70b5a330
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/MainServiceTemplate.yaml
@@ -0,0 +1,240 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ abstract_pcm_server_0:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ server_compute_get_attr_test:
+ type: org.openecomp.resource.vfc.nodes.heat.compute
+ properties:
+ flavor:
+ compute_flavor_name: null
+ image:
+ get_input: compute_image_name
+ metadata:
+ get_attribute:
+ - abstract_pcm_server
+ - server_pcm_id
+ config_drive:
+ get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ user_data_format:
+ get_attribute:
+ - abstract_pcm_server
+ - oam_net_gw
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: net_name
+ tenant_id:
+ get_attribute:
+ - abstract_pcm_server
+ - oam_net_gw
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: server_pcm_001
+ relationship: tosca.relationships.DependsOn
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001
+ - server_compute_get_attr_test
+ - packet_mirror_network
+ - compute_port_0
+ outputs:
+ output_attr_1:
+ value:
+ get_attribute:
+ - abstract_pcm_server_0
+ - accessIPv4
+ output_attr_2:
+ value:
+ get_attribute:
+ - abstract_pcm_server_0
+ - accessIPv6
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..0b53a2bc16
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/nestedOutputParamGetAttrIn/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,360 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ network.incoming.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets.rate
+ cpu_server_pcm:
+ - server_pcm
+ - cpu
+ network.incoming.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets.rate
+ network.outpoing.packets_pcm_port_1:
+ - pcm_port_1
+ - network.outpoing.packets
+ memory_server_pcm:
+ - server_pcm
+ - memory
+ disk.write.requests_server_pcm:
+ - server_pcm
+ - disk.write.requests
+ network.outpoing.packets_pcm_port_0:
+ - pcm_port_0
+ - network.outpoing.packets
+ disk.device.iops_server_pcm:
+ - server_pcm
+ - disk.device.iops
+ memory.resident_server_pcm:
+ - server_pcm
+ - memory.resident
+ disk.device.write.requests_server_pcm:
+ - server_pcm
+ - disk.device.write.requests
+ disk.device.usage_server_pcm:
+ - server_pcm
+ - disk.device.usage
+ disk.allocation_server_pcm:
+ - server_pcm
+ - disk.allocation
+ disk.usage_server_pcm:
+ - server_pcm
+ - disk.usage
+ disk.device.write.bytes_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes
+ disk.root.size_server_pcm:
+ - server_pcm
+ - disk.root.size
+ disk.ephemeral.size_server_pcm:
+ - server_pcm
+ - disk.ephemeral.size
+ disk.device.latency_server_pcm:
+ - server_pcm
+ - disk.device.latency
+ network.incoming.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes
+ network.incoming.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ memory.usage_server_pcm:
+ - server_pcm
+ - memory.usage
+ disk.read.requests_server_pcm:
+ - server_pcm
+ - disk.read.requests
+ disk.capacity_server_pcm:
+ - server_pcm
+ - disk.capacity
+ os_server_pcm:
+ - server_pcm
+ - os
+ disk.read.bytes_server_pcm:
+ - server_pcm
+ - disk.read.bytes
+ network.outgoing.packets.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.packets.rate
+ network.outgoing.packets.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.packets.rate
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ network.outgoing.bytes_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes
+ disk.device.read.bytes_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ network.outgoing.bytes_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ disk.device.read.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.requests.rate
+ vcpus_server_pcm:
+ - server_pcm
+ - vcpus
+ disk.write.bytes_server_pcm:
+ - server_pcm
+ - disk.write.bytes
+ disk.iops_server_pcm:
+ - server_pcm
+ - disk.iops
+ disk.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.read.bytes.rate
+ disk.device.allocation_server_pcm:
+ - server_pcm
+ - disk.device.allocation
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ disk.device.read.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.read.bytes.rate
+ cpu_util_server_pcm:
+ - server_pcm
+ - cpu_util
+ disk.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.write.requests.rate
+ disk.device.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.bytes.rate
+ host_server_pcm:
+ - server_pcm
+ - host
+ cpu.delta_server_pcm:
+ - server_pcm
+ - cpu.delta
+ network.outgoing.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.outgoing.bytes.rate
+ network.incoming.packets_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.packets
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ network.outgoing.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.outgoing.bytes.rate
+ disk.device.capacity_server_pcm:
+ - server_pcm
+ - disk.device.capacity
+ network.incoming.packets_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.packets
+ instance_server_pcm:
+ - server_pcm
+ - instance
+ disk.device.write.requests.rate_server_pcm:
+ - server_pcm
+ - disk.device.write.requests.rate
+ disk.latency_server_pcm:
+ - server_pcm
+ - disk.latency
+ disk.device.read.requests_server_pcm:
+ - server_pcm
+ - disk.device.read.requests
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ network.incoming.bytes.rate_pcm_port_0:
+ - pcm_port_0
+ - network.incoming.bytes.rate
+ disk.write.bytes.rate_server_pcm:
+ - server_pcm
+ - disk.write.bytes.rate
+ network.incoming.bytes.rate_pcm_port_1:
+ - pcm_port_1
+ - network.incoming.bytes.rate
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
+ dependency_pcm_port_0:
+ - pcm_port_0
+ - dependency
+ dependency_server_pcm:
+ - server_pcm
+ - dependency
+ dependency_pcm_port_1:
+ - pcm_port_1
+ - dependency
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..887439d296
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,331 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ cps_net_ips:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_volumes:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1_server_pcm_005:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_pcm_server_pcm_005:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0_server_pcm_005:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_network_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcm_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_network:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_network_server_pcm_005:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_network:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcm_server_pcm_005:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_network_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ link_network:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ 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/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..79f1956d5e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/MainServiceTemplate.yaml
@@ -0,0 +1,168 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ entry_schema:
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ server_pcm_001:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001 \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..761885b26c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/in/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,233 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ cps_net_ips:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ network:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: cps_net_name
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ - network
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ attachment_network:
+ - network
+ - attachment
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ link_network:
+ - network
+ - link
+ os_server_pcm:
+ - server_pcm
+ - os
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..a424a5d19b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,331 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ cps_net_ips:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_volumes:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1_server_pcm_005:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_pcm_server_pcm_005:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0_server_pcm_005:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_network_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcm_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_network:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ attachment_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ link_network_server_pcm_005:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_pcm_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_network:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcm_server_pcm_005:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_network_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ link_network:
+ type: tosca.capabilities.network.Linkable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1_server_pcm_005:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..73a6a28801
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/MainServiceTemplate.yaml
@@ -0,0 +1,168 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ entry_schema:
+ type: string
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ entry_schema:
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ abstract_pcm_server:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_pcm_001
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..25de7706d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/oneNestedNode/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,233 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ cps_net_ips:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ network:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork
+ properties:
+ network_name:
+ get_input: cps_net_name
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ - network
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ attachment_network:
+ - network
+ - attachment
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ link_network:
+ - network
+ - link
+ os_server_pcm:
+ - server_pcm
+ - os
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..9a1c164bab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,439 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ 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.nested-oam_v0.1:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ oam_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ oam_server_name:
+ type: string
+ description: oam server name
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ oam_image_name:
+ type: string
+ description: oam image name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_oam_id:
+ type: string
+ description: the oam nova service id
+ status: SUPPORTED
+ requirements:
+ - local_storage_server_oam:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ host_server_oam:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_oam:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_oam:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_oam:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_oam:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_oam:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ 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.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ os_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_compute:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..ae7e190c7f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/MainServiceTemplate.yaml
@@ -0,0 +1,318 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ oam_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ server_pcm_001:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - server_pcm_001
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ server_oam_001:
+ type: org.openecomp.resource.abstract.nodes.heat.nested-oam_v0.1
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ oam_flavor_name:
+ get_input: oam_flavor_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ oam_server_name:
+ get_input:
+ - oam_server_names
+ - 0
+ service_template_filter:
+ substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ oam_image_name:
+ get_input: oam_image_name
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_oam_001
+ - server_pcm_001
+ - compute_port_0
+ - abstract_compute
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-oam_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-oam_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..273fb94b1a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-oam_v0.1ServiceTemplate.yaml
@@ -0,0 +1,227 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-oam_v0.1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.oam_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ oam_server_name:
+ label: oam server name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam server name
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam image name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ server_oam:
+ type: org.openecomp.resource.vfc.nodes.heat.oam_server
+ properties:
+ flavor:
+ get_input: oam_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: oam_image_name
+ config_drive: true
+ name:
+ get_input: oam_server_name
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-oam_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-oam_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_oam
+ - pcm_port_1
+ - pcm_port_0
+ outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: server_oam
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-oam_v0.1
+ capabilities:
+ host_server_oam:
+ - server_oam
+ - host
+ endpoint_server_oam:
+ - server_oam
+ - endpoint
+ os_server_oam:
+ - server_oam
+ - os
+ feature_server_oam:
+ - server_oam
+ - feature
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ scalable_server_oam:
+ - server_oam
+ - scalable
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ binding_server_oam:
+ - server_oam
+ - binding
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_oam:
+ - server_oam
+ - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..2e238dd3c2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/in/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,228 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
+ capabilities:
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ os_server_pcm:
+ - server_pcm
+ - os
+ host_server_pcm:
+ - server_pcm
+ - host
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..752628d126
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,439 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.abstract.nodes.compute:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ compute_compute_user_data_format:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_image_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ index_value:
+ type: integer
+ description: Index value of this substitution service template runtime instance
+ required: false
+ default: 0
+ status: SUPPORTED
+ constraints:
+ - greater_or_equal: 0
+ compute_compute_name:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_flavor_name:
+ type: string
+ required: true
+ status: SUPPORTED
+ compute_compute_config_drive:
+ type: list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - local_storage_compute:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ os_compute:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_compute:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_compute:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_compute:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_compute:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_compute:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ pcm_image_name:
+ type: string
+ description: PCRF CM image name
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ pcm_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ pcm_server_name:
+ type: string
+ description: PCRF CM server name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_pcm_id:
+ type: string
+ description: the pcm nova service id
+ status: SUPPORTED
+ requirements:
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - local_storage_server_pcm:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ endpoint_server_pcm:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_pcm:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_pcm:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_pcm:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_pcm:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_pcm:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ 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.oam_server:
+ derived_from: org.openecomp.resource.abstract.nodes.VFC
+ properties:
+ availabilityzone_name:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ oam_net_gw:
+ type: string
+ description: CPS network gateway
+ required: true
+ status: SUPPORTED
+ oam_flavor_name:
+ type: string
+ description: flavor name of PCRF CM instance
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cps_net_ip:
+ type: string
+ description: CPS network ip
+ required: true
+ status: SUPPORTED
+ oam_server_name:
+ type: string
+ description: oam server name
+ required: true
+ status: SUPPORTED
+ pcm_vol:
+ type: string
+ description: CPS Cluman Cinder Volume
+ required: true
+ status: SUPPORTED
+ oam_image_name:
+ type: string
+ description: oam image name
+ required: true
+ status: SUPPORTED
+ cps_net_name:
+ type: string
+ description: CPS network name
+ required: true
+ status: SUPPORTED
+ cps_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_ip:
+ type: string
+ description: OAM network ip
+ required: true
+ status: SUPPORTED
+ oam_net_mask:
+ type: string
+ description: CPS network mask
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: OAM network name
+ required: true
+ status: SUPPORTED
+ attributes:
+ server_oam_id:
+ type: string
+ description: the oam nova service id
+ status: SUPPORTED
+ requirements:
+ - local_storage_server_oam:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_pcm_port_1:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - link_pcm_port_0:
+ capability: tosca.capabilities.network.Linkable
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ host_server_oam:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_server_oam:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_server_oam:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_server_oam:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_1:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_server_oam:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_pcm_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_server_oam:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_pcm_port_1:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_pcm_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_pcm_port_1:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - 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/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..7cb0e8c3f7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/MainServiceTemplate.yaml
@@ -0,0 +1,318 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.compute:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_net_ips:
+ label: OAM network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: OAM network ips
+ default:
+ - 107.239.64.121
+ entry_schema:
+ type: string
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ default: nova
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ default: 107.239.64.1
+ pcm_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ pcm_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ cps_net_ips:
+ label: CPS network ips
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS network ips
+ default:
+ - 172.26.16.113
+ entry_schema:
+ type: string
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ default: nimbus_security_group
+ pcm_volumes:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: list
+ description: CPS Cluman Cinder Volume
+ default:
+ - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
+ entry_schema:
+ type: string
+ compute_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ default: cps
+ net_name:
+ hidden: false
+ immutable: false
+ type: string
+ oam_image_name:
+ label: PCRF CM image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ default: rhel2
+ oam_server_names:
+ label: PCRF CM server names
+ hidden: false
+ immutable: false
+ type: list
+ description: name of the PCRF CM instance
+ default:
+ - ZRDM1PCRF01PCM001
+ entry_schema:
+ type: string
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ default: int_pcrf_net_0
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ default: 255.255.255.0
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ default: oam_protected_net_0
+ node_templates:
+ pcm_server:
+ type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ pcm_image_name:
+ get_input: pcm_image_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ pcm_flavor_name:
+ get_input: pcm_flavor_name
+ service_template_filter:
+ substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ pcm_server_name:
+ get_input:
+ - pcm_server_names
+ - 0
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ compute_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: net_name
+ abstract_compute:
+ type: org.openecomp.resource.abstract.nodes.compute
+ directives:
+ - substitutable
+ properties:
+ compute_compute_user_data_format:
+ - get_attribute:
+ - server_pcm_001
+ - oam_net_gw
+ vm_image_name:
+ get_input: compute_image_name
+ compute_compute_name:
+ - compute_name: null
+ vm_flavor_name:
+ compute_flavor_name: null
+ compute_compute_config_drive:
+ - get_attribute:
+ - compute_port_0
+ - tenant_id
+ - port_security_enabled
+ - device_id
+ - qos_policy
+ - allowed_address_pairs
+ - show
+ - device_owner
+ - network
+ - security_groups
+ - fixed_ips
+ - mac_address
+ - admin_state_up
+ - name
+ - subnets
+ - status
+ service_template_filter:
+ substitute_service_template: Nested_computeServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ oam_server:
+ type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ directives:
+ - substitutable
+ properties:
+ availabilityzone_name:
+ get_input: availabilityzone_name
+ oam_net_gw:
+ get_input: oam_net_gw
+ oam_flavor_name:
+ get_input: oam_flavor_name
+ security_group_name:
+ get_input: security_group_name
+ cps_net_ip:
+ get_input:
+ - cps_net_ips
+ - 0
+ oam_server_name:
+ get_input:
+ - oam_server_names
+ - 0
+ service_template_filter:
+ substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
+ pcm_vol:
+ get_input:
+ - pcm_volumes
+ - 0
+ oam_image_name:
+ get_input: oam_image_name
+ cps_net_name:
+ get_input: cps_net_name
+ cps_net_mask:
+ get_input: cps_net_mask
+ oam_net_ip:
+ get_input:
+ - oam_net_ips
+ - 0
+ oam_net_mask:
+ get_input: oam_net_mask
+ oam_net_name:
+ get_input: oam_net_name
+ groups:
+ hot-nimbus-pcm_v0.4_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_oam_001
+ - server_pcm_001
+ - compute_port_0
+ - abstract_compute
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-oam_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-oam_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..1c9e9a7bdc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-oam_v0.1ServiceTemplate.yaml
@@ -0,0 +1,227 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-oam_v0.1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.oam_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ oam_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ oam_server_name:
+ label: oam server name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam server name
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ oam_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: oam image name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ server_oam:
+ type: org.openecomp.resource.vfc.nodes.heat.oam_server
+ properties:
+ flavor:
+ get_input: oam_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: oam_image_name
+ config_drive: true
+ name:
+ get_input: oam_server_name
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_oam
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-oam_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-oam_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - server_oam
+ - pcm_port_1
+ - pcm_port_0
+ outputs:
+ server_oam_id:
+ description: the oam nova service id
+ value: server_oam
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.oam_server
+ capabilities:
+ host_server_oam:
+ - server_oam
+ - host
+ endpoint_server_oam:
+ - server_oam
+ - endpoint
+ os_server_oam:
+ - server_oam
+ - os
+ feature_server_oam:
+ - server_oam
+ - feature
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ scalable_server_oam:
+ - server_oam
+ - scalable
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ binding_server_oam:
+ - server_oam
+ - binding
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_oam:
+ - server_oam
+ - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml
new file mode 100644
index 0000000000..6c33c49e0c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/pattern4/twoNestedWithOneCompute/out/nested-pcm_v0.1ServiceTemplate.yaml
@@ -0,0 +1,228 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested-pcm_v0.1
+imports:
+- CommonGlobalTypes:
+ file: CommonGlobalTypesServiceTemplate.yaml
+- NovaServerGlobalTypes:
+ file: NovaServerGlobalTypesServiceTemplate.yaml
+- NeutronPortGlobalTypes:
+ file: NeutronPortGlobalTypesServiceTemplate.yaml
+- NeutronSecurityRulesGlobalTypes:
+ file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+- NeutronNetGlobalTypes:
+ file: NeutronNetGlobalTypesServiceTemplate.yaml
+- CinderVolumeGlobalTypes:
+ file: CinderVolumeGlobalTypesServiceTemplate.yaml
+- ContrailVirtualNetworkGlobalType:
+ file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailNetworkRuleGlobalType:
+ file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+- AbstractSubstituteGlobalTypes:
+ file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualMachineInterfaceGlobalType:
+ file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- ContrailComputeGlobalTypes:
+ file: ContrailComputeGlobalTypesServiceTemplate.yaml
+- ContrailPortGlobalTypes:
+ file: ContrailPortGlobalTypesServiceTemplate.yaml
+- ContrailAbstractSubstituteGlobalTypes:
+ file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
+- ContrailV2VirtualNetworkGlobalType:
+ file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
+- ContrailV2NetworkRuleGlobalType:
+ file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
+- ContrailV2VLANSubInterfaceGlobalType:
+ file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.pcm_server:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ availabilityzone_name:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ oam_net_gw:
+ label: CPS network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network gateway
+ pcm_image_name:
+ label: image name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM image name
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cps_net_ip:
+ label: CPS network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network ip
+ pcm_flavor_name:
+ label: PCRF CM flavor name
+ hidden: false
+ immutable: false
+ type: string
+ description: flavor name of PCRF CM instance
+ pcm_vol:
+ label: CPS Cluman Cinder Volume
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS Cluman Cinder Volume
+ pcm_server_name:
+ label: PCRF CM server name
+ hidden: false
+ immutable: false
+ type: string
+ description: PCRF CM server name
+ cps_net_name:
+ label: CPS network name
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network name
+ cps_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_ip:
+ label: OAM network ip
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network ip
+ oam_net_mask:
+ label: CPS network mask
+ hidden: false
+ immutable: false
+ type: string
+ description: CPS network mask
+ oam_net_name:
+ label: OAM network name
+ hidden: false
+ immutable: false
+ type: string
+ description: OAM network name
+ node_templates:
+ pcm_port_1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: oam_net_ip
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ server_pcm:
+ type: org.openecomp.resource.vfc.nodes.heat.pcm_server
+ properties:
+ flavor:
+ get_input: pcm_flavor_name
+ availability_zone:
+ get_input: availabilityzone_name
+ image:
+ get_input: pcm_image_name
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: pcm_server_name
+ pcm_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input: cps_net_ip
+ network:
+ get_input: cps_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_pcm
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ nested-pcm_v0.1_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested-pcm_v0.1.yaml
+ description: heat template that creates PCRF Cluman stack
+ members:
+ - pcm_port_1
+ - server_pcm
+ - pcm_port_0
+ outputs:
+ server_pcm_id:
+ description: the pcm nova service id
+ value: server_pcm
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.pcm_server
+ capabilities:
+ endpoint_server_pcm:
+ - server_pcm
+ - endpoint
+ os_server_pcm:
+ - server_pcm
+ - os
+ host_server_pcm:
+ - server_pcm
+ - host
+ feature_server_pcm:
+ - server_pcm
+ - feature
+ feature_pcm_port_1:
+ - pcm_port_1
+ - feature
+ scalable_server_pcm:
+ - server_pcm
+ - scalable
+ feature_pcm_port_0:
+ - pcm_port_0
+ - feature
+ binding_server_pcm:
+ - server_pcm
+ - binding
+ attachment_pcm_port_0:
+ - pcm_port_0
+ - attachment
+ attachment_pcm_port_1:
+ - pcm_port_1
+ - attachment
+ binding_pcm_port_0:
+ - pcm_port_0
+ - binding
+ binding_pcm_port_1:
+ - pcm_port_1
+ - binding
+ requirements:
+ link_pcm_port_0:
+ - pcm_port_0
+ - link
+ link_pcm_port_1:
+ - pcm_port_1
+ - link
+ local_storage_server_pcm:
+ - server_pcm
+ - local_storage
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a28c82c39b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,260 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ user_data: STATIC-DATA-FSB1
+ admin_pass: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ user_data: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ groups:
+ FE_SMP_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - FSB2_template
+ - FSB1_template
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - FSB2_template
+ - FSB1_template
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..f8872c5a9d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,320 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_FSB
+ - FSB_addresses
+ tenant_id:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ user_data: STATIC-DATA-FSB1
+ admin_pass: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ user_data: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - OPTIONAL-DATA-FSB1
+ - null
+ port_FSB1_Internal_network:
+ - Internal1-net-fsb1-Internal1
+ - Internal1-net-fsb1-Internal2
+ port_FSB2_Internal_network:
+ - Internal2-net-fsb2-Internal1
+ - Internal2-net-fsb2-Internal2
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ - write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_user_data:
+ - STATIC-DATA-FSB1
+ - STATIC-DATA-FSB2
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ - get_input: fsb2_zone
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb2-Internal1-mac
+ - get_input: fsb2-Internal2-mac
+ compute_FSB_name:
+ - get_input: fsb1-name
+ - get_input: fsb2-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_FSB:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_FSB_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ FE_SMP_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_FSB
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_FSB
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..c339837945
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,126 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.smp:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ image_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP image
+ default: asc_base_image_smp
+ lab_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Lab name
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ default: This_is_the_SCP_name
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+ flavor_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP Flavor
+ default: a1.Small
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: port name
+ default: port_name
+ node_templates:
+ port1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp1
+ relationship: tosca.relationships.network.BindsTo
+ server_smp1:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ metadata:
+ jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ user_data_format: RAW
+ name:
+ get_input: smp_name_1
+ scheduler_hints:
+ group: BE_Affinity_group
+ port2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp1
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ FE_SMP_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp1
+ hot_template_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot_template.yml
+ description: ASC Template
+ members:
+ - port1
+ - server_smp1
+ - port2
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - server_smp1
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group
+ FE_SMP_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: abc
+ affinity: host
+ targets:
+ - FE_SMP_Affinity_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..af3ef63b0f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updGroupsConnectivity/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,167 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.smp:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ image_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP image
+ default: asc_base_image_smp
+ lab_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Lab name
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ default: This_is_the_SCP_name
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_SCP_id
+ flavor_smp_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: SCP SMP Flavor
+ default: a1.Small
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ port_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: port name
+ default: port_name
+ node_templates:
+ port1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp1
+ relationship: tosca.relationships.network.BindsTo
+ server_smp1:
+ type: org.openecomp.resource.vfc.nodes.heat.smp
+ properties:
+ flavor:
+ get_input: flavor_smp_name
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: image_smp_name
+ metadata:
+ jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ user_data_format: RAW
+ name:
+ get_input: smp_name_1
+ scheduler_hints:
+ group: BE_Affinity_group
+ port2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ network:
+ get_input: port_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_smp1
+ relationship: tosca.relationships.network.BindsTo
+ abstract_smp:
+ type: org.openecomp.resource.abstract.nodes.smp
+ directives:
+ - substitutable
+ properties:
+ port_port2_network:
+ - get_input: port_name
+ vm_image_name:
+ get_input: image_smp_name
+ port_port2_replacement_policy:
+ - AUTO
+ compute_smp_name:
+ - get_input: smp_name_1
+ compute_smp_availability_zone:
+ - get_input: availability_zone_0
+ port_port1_replacement_policy:
+ - AUTO
+ port_port1_network:
+ - get_input: port_name
+ vm_flavor_name:
+ get_input: flavor_smp_name
+ compute_smp_metadata:
+ - jx_vm_role: smp2
+ vnf_id:
+ get_input: vnf_id
+ jx_lab_name:
+ get_input: lab_name
+ compute_smp_user_data_format:
+ - RAW
+ compute_smp_scheduler_hints:
+ - group: BE_Affinity_group
+ service_template_filter:
+ substitute_service_template: Nested_smpServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ FE_SMP_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_smp
+ hot_template_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/hot_template.yml
+ description: ASC Template
+ members:
+ - port1
+ - server_smp1
+ - port2
+ BE_Affinity_group:
+ type: tosca.groups.Root
+ members:
+ - abstract_smp
+ policies:
+ BE_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: def
+ affinity: host
+ targets:
+ - BE_Affinity_group
+ FE_SMP_Affinity_policy:
+ type: org.openecomp.policies.placement.Colocate
+ properties:
+ name: abc
+ affinity: host
+ targets:
+ - FE_SMP_Affinity_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..9c67d10e97
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,268 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: QRouter
+ relationship: tosca.relationships.DependsOn
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ requirements:
+ - port:
+ capability: tosca.capabilities.Attachment
+ node: FSB1_Internal1
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: tosca.capabilities.Attachment
+ node: FSB1_Internal2
+ relationship: org.openecomp.relationships.AttachesTo
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network
+ - jsa_security_group \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..b98c6e07bb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,322 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_FSB
+ - FSB_addresses
+ tenant_id:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: QRouter
+ relationship: tosca.relationships.DependsOn
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ requirements:
+ - port:
+ capability: attachment_FSB_FSB1_Internal
+ node: abstract_FSB
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ - STATIC-DATA-FSB2
+ port_FSB1_Internal_network:
+ - Internal1-net-fsb1-Internal1
+ - Internal1-net-fsb1-Internal2
+ port_FSB2_Internal_network:
+ - Internal2-net-fsb2-Internal1
+ - Internal2-net-fsb2-Internal2
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ - write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_user_data:
+ - OPTIONAL-DATA-FSB1
+ - null
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ - get_input: fsb2_zone
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb2-Internal1-mac
+ - get_input: fsb2-Internal2-mac
+ compute_FSB_name:
+ - get_input: fsb1-name
+ - get_input: fsb2-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - link_FSB_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network
+ - jsa_security_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..5ac0063bae
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,103 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security group name
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ node_templates:
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: QRouter
+ relationship: tosca.relationships.DependsOn
+ cdr_network_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ requirements:
+ - port:
+ capability: tosca.capabilities.Attachment
+ node: cdr_network_port
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: tosca.capabilities.Attachment
+ node: oam_private_net_network_port
+ relationship: org.openecomp.relationships.AttachesTo
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - QRouter
+ - packet_mirror_network
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..6ebaa53c6a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedIn/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,130 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.QRouter:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ oam_private_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ security_group_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Security group name
+ cdr_network:
+ hidden: false
+ immutable: false
+ type: string
+ description: A string specifying a symbolic name for the network
+ node_templates:
+ QRouter:
+ type: org.openecomp.resource.vfc.nodes.heat.QRouter
+ properties:
+ flavor: FLAVOR-test
+ availability_zone: Availability-test
+ image: Image-test
+ config_drive: true
+ name: QRouter-name
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ requirements:
+ - dependency:
+ capability: feature_QRouter
+ node: abstract_QRouter
+ relationship: tosca.relationships.DependsOn
+ cdr_network_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: cdr_network
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ oam_private_net_network_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ network:
+ get_input: oam_private_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: QRouter
+ relationship: tosca.relationships.network.BindsTo
+ jsa_security_group:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ get_input: security_group_name
+ description: ems security group
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ port_range_max: 65535
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ port_range_min: 1
+ requirements:
+ - port:
+ capability: attachment_QRouter_cdr_network_port
+ node: abstract_QRouter
+ relationship: org.openecomp.relationships.AttachesTo
+ - port:
+ capability: attachment_QRouter_oam_private_net_network_port
+ node: abstract_QRouter
+ relationship: org.openecomp.relationships.AttachesTo
+ abstract_QRouter:
+ type: org.openecomp.resource.abstract.nodes.QRouter
+ directives:
+ - substitutable
+ properties:
+ compute_QRouter_availability_zone:
+ - Availability-test
+ port_oam_private_net_network_port_network:
+ - get_input: oam_private_net_name
+ vm_image_name: Image-test
+ compute_QRouter_config_drive:
+ - true
+ port_cdr_network_port_network:
+ - get_input: cdr_network
+ vm_flavor_name: FLAVOR-test
+ compute_QRouter_name:
+ - QRouter-name
+ service_template_filter:
+ substitute_service_template: Nested_QRouterServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ groups:
+ input_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/input.yaml
+ members:
+ - QRouter
+ - packet_mirror_network
+ - packet_internal_network
+ - cdr_network_port
+ - oam_private_net_network_port
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..61eb2b6e58
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,250 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..f554f0a844
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,312 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_FSB
+ - FSB_addresses
+ tenant_id:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ - STATIC-DATA-FSB2
+ port_FSB1_Internal_network:
+ - Internal1-net-fsb1-Internal1
+ - Internal1-net-fsb1-Internal2
+ port_FSB2_Internal_network:
+ - Internal2-net-fsb2-Internal1
+ - Internal2-net-fsb2-Internal2
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ - write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_user_data:
+ - OPTIONAL-DATA-FSB1
+ - null
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ - get_input: fsb2_zone
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb2-Internal1-mac
+ - get_input: fsb2-Internal2-mac
+ compute_FSB_name:
+ - get_input: fsb1-name
+ - get_input: fsb2-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_FSB:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_FSB_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3db2da25e3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,182 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
+ - packet_mirror_network_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..45b3f46412
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesConnectedOut/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,236 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_FSB
+ - FSB_addresses
+ tenant_id:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ port_FSB1_Internal_network:
+ - Internal1-net
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb1-oam-ip
+ port_FSB2_Internal_network:
+ - Internal2-net
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ port_FSB_OAM_network:
+ - jsa_net1
+ compute_FSB_name:
+ - get_input: fsb1-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_FSB:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_FSB_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
+ - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..7e50caf852
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,324 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ size: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_Internal2,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB2_template, addresses, {get_attribute: [ FSB2_Internal1,index ] } ]}
+ size: { get_attribute: [FSB1_Internal2, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB2_template,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB1_template
+ - FSB2_template \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..50a62f642d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,366 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ tenant_id:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_index
+ size:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_index
+ size:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB1_template
+ - FSB2_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..9cd2498824
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,220 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_attribute: [FSB1_template, mac]
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_attribute: [ FSB1_Internal1, myAttr, get_attribute: [FSB1_Internal1, index] ]
+ metadata:
+ get_attribute: [ FSB1_Internal1, myAttr, get_input: index ]
+ name:
+ get_attribute: [ FSB1_Internal1, myAttr, get_attribute: [jsa_net1, index] ]
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ size: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_OAM,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..84f83498f0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updNodesGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,261 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_attribute:
+ - FSB1_template
+ - mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ tenant_id:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_attribute:
+ - FSB1_Internal1
+ - myAttr
+ - get_attribute:
+ - FSB1_Internal1
+ - index
+ metadata:
+ get_attribute:
+ - FSB1_Internal1
+ - myAttr
+ - get_input: index
+ name:
+ get_attribute:
+ - FSB1_Internal1
+ - myAttr
+ - get_attribute:
+ - jsa_net1
+ - index
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_index
+ size:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB_OAM_oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..784a841cad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,333 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB1_template
+ - FSB2_template
+ outputs:
+ simpleOutput1:
+ value: {get_attribute: [ FSB1_template, accessIPv4 ] }
+ simpleOutput2:
+ value: {get_attribute: [ FSB2_template, addresses, key1 ] }
+ complexOutput1:
+ value: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attribute: [FSB1_Internal2, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB2_Internal1,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_Internal1,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..56b2881a66
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,366 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB2_Internal1
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB1_template
+ - FSB2_template
+ outputs:
+ simpleOutput1:
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_accessIPv4
+ simpleOutput2:
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ - key1
+ complexOutput1:
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_index
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..0286f33e97
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,264 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
+ outputs:
+ simpleOutput1:
+ value: {get_attribute: [ FSB1_template, accessIPv4 ] }
+ simpleOutput2:
+ value: {get_attribute: [ FSB1_template, addresses, key1 ] }
+ complexOutput1:
+ value: {get_attribute: [ FSB1_template, addresses, {get_attribute: [ FSB2_Internal2,index ] } ]}
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_attribute: [FSB1_Internal1, addresses, get_input: [CMAUI_volume_type,{get_attribute: [FSB1_OAM,oam_index ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value: { get_input: [a, addresses, get_input: [CMAUI_volume_type, {get_attribute: [FSB1_template,accessIPv6 ] }], 0, "OS-EXT-IPS-MAC:mac_addr"] }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..5fa7de719a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updOutputGetAttrIn/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,297 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB1:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ cps_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ volume_type:
+ label: volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: volume type Gold
+ fsb_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ oam_net_gw:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cps_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ label: jsa_net_name
+ hidden: false
+ immutable: false
+ type: string
+ description: jsa_net_name
+ default: jsa_log_net_0
+ pcrf_psm_server_name:
+ label: pcrf_psm_server_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcrf_psm_server_name
+ pcm_flavor_name:
+ label: pcm_flavor_name
+ hidden: false
+ immutable: false
+ type: string
+ description: pcm_flavor_name
+ oam_net_id:
+ label: oam_net_id
+ hidden: false
+ immutable: false
+ type: string
+ description: oam_net_id
+ oam_net_ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ oam_net_mask:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB1
+ properties:
+ flavor:
+ get_input: fsb1-flavor
+ availability_zone:
+ get_input: fsb_zone
+ metadata:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet
+ params:
+ $dev: eth0
+ $netmask:
+ get_input: cps_net_mask
+ $ip:
+ get_input: cps_net_ip
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth1
+ permissions: '0644'
+ content:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - nimbus-ethernet-gw
+ params:
+ $dev: eth1
+ $netmask:
+ get_input: oam_net_mask
+ $gateway:
+ get_input: oam_net_gw
+ $ip:
+ get_input: oam_net_ip
+ name:
+ get_input: fsb1-name
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
+ outputs:
+ simpleOutput1:
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_accessIPv4
+ simpleOutput2:
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ - key1
+ complexOutput1:
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_addresses
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB2_Internal_index
+ complexOutput2:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_attribute:
+ - FSB1
+ - FSB1_FSB1_Internal_addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_FSB_OAM_oam_index
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
+ complexOutput3:
+ description: cgi fw01 left interface Mac-Address
+ value:
+ get_input:
+ - a
+ - addresses
+ - get_input:
+ - CMAUI_volume_type
+ - get_attribute:
+ - FSB1
+ - FSB1_accessIPv6
+ - 0
+ - OS-EXT-IPS-MAC:mac_addr
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..a81055ee8b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,290 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume4:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..5e53a1d849
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/consolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,360 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb2-name:
+ label: FSB2_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_name
+ cmaui_cinder_volume_size:
+ label: volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: my volume size 320GB
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ fsb2_zone:
+ label: FSB2_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB2_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb2-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb2-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ jsa_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal2-mac
+ network: Internal2-net-fsb2-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB2_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb2-Internal1-mac
+ network: Internal2-net-fsb2-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal1-net-fsb1-Internal2
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB2_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net-fsb1-Internal1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_input: jsa_net_name
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_FSB
+ - FSB_addresses
+ tenant_id:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ user_data: OPTIONAL-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ FSB2_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB2
+ availability_zone:
+ get_input: fsb2_zone
+ metadata:
+ write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb2-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume3:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume4:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ - STATIC-DATA-FSB2
+ port_FSB1_Internal_network:
+ - Internal1-net-fsb1-Internal1
+ - Internal1-net-fsb1-Internal2
+ port_FSB2_Internal_network:
+ - Internal2-net-fsb2-Internal1
+ - Internal2-net-fsb2-Internal2
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ - write_files:
+ - path: /path3/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path4/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_user_data:
+ - OPTIONAL-DATA-FSB1
+ - null
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ - get_input: fsb2_zone
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb2-Internal1-mac
+ - get_input: fsb2-Internal2-mac
+ compute_FSB_name:
+ - get_input: fsb1-name
+ - get_input: fsb2-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 2
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_FSB:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_FSB_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB_FSB2_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_FSB:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage_FSB:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB1_Internal1
+ - FSB1_Internal2
+ - FSB2_Internal1
+ - FSB2_Internal2
+ - FSB1_template
+ - FSB2_template
+ - jsa_net
+ - jsa_net1
+ - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/in/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/in/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..3a9873c20e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/in/MainServiceTemplate.yaml
@@ -0,0 +1,202 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - FSB1_Internal1
+ - network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - FSB1_template
+ - addresses
+ tenant_id:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ qos_policy:
+ get_attribute:
+ - FSB2_Internal2
+ - network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
+ - packet_mirror_network_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..06b43188e5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/unifiedComposition/updVolumes/noConsolidation/out/MainServiceTemplate.yaml
@@ -0,0 +1,264 @@
+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
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.FSB:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ fsb1-name:
+ label: FSB1_name
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_name
+ fsb1-Internal1-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb-flavor:
+ label: FSB1_flavor
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_flavor
+ fsb-image:
+ label: FSB1_image
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_image
+ fsb1-Internal2-mac:
+ label: FSB1_internal_mac
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_internal_mac
+ fsb1_zone:
+ label: FSB1_zone
+ hidden: false
+ immutable: false
+ type: string
+ description: FSB1_zone
+ network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ fsb1-oam-ip:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ CMAUI_volume_type:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ cmaui_cinder_volume_size:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ packet_mirror_network_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: prop
+ node_templates:
+ FSB2_Internal2:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal2-mac
+ network: Internal2-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ FSB1_Internal1:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ mac_address:
+ get_input: fsb1-Internal1-mac
+ network: Internal1-net
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ FSB1_OAM:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ fixed_ips:
+ - ip_address:
+ get_input: fsb1-oam-ip
+ network: jsa_net1
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: FSB1_template
+ relationship: tosca.relationships.network.BindsTo
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ jsa_net1:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ shared: true
+ network_name:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB1_Internal_network_id
+ dhcp_agent_ids:
+ get_attribute:
+ - abstract_FSB
+ - FSB_addresses
+ tenant_id:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ qos_policy:
+ get_attribute:
+ - abstract_FSB
+ - FSB_FSB2_Internal_network_id
+ FSB1_template:
+ type: org.openecomp.resource.vfc.nodes.heat.FSB
+ properties:
+ flavor:
+ get_input: fsb-flavor
+ image:
+ get_input: fsb-image
+ admin_pass: STATIC-DATA-FSB1
+ availability_zone:
+ get_input: fsb1_zone
+ metadata:
+ write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ name:
+ get_input: fsb1-name
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ artifacts:
+ nimbus-ethernet-gw:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet-gw
+ nimbus-ethernet:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/nimbus-ethernet
+ cmaui_volume1:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_volume2:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ packet_mirror_network:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ network_name:
+ get_input: packet_mirror_network_name
+ abstract_FSB:
+ type: org.openecomp.resource.abstract.nodes.FSB
+ directives:
+ - substitutable
+ properties:
+ port_FSB1_Internal_mac_address:
+ - get_input: fsb1-Internal1-mac
+ port_FSB1_Internal_network:
+ - Internal1-net
+ vm_flavor_name:
+ get_input: fsb-flavor
+ port_FSB2_Internal_mac_address:
+ - get_input: fsb1-Internal2-mac
+ vm_image_name:
+ get_input: fsb-image
+ compute_FSB_admin_pass:
+ - STATIC-DATA-FSB1
+ port_FSB_OAM_fixed_ips:
+ - - ip_address:
+ get_input: fsb1-oam-ip
+ port_FSB2_Internal_network:
+ - Internal2-net
+ compute_FSB_metadata:
+ - write_files:
+ - path: /path1/etc/sysconfig/network-scripts/ifcfg-eth0
+ - path: /path2/etc/sysconfig/network-scripts/ifcfg-eth1
+ compute_FSB_availability_zone:
+ - get_input: fsb1_zone
+ port_FSB_OAM_network:
+ - jsa_net1
+ compute_FSB_name:
+ - get_input: fsb1-name
+ service_template_filter:
+ substitute_service_template: Nested_FSBServiceTemplate.yaml
+ count: 1
+ index_value:
+ get_property:
+ - SELF
+ - service_template_filter
+ - index_value
+ requirements:
+ - dependency_FSB:
+ capability: tosca.capabilities.Node
+ node: packet_mirror_network
+ relationship: tosca.relationships.DependsOn
+ - link_FSB_FSB1_Internal:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - link_FSB_FSB_OAM:
+ capability: tosca.capabilities.network.Linkable
+ node: jsa_net1
+ relationship: tosca.relationships.network.LinksTo
+ - local_storage_FSB:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume1
+ relationship: cmaui_volume_attachment
+ - local_storage_FSB:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume2
+ relationship: cmaui_volume_attachment
+ groups:
+ ep-jsa_net_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/ep-jsa_net.yaml
+ description: |
+ Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
+ members:
+ - FSB2_Internal2
+ - FSB1_Internal1
+ - FSB1_OAM
+ - FSB1_template
+ - packet_mirror_network_name
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vmme_small/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vmme_small/expectedoutputfiles/MainServiceTemplate.yaml
index 9885c31b1c..458fc29876 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vmme_small/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vmme_small/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.NCB1:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -648,9 +624,19 @@ topology_template:
VLC2_OAM:
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
fixed_ips:
- ip_address:
get_input: vlc2-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -679,6 +665,15 @@ topology_template:
NCB1_Internal1:
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: true
mac_address:
get_input: ncb1-Internal1-mac
network: Internal1-net
@@ -694,6 +689,15 @@ topology_template:
VLC2_Internal2:
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: true
mac_address:
get_input: vlc2-Internal2-mac
network: Internal2-net
@@ -709,6 +713,15 @@ topology_template:
NCB1_Internal2:
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: true
mac_address:
get_input: ncb1-Internal2-mac
network: Internal2-net
@@ -724,6 +737,15 @@ topology_template:
VLC2_Internal1:
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: true
mac_address:
get_input: vlc2-Internal1-mac
network: Internal1-net
@@ -739,9 +761,18 @@ topology_template:
VLC2_GTP:
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
fixed_ips:
- ip_address:
get_input: vlc2-gtp-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-gtp-net
requirements:
- link:
@@ -765,9 +796,19 @@ topology_template:
FSB1_OAM:
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
fixed_ips:
- ip_address:
get_input: fsb1-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -809,6 +850,15 @@ topology_template:
GPB2_Internal1:
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: true
mac_address:
get_input: gpb2-Internal1-mac
network: Internal1-net
@@ -824,6 +874,15 @@ topology_template:
GPB2_Internal2:
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: true
mac_address:
get_input: gpb2-Internal2-mac
network: Internal2-net
@@ -839,6 +898,15 @@ topology_template:
NCB2_Internal2:
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: true
mac_address:
get_input: ncb2-Internal2-mac
network: Internal2-net
@@ -854,6 +922,15 @@ topology_template:
NCB2_Internal1:
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: true
mac_address:
get_input: ncb2-Internal1-mac
network: Internal1-net
@@ -908,6 +985,15 @@ topology_template:
VLC1_Internal1:
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: true
mac_address:
get_input: vlc1-Internal1-mac
network: Internal1-net
@@ -941,6 +1027,15 @@ topology_template:
VLC1_Internal2:
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: true
mac_address:
get_input: vlc1-Internal2-mac
network: Internal2-net
@@ -956,9 +1051,18 @@ topology_template:
VLC1_SCTP_B:
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
fixed_ips:
- ip_address:
get_input: vlc1-sctp-b-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-b-net
requirements:
- link:
@@ -972,9 +1076,18 @@ topology_template:
VLC2_SCTP_B:
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
fixed_ips:
- ip_address:
get_input: vlc2-sctp-b-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-b-net
requirements:
- link:
@@ -988,9 +1101,18 @@ topology_template:
VLC1_SCTP_A:
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
fixed_ips:
- ip_address:
get_input: vlc1-sctp-a-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-a-net
requirements:
- link:
@@ -1004,9 +1126,18 @@ topology_template:
VLC2_SCTP_A:
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
fixed_ips:
- ip_address:
get_input: vlc2-sctp-a-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-sctp-a-net
requirements:
- link:
@@ -1031,6 +1162,15 @@ topology_template:
FSB1_Internal2:
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: true
mac_address:
get_input: fsb1-Internal2-mac
network: Internal2-net
@@ -1057,6 +1197,15 @@ topology_template:
FSB1_Internal1:
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: true
mac_address:
get_input: fsb1-Internal1-mac
network: Internal1-net
@@ -1072,6 +1221,15 @@ topology_template:
FSB2_Internal2:
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: true
mac_address:
get_input: fsb2-Internal2-mac
network: Internal2-net
@@ -1087,6 +1245,15 @@ topology_template:
FSB2_Internal1:
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: true
mac_address:
get_input: fsb2-Internal1-mac
network: Internal1-net
@@ -1102,9 +1269,19 @@ topology_template:
VLC1_OAM:
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
fixed_ips:
- ip_address:
get_input: vlc1-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -1155,9 +1332,18 @@ topology_template:
VLC1_GTP:
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
fixed_ips:
- ip_address:
get_input: vlc1-gtp-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
network: epc-gtp-net
requirements:
- link:
@@ -1171,9 +1357,19 @@ topology_template:
FSB2_OAM:
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
fixed_ips:
- ip_address:
get_input: fsb2-oam-ip
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_id
requirements:
@@ -1184,6 +1380,15 @@ topology_template:
GPB1_Internal2:
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: true
mac_address:
get_input: gpb1-Internal2-mac
network: Internal2-net
@@ -1199,6 +1404,15 @@ topology_template:
GPB1_Internal1:
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: true
mac_address:
get_input: gpb1-Internal1-mac
network: Internal1-net
@@ -1212,7 +1426,7 @@ topology_template:
node: GPB1
relationship: tosca.relationships.network.BindsTo
groups:
- vmme_small:
+ vmme_small_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/vmme_small.yml
@@ -1257,7 +1471,7 @@ topology_template:
- FSB2_OAM
- GPB1_Internal2
- GPB1_Internal1
- vmme_small_create_fsb:
+ vmme_small_create_fsb_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/vmme_small_create_fsb.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/MANIFEST.json
index a44e7921f8..c0bfc30a04 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/MANIFEST.json
@@ -7,7 +7,7 @@
"file": "nested.yml",
"type": "HEAT",
"isBase": "false",
- "data":[
+ "data": [
{
"file": "a_vol.yml",
"type": "HEAT_VOL",
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/a_vol.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/a_vol.yml
index a9f72bcecf..a9f72bcecf 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/a_vol.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/a_vol.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/main.yml
index b97dd4b535..b97dd4b535 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/main.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/nested.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/nested.yml
index cdaf251b85..cdaf251b85 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/inputfiles/nested.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/inputfiles/nested.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..c215d730a6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,457 @@
+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.nested:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ cmaui_names:
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ cmaui_cinder_volume_size:
+ type: float
+ description: the size of the CMAUI Cinder volume
+ required: true
+ status: SUPPORTED
+ timezone:
+ type: string
+ description: timezone
+ required: true
+ status: SUPPORTED
+ security_group_name:
+ type: string
+ description: the name of security group
+ required: true
+ status: SUPPORTED
+ cmaui_volume:
+ type: string
+ description: Volume for CMAUI server
+ required: true
+ status: SUPPORTED
+ oam_network_netmask:
+ type: string
+ description: oam network gateway
+ required: true
+ status: SUPPORTED
+ cmaui_image:
+ type: string
+ description: Image for CMAUI server
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ description: Unique ID for this VNF instance
+ required: false
+ default: This_is_ths_MMSC-CMAUI_id
+ status: SUPPORTED
+ cmaui_flavor:
+ type: string
+ description: Flavor for CMAUI server
+ required: true
+ status: SUPPORTED
+ oam_network_gateway:
+ type: string
+ description: oam network gateway
+ required: true
+ status: SUPPORTED
+ out_cmaui_volume:
+ type: string
+ description: the name of the target volume backend
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: availabilityzone name
+ required: true
+ status: SUPPORTED
+ cmaui_oam_ips:
+ type: list
+ description: CMAUI oam_net IP addresses
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ external_dns:
+ type: string
+ description: dns server
+ required: true
+ status: SUPPORTED
+ oam_net_name:
+ type: string
+ description: UID of OAM network
+ required: true
+ status: SUPPORTED
+ external_ntp:
+ type: string
+ description: ntp server
+ required: true
+ status: SUPPORTED
+ CMAUI_volume_type:
+ type: string
+ description: the name of the target volume backend
+ required: true
+ status: SUPPORTED
+ attributes:
+ out_cmaui_volume:
+ type: string
+ status: SUPPORTED
+ requirements:
+ - dependency_server_cmaui:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_server_cmaui:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_volume:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_cmaui_port_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_cmaui_port_0:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ cpu.delta_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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
+ scalable_server_cmaui:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_server_cmaui:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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.usage_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_0:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ feature_server_cmaui:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_cmaui_volume:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_server_cmaui:
+ type: org.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_cmaui_port_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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_port_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.ephemeral.size_server_cmaui:
+ type: org.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_cmaui_port_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
+ endpoint_server_cmaui:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_server_cmaui:
+ type: org.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_cmaui_volume:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_cmaui_port_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/services/heattotosca/vol_att/nested_with_inner_vol/out/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/MainServiceTemplate.yaml
index 72b2c18882..d59250444f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/nested_with_inner_vol/out/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/MainServiceTemplate.yaml
@@ -2,34 +2,10 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- GlobalSubstitutionTypes:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
file: GlobalSubstitutionTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
topology_template:
inputs:
cmaui_names:
@@ -141,7 +117,7 @@ topology_template:
availability_zone_0:
get_input: availability_zone_0
groups:
- main:
+ main_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/main.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/nestedServiceTemplate.yaml
new file mode 100644
index 0000000000..7dd65fdfa5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/nested_with_inner_vol/out/nestedServiceTemplate.yaml
@@ -0,0 +1,378 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: nested
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.cmaui:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ cmaui_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI1, CMAUI2 server names
+ entry_schema:
+ type: string
+ cmaui_cinder_volume_size:
+ label: CMAUI Cinder volume size
+ hidden: false
+ immutable: false
+ type: float
+ description: the size of the CMAUI Cinder volume
+ timezone:
+ label: timezone
+ hidden: false
+ immutable: false
+ type: string
+ description: timezone
+ security_group_name:
+ label: security group name
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of security group
+ cmaui_volume:
+ label: CMAUI volume size
+ hidden: false
+ immutable: false
+ type: string
+ description: Volume for CMAUI server
+ oam_network_netmask:
+ label: oam network netmask
+ hidden: false
+ immutable: false
+ type: string
+ description: oam network gateway
+ cmaui_image:
+ hidden: false
+ immutable: false
+ type: string
+ description: Image for CMAUI server
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VNF instance
+ default: This_is_ths_MMSC-CMAUI_id
+ cmaui_flavor:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor for CMAUI server
+ oam_network_gateway:
+ label: oam network gateway
+ hidden: false
+ immutable: false
+ type: string
+ description: oam network gateway
+ out_cmaui_volume:
+ label: CMAUI vm volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of the target volume backend
+ availability_zone_0:
+ label: availabilityzone name
+ hidden: false
+ immutable: false
+ type: string
+ description: availabilityzone name
+ cmaui_oam_ips:
+ label: CMAUI oam_net IP addresses
+ hidden: false
+ immutable: false
+ type: list
+ description: CMAUI oam_net IP addresses
+ entry_schema:
+ type: string
+ external_dns:
+ label: dns server
+ hidden: false
+ immutable: false
+ type: string
+ description: dns server
+ oam_net_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: UID of OAM network
+ external_ntp:
+ label: ntp server
+ hidden: false
+ immutable: false
+ type: string
+ description: ntp server
+ CMAUI_volume_type:
+ label: CMAUI vm volume type
+ hidden: false
+ immutable: false
+ type: string
+ description: the name of the target volume backend
+ node_templates:
+ server_cmaui:
+ type: org.openecomp.resource.vfc.nodes.heat.cmaui
+ properties:
+ flavor:
+ get_input: cmaui_flavor
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: cmaui_image
+ metadata:
+ vnf_id:
+ get_input: vnf_id
+ user_data_format: RAW
+ name:
+ get_input:
+ - cmaui_names
+ - 0
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: cmaui_volume
+ relationship: cmaui_volume_attachment
+ cmaui_volume:
+ type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
+ properties:
+ volume_type:
+ get_input: CMAUI_volume_type
+ size: '(get_input : cmaui_cinder_volume_size) * 1024'
+ cmaui_port_0:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ - get_input: security_group_name
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - cmaui_oam_ips
+ - 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
+ network:
+ get_input: oam_net_name
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: server_cmaui
+ relationship: tosca.relationships.network.BindsTo
+ relationship_templates:
+ cmaui_volume_attachment:
+ type: org.openecomp.relationships.VolumeAttachesTo
+ properties:
+ volume_id: cmaui_volume
+ instance_uuid: server_cmaui
+ groups:
+ a_vol_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/a_vol.yml
+ description: volume
+ members:
+ - cmaui_volume
+ nested_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/nested.yml
+ description: cmaui server template for vMMSC
+ members:
+ - server_cmaui
+ - cmaui_port_0
+ outputs:
+ out_cmaui_volume:
+ value: cmaui_volume
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.nested
+ capabilities:
+ cpu.delta_server_cmaui:
+ - server_cmaui
+ - cpu.delta
+ disk.device.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests.rate
+ disk.device.allocation_server_cmaui:
+ - server_cmaui
+ - disk.device.allocation
+ network.incoming.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets.rate
+ scalable_server_cmaui:
+ - server_cmaui
+ - scalable
+ disk.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes.rate
+ cpu_server_cmaui:
+ - server_cmaui
+ - cpu
+ disk.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes.rate
+ disk.device.read.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes.rate
+ host_server_cmaui:
+ - server_cmaui
+ - host
+ cpu_util_server_cmaui:
+ - server_cmaui
+ - cpu_util
+ feature_cmaui_port_0:
+ - cmaui_port_0
+ - feature
+ disk.device.latency_server_cmaui:
+ - server_cmaui
+ - disk.device.latency
+ disk.device.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.write.requests
+ disk.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.read.requests
+ network.outgoing.packets.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.packets.rate
+ disk.device.capacity_server_cmaui:
+ - server_cmaui
+ - disk.device.capacity
+ disk.usage_server_cmaui:
+ - server_cmaui
+ - disk.usage
+ attachment_cmaui_port_0:
+ - cmaui_port_0
+ - attachment
+ disk.device.usage_server_cmaui:
+ - server_cmaui
+ - disk.device.usage
+ network.outgoing.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes
+ disk.capacity_server_cmaui:
+ - server_cmaui
+ - disk.capacity
+ disk.write.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.write.requests.rate
+ disk.device.read.requests_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests
+ instance_server_cmaui:
+ - server_cmaui
+ - instance
+ disk.device.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.read.bytes
+ memory_server_cmaui:
+ - server_cmaui
+ - memory
+ disk.root.size_server_cmaui:
+ - server_cmaui
+ - disk.root.size
+ binding_server_cmaui:
+ - server_cmaui
+ - binding
+ disk.device.read.requests.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.read.requests.rate
+ disk.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.write.bytes
+ os_server_cmaui:
+ - server_cmaui
+ - os
+ disk.device.write.bytes.rate_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes.rate
+ network.incoming.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.packets
+ memory.resident_server_cmaui:
+ - server_cmaui
+ - memory.resident
+ disk.latency_server_cmaui:
+ - server_cmaui
+ - disk.latency
+ binding_cmaui_port_0:
+ - cmaui_port_0
+ - binding
+ feature_server_cmaui:
+ - server_cmaui
+ - feature
+ feature_cmaui_volume:
+ - cmaui_volume
+ - feature
+ vcpus_server_cmaui:
+ - server_cmaui
+ - vcpus
+ network.incoming.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes.rate
+ disk.device.write.bytes_server_cmaui:
+ - server_cmaui
+ - disk.device.write.bytes
+ disk.allocation_server_cmaui:
+ - server_cmaui
+ - disk.allocation
+ disk.write.requests_server_cmaui:
+ - server_cmaui
+ - disk.write.requests
+ memory.usage_server_cmaui:
+ - server_cmaui
+ - memory.usage
+ network.outpoing.packets_cmaui_port_0:
+ - cmaui_port_0
+ - network.outpoing.packets
+ disk.ephemeral.size_server_cmaui:
+ - server_cmaui
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_cmaui_port_0:
+ - cmaui_port_0
+ - network.outgoing.bytes.rate
+ endpoint_server_cmaui:
+ - server_cmaui
+ - endpoint
+ disk.iops_server_cmaui:
+ - server_cmaui
+ - disk.iops
+ disk.device.iops_server_cmaui:
+ - server_cmaui
+ - disk.device.iops
+ disk.read.bytes_server_cmaui:
+ - server_cmaui
+ - disk.read.bytes
+ attachment_cmaui_volume:
+ - cmaui_volume
+ - attachment
+ network.incoming.bytes_cmaui_port_0:
+ - cmaui_port_0
+ - network.incoming.bytes
+ requirements:
+ dependency_server_cmaui:
+ - server_cmaui
+ - dependency
+ local_storage_server_cmaui:
+ - server_cmaui
+ - local_storage
+ dependency_cmaui_port_0:
+ - cmaui_port_0
+ - dependency
+ link_cmaui_port_0:
+ - cmaui_port_0
+ - link
+ dependency_cmaui_volume:
+ - cmaui_volume
+ - 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/services/heattotosca/vol_att/volume_and_attach_one_file/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/expectedoutputfiles/MainServiceTemplate.yaml
index 25cae6bdeb..e7b988d9b4 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -162,6 +138,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -169,6 +151,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -178,12 +164,12 @@ topology_template:
relationship: tosca.relationships.network.BindsTo
relationship_templates:
cmaui_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: cmaui_volume
instance_uuid: server_cmaui
groups:
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles/MANIFEST.json
new file mode 100644
index 0000000000..b2916ccf9c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles/MANIFEST.json
@@ -0,0 +1,11 @@
+{
+ "name": "vMME_Small",
+ "description": "HOT template to create 2 cinder volume attachment",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot_template.yml",
+ "type": "HEAT"
+ }
+ ]
+}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles/hot_template.yml
index a0f9b45478..4b9232c43d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_and_attach_one_file/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_and_attach_one_file/inputfiles/hot_template.yml
@@ -3,7 +3,7 @@ heat_template_version: 2013-05-23
#################################
#
# Changes from MSO 01/26/2016
-# Updated per ECOMP feedback
+# Updated per OPENECOMP feedback
#
#################################
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles/MainServiceTemplate.yaml
index 0291368d24..3be0013f74 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -162,6 +138,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -169,6 +151,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -178,19 +164,19 @@ topology_template:
relationship: tosca.relationships.network.BindsTo
relationship_templates:
cmaui_volume_attachment:
- type: org.openecomp.relationships.heat.cinder.VolumeAttachesTo
+ type: org.openecomp.relationships.VolumeAttachesTo
properties:
volume_id: cmaui_volume
instance_uuid: server_cmaui
groups:
- a_vol:
+ a_vol_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/a_vol.yml
description: volume
members:
- cmaui_volume
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/MANIFEST.json
index 5804dbdf5e..063ef28c27 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/MANIFEST.json
@@ -7,7 +7,7 @@
"file": "hot_template.yml",
"type": "HEAT",
"isBase": "false",
- "data":[
+ "data": [
{
"file": "a_vol.yml",
"type": "HEAT_VOL",
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/a_vol.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/a_vol.yml
index 78c2ee12c4..78c2ee12c4 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/a_vol.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/a_vol.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/hot_template.yml
index ead437747d..ead437747d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_nested_in_main_file_in_manifest/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_nested_in_main_file_in_manifest/inputfiles/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/expectedoutputfiles/MainServiceTemplate.yaml
index 09919379e0..b449a90a34 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/expectedoutputfiles/MainServiceTemplate.yaml
@@ -2,32 +2,8 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- ContrailComputeGlobalTypes:
- file: ContrailComputeGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
- file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
- file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
- file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailPortGlobalTypes:
- file: ContrailPortGlobalTypesServiceTemplate.yaml
- NeutronPortGlobalTypes:
- file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
- file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
- file: CommonGlobalTypesServiceTemplate.yaml
- ContrailAbstractSubstituteGlobalTypes:
- file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
- file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
- file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
- file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailV2VirtualMachineInterfaceGlobalType:
- file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui:
derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
@@ -157,6 +133,12 @@ topology_template:
type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
properties:
replacement_policy: AUTO
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
security_groups:
- get_input: security_group_name
fixed_ips:
@@ -164,6 +146,10 @@ topology_template:
get_input:
- cmaui_oam_ips
- 0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ network_role_tag: oam
network:
get_input: oam_net_name
requirements:
@@ -172,14 +158,14 @@ topology_template:
node: server_cmaui
relationship: tosca.relationships.network.BindsTo
groups:
- a_vol:
+ a_vol_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/a_vol.yml
description: volume
members:
- cmaui_volume
- hot_template:
+ hot_template_group:
type: org.openecomp.groups.heat.HeatStack
properties:
heat_file: ../Artifacts/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/MANIFEST.json
index e35976356f..e35976356f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/a_vol.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/a_vol.yml
index c32b9461eb..c32b9461eb 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/a_vol.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/a_vol.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/hot_template.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/hot_template.yml
index 2d0ed3c426..2d0ed3c426 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_att/volume_file_parallel_to_main_file/inputfiles/hot_template.yml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/vol_attach/volume_file_parallel_to_main_file/inputfiles/hot_template.yml
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/testManifestFormat.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/testManifestFormat.json
index 38073c6742..ca8324c68d 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/testManifestFormat.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/testManifestFormat.json
@@ -24,10 +24,12 @@
{
"file": "im_nested_heat.yml",
"type": "HEAT",
- "data": [{
- "file": "alpha.env",
- "type": "HEAT_ENV"
- }]
+ "data": [
+ {
+ "file": "alpha.env",
+ "type": "HEAT_ENV"
+ }
+ ]
},
{
"file": "vSRX_VM.yml",
@@ -40,10 +42,12 @@
{
"file": "im_network_heat.yml",
"type": "HEAT_NET",
- "data": [{
- "file": "mika.env",
- "type": "HEAT_ENV"
- }]
+ "data": [
+ {
+ "file": "mika.env",
+ "type": "HEAT_ENV"
+ }
+ ]
},
{
"file": "im_volume_heat.yml",
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/vmme_small_create_fsb/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/vmme_small_create_fsb/MANIFEST.json
index 02733a6e3f..ecea07e159 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/vmme_small_create_fsb/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/vmme_small_create_fsb/MANIFEST.json
@@ -10,10 +10,11 @@
{
"file": "vmme_small.env",
"type": "HEAT_ENV"
- },{
+ },
+ {
"file": "vmme_small_create_fsb.yml",
"type": "HEAT_NET",
- "data":[
+ "data": [
{
"file": "vmme_small_create_fsb.env",
"type": "HEAT_ENV"
@@ -21,7 +22,8 @@
]
}
]
- },{
+ },
+ {
"file": "create_stack.sh",
"type": "SHELL"
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml
new file mode 100644
index 0000000000..37bcd926e0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml
@@ -0,0 +1,66 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-translator-impl</name>
+ <artifactId>openecomp-sdc-translator-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <!-- need to be changed to sdk -->
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <systemPropertyVariables>
+ <config.location>${project.basedir}/configuration</config.location>
+ </systemPropertyVariables>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml.versionsBackup
new file mode 100644
index 0000000000..95c45309da
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-impl/pom.xml.versionsBackup
@@ -0,0 +1,68 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-translator-impl</name>
+ <artifactId>openecomp-sdc-translator-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>1.1.2</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+
+ <!-- need to be changed to sdk -->
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <systemPropertyVariables>
+ <config.location>${project.basedir}/configuration</config.location>
+ </systemPropertyVariables>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml
new file mode 100644
index 0000000000..c3d336bc39
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml
@@ -0,0 +1,45 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-translator-sdk</name>
+ <artifactId>openecomp-sdc-translator-sdk</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml.versionsBackup
new file mode 100644
index 0000000000..2cb266a815
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-sdk/pom.xml.versionsBackup
@@ -0,0 +1,45 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-translator-sdk</name>
+ <artifactId>openecomp-sdc-translator-sdk</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>1.1.2</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-tosca-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml
index dfeb8092a0..10a356a2a5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml
@@ -1,37 +1,27 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-translator-lib</name>
+ <artifactId>openecomp-sdc-translator-lib</artifactId>
<packaging>pom</packaging>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <name>openecomp-sdc-translator-lib</name>
- <artifactId>openecomp-sdc-translator-lib</artifactId>
-
<modules>
<module>openecomp-sdc-translator-api</module>
+ <module>openecomp-sdc-translator-sdk</module>
<module>openecomp-sdc-translator-core</module>
+ <module>openecomp-sdc-translator-impl</module>
+ <module>att-sdc-translator-impl</module>
</modules>
<dependencies>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-translator-api</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-translator-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <!--dependency>
- <groupId>org.openecomp.core</groupId>
- <artifactId>openecomp-common-lib</artifactId>
- <version>${project.version}</version>
- </dependency-->
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..9d7224a2e1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/pom.xml.versionsBackup
@@ -0,0 +1,26 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-translator-lib</name>
+ <artifactId>openecomp-sdc-translator-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-translator-api</module>
+ <module>openecomp-sdc-translator-sdk</module>
+ <module>openecomp-sdc-translator-core</module>
+ <module>openecomp-sdc-translator-impl</module>
+ <module>att-sdc-translator-impl</module>
+ </modules>
+
+ <dependencies>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml
new file mode 100644
index 0000000000..4afac92088
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml
@@ -0,0 +1,92 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>att-sdc-validation-impl</name>
+ <artifactId>att-sdc-validation-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-impl</artifactId>
+ <version>${project.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>${testng.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-sdk</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml.versionsBackup
new file mode 100644
index 0000000000..b53f4159fc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/pom.xml.versionsBackup
@@ -0,0 +1,92 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>att-sdc-validation-impl</name>
+ <artifactId>att-sdc-validation-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-impl</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>6.9.10</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-sdk</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/GroupDefinition.java b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttHeatResourceTypes.java
index 807bf260c3..427fc9c84a 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/GroupDefinition.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttHeatResourceTypes.java
@@ -18,47 +18,36 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package com.att.sdc.validation.datatypes;
-import java.util.List;
+import java.util.HashMap;
import java.util.Map;
-public class GroupDefinition {
+public enum AttHeatResourceTypes {
+ ATT_VALET_GROUP_ASSIGNMENT("ATT::Valet::GroupAssignment");
- private String type;
- private String description;
- private Map<String, Object> properties;
- private List<String> members;
+ private static Map<String, AttHeatResourceTypes> stringToAttRsourceMap;
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
+ static {
+ stringToAttRsourceMap = new HashMap<>();
- public String getDescription() {
- return description;
+ for (AttHeatResourceTypes attHeatResourceType : AttHeatResourceTypes.values()) {
+ stringToAttRsourceMap.put(attHeatResourceType.type, attHeatResourceType);
+ }
}
- public void setDescription(String description) {
- this.description = description;
- }
+ private String type;
- public Map<String, Object> getProperties() {
- return properties;
- }
- public void setProperties(Map<String, Object> properties) {
- this.properties = properties;
+ AttHeatResourceTypes(String type) {
+ this.type = type;
}
- public List<String> getMembers() {
- return members;
+ public String getType() {
+ return type;
}
- public void setMembers(List<String> members) {
- this.members = members;
+ public static AttHeatResourceTypes findByResourceType(String type) {
+ return stringToAttRsourceMap.get(type);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerErrorDescription.java b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerErrorDescription.java
new file mode 100644
index 0000000000..c4f1d0a4b4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerErrorDescription.java
@@ -0,0 +1,9 @@
+package com.att.sdc.validation.datatypes;
+
+/**
+ * Created by TALIO on 5/21/2017.
+ */
+public class AttLoggerErrorDescription {
+
+ public static final String ATT_VALET_IN_USE = "ATT Valet group type is in use";
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerTargetServiceName.java b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerTargetServiceName.java
new file mode 100644
index 0000000000..111a9873fc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttLoggerTargetServiceName.java
@@ -0,0 +1,9 @@
+package com.att.sdc.validation.datatypes;
+
+/**
+ * Created by TALIO on 5/21/2017.
+ */
+public class AttLoggerTargetServiceName {
+
+ public static final String VALIDATE_ATT_VALET_TYPE = "Validate OPENECOMP Valet Group Resosurce Type";
+}
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/GroupTypeValues.java b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttValetGroupTypeValues.java
index 84259b1807..08647b18af 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/datatypes/model/GroupTypeValues.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/datatypes/AttValetGroupTypeValues.java
@@ -18,12 +18,13 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.heat.datatypes.model;
+package com.att.sdc.validation.datatypes;
import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
-public enum GroupTypeValues {
+public enum AttValetGroupTypeValues {
EXCLUSIVITY("exclusivity"),
AFFINITY("affinity"),
DIVERSITY("diversity");
@@ -32,18 +33,21 @@ public enum GroupTypeValues {
static {
groupTypeAsStrings = new ArrayList<>();
- for (GroupTypeValues attGroupTypeValue : GroupTypeValues.values()) {
+ for (AttValetGroupTypeValues attGroupTypeValue : AttValetGroupTypeValues.values()) {
groupTypeAsStrings.add(attGroupTypeValue.groupTypeValue);
}
}
private String groupTypeValue;
- GroupTypeValues(String groupTypeValue) {
+ AttValetGroupTypeValues(String groupTypeValue) {
this.groupTypeValue = groupTypeValue;
}
- public static boolean isGroupTypeValid(String groupType) {
+ public static boolean isGroupTypeValid(Object groupType) {
+ if (groupType instanceof Map) {
+ return true;
+ }
return groupTypeAsStrings.contains(groupType);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidator.java
new file mode 100644
index 0000000000..30b65f4b3e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidator.java
@@ -0,0 +1,60 @@
+package com.att.sdc.validation.impl.validators;
+
+import com.att.sdc.validation.datatypes.AttLoggerErrorDescription;
+import com.att.sdc.validation.datatypes.AttLoggerTargetServiceName;
+import com.att.sdc.validation.datatypes.AttValetGroupTypeValues;
+import com.att.sdc.validation.messages.Messages;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+
+import java.util.Map;
+import java.util.Objects;
+
+/**
+ * Created by TALIO on 2/26/2017.
+ */
+public class AttValetGroupAssignmentResourceValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Resource resource = resourceEntry.getValue();
+
+ Map<String, Object> propertiesMap = resource.getProperties();
+ if (MapUtils.isEmpty(propertiesMap)) {
+ return;
+ }
+
+ Object groupTypeValue = propertiesMap.get("group_type");
+ if (Objects.isNull(groupTypeValue)) {
+ return;
+ }
+
+ validateGroupTypeValue(fileName, resourceEntry.getKey(), groupTypeValue, globalContext);
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private static void validateGroupTypeValue(String fileName, String resourceId,
+ Object groupTypeValue,
+ GlobalValidationContext globalContext) {
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (!AttValetGroupTypeValues.isGroupTypeValid(groupTypeValue)) {
+ globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.UNEXPECTED_GROUP_TYPE_ATT_VALET.getErrorMessage(),
+ resourceId), AttLoggerTargetServiceName.VALIDATE_ATT_VALET_TYPE,
+ AttLoggerErrorDescription.ATT_VALET_IN_USE);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/messages/Messages.java b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/messages/Messages.java
new file mode 100644
index 0000000000..0b3274edf0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/java/com/att/sdc/validation/messages/Messages.java
@@ -0,0 +1,20 @@
+package com.att.sdc.validation.messages;
+
+/**
+ * Created by TALIO on 5/17/2017.
+ */
+public enum Messages {
+
+ UNEXPECTED_GROUP_TYPE_ATT_VALET(
+ "Unexpected group_type for ATT::Valet::GroupAssignment, Resource ID [%s]");
+
+ private String errorMessage;
+
+ Messages(String errorMessage) {
+ this.errorMessage = errorMessage;
+ }
+
+ public String getErrorMessage() {
+ return errorMessage;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/resources/config-merge-validaton.json b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/resources/config-merge-validaton.json
new file mode 100644
index 0000000000..179f13c344
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/main/resources/config-merge-validaton.json
@@ -0,0 +1,18 @@
+{
+ "validatorImplementations": {
+ "resourceHeatValidator": {
+ "properties": {
+ "resourceBaseValidator": {
+ "ATT::Valet::GroupAssignment": {
+ "enable": true,
+ "implementationClass": "com.att.sdc.validation.impl.validators.AttValetGroupAssignmentResourceValidator"
+ }
+ }
+ }
+ }
+ },
+ "_config": {
+ "namespace": "validation",
+ "mergeStrategy": "merge"
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidatorTest.java
new file mode 100644
index 0000000000..76e10215e3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/java/com/att/sdc/validation/impl/validators/AttValetGroupAssignmentResourceValidatorTest.java
@@ -0,0 +1,61 @@
+package com.att.sdc.validation.impl.validators;
+
+import com.att.sdc.validation.datatypes.AttHeatResourceTypes;
+import com.att.sdc.validation.datatypes.AttValetGroupTypeValues;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.api.ValidationManager;
+import org.openecomp.core.validation.factory.ValidationManagerFactory;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.List;
+import java.util.Map;
+
+
+public class AttValetGroupAssignmentResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ AttValetGroupAssignmentResourceValidator resourceValidator = new
+ AttValetGroupAssignmentResourceValidator();
+
+ @Test
+ public void testATTValetGroupType() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, AttHeatResourceTypes.ATT_VALET_GROUP_ASSIGNMENT.getType(),
+ "/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, AttHeatResourceTypes.ATT_VALET_GROUP_ASSIGNMENT.getType(),
+ "/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Unexpected group_type for ATT::Valet::GroupAssignment, Resource ID [valet_group_assignment_illegal_1]");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Unexpected group_type for ATT::Valet::GroupAssignment, Resource ID [valet_group_assignment_illegal_2]");
+ }
+
+ @Test
+ public void testValidationWithFullFlowFromValidationFactory() throws IOException {
+ GlobalValidationContext globalContext = ValidationTestUtil.createGlobalContextFromPath(
+ "/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative");
+ ValidationManager validationManager = ValidationManagerFactory.getInstance().createInterface();
+ validationManager.updateGlobalContext(globalContext);
+ Map<String, List<ErrorMessage>> messages = validationManager.validate();
+
+ Assert.assertNotNull(messages);
+ ErrorMessage excpectedMessage = new ErrorMessage(ErrorLevel.WARNING,
+ "WARNING: Unexpected group_type for ATT::Valet::GroupAssignment, Resource ID [valet_group_assignment_illegal_1]");
+ Assert.assertTrue(messages.get("first.yaml").contains(excpectedMessage));
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/first.yaml
new file mode 100644
index 0000000000..99e707e91d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/first.yaml
@@ -0,0 +1,22 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ valet_group_assignment_illegal_1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: blabla
+
+ valet_group_assignment_illegal_2:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: blabla
+
+ valet_group_assignment_legal:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: diversity
+
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/first.yaml
new file mode 100644
index 0000000000..14f8e7e550
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/first.yaml
@@ -0,0 +1,17 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ valet_group_assigment_legal_1:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: affinity
+
+ valet_group_assigment_legal_2:
+ type: ATT::Valet::GroupAssignment
+ properties:
+ group_type: diversity
+
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/att-sdc-validation-impl/src/test/resources/com/att/sdc/validation/impl/validators/att_heat_validator/att_valet_group_type/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml
index ca115a52f6..d636b74441 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-validation-api</name>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,19 +14,16 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-validation-api</name>
- <artifactId>openecomp-sdc-validation-api</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
- <version>1.5.3</version>
+ <version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
@@ -31,8 +33,17 @@
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>${project.version}</version>
</dependency>
</dependencies>
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..5850819a7f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/pom.xml.versionsBackup
@@ -0,0 +1,49 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-validation-api</name>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-annotations</artifactId>
+ <version>1.5.3</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/api/ValidationManager.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/api/ValidationManager.java
index d18af3a27b..9f75a08051 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/api/ValidationManager.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/api/ValidationManager.java
@@ -21,6 +21,7 @@
package org.openecomp.core.validation.api;
+import org.openecomp.core.validation.types.GlobalValidationContext;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
import java.util.List;
@@ -32,4 +33,5 @@ public interface ValidationManager {
void addFile(String fileName, byte[] validationContent);
+ void updateGlobalContext(GlobalValidationContext globalContext);
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/ErrorMessagesFormatBuilder.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/ErrorMessagesFormatBuilder.java
index 210ce76c41..5f4833a90f 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/ErrorMessagesFormatBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/errors/ErrorMessagesFormatBuilder.java
@@ -20,8 +20,8 @@
package org.openecomp.core.validation.errors;
-public class ErrorMessagesFormatBuilder {
+public class ErrorMessagesFormatBuilder {
public static String getErrorWithParameters(String error, String... params) {
return String.format(error, params);
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/factory/ValidationManagerFactory.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/factory/ValidationManagerFactory.java
index 6031bc14f7..36beab10cf 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/factory/ValidationManagerFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/factory/ValidationManagerFactory.java
@@ -24,6 +24,7 @@ import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
import org.openecomp.core.validation.api.ValidationManager;
+
public abstract class ValidationManagerFactory extends AbstractComponentFactory<ValidationManager> {
public static ValidationManagerFactory getInstance() {
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/FileValidationContext.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/FileValidationContext.java
index 81e8931dab..993ea6b4df 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/FileValidationContext.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/FileValidationContext.java
@@ -24,6 +24,7 @@ package org.openecomp.core.validation.types;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
+
public class FileValidationContext {
private String fileName;
private MessageContainer messageContainer = new MessageContainer();
@@ -40,7 +41,8 @@ public class FileValidationContext {
}
public InputStream getContent() {
- return new ByteArrayInputStream(content);
+ ByteArrayInputStream is = new ByteArrayInputStream(content);
+ return is;
}
public String getFileName() {
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/GlobalValidationContext.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/GlobalValidationContext.java
index e6917e84f6..1fb31a3d8d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/GlobalValidationContext.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/GlobalValidationContext.java
@@ -21,23 +21,24 @@
package org.openecomp.core.validation.types;
import org.apache.commons.collections4.CollectionUtils;
-import org.openecomp.core.utilities.CommonMethods;
-import org.openecomp.core.validation.interfaces.Validator;
-import org.openecomp.sdc.common.utils.AsdcCommon;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.openecomp.sdc.logging.context.MdcUtil;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
import java.io.InputStream;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
+import java.util.Optional;
import java.util.function.BiPredicate;
import java.util.stream.Collectors;
public class GlobalValidationContext {
- private static Logger logger = LoggerFactory.getLogger(Validator.class);
+ private static Logger logger = (Logger) LoggerFactory.getLogger(GlobalValidationContext.class);
private Map<String, FileValidationContext> fileContextMap = new HashMap<>();
private Map<String, MessageContainer> messageContainerMap = new HashMap<>();
@@ -47,18 +48,21 @@ public class GlobalValidationContext {
* @param fileName the file name
* @param level the level
* @param message the message
+ * @param targetServiceName the target service name
+ * @param errorDescription the error details
*/
- public void addMessage(String fileName, ErrorLevel level, String message) {
+ public void addMessage(String fileName, ErrorLevel level, String message,
+ String targetServiceName, String errorDescription) {
- printLog(fileName, message, level);
+ printLog(fileName, message, level, targetServiceName, errorDescription);
if (fileContextMap.containsKey(fileName)) {
- fileContextMap.get(fileName).getMessageContainer().getMessageBuilder().setMessage(message)
- .setLevel(level).create();
+ fileContextMap.get(fileName).getMessageContainer().getMessageBuilder()
+ .setMessage(level.toString() + ": " + message).setLevel(level).create();
} else {
- if (CommonMethods.isEmpty(fileName)) {
- fileName = AsdcCommon.UPLOAD_FILE;
- }
+// if (CommonMethods.isEmpty(fileName)) {
+// fileName = SdcCommon.UPLOAD_FILE;
+// }
MessageContainer messageContainer;
synchronized (this) {
messageContainer = messageContainerMap.get(fileName);
@@ -67,7 +71,8 @@ public class GlobalValidationContext {
messageContainerMap.put(fileName, messageContainer);
}
}
- messageContainer.getMessageBuilder().setMessage(message).setLevel(level).create();
+ messageContainer.getMessageBuilder().setMessage(level.toString() + ": " + message)
+ .setLevel(level).create();
}
}
@@ -77,12 +82,12 @@ public class GlobalValidationContext {
* @param fileName the file name
* @return the file content
*/
- public InputStream getFileContent(String fileName) {
+ public Optional<InputStream> getFileContent(String fileName) {
FileValidationContext fileContext = fileContextMap.get(fileName);
if (fileContext == null || fileContext.isEmpty()) {
- return null;
+ return Optional.empty();
}
- return fileContext.getContent();
+ return Optional.of(fileContext.getContent());
}
public void addFileContext(String fileName, byte[] fileContent) {
@@ -100,7 +105,8 @@ public class GlobalValidationContext {
fileContextMap.entrySet().stream().filter(entry -> CollectionUtils
.isNotEmpty(entry.getValue().getMessageContainer().getErrorMessageList())).forEach(
entry -> contextMessageContainer.put(
- entry.getKey(), entry.getValue().getMessageContainer()));
+ entry.getKey(), entry.getValue()
+ .getMessageContainer()));
messageContainerMap.entrySet().stream()
.filter(entry -> CollectionUtils.isNotEmpty(entry.getValue().getErrorMessageList()))
.forEach(entry -> contextMessageContainer.put(entry.getKey(), entry.getValue()));
@@ -111,9 +117,12 @@ public class GlobalValidationContext {
return fileContextMap;
}
- private void printLog(String fileName, String message, ErrorLevel level) {
+ private void printLog(String fileName, String message, ErrorLevel level, String targetServiceName,
+ String errorDescription) {
String messageToPrint = message + " in file[" + fileName + "]";
+ MdcUtil.setValuesForMdc(LoggerConstants.TARGET_ENTITY_API, targetServiceName, level.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), errorDescription);
switch (level) {
case ERROR:
@@ -130,6 +139,7 @@ public class GlobalValidationContext {
}
}
+
public Collection<String> files(BiPredicate<String, GlobalValidationContext> func) {
return fileContextMap.keySet().stream().filter(t -> func.test(t, this))
.collect(Collectors.toList());
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainer.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainer.java
index 9d37bade67..977c5cc27d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainer.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainer.java
@@ -27,6 +27,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.function.Predicate;
+
public class MessageContainer {
private List<ErrorMessage> errorMessageList = new ArrayList<>();
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainerUtil.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/util/MessageContainerUtil.java
index c678bb5014..8c78f4942b 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/types/MessageContainerUtil.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/util/MessageContainerUtil.java
@@ -18,19 +18,18 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.core.validation.types;
+package org.openecomp.core.validation.util;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
-
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-public class MessageContainerUtil {
+public class MessageContainerUtil {
/**
* Gets message by level.
*
@@ -38,9 +37,9 @@ public class MessageContainerUtil {
* @param messages the messages
* @return the message by level
*/
- public static Map<String,
- List<ErrorMessage>> getMessageByLevel(
- ErrorLevel level,Map<String,List<ErrorMessage>> messages) {
+ public static Map<String, List<ErrorMessage>> getMessageByLevel(ErrorLevel level,
+ Map<String, List<ErrorMessage>>
+ messages) {
if (messages == null) {
return null;
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/resources/validationConfiguration.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/resources/validationConfiguration.json
deleted file mode 100644
index 971f4274d9..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/resources/validationConfiguration.json
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- "validatorConfigurationList": [
- {
- "name": "yamlValidator",
- "enableInd": true,
- "implementationClass": "org.openecomp.sdc.validation.impl.validators.YamlValidator"
- },
- {
- "name": "heatValidator",
- "enableInd": true,
- "implementationClass": "org.openecomp.sdc.validation.impl.validators.HeatValidator"
- },
- {
- "name": "manifestValidator",
- "enableInd": true,
- "implementationClass": "org.openecomp.sdc.validation.impl.validators.ManifestValidator"
- },
- {
- "name": "ecompGuideLineValidator",
- "enableInd": true,
- "implementationClass": "org.openecomp.sdc.validation.impl.validators.EcompGuideLineValidator"
- }
- ]
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml
index 968d71c04a..c0e928a2af 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-validation-core</name>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,56 +14,26 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-validation-core</name>
- <artifactId>openecomp-sdc-validation-core</artifactId>
-
<dependencies>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.14</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
-
-
- <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
+ <version>${logback.version}</version>
</dependency>
<dependency>
- <groupId>org.testng</groupId>
- <artifactId>testng</artifactId>
- <scope>test</scope>
- <version>6.8.5</version>
- <exclusions>
- <exclusion>
- <artifactId>snakeyaml</artifactId>
- <groupId>org.yaml</groupId>
- </exclusion>
- </exclusions>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>RELEASE</version>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -69,9 +44,8 @@
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-validation-impl</artifactId>
+ <artifactId>openecomp-sdc-validation-sdk</artifactId>
<version>${project.version}</version>
- <!--scope>runtime</scope-->
</dependency>
<dependency>
<groupId>org.openecomp.sdc</groupId>
@@ -82,12 +56,43 @@
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
+ <version>${mockito.all.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>${testng.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..8731097f41
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/pom.xml.versionsBackup
@@ -0,0 +1,110 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-validation-core</name>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-sdk</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>6.9.10</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/impl/ValidationManagerImpl.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/impl/ValidationManagerImpl.java
index 64c409b463..acb4eed448 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/impl/ValidationManagerImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/impl/ValidationManagerImpl.java
@@ -21,28 +21,40 @@
package org.openecomp.sdc.validation.impl;
import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.core.validation.api.ValidationManager;
-import org.openecomp.core.validation.interfaces.Validator;
+import org.openecomp.sdc.validation.Validator;
import org.openecomp.core.validation.types.GlobalValidationContext;
import org.openecomp.core.validation.types.MessageContainer;
import org.openecomp.sdc.datatypes.error.ErrorMessage;
-import org.openecomp.sdc.validation.utils.ValidationConfigurationManager;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.openecomp.sdc.validation.services.ValidationFactory;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
public class ValidationManagerImpl implements ValidationManager {
- private static Logger logger = LoggerFactory.getLogger(ValidationManagerImpl.class);
+ private static Logger logger = (Logger) LoggerFactory.getLogger(ValidationManagerImpl.class);
+
private GlobalValidationContext globalContext;
private List<Validator> validators;
public ValidationManagerImpl() {
globalContext = new GlobalValidationContext();
- validators = ValidationConfigurationManager.initValidators();
+ validators = ValidationFactory.getValidators();
+ }
+
+ @Override
+ public Map<String, List<ErrorMessage>> validate() {
+ for (Validator validator : validators) {
+ if(Objects.nonNull(validator)) {
+ validator.validate(globalContext);
+ }
+ }
+ return convertMessageContainsToErrorMessage(globalContext.getContextMessageContainers());
}
@Override
@@ -51,11 +63,8 @@ public class ValidationManagerImpl implements ValidationManager {
}
@Override
- public Map<String, List<ErrorMessage>> validate() {
- for (Validator validator : validators) {
- validator.validate(globalContext);
- }
- return convertMessageContainsToErrorMessage(globalContext.getContextMessageContainers());
+ public void updateGlobalContext(GlobalValidationContext globalContext) {
+ this.globalContext = globalContext;
}
private Map<String, List<ErrorMessage>> convertMessageContainsToErrorMessage(
@@ -66,4 +75,5 @@ public class ValidationManagerImpl implements ValidationManager {
.forEach(entry -> errors.put(entry.getKey(), entry.getValue().getErrorMessageList()));
return errors;
}
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/services/ValidationFactory.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/services/ValidationFactory.java
new file mode 100644
index 0000000000..b290e7cda9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/services/ValidationFactory.java
@@ -0,0 +1,58 @@
+package org.openecomp.sdc.validation.services;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.sdc.validation.type.ConfigConstants;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public class ValidationFactory {
+ private static final List<Validator> validators = new ArrayList<>();
+ private static Map<String, ImplementationConfiguration> validationImplMap;
+ private static Logger logger =
+ (Logger) LoggerFactory.getLogger(ValidationFactory.class);
+ private static File file;
+
+
+ static {
+ Configuration config = ConfigurationManager.lookup();
+ validationImplMap = config.populateMap(ConfigConstants.Namespace,
+ ConfigConstants.Validator_Impl_Key, ImplementationConfiguration.class);
+ validationImplMap.putAll(config.populateMap(ConfigConstants.Mandatory_Namespace,
+ ConfigConstants.Validator_Impl_Key, ImplementationConfiguration.class));
+ }
+
+ /**
+ * Initialize a validator.
+ */
+ public static List<Validator> getValidators() {
+ synchronized (validators) {
+ if (CollectionUtils.isEmpty(validators)) {
+ validationImplMap.values().stream()
+ .filter(implementationConfiguration -> implementationConfiguration
+ .isEnable()).forEachOrdered(implementationConfiguration -> validators.add
+ (cerateValidatorImpl(implementationConfiguration)));
+ }
+ }
+ return validators;
+ }
+
+ private static Validator cerateValidatorImpl(ImplementationConfiguration validatorConf) {
+ Validator validator = null;
+ validator =
+ CommonMethods.newInstance(validatorConf.getImplementationClass(), Validator.class);
+ validator.init(validatorConf.getProperties());
+
+ logger.debug("created validator" + validatorConf.getImplementationClass());
+ return validator;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationConfigurationManager.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationConfigurationManager.java
deleted file mode 100644
index cc921ce985..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationConfigurationManager.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.validation.utils;
-
-import org.apache.commons.collections4.CollectionUtils;
-import org.openecomp.core.utilities.CommonMethods;
-import org.openecomp.core.utilities.file.FileUtils;
-import org.openecomp.core.utilities.json.JsonUtil;
-import org.openecomp.core.validation.interfaces.Validator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-public class ValidationConfigurationManager {
-
- private static final String VALIDATION_CONFIGURATION = "validationConfiguration.json";
- private static final List<Validator> validators = new ArrayList<>();
- private static Logger logger = LoggerFactory.getLogger(ValidationConfigurationManager.class);
-
- /**
- * Init validators list.
- *
- * @return the list
- */
- public static List<Validator> initValidators() {
- synchronized (validators) {
- if (CollectionUtils.isEmpty(validators)) {
- InputStream validationConfigurationJson =
- FileUtils.getFileInputStream(VALIDATION_CONFIGURATION);
- ValidationConfiguration validationConfiguration =
- JsonUtil.json2Object(validationConfigurationJson, ValidationConfiguration.class);
- List<ValidatorConfiguration> conf = validationConfiguration.getValidatorConfigurationList();
- conf.stream().filter(ValidatorConfiguration::isEnableInd).forEachOrdered(
- validatorConfiguration -> validators.add(validatorInit(validatorConfiguration)));
- }
- }
- return validators;
- }
-
- private static Validator validatorInit(ValidatorConfiguration validatorConf) {
- Validator validator = null;
- try {
- validator =
- CommonMethods.newInstance(validatorConf.getImplementationClass(), Validator.class);
- } catch (IllegalArgumentException iae) {
- logger.error("Validator:" + validatorConf.getName() + " Class:"
- + validatorConf.getImplementationClass() + " failed in initialization. error:"
- + iae.toString() + " trace:" + Arrays.toString(iae.getStackTrace()));
- }
- return validator;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationManagerUtil.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationManagerUtil.java
deleted file mode 100644
index 960bdc2165..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationManagerUtil.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.validation.utils;
-
-import org.openecomp.core.utilities.file.FileContentHandler;
-import org.openecomp.core.utilities.file.FileUtils;
-import org.openecomp.core.validation.api.ValidationManager;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.core.validation.factory.ValidationManagerFactory;
-import org.openecomp.sdc.common.utils.AsdcCommon;
-import org.openecomp.sdc.datatypes.error.ErrorLevel;
-import org.openecomp.sdc.datatypes.error.ErrorMessage;
-
-import java.io.InputStream;
-import java.util.List;
-import java.util.Map;
-
-public class ValidationManagerUtil {
-
- /**
- * Handle missing manifest.
- *
- * @param fileContentMap the file content map
- * @param errors the errors
- */
- public static void handleMissingManifest(FileContentHandler fileContentMap,
- Map<String, List<ErrorMessage>> errors) {
- InputStream manifest = fileContentMap.getFileContent(AsdcCommon.MANIFEST_NAME);
- if (manifest == null) {
- ErrorMessage.ErrorMessageUtil.addMessage(AsdcCommon.MANIFEST_NAME, errors)
- .add(new ErrorMessage(ErrorLevel.ERROR, Messages.MANIFEST_NOT_EXIST.getErrorMessage()));
- }
- }
-
- /**
- * Init validation manager validation manager.
- *
- * @param fileContentMap the file content map
- * @return the validation manager
- */
- public static ValidationManager initValidationManager(FileContentHandler fileContentMap) {
- ValidationManager validationManager = ValidationManagerFactory.getInstance().createInterface();
- fileContentMap.getFileList().stream().forEach(fileName -> validationManager
- .addFile(fileName, FileUtils.toByteArray(fileContentMap.getFileContent(fileName))));
- return validationManager;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-mandatory-validaton.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-mandatory-validaton.json
new file mode 100644
index 0000000000..e221467baf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-mandatory-validaton.json
@@ -0,0 +1,20 @@
+{
+ "validatorImplementations": {
+ "yamlValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.YamlValidator"
+ },
+ "heatValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.HeatValidator"
+ },
+ "manifestValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.ManifestValidator"
+ }
+ },
+
+ "_config":{
+ "namespace": "mandatoryValidation"
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-validaton.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-validaton.json
new file mode 100644
index 0000000000..08c42880b2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/resources/config-validaton.json
@@ -0,0 +1,87 @@
+{
+ "validatorImplementations": {
+ "sharedResourceGuideLineValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.SharedResourceGuideLineValidator"
+ },
+ "forbiddenResourceGuideLineValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.ForbiddenResourceGuideLineValidator",
+ "properties": {
+ "forbiddenResourceTypes": {
+ "OS::Neutron::FloatingIP": {
+ "enable": true
+ }
+ }
+ }
+ },
+ "contrailValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.ContrailValidator"
+ },
+ "resourceHeatValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.HeatResourceValidator",
+ "properties": {
+ "resourceBaseValidator": {
+ "OS::Nova::Server": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.heatresource.NovaServerResourceValidator"
+ },
+ "OS::Nova::ServerGroup": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.heatresource.NovaServerGroupResourceValidator"
+ },
+ "OS::Heat::ResourceGroup": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.heatresource.ResourceGroupResourceValidator"
+ },
+ "OS::Neutron::Port": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.heatresource.NeutronPortResourceValidator"
+ },
+ "OS::Contrail::NetworkPolicy": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.heatresource.ContrailNetworkPolicyResourceValidator"
+ },
+ "OS::Neutron::SecurityGroup":{
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.heatresource.NeutronSecurityGroupResourceValidator"
+ },
+ "nestedResource": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.heatresource.NestedResourceValidator"
+ }
+ }
+ }
+ },
+ "namingConventionGuideLineValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.NamingConventionGuideLineValidator",
+ "properties": {
+ "resourceBaseValidator": {
+ "OS::Nova::Server": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.namingconvention.NovaServerNamingConventionGuideLineValidator"
+ },
+ "OS::Neutron::Port": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.namingconvention.NeutronPortNamingConventionValidator"
+ },
+ "OS::Contrail::ServiceTemplate": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.namingconvention.ContrailServiceTemplateNamingConventionValidator"
+ },
+ "OS::Contrail::ServiceInstance": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.namingconvention.ContrailServiceInstanceNamingConventionValidator"
+ }
+ }
+ }
+ }
+ },
+
+ "_config":{
+ "namespace": "validation"
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/test/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/test/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerTest.java
index 6a9f8df12d..8bb95afacd 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/test/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerTest.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/test/java/org/openecomp/sdc/heat/services/tree/HeatTreeManagerTest.java
@@ -1,8 +1,29 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.heat.services.tree;
-import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
+import org.openecomp.config.ConfigurationUtils;
import org.openecomp.core.utilities.file.FileContentHandler;
import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
import org.testng.Assert;
import org.testng.annotations.Test;
@@ -10,6 +31,10 @@ import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.URL;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
public class HeatTreeManagerTest {
@@ -34,7 +59,7 @@ public class HeatTreeManagerTest {
heatTreeManager.createTree();
HeatStructureTree tree = heatTreeManager.getTree();
Assert.assertNotNull(tree);
- Assert.assertEquals(tree.getHEAT().size(), 2);
+ Assert.assertEquals(tree.getHeat().size(), 2);
}
private byte[] getFileContent(File file) {
@@ -46,6 +71,4 @@ public class HeatTreeManagerTest {
return new byte[0];
}
-
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml
index 25a9514cfe..5874e29efb 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-validation-impl</name>
+ <artifactId>openecomp-sdc-validation-impl</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,29 +14,12 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-validation-impl</name>
- <artifactId>openecomp-sdc-validation-impl</artifactId>
-
<dependencies>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.10</version>
-
- </dependency>
- <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
-
+ <version>${logback.version}</version>
</dependency>
-
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
@@ -45,13 +33,23 @@
</exclusions>
</dependency>
<dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>RELEASE</version>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -61,7 +59,7 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-common-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -69,22 +67,24 @@
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
+ <version>${mockito.all.version}</version>
</dependency>
<dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>${commons.io.version}</version>
+ <scope>test</scope>
</dependency>
-
<dependency>
<groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-heat-lib</artifactId>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
<version>${project.version}</version>
</dependency>
-
-
</dependencies>
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml.versionsBackup
new file mode 100644
index 0000000000..e2927eb5b3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/pom.xml.versionsBackup
@@ -0,0 +1,103 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-validation-impl</name>
+ <artifactId>openecomp-sdc-validation-impl</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+
+ </dependency>
+
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <!--dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-sdk</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency-->
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>2.5</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/HeatValidationService.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/HeatValidationService.java
index 920724ed3b..5dc7bef641 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/HeatValidationService.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/HeatValidationService.java
@@ -24,29 +24,40 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.openecomp.core.utilities.yaml.YamlUtil;
import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.DefinedHeatParameterTypes;
import org.openecomp.sdc.heat.datatypes.model.Environment;
import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
import org.openecomp.sdc.heat.datatypes.model.Output;
+import org.openecomp.sdc.heat.datatypes.model.Parameter;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.validation.impl.validators.HeatValidator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
+import java.io.InputStream;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Objects;
+import java.util.Optional;
import java.util.Set;
+
public class HeatValidationService {
- private static final Logger logger = LoggerFactory.getLogger(HeatValidator.class);
+ private static final Logger logger = (Logger) LoggerFactory.getLogger(HeatValidator.class);
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
/**
* Check artifacts existence.
@@ -57,17 +68,22 @@ public class HeatValidationService {
*/
public static void checkArtifactsExistence(String fileName, Set<String> artifactsNames,
GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
artifactsNames
.stream()
.filter(artifactName -> !globalContext.getFileContextMap().containsKey(artifactName))
.forEach(artifactName -> {
- globalContext
- .addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ globalContext.addMessage(fileName,
+ ErrorLevel.ERROR, ErrorMessagesFormatBuilder
.getErrorWithParameters(Messages.MISSING_ARTIFACT.getErrorMessage(),
- artifactName));
+ artifactName), LoggerTragetServiceName.VALIDATE_ARTIFACTS_EXISTENCE,
+ LoggerErrorDescription.MISSING_FILE);
});
- }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
/**
* Check resource existence from resources map.
@@ -81,11 +97,14 @@ public class HeatValidationService {
Set<String> resourcesNames,
Collection<?> valuesToSearchIn,
GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
if (CollectionUtils.isNotEmpty(valuesToSearchIn)) {
for (Object value : valuesToSearchIn) {
if (value instanceof Resource) {
Resource resource = (Resource) value;
- //checkResourceDependsOn(fileName,resource,resourcesNames,globalContext);
Collection<Object> resourcePropertiesValues =
resource.getProperties() == null ? null : resource.getProperties().values();
@@ -101,35 +120,49 @@ public class HeatValidationService {
}
}
}
- }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
private static void handleReferencedResources(String fileName, Object valueToSearchReferencesIn,
Set<String> resourcesNames,
GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
Set<String> referencedResourcesNames = HeatStructureUtil
.getReferencedValuesByFunctionName(fileName,
ResourceReferenceFunctions.GET_RESOURCE.getFunction(), valueToSearchReferencesIn,
globalContext);
if (CollectionUtils.isNotEmpty(referencedResourcesNames)) {
- HeatValidationService
- .checkIfResourceReferenceExist(fileName, resourcesNames, referencedResourcesNames,
- globalContext);
+ checkIfResourceReferenceExist(fileName, resourcesNames, referencedResourcesNames,
+ globalContext);
}
- }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
private static void checkIfResourceReferenceExist(String fileName,
Set<String> referencedResourcesNames,
Set<String> referencedResources,
GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
referencedResources.stream()
.filter(referencedResource -> !referencedResourcesNames.contains(referencedResource))
.forEach(referencedResource -> {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.REFERENCED_RESOURCE_NOT_FOUND.getErrorMessage(),
- referencedResource));
+ globalContext.addMessage(fileName,
+ ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.REFERENCED_RESOURCE_NOT_FOUND.getErrorMessage(),
+ referencedResource),
+ LoggerTragetServiceName.VALIDATE_RESOURCE_REFERENCE_EXISTENCE,
+ LoggerErrorDescription.RESOURCE_NOT_FOUND);
});
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
/**
@@ -162,36 +195,152 @@ public class HeatValidationService {
/**
* Check nested parameters.
*
- * @param callingNestedFileName the calling nested file name
+ * @param parentFileName the calling nested file name
* @param nestedFileName the nested file name
* @param resourceName the resource name
* @param globalContext the global context
* @param resourceFileProperties the resource file properties
*/
- public static void checkNestedParameters(String callingNestedFileName, String nestedFileName,
- String resourceName,
- GlobalValidationContext globalContext,
- Set<String> resourceFileProperties) {
- HeatOrchestrationTemplate heatOrchestrationTemplate;
+ public static void checkNestedParameters(String parentFileName, String nestedFileName,
+ String resourceName, Resource resource,
+ Set<String> resourceFileProperties,
+ Optional<String> indexVarValue,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", parentFileName);
+
+ HeatOrchestrationTemplate parentHeatOrchestrationTemplate;
+ HeatOrchestrationTemplate nestedHeatOrchestrationTemplate;
try {
- heatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(globalContext.getFileContent(nestedFileName),
- HeatOrchestrationTemplate.class);
- } catch (Exception e0) {
+ Optional<InputStream> fileContent = globalContext.getFileContent(nestedFileName);
+ if (fileContent.isPresent()) {
+ nestedHeatOrchestrationTemplate =
+ new YamlUtil().yamlToObject(fileContent.get(), HeatOrchestrationTemplate.class);
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_PROPERTIES_MATCH_NESTED_PARAMETERS,
+ ErrorLevel.ERROR.name(), LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EMPTY_FILE);
+ throw new Exception("The file '" + nestedFileName + "' has no content");
+ }
+ } catch (Exception exception) {
+ mdcDataDebugMessage.debugExitMessage("file", parentFileName);
return;
}
- Set<String> nestedParametersNames = heatOrchestrationTemplate.getParameters() == null ? null
- : heatOrchestrationTemplate.getParameters().keySet();
+
+ try {
+ Optional<InputStream> fileContent = globalContext.getFileContent(parentFileName);
+ if (fileContent.isPresent()) {
+ parentHeatOrchestrationTemplate =
+ new YamlUtil().yamlToObject(fileContent.get(), HeatOrchestrationTemplate.class);
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_PROPERTIES_MATCH_NESTED_PARAMETERS,
+ ErrorLevel.ERROR.name(), LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EMPTY_FILE);
+ throw new Exception("The file '" + parentFileName + "' has no content");
+ }
+ } catch (Exception exception) {
+ mdcDataDebugMessage.debugExitMessage("file", parentFileName);
+ return;
+ }
+ Map<String, Parameter> parentParameters = parentHeatOrchestrationTemplate.getParameters();
+ Map<String, Parameter> nestedParameters = nestedHeatOrchestrationTemplate.getParameters();
+ Set<String> nestedParametersNames =
+ nestedParameters == null ? null : nestedHeatOrchestrationTemplate.getParameters().keySet();
+
+ checkNoMissingParameterInNested(parentFileName, nestedFileName, resourceName,
+ resourceFileProperties, nestedParametersNames, globalContext);
+ checkNestedInputValuesAlignWithType(parentFileName, nestedFileName, parentParameters,
+ nestedParameters, resourceName, resource, indexVarValue, globalContext);
+
+ mdcDataDebugMessage.debugExitMessage("file", parentFileName);
+
+ }
+
+ private static void checkNoMissingParameterInNested(String parentFileName, String nestedFileName,
+ String resourceName,
+ Set<String> resourceFileProperties,
+ Set<String> nestedParametersNames,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("nested file", nestedFileName);
if (CollectionUtils.isNotEmpty(nestedParametersNames)) {
resourceFileProperties
.stream()
.filter(propertyName -> !nestedParametersNames.contains(propertyName))
.forEach(propertyName -> globalContext
- .addMessage(callingNestedFileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_PARAMETER_IN_NESTED.getErrorMessage(),
- nestedFileName, resourceName, propertyName)));
+ .addMessage(parentFileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages
+ .MISSING_PARAMETER_IN_NESTED.getErrorMessage(),
+ nestedFileName, resourceName, propertyName),
+ LoggerTragetServiceName.VALIDATE_PROPERTIES_MATCH_NESTED_PARAMETERS,
+ LoggerErrorDescription.MISSING_PARAMETER_IN_NESTED));
}
+
+ mdcDataDebugMessage.debugExitMessage("nested file", nestedFileName);
+ }
+
+
+ private static void checkNestedInputValuesAlignWithType(String parentFileName,
+ String nestedFileName,
+ Map<String, Parameter> parentParameters,
+ Map<String, Parameter> nestedParameters,
+ String resourceName, Resource resource,
+ Optional<String> indexVarValue,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("nested file", nestedFileName);
+
+ Map<String, Object> properties = resource.getProperties();
+ for (Map.Entry<String, Object> propertyEntry : properties.entrySet()) {
+ String parameterName = propertyEntry.getKey();
+ Object parameterInputValue = propertyEntry.getValue();
+
+ if (Objects.nonNull(parameterInputValue)) {
+ if (parameterInputValue instanceof String) {
+ if (indexVarValue.isPresent() && indexVarValue.get().equals(parameterInputValue)) {
+ parameterInputValue = 3; //indexVarValue is actually number value in runtime
+ }
+ validateStaticValueForNestedInputParameter(parentFileName, nestedFileName, resourceName,
+ parameterName, parameterInputValue, nestedParameters.get(parameterName),
+ globalContext);
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("nested file", nestedFileName);
+ }
+
+ private static void validateStaticValueForNestedInputParameter(String parentFileName,
+ String nestedFileName,
+ String resourceName,
+ String parameterName,
+ Object staticValue,
+ Parameter parameterInNested,
+ GlobalValidationContext
+ globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("nested file", nestedFileName);
+
+ if (parameterInNested == null) {
+ return;
+ }
+ if (!DefinedHeatParameterTypes
+ .isValueIsFromGivenType(staticValue, parameterInNested.getType())) {
+ globalContext.addMessage(parentFileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages
+ .WRONG_VALUE_TYPE_ASSIGNED_NESTED_INPUT.getErrorMessage(),
+ resourceName, parameterName, nestedFileName),
+ LoggerTragetServiceName.VALIDATE_PROPERTIES_MATCH_NESTED_PARAMETERS,
+ LoggerErrorDescription.WRONG_VALUE_ASSIGNED_NESTED_PARAMETER);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("nested file", nestedFileName);
}
@@ -207,14 +356,28 @@ public class HeatValidationService {
public static boolean isNestedLoopExistInFile(String callingFileName, String nestedFileName,
List<String> filesInLoop,
GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", callingFileName);
+
HeatOrchestrationTemplate nestedHeatOrchestrationTemplate;
try {
- nestedHeatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(globalContext.getFileContent(nestedFileName),
- HeatOrchestrationTemplate.class);
- } catch (Exception e0) {
+ Optional<InputStream> fileContent = globalContext.getFileContent(nestedFileName);
+ if (fileContent.isPresent()) {
+ nestedHeatOrchestrationTemplate =
+ new YamlUtil().yamlToObject(fileContent.get(), HeatOrchestrationTemplate.class);
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_NESTING_LOOPS, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.EMPTY_FILE);
+ throw new Exception("The file '" + nestedFileName + "' has no content");
+ }
+
+ } catch (Exception exception) {
logger.warn("HEAT Validator will not be executed on file " + nestedFileName
+ " due to illegal HEAT format");
+
+ mdcDataDebugMessage.debugExitMessage("file", callingFileName);
return false;
}
filesInLoop.add(nestedFileName);
@@ -226,11 +389,14 @@ public class HeatValidationService {
String resourceType = resource.getType();
if (Objects.nonNull(resourceType) && isNestedResource(resourceType)) {
+ mdcDataDebugMessage.debugExitMessage("file", callingFileName);
return resourceType.equals(callingFileName) || !filesInLoop.contains(resourceType)
&& isNestedLoopExistInFile(callingFileName, resourceType, filesInLoop, globalContext);
}
}
}
+
+ mdcDataDebugMessage.debugExitMessage("file", callingFileName);
return false;
}
@@ -245,9 +411,11 @@ public class HeatValidationService {
*/
@SuppressWarnings("unchecked")
public static void loopOverOutputMapAndValidateGetAttrFromNested(String fileName,
- Map<String, Output> outputMap,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
+ Map<String, Output> outputMap,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ GlobalValidationContext
+ globalContext) {
for (Output output : outputMap.values()) {
Object outputValue = output.getValue();
if (outputValue != null && outputValue instanceof Map) {
@@ -256,42 +424,64 @@ public class HeatValidationService {
(List<String>) outputValueMap.get(ResourceReferenceFunctions.GET_ATTR.getFunction());
if (!CollectionUtils.isEmpty(getAttrValue)) {
String resourceName = getAttrValue.get(0);
- String propertyName = getAttrValue.get(1);
+ Object attNameObject = getAttrValue.get(1);
+ if (!(attNameObject instanceof String)) {
+ return;
+ }
+ String attName = getAttrValue.get(1);
String resourceType =
getResourceTypeFromResourcesMap(resourceName, heatOrchestrationTemplate);
if (Objects.nonNull(resourceType)
- && HeatValidationService.isNestedResource(resourceType)) {
- Map<String, Output> nestedOutputMap;
- HeatOrchestrationTemplate nestedHeatOrchestrationTemplate;
- try {
- nestedHeatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(globalContext.getFileContent(resourceType),
- HeatOrchestrationTemplate.class);
- } catch (Exception e0) {
- return;
- }
- nestedOutputMap = nestedHeatOrchestrationTemplate.getOutputs();
-
- if (MapUtils.isEmpty(nestedOutputMap) || !nestedOutputMap.containsKey(propertyName)) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.GET_ATTR_NOT_FOUND.getErrorMessage(),
- propertyName, resourceName));
+ && isNestedResource(resourceType)) {
+ handleGetAttrNestedResource(fileName, globalContext, resourceName, attName,
+ resourceType);
}
}
}
}
}
- }
+ private static void handleGetAttrNestedResource(String fileName,
+ GlobalValidationContext globalContext,
+ String resourceName, String attName,
+ String resourceType) {
+ Map<String, Output> nestedOutputMap;
+ HeatOrchestrationTemplate nestedHeatOrchestrationTemplate;
+ try {
+ Optional<InputStream> fileContent = globalContext.getFileContent(resourceType);
+ if (fileContent.isPresent()) {
+ nestedHeatOrchestrationTemplate =
+ new YamlUtil().yamlToObject(fileContent.get(), HeatOrchestrationTemplate.class);
+ } else {
+ MdcDataErrorMessage
+ .createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_GET_ATTR_FROM_NESTED,
+ ErrorLevel.ERROR.name(), LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EMPTY_FILE);
+ throw new Exception("The file '" + resourceType + "' has no content");
+ }
+ } catch (Exception exception) {
+ return;
+ }
+ nestedOutputMap = nestedHeatOrchestrationTemplate.getOutputs();
+
+ if (MapUtils.isEmpty(nestedOutputMap) || !nestedOutputMap.containsKey(attName)) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.GET_ATTR_NOT_FOUND.getErrorMessage(),
+ attName, resourceName),
+ LoggerTragetServiceName.VALIDATE_GET_ATTR_FROM_NESTED,
+ LoggerErrorDescription.GET_ATTR_NOT_FOUND);
+ }
+ }
public static boolean isNestedResource(String resourceType) {
return resourceType.contains(".yaml") || resourceType.contains(".yml");
}
-
private static String getResourceTypeFromResourcesMap(String resourceName,
- HeatOrchestrationTemplate heatOrchestrationTemplate) {
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate) {
return heatOrchestrationTemplate.getResources().get(resourceName).getType();
}
@@ -305,11 +495,23 @@ public class HeatValidationService {
*/
public static Environment validateEnvContent(String fileName, String envFileName,
GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("env file", envFileName);
+
Environment envContent = null;
try {
- envContent =
- new YamlUtil().yamlToObject(globalContext.getFileContent(envFileName), Environment.class);
- } catch (Exception e0) {
+ Optional<InputStream> fileContent = globalContext.getFileContent(envFileName);
+ if (fileContent.isPresent()) {
+ envContent = new YamlUtil().yamlToObject(fileContent.get(), Environment.class);
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_ENV_FILE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.EMPTY_FILE);
+ throw new Exception("The file '" + envFileName + "' has no content");
+ }
+ } catch (Exception exception) {
+ mdcDataDebugMessage.debugExitMessage("env file", envFileName);
return null;
}
return envContent;
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/ResourceValidationHeatValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/ResourceValidationHeatValidator.java
deleted file mode 100644
index 3457bed1e9..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/ResourceValidationHeatValidator.java
+++ /dev/null
@@ -1,617 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.validation.impl.util;
-
-import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.collections4.MapUtils;
-import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.sdc.datatypes.error.ErrorLevel;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
-import org.openecomp.sdc.heat.datatypes.model.Output;
-import org.openecomp.sdc.heat.datatypes.model.PolicyTypes;
-import org.openecomp.sdc.heat.datatypes.model.PropertiesMapKeyTypes;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
-import org.openecomp.sdc.heat.datatypes.model.ResourceTypeToMessageString;
-import org.openecomp.sdc.heat.services.HeatStructureUtil;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
-
-
-public class ResourceValidationHeatValidator {
-
- /**
- * Validate resource type.
- *
- * @param fileName the file name
- * @param baseFileName the base file name
- * @param securityGroupsNamesFromBaseFileOutputs the security groups names from base file outputs
- * @param heatOrchestrationTemplate the heat orchestration template
- * @param globalContext the global context
- */
- public static void validateResourceType(String fileName, String baseFileName,
- Set<String> securityGroupsNamesFromBaseFileOutputs,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- Map<String, Resource> resourceMap =
- heatOrchestrationTemplate.getResources() == null ? new HashMap<>()
- : heatOrchestrationTemplate.getResources();
- Map<String, Integer> numberOfVisitsInPort = new HashMap<>();
- Set<String> resourcesNames = resourceMap.keySet();
- Set<String> sharedResourcesFromOutputMap =
- getSharedResourcesNamesFromOutputs(fileName, heatOrchestrationTemplate.getOutputs(),
- globalContext);
- boolean isBaseFile = baseFileName != null && fileName.equals(baseFileName);
-
- Map<HeatResourcesTypes, List<String>> resourceTypeToNamesListMap = HeatResourcesTypes
- .getListForResourceType(HeatResourcesTypes.NOVA_SERVER_GROUP_RESOURCE_TYPE,
- HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE,
- HeatResourcesTypes.CONTRAIL_NETWORK_RULE_RESOURCE_TYPE);
-
- initResourceTypeListWithItsResourcesNames(fileName, resourceTypeToNamesListMap, resourceMap,
- sharedResourcesFromOutputMap, globalContext);
- initVisitedPortsMap(fileName, resourceMap, numberOfVisitsInPort, globalContext);
-
-
- for (Map.Entry<String, Resource> resourceEntry : resourceMap.entrySet()) {
- String resourceType = resourceEntry.getValue().getType();
- validateSecurityGroupsFromBaseOutput(fileName, resourceEntry, isBaseFile,
- securityGroupsNamesFromBaseFileOutputs, globalContext);
- checkResourceDependsOn(fileName, resourceEntry.getValue(), resourcesNames, globalContext);
-
- if (Objects.isNull(resourceType)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_RESOURCE_TYPE.getErrorMessage(), "null",
- resourceEntry.getKey()));
- } else {
- HeatResourcesTypes heatResourceType = HeatResourcesTypes.findByHeatResource(resourceType);
-
- if (heatResourceType != null) {
- switch (heatResourceType) {
- case NOVA_SERVER_RESOURCE_TYPE:
- validateNovaServerResourceType(fileName, resourceEntry, numberOfVisitsInPort,
- resourceTypeToNamesListMap
- .get(HeatResourcesTypes.NOVA_SERVER_GROUP_RESOURCE_TYPE),
- heatOrchestrationTemplate, globalContext);
- break;
-
- case NOVA_SERVER_GROUP_RESOURCE_TYPE:
- validateNovaServerGroupPolicy(fileName, resourceEntry, globalContext);
- break;
-
- case RESOURCE_GROUP_RESOURCE_TYPE:
- validateResourceGroupType(fileName, resourceEntry, globalContext);
- break;
-
- case NEUTRON_PORT_RESOURCE_TYPE:
- validateNeutronPortType(fileName, resourceEntry, resourceTypeToNamesListMap
- .get(HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE), globalContext);
- break;
-
- case CONTRAIL_NETWORK_ATTACH_RULE_RESOURCE_TYPE:
- validateContrailAttachPolicyType(resourceEntry, resourceTypeToNamesListMap
- .get(HeatResourcesTypes.CONTRAIL_NETWORK_RULE_RESOURCE_TYPE));
- break;
- default:
- }
- } else {
- if (HeatValidationService.isNestedResource(resourceType)) {
- handleNestedResourceType(fileName, resourceEntry.getKey(), resourceEntry.getValue(),
- globalContext);
- }
- }
- }
- }
-
- checkForEmptyResourceNamesInMap(fileName,
- CollectionUtils.isEmpty(securityGroupsNamesFromBaseFileOutputs), resourceTypeToNamesListMap,
- globalContext);
- handleOrphanPorts(fileName, numberOfVisitsInPort, globalContext);
- }
-
-
- private static void validateNovaServerResourceType(String fileName,
- Map.Entry<String, Resource> resourceEntry,
- Map<String, Integer> numberOfVisitsInPort,
- List<String> serverGroupResourcesNames,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- validateAssignedValueForImageOrFlavorFromNova(fileName, resourceEntry, globalContext);
- validateNovaServerPortBinding(fileName, resourceEntry.getValue(), numberOfVisitsInPort,
- globalContext);
- validateAllServerGroupsPointedByServerExistAndDefined(fileName, resourceEntry,
- serverGroupResourcesNames, heatOrchestrationTemplate, globalContext);
-
- }
-
-
- private static void handleNestedResourceType(String fileName, String resourceName,
- Resource resource,
- GlobalValidationContext globalContext) {
- validateAllPropertiesMatchNestedParameters(fileName, resourceName, resource, globalContext);
- validateLoopsOfNestingFromFile(fileName, resource.getType(), globalContext);
- }
-
-
- private static void validateResourceGroupType(String fileName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- Resource resourceDef = HeatStructureUtil
- .getResourceDef(fileName, resourceEntry.getKey(), resourceEntry.getValue(), globalContext);
- // validateResourceGroupTypeIsSupported(fileName, resourceEntry.getKey(),resourceDef.getType(),
- // globalContext);
- if (resourceDef != null) {
- if (Objects.nonNull(resourceDef.getType())
- && HeatValidationService.isNestedResource(resourceDef.getType())) {
- handleNestedResourceType(fileName, resourceDef.getType(), resourceDef, globalContext);
- }
- }
- }
-
-
- private static void validateAllPropertiesMatchNestedParameters(String fileName,
- String resourceName,
- Resource resource,
- GlobalValidationContext
- globalContext) {
-
- String resourceType = resource.getType();
- if (globalContext.getFileContextMap().containsKey(resourceType)) {
- Set<String> propertiesNames =
- resource.getProperties() == null ? null : resource.getProperties().keySet();
- if (CollectionUtils.isNotEmpty(propertiesNames)) {
- HeatValidationService
- .checkNestedParameters(fileName, resourceType, resourceName, globalContext,
- propertiesNames);
- }
- } else {
- globalContext.addMessage(resourceType, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_NESTED_FILE.getErrorMessage(), resourceType));
- }
- }
-
-
- private static void validateAssignedValueForImageOrFlavorFromNova(String fileName,
- Map.Entry<String, Resource>
- resourceEntry,
- GlobalValidationContext
- globalContext) {
-
- Resource resource = resourceEntry.getValue();
- Map<String, Object> propertiesMap = resource.getProperties();
- if (propertiesMap.get(PropertiesMapKeyTypes.IMAGE.getKeyMap()) == null
- && propertiesMap.get(PropertiesMapKeyTypes.FLAVOR.getKeyMap()) == null) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_IMAGE_AND_FLAVOR.getErrorMessage(),
- resourceEntry.getKey()));
- }
- }
-
-
- private static void validateLoopsOfNestingFromFile(String fileName, String resourceType,
- GlobalValidationContext globalContext) {
- List<String> filesInLoop = new ArrayList<>(Collections.singletonList(fileName));
- if (HeatValidationService
- .isNestedLoopExistInFile(fileName, resourceType, filesInLoop, globalContext)) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.NESTED_LOOP.getErrorMessage(),
- HeatValidationService.drawFilesLoop(filesInLoop)));
- }
- }
-
-
- /* validation 22*/
- @SuppressWarnings("unchecked")
- private static void validateNovaServerPortBinding(String fileName, Resource resource,
- Map<String, Integer> numberOfVisitsInPort,
- GlobalValidationContext globalContext) {
-
- Map<String, Object> propertiesMap = resource.getProperties();
- List<Object> networksList =
- (List<Object>) propertiesMap.get(PropertiesMapKeyTypes.NETWORKS.getKeyMap());
-
- if (CollectionUtils.isNotEmpty(networksList)) {
- networksList
- .stream()
- .filter(networkObject -> networkObject instanceof Map)
- .forEach(networkObject -> {
- Map<String, Object> portValueMap =
- (Map<String, Object>) ((Map) networkObject).get("port");
- if (MapUtils.isNotEmpty(portValueMap)) {
- checkPortBindingFromMap(fileName, portValueMap, numberOfVisitsInPort, globalContext);
- }
- });
- }
- }
-
- /* validation 23*/
- @SuppressWarnings("unchecked")
- private static void validateAllServerGroupsPointedByServerExistAndDefined(String fileName,
- Map.Entry<String, Resource> resourceEntry,
- List<String> serverGroupNamesList,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
-
- Map<String, Object> resourceProperties = resourceEntry.getValue().getProperties();
- Map<String, Object> schedulerHintsMap = resourceProperties == null ? null
- : (Map<String, Object>) resourceProperties
- .get(ResourceReferenceFunctions.SCHEDULER_HINTS.getFunction());
-
- if (MapUtils.isNotEmpty(schedulerHintsMap)) {
- for (Object serverGroupMap : schedulerHintsMap.values()) {
- Map<String, Object> currentServerMap = (Map<String, Object>) serverGroupMap;
- String serverResourceName = currentServerMap == null ? null
- : (String) currentServerMap.get(ResourceReferenceFunctions.GET_RESOURCE.getFunction());
- Resource serverResource = serverResourceName == null || resourcesMap == null ? null
- : resourcesMap.get(serverResourceName);
- if (serverResource != null && !serverResource.getType()
- .equals(HeatResourcesTypes.NOVA_SERVER_GROUP_RESOURCE_TYPE.getHeatResource())) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.SERVER_NOT_DEFINED_FROM_NOVA.getErrorMessage(),
- serverResourceName, resourceEntry.getKey()));
- } else {
- serverGroupNamesList.remove(serverResourceName);
- }
- }
- }
- }
-
-
- /* validation 24*/
- @SuppressWarnings("unchecked")
- private static void validateNovaServerGroupPolicy(String fileName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
-
- Resource resource = resourceEntry.getValue();
- List<String> policiesList = resource.getProperties() == null ? null
- : (List<String>) resource.getProperties().get("policies");
-
- if (CollectionUtils.isNotEmpty(policiesList)) {
- if (policiesList.size() == 1) {
- String policy = policiesList.get(0);
- if (!PolicyTypes.isGivenPolicyValid(policy)) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.WRONG_POLICY_IN_SERVER_GROUP.getErrorMessage(),
- resourceEntry.getKey()));
- }
- } else {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.WRONG_POLICY_IN_SERVER_GROUP.getErrorMessage(),
- resourceEntry.getKey()));
- }
- }
- }
-
-
- private static void validateNeutronPortType(String filename,
- Map.Entry<String, Resource> resourceEntry,
- List<String> securityGroupResourceNameList,
- GlobalValidationContext globalContext) {
- validateAllSecurityGroupsAreUsed(filename, resourceEntry, securityGroupResourceNameList,
- globalContext);
-
- }
-
-
- @SuppressWarnings("unchecked")
- private static void validateAllSecurityGroupsAreUsed(String filename,
- Map.Entry<String, Resource> resourceEntry,
- List<String> securityGroupResourceNameList,
- GlobalValidationContext globalContext) {
- Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
-
- if (MapUtils.isEmpty(propertiesMap)) {
- return;
- }
-
- Object securityGroupsValue = propertiesMap.get("security_groups");
-
- if (Objects.isNull(securityGroupsValue)) {
- return;
- }
-
- if (securityGroupsValue instanceof List) {
- List<Object> securityGroupsListFromCurrResource =
- (List<Object>) propertiesMap.get("security_groups");
- for (Object securityGroup : securityGroupsListFromCurrResource) {
- removeSecurityGroupNamesFromListByGivenFunction(filename,
- ResourceReferenceFunctions.GET_RESOURCE.getFunction(), securityGroup,
- securityGroupResourceNameList, globalContext);
- }
- }
- }
-
-
- private static void validateSecurityGroupsFromBaseOutput(String filename,
- Map.Entry<String, Resource> resourceEntry,
- boolean isBaseFile,
- Set<String> securityGroupNamesFromBaseOutput,
- GlobalValidationContext globalContext) {
- if (!isBaseFile && CollectionUtils.isNotEmpty(securityGroupNamesFromBaseOutput)) {
- Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
-
- if (MapUtils.isEmpty(propertiesMap)) {
- return;
- }
-
- for (Map.Entry<String, Object> propertyEntry : propertiesMap.entrySet()) {
- removeSecurityGroupNamesFromListByGivenFunction(filename,
- ResourceReferenceFunctions.GET_PARAM.getFunction(), propertyEntry.getValue(),
- securityGroupNamesFromBaseOutput, globalContext);
- }
- }
- }
-
-
- private static void removeSecurityGroupNamesFromListByGivenFunction(String filename,
- String functionName,
- Object securityGroup,
- Collection<String> securityGroupResourceNameList,
- GlobalValidationContext globalContext) {
- Set<String> securityGroupsNamesFromFunction = HeatStructureUtil
- .getReferencedValuesByFunctionName(filename, functionName, securityGroup, globalContext);
- securityGroupsNamesFromFunction.forEach(securityGroupResourceNameList::remove);
- }
-
-
- @SuppressWarnings("unchecked")
- private static void validateContrailAttachPolicyType(Map.Entry<String, Resource> resourceEntry,
- List<String> networkPolicyResourceNames) {
- Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
-
- if (MapUtils.isNotEmpty(propertiesMap)) {
- Map<String, Object> policyMap = (Map<String, Object>) propertiesMap.get("policy");
- if (MapUtils.isNotEmpty(policyMap)) {
- List<Object> securityGroupList =
- (List<Object>) policyMap.get(ResourceReferenceFunctions.GET_ATTR.getFunction());
- //noinspection SuspiciousMethodCalls
- if (CollectionUtils.isNotEmpty(securityGroupList)) {
- //noinspection SuspiciousMethodCalls
- networkPolicyResourceNames.remove(securityGroupList.get(0));
- }
- }
- }
- }
-
-
- private static void getResourceNamesListFromSpecificResource(String filename,
- List<String> resourcesNames,
- HeatResourcesTypes heatResourcesType,
- Map<String, Resource> resourcesMap,
- Set<String> sharedResourcesFromOutputMap,
- GlobalValidationContext globalContext) {
-
- for (Map.Entry<String, Resource> resourceEntry : resourcesMap.entrySet()) {
- String resourceType = resourceEntry.getValue().getType();
- if (Objects.isNull(resourceType)) {
- globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_RESOURCE_TYPE.getErrorMessage(), null,
- resourceEntry.getKey()));
- } else {
- if (resourceType.equals(heatResourcesType.getHeatResource())
- && !isSharedResource(resourceEntry.getKey(), sharedResourcesFromOutputMap)) {
- resourcesNames.add(resourceEntry.getKey());
- }
- }
- }
- }
-
-
- private static boolean isSharedResource(String resourceName,
- Set<String> sharedResourcesFromOutputMap) {
- return !CollectionUtils.isEmpty(sharedResourcesFromOutputMap)
- && sharedResourcesFromOutputMap.contains(resourceName);
- }
-
- /**
- * Handle not empty resource names list.
- *
- * @param fileName the file name
- * @param resourcesNameList the resources name list
- * @param securityOrServerGroup the security or server group
- * @param globalContext the global context
- */
- public static void handleNotEmptyResourceNamesList(String fileName,
- Collection<String> resourcesNameList,
- String securityOrServerGroup,
- GlobalValidationContext globalContext) {
- if (CollectionUtils.isNotEmpty(resourcesNameList)) {
- resourcesNameList.forEach(name ->
- globalContext
- .addMessage(
- fileName,
- ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.SERVER_OR_SECURITY_GROUP_NOT_IN_USE.getErrorMessage(),
- securityOrServerGroup, name)));
- }
- }
-
-
- private static void initVisitedPortsMap(String filename, Map<String, Resource> resourceMap,
- Map<String, Integer> numberOfVisitsInPort,
- GlobalValidationContext globalContext) {
- for (Map.Entry<String, Resource> resourceEntry : resourceMap.entrySet()) {
- String resourceType = resourceEntry.getValue().getType();
-
- if (Objects.isNull(resourceType)) {
- globalContext.addMessage(filename, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_RESOURCE_TYPE.getErrorMessage(), "null",
- resourceEntry.getKey()));
- } else {
- if (resourceType.equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource())) {
- numberOfVisitsInPort.put(resourceEntry.getKey(), 0);
- }
- }
- }
- }
-
- private static boolean checkIfPortWasVisited(String resourcePortName,
- Map<String, Integer> numberOfVisitsInPort) {
- return numberOfVisitsInPort.containsKey(resourcePortName)
- && numberOfVisitsInPort.get(resourcePortName) == 1;
- }
-
-
- private static void incrementNumberOfVisitsInPort(String resourcePortName,
- Map<String, Integer> numberOfVisitsInPort) {
- if (numberOfVisitsInPort.containsKey(resourcePortName)) {
- numberOfVisitsInPort.put(resourcePortName, numberOfVisitsInPort.get(resourcePortName) + 1);
- }
- }
-
-
- private static void handleOrphanPorts(String fileName, Map<String, Integer> numberOfVisitsInPort,
- GlobalValidationContext globalContext) {
- numberOfVisitsInPort
- .entrySet()
- .stream()
- .filter(entry -> entry.getValue() == 0)
- .forEach(entry ->
- globalContext
- .addMessage(
- fileName,
- ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.PORT_NO_BIND_TO_ANY_NOVA_SERVER.getErrorMessage(),
- entry.getKey())));
- }
-
- @SuppressWarnings("unchecked")
- private static void checkResourceDependsOn(String fileName, Resource resource,
- Set<String> resourcesNames,
- GlobalValidationContext globalContext) {
- Object dependencies = resource.getDepends_on();
- if (dependencies instanceof Collection) {
- ((Collection<String>) dependencies)
- .stream()
- .filter(resource_id -> !resourcesNames.contains(resource_id))
- .forEach(resource_id -> globalContext.addMessage(fileName, ErrorLevel.ERROR,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_RESOURCE_IN_DEPENDS_ON.getErrorMessage(),
- (String) resource_id)));
- } else if (dependencies instanceof String) {
- if (!resourcesNames.contains(dependencies)) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_RESOURCE_IN_DEPENDS_ON.getErrorMessage(),
- (String) dependencies));
- }
- }
- }
-
-
- private static void checkPortBindingFromMap(String fileName, Map<String, Object> portValueMap,
- Map<String, Integer> numberOfVisitsInPort,
- GlobalValidationContext globalContext) {
- String resourcePortName =
- (String) portValueMap.get(ResourceReferenceFunctions.GET_RESOURCE.getFunction());
- if (checkIfPortWasVisited(resourcePortName, numberOfVisitsInPort)) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MORE_THAN_ONE_BIND_FROM_NOVA_TO_PORT.getErrorMessage(),
- (String) portValueMap.get(ResourceReferenceFunctions.GET_RESOURCE.getFunction())));
- } else {
- incrementNumberOfVisitsInPort(resourcePortName, numberOfVisitsInPort);
- }
- }
-
-
- private static void initResourceTypeListWithItsResourcesNames(String filename,
- Map<HeatResourcesTypes, List<String>> resourcesTypesListMap,
- Map<String, Resource> resourcesMap,
- Set<String> sharedResourcesFromOutputsMap,
- GlobalValidationContext globalContext) {
- for (Map.Entry<HeatResourcesTypes, List<String>> resourcesTypesToListEntry
- : resourcesTypesListMap.entrySet()) {
- HeatResourcesTypes currentType = resourcesTypesToListEntry.getKey();
- List<String> currNamesList = new ArrayList<>();
- getResourceNamesListFromSpecificResource(filename, currNamesList, currentType, resourcesMap,
- sharedResourcesFromOutputsMap, globalContext);
- resourcesTypesListMap.put(currentType, currNamesList);
- }
- }
-
-
- private static void checkForEmptyResourceNamesInMap(String fileName,
- boolean isBaseFileContainPorts,
- Map<HeatResourcesTypes, List<String>> resourcesTypesListMap,
- GlobalValidationContext globalContext) {
- if (isBaseFileContainPorts) {
- for (Map.Entry<HeatResourcesTypes, List<String>> resourcesTypesListEntry
- : resourcesTypesListMap.entrySet()) {
- handleNotEmptyResourceNamesList(fileName, resourcesTypesListEntry.getValue(),
- ResourceTypeToMessageString
- .getTypeForMessageFromResourceType(resourcesTypesListEntry.getKey()),
- globalContext);
- }
- }
- }
-
-
- private static Set<String> getSharedResourcesNamesFromOutputs(String filename,
- Map<String, Output> outputsMap,
- GlobalValidationContext globalContext) {
- Set<String> sharedResources = new HashSet<>();
-
- if (MapUtils.isEmpty(outputsMap)) {
- return null;
- }
-
- for (Map.Entry<String, Output> outputEntry : outputsMap.entrySet()) {
- Output output = outputEntry.getValue();
- Object valueObject = output.getValue();
- if (valueObject instanceof Map) {
- Map<String, Object> outputValueMap = (Map<String, Object>) valueObject;
- Object getResourceValue =
- outputValueMap.get(ResourceReferenceFunctions.GET_RESOURCE.getFunction());
- if (Objects.nonNull(getResourceValue)) {
- if (getResourceValue instanceof String) {
- String resourceName =
- (String) outputValueMap.get(ResourceReferenceFunctions.GET_RESOURCE.getFunction());
- sharedResources.add(resourceName);
- } else {
- globalContext.addMessage(filename, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_GET_RESOURCE_SYNTAX.getErrorMessage(),
- getResourceValue.toString()));
- }
- }
-
- }
- }
-
- return sharedResources;
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/YamlValidatorUtil.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/YamlValidatorUtil.java
new file mode 100644
index 0000000000..8eb8d50774
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/util/YamlValidatorUtil.java
@@ -0,0 +1,52 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.validation.impl.util;
+
+import org.openecomp.sdc.common.errors.Messages;
+import org.yaml.snakeyaml.error.MarkedYAMLException;
+import org.yaml.snakeyaml.parser.ParserException;
+
+/**
+ * @author Avrahamg
+ * @since December 08, 2016
+ */
+public class YamlValidatorUtil {
+ public static String getParserExceptionReason(Exception exception) {
+ String reason = null;
+
+ if (exception.getCause() instanceof MarkedYAMLException) {
+ if (exception.getCause() != null) {
+ if (exception.getCause().getCause() instanceof ParserException) {
+ reason = exception.getCause().getCause().getMessage();
+ } else {
+ reason = exception.getCause().getMessage();
+ }
+ }
+ } else if (exception instanceof MarkedYAMLException) {
+
+ reason = exception.getMessage();
+
+ } else {
+ reason = Messages.GENERAL_YAML_PARSER_ERROR.getErrorMessage();
+ }
+ return reason;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ContrailValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ContrailValidator.java
new file mode 100644
index 0000000000..3e7d83457f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ContrailValidator.java
@@ -0,0 +1,201 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.tos.ContrailResourcesMappingTo;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.io.InputStream;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+
+public class ContrailValidator implements Validator {
+ public static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(ContrailValidator.class);
+
+ @Override
+ public void validate(GlobalValidationContext globalContext) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ManifestContent manifestContent;
+ try {
+ manifestContent = ValidationUtil.checkValidationPreCondition(globalContext);
+ } catch (Exception exception) {
+ return;
+ }
+ Map<String, FileData.Type> fileTypeMap = ManifestUtil.getFileTypeMap(manifestContent);
+ ContrailResourcesMappingTo contrailResourcesMappingTo = new ContrailResourcesMappingTo();
+
+ globalContext.getFiles().stream()
+ .filter(fileName -> FileData.isHeatFile(fileTypeMap.get(fileName)))
+ .forEach(fileName -> validate(fileName, fileTypeMap,
+ contrailResourcesMappingTo, globalContext));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+
+ private void validate(String fileName, Map<String, FileData.Type> fileTypeMap,
+ ContrailResourcesMappingTo contrailResourcesMappingTo,
+ GlobalValidationContext globalContext) {
+ handleContrailV1AndContrailV2ResourceMerging(fileName, fileTypeMap, contrailResourcesMappingTo,
+ globalContext);
+ validateNoContrailResourceTypeIsInUse(fileName, globalContext);
+ }
+
+
+ private void handleContrailV1AndContrailV2ResourceMerging(String fileName,
+ Map<String, FileData.Type> fileTypeMap,
+ ContrailResourcesMappingTo contrailResourcesMappingTo,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Optional<ContrailResourcesMappingTo> fileContrailResourcesMappingTo =
+ collectHeatFileContrailResources(globalContext, fileName);
+ if (fileContrailResourcesMappingTo.isPresent()) {
+ contrailResourcesMappingTo.addAll(fileContrailResourcesMappingTo.get());
+ }
+ addContrailMergeValidationMessageToGlobalContext(globalContext, contrailResourcesMappingTo);
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void addContrailMergeValidationMessageToGlobalContext(
+ GlobalValidationContext globalContext,
+ ContrailResourcesMappingTo contrailResourcesMappingTo) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (!MapUtils.isEmpty(contrailResourcesMappingTo.getContrailV1Resources())
+ && !MapUtils.isEmpty(contrailResourcesMappingTo.getContrailV2Resources())) {
+ globalContext.addMessage(
+ contrailResourcesMappingTo.getContrailV1Resources().keySet().iterator().next(),
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.MERGE_OF_CONTRAIL2_AND_CONTRAIL3_RESOURCES.getErrorMessage(),
+ contrailResourcesMappingTo.fetchContrailV1Resources(),
+ contrailResourcesMappingTo.fetchContrailV2Resources()),
+ LoggerTragetServiceName.MERGE_OF_CONTRAIL_2_AND_3,
+ LoggerErrorDescription.MERGE_CONTRAIL_2_AND_3);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private Optional<ContrailResourcesMappingTo> collectHeatFileContrailResources(
+ GlobalValidationContext globalContext, String fileName) {
+ Optional<InputStream> fileContent = globalContext.getFileContent(fileName);
+ if (!fileContent.isPresent()) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_HEAT_FORMAT_REASON.getErrorMessage(),
+ "The file '" + fileName + "' has no content"),
+ LoggerTragetServiceName.VALIDATE_HEAT_FORMAT, LoggerErrorDescription.INVALID_HEAT_FORMAT);
+ return Optional.empty();
+ }
+ return fetchContrailResourcesMapping(fileName, fileContent.get(), globalContext);
+ }
+
+ private Optional<ContrailResourcesMappingTo> fetchContrailResourcesMapping(String fileName,
+ InputStream fileContent,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ ContrailResourcesMappingTo contrailResourcesMappingTo = new ContrailResourcesMappingTo();
+ HeatOrchestrationTemplate heatOrchestrationTemplate;
+ try {
+ heatOrchestrationTemplate =
+ new YamlUtil().yamlToObject(fileContent, HeatOrchestrationTemplate.class);
+ } catch (Exception ignored) {
+ // the HeatValidator should handle file that is failing to parse
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return Optional.empty();
+ }
+ if( !MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
+ heatOrchestrationTemplate.getResources().entrySet()
+ .forEach(entry -> {
+ if (entry.getValue().getType().startsWith(HeatConstants.CONTRAIL_RESOURCE_PREFIX)) {
+ contrailResourcesMappingTo.addContrailV1Resource(fileName, entry.getKey());
+ } else if (entry.getValue().getType()
+ .startsWith(HeatConstants.CONTRAIL_V2_RESOURCE_PREFIX)) {
+ contrailResourcesMappingTo.addContrailV2Resource(fileName, entry.getKey());
+ }
+ });
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return Optional.of(contrailResourcesMappingTo);
+ }
+
+
+ private void validateNoContrailResourceTypeIsInUse(String fileName,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ HeatOrchestrationTemplate heatOrchestrationTemplate =
+ ValidationUtil.checkHeatOrchestrationPreCondition(fileName, globalContext);
+
+ if (heatOrchestrationTemplate == null) {
+ return;
+ }
+
+ Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
+
+ if( ! MapUtils.isEmpty(resourcesMap)) {
+ for (Map.Entry<String, Resource> resourceEntry : resourcesMap.entrySet()) {
+ String type = resourceEntry.getValue().getType();
+ if (Objects.nonNull(type) && type.startsWith(HeatConstants.CONTRAIL_RESOURCE_PREFIX)) {
+ globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.CONTRAIL_2_IN_USE.getErrorMessage(),
+ resourceEntry.getKey()), LoggerTragetServiceName.CONTRAIL_2_IN_USE,
+ LoggerErrorDescription.CONTRAIL_2_IN_USE);
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/EcompGuideLineValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/EcompGuideLineValidator.java
deleted file mode 100644
index 5be56e4b38..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/EcompGuideLineValidator.java
+++ /dev/null
@@ -1,784 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.validation.impl.validators;
-
-import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.collections4.MapUtils;
-import org.openecomp.core.utilities.CommonMethods;
-import org.openecomp.core.utilities.yaml.YamlUtil;
-import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.core.validation.interfaces.Validator;
-import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.sdc.common.utils.AsdcCommon;
-import org.openecomp.sdc.datatypes.error.ErrorLevel;
-import org.openecomp.sdc.datatypes.model.heat.ForbiddenHeatResourceTypes;
-import org.openecomp.sdc.heat.datatypes.DefinedHeatParameterTypes;
-import org.openecomp.sdc.heat.datatypes.manifest.FileData;
-import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
-import org.openecomp.sdc.heat.datatypes.model.Environment;
-import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
-import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
-import org.openecomp.sdc.heat.datatypes.model.Resource;
-import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
-import org.openecomp.sdc.heat.services.HeatStructureUtil;
-import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
-import java.util.TreeMap;
-import java.util.regex.Pattern;
-
-public class EcompGuideLineValidator extends HeatValidator implements Validator {
- @Override
- public void validate(GlobalValidationContext globalContext) {
-
- ManifestContent manifestContent;
- try {
- manifestContent = checkValidationPreCondition(globalContext);
- } catch (Exception exception) {
- return;
- }
-
- //global validations
- Set<String> baseFiles = validateManifest(manifestContent, globalContext);
-
- Map<String, FileData.Type> fileTypeMap = ManifestUtil.getFileTypeMap(manifestContent);
- Map<String, FileData> fileEnvMap = ManifestUtil.getFileAndItsEnv(manifestContent);
- globalContext
- .getFiles()
- .stream()
- .filter(fileName -> FileData
- .isHeatFile(fileTypeMap.get(fileName)))
- .forEach(fileName -> validate(fileName,
- fileEnvMap.get(fileName) != null ? fileEnvMap.get(fileName).getFile() : null,
- fileTypeMap, baseFiles, globalContext));
- }
-
- private void validate(String fileName, String envFileName, Map<String, FileData.Type> fileTypeMap,
- Set<String> baseFiles, GlobalValidationContext globalContext) {
- HeatOrchestrationTemplate heatOrchestrationTemplate =
- checkHeatOrchestrationPreCondition(fileName, globalContext);
- if (heatOrchestrationTemplate == null) {
- return;
- }
-
- validateBaseFile(fileName, baseFiles, heatOrchestrationTemplate, globalContext);
- validateHeatVolumeFile(fileName, fileTypeMap, heatOrchestrationTemplate, globalContext);
- validateHeatNamingConvention(fileName, heatOrchestrationTemplate, globalContext);
- validateHeatNovaResource(fileName, envFileName, heatOrchestrationTemplate, globalContext);
- validateResourceTypeIsForbidden(fileName, heatOrchestrationTemplate, globalContext);
- validateFixedIpsNamingConvention(fileName, heatOrchestrationTemplate, globalContext);
- }
-
- private void validateHeatNovaResource(String fileName, String envFileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- Map<String, String> uniqueResourcePortNetworkRole = new HashMap<>();
- //if no resources exist return
- if (heatOrchestrationTemplate.getResources() == null
- || heatOrchestrationTemplate.getResources().size() == 0) {
- return;
- }
-
- heatOrchestrationTemplate
- .getResources()
- .entrySet()
- .stream()
- .filter(entry -> entry.getValue().getType()
- .equals(HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource()))
- .forEach(entry -> validateNovaServerResourceType(entry.getKey(), fileName, envFileName,
- entry, uniqueResourcePortNetworkRole, heatOrchestrationTemplate, globalContext));
- }
-
- private void validateNovaServerResourceType(String resourceId, String fileName,
- String envFileName,
- Map.Entry<String, Resource> resourceEntry,
- Map<String, String> uniqueResourcePortNetworkRole,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalValidationContext) {
- validateNovaServerResourceMetaData(fileName, resourceId,
- heatOrchestrationTemplate.getResources().get(resourceId), globalValidationContext);
- validateNovaServerResourceNetworkUniqueRole(fileName, resourceId, heatOrchestrationTemplate,
- globalValidationContext);
- validateNovaServerNamingConvention(fileName, envFileName, resourceEntry,
- globalValidationContext);
- validateNovaServerAvailabilityZoneName(fileName, resourceEntry, globalValidationContext);
- validateImageAndFlavorFromNovaServer(fileName, resourceEntry, globalValidationContext);
- }
-
- @SuppressWarnings("unchecked")
- private void validateNovaServerResourceMetaData(String fileName, String resourceId,
- Resource resource,
- GlobalValidationContext globalValidationContext) {
- Map<String, Object> novaServerProp = resource.getProperties();
- Object novaServerPropMetadata;
- if (MapUtils.isNotEmpty(novaServerProp)) {
- novaServerPropMetadata = novaServerProp.get("metadata");
- if (novaServerPropMetadata == null) {
- globalValidationContext.addMessage(
- fileName,
- ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_NOVA_SERVER_METADATA.getErrorMessage(),
- resourceId));
- } else if (novaServerPropMetadata instanceof Map) {
- TreeMap<String, Object> propertyMap = new TreeMap(new Comparator<String>() {
-
- @Override
- public int compare(String o1, String o2) {
- return o1.compareToIgnoreCase(o2);
- }
-
- @Override
- public boolean equals(Object obj) {
- return false;
- }
- });
- propertyMap.putAll((Map) novaServerPropMetadata);
- if (!propertyMap.containsKey("vf_module_id")) {
- globalValidationContext.addMessage(fileName, ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder.getErrorWithParameters(
- Messages.MISSING_NOVA_SERVER_VF_MODULE_ID.getErrorMessage(), resourceId));
- }
- if (!propertyMap.containsKey("vnf_id")) {
- globalValidationContext.addMessage(fileName, ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_NOVA_SERVER_VNF_ID.getErrorMessage(),
- resourceId));
- }
- }
- }
- }
-
- private void validateNovaServerResourceNetworkUniqueRole(String fileName, String resourceId,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- GlobalValidationContext
- globalValidationContext) {
-
- String network;
- String role;
- Map<String, String> uniqueResourcePortNetworkRole = new HashMap<>();
-
- Object propertyNetworkValue =
- heatOrchestrationTemplate.getResources().get(resourceId).getProperties().get("networks");
- if (propertyNetworkValue != null && propertyNetworkValue instanceof List) {
- List<String> portResourceIdList =
- getNovaNetworkPortResourceList(fileName, (List) propertyNetworkValue,
- globalValidationContext);
- for (String portResourceId : portResourceIdList) {
- Resource portResource = heatOrchestrationTemplate.getResources().get(portResourceId);
- if (portResource != null && portResource.getType()
- .equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource())) {
- Map portNetwork =
- getPortNetwork(fileName, resourceId, portResource, globalValidationContext);
- if (Objects.nonNull(portNetwork)) {
- network = (String) portNetwork.get("get_param");
- if (Objects.nonNull(network)) {
- role = getNetworkRole(network);
- if (role != null && uniqueResourcePortNetworkRole.containsKey(role)) {
- globalValidationContext.addMessage(fileName, ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder.getErrorWithParameters(
- Messages.RESOURCE_CONNECTED_TO_TWO_EXTERNAL_NETWORKS_WITH_SAME_ROLE
- .getErrorMessage(), resourceId, role));
- } else {
- uniqueResourcePortNetworkRole.put(role, portResourceId);
- }
- }
- }
- }
- }
- }
- }
-
-
- private Map getPortNetwork(String fileName, String resourceId, Resource portResource,
- GlobalValidationContext globalValidationContext) {
- Object portNetwork = portResource.getProperties().get("network_id");
- if (portNetwork == null) {
- portNetwork = portResource.getProperties().get("network");
- }
- if (!(portNetwork instanceof Map)) {
- globalValidationContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
- "network or network_id", resourceId));
- return null;
- }
- return (Map) portNetwork;
- }
-
- private List<String> getNovaNetworkPortResourceList(String filename, List propertyNetworkValue,
- GlobalValidationContext globalContext) {
- List<String> portResourceIdList = new ArrayList<>();
- for (Object propValue : propertyNetworkValue) {
- Object portPropValue = ((Map) propValue).get("port");
- Collection<String> portResourceIds = HeatStructureUtil
- .getReferencedValuesByFunctionName(filename, "get_resource", portPropValue,
- globalContext);
- if (portResourceIds != null) {
- portResourceIdList.addAll(portResourceIds);
- }
- }
-
- return portResourceIdList;
- }
-
- private String getNetworkRole(String network) {
- if (network == null) {
- return null;
- }
- if (network.contains("_net_id")) {
- return network.substring(0, network.indexOf("_net_id"));
- } else if (network.contains("net_name")) {
- return network.substring(0, network.indexOf("_net_name"));
- } else if (network.contains("net_fqdn")) {
- return network.substring(0, network.indexOf("_net_fqdn"));
- }
- return null;
- }
-
- private void validateHeatNamingConvention(String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- validatePortNetworkNamingConvention(fileName, heatOrchestrationTemplate, globalContext);
- }
-
- private void validatePortNetworkNamingConvention(String fileName,
- HeatOrchestrationTemplate
- heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- if (MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
- return;
- }
- String[] regexList = new String[]{".*_net_id", ".*_net_name", ".*_net_fqdn"};
-
- heatOrchestrationTemplate
- .getResources()
- .entrySet()
- .stream()
- .filter(entry -> entry.getValue().getType() != null && entry.getValue().getType()
- .equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource()))
- .forEach(entry -> entry.getValue()
- .getProperties()
- .entrySet()
- .stream()
- .filter(propertyEntry -> propertyEntry != null
- && (propertyEntry.getKey().toLowerCase().equals("network".toLowerCase())
- ||
- propertyEntry.getKey().equals("network_id")))
- .forEach(propertyEntry -> validateParamNamingConvention(fileName, entry.getKey(),
- propertyEntry.getValue(), regexList,
- Messages.NETWORK_PARAM_NOT_ALIGNED_WITH_GUIDE_LINE, globalContext)));
- }
-
- private void validateParamNamingConvention(String fileName, String resourceId,
- Object propertyValue, String[] regexList,
- Messages message,
- GlobalValidationContext globalContext) {
- Object paramName;
- if (propertyValue instanceof Map) {
- paramName = ((Map) propertyValue).get("get_param");
- if (paramName instanceof String) {
- if (!evalPattern((String) paramName, regexList)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(message.getErrorMessage(), (String) paramName, resourceId));
- }
- }
- } else {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
- "network or network_id", resourceId));
- }
- }
-
- private boolean evalPattern(Object paramVal, String[] regexList) {
- String value = "";
- if (paramVal instanceof String) {
- value = ((String) paramVal);
- }
- if (paramVal instanceof Integer) {
- value = paramVal.toString();
- }
- return evalPattern(value, regexList);
- }
-
- private boolean evalPattern(String paramVal, String[] regexList) {
-
- for (String regex : regexList) {
- if (Pattern.matches(regex, paramVal)) {
- return true;
- }
- }
-
- return false;
- }
-
-
- private void validateHeatVolumeFile(String fileName, Map<String, FileData.Type> fileTypeMap,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- //if not heat volume return
- if (!fileTypeMap.get(fileName).equals(FileData.Type.HEAT_VOL)) {
- return;
- }
-
- //if no resources exist return
- if (heatOrchestrationTemplate.getResources() == null
- || heatOrchestrationTemplate.getResources().size() == 0) {
- return;
- }
-
- Set<String> expectedExposedResources = new HashSet<>();
- Set<String> actualExposedResources = new HashSet<>();
- heatOrchestrationTemplate.getResources()
- .entrySet()
- .stream()
- .filter(entry -> entry.getValue().getType()
- .equals(HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource()))
- .forEach(entry -> expectedExposedResources.add(entry.getKey()));
-
- if (heatOrchestrationTemplate.getOutputs() != null) {
-
- heatOrchestrationTemplate.getOutputs().entrySet()
- .stream()
- .filter(entry -> isPropertyValueGetResource(fileName, entry.getValue().getValue(),
- globalContext))
- .forEach(entry -> actualExposedResources.add(
- getResourceIdFromPropertyValue(fileName, entry.getValue().getValue(),
- globalContext)));
- }
-
- actualExposedResources.stream().forEach(expectedExposedResources::remove);
-
- if (expectedExposedResources.size() > 0) {
- expectedExposedResources
- .stream()
- .forEach(name -> globalContext.addMessage(fileName, ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.VOLUME_HEAT_NOT_EXPOSED.getErrorMessage(),
- name)));
- }
- }
-
- private void validateBaseFile(String fileName, Set<String> baseFiles,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
-
- //if not base return
- if (baseFiles == null || !baseFiles.contains(fileName)) {
- return;
- }
-
- //if no resources exist return
- if (heatOrchestrationTemplate.getResources() == null
- || heatOrchestrationTemplate.getResources().size() == 0) {
- return;
- }
-
- Set<String> expectedExposedResources = new HashSet<>();
- Set<String> actualExposedResources = new HashSet<>();
- heatOrchestrationTemplate.getResources()
- .entrySet()
- .stream()
- .filter(entry -> isExpectedToBeExposed(entry.getValue().getType()))
- .forEach(entry -> expectedExposedResources.add(entry.getKey()));
-
- if (heatOrchestrationTemplate.getOutputs() != null) {
-
- heatOrchestrationTemplate.getOutputs().entrySet()
- .stream()
- .filter(entry -> isPropertyValueGetResource(fileName, entry.getValue().getValue(),
- globalContext))
- .forEach(entry -> actualExposedResources.add(
- getResourceIdFromPropertyValue(fileName, entry.getValue().getValue(),
- globalContext)));
- }
- actualExposedResources.stream().forEach(expectedExposedResources::remove);
-
- if (expectedExposedResources.size() > 0) {
- expectedExposedResources
- .stream()
- .forEach(name -> globalContext.addMessage(fileName, ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.RESOURCE_NOT_DEFINED_IN_OUTPUT.getErrorMessage(),
- name)));
- }
- }
-
- private void validateResourceTypeIsForbidden(String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- if (MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
- return;
- }
-
- heatOrchestrationTemplate.getResources()
- .entrySet()
- .stream()
- .filter(entry ->
- ForbiddenHeatResourceTypes.findByForbiddenHeatResource(entry.getValue().getType())
- != null)
- .filter(entry -> ForbiddenHeatResourceTypes
- .findByForbiddenHeatResource(entry.getValue().getType())
- .equals(ForbiddenHeatResourceTypes.HEAT_FLOATING_IP_TYPE))
- .forEach(entry -> globalContext.addMessage(fileName, ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.FLOATING_IP_NOT_IN_USE.getErrorMessage(),
- entry.getKey())));
- }
-
-
- private void validateFixedIpsNamingConvention(String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
- if (MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
- return;
- }
-
- heatOrchestrationTemplate.getResources()
- .entrySet()
- .stream()
- .filter(entry -> HeatResourcesTypes.findByHeatResource(entry.getValue().getType()) != null)
- .filter(entry -> HeatResourcesTypes.findByHeatResource(entry.getValue().getType())
- .equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE))
- .forEach(entry -> checkNeutronPortFixedIpsName(fileName, entry, globalContext));
- }
-
- private void validateImageAndFlavorFromNovaServer(String fileName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
- return;
- }
-
- String[] imageOrFlavorAsParameters = new String[]{"image", "flavor"};
- Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
-
- for (String imageOrFlavor : imageOrFlavorAsParameters) {
- checkImageAndFlavorNames(fileName, imageOrFlavor, resourceEntry.getKey(), propertiesMap,
- globalContext);
- }
- }
-
- private void checkImageAndFlavorNames(String fileName, String imageOrFlavor, String resourceId,
- Map<String, Object> propertiesMap,
- GlobalValidationContext globalContext) {
- Object nameValue =
- propertiesMap.get(imageOrFlavor) == null ? null : propertiesMap.get(imageOrFlavor);
- String[] regexList = new String[]{".*_" + imageOrFlavor + "_name"};
-
- if (Objects.nonNull(nameValue)) {
- if (nameValue instanceof Map) {
- String imageOrFlavorName = getWantedNameFromPropertyValueGetParam(nameValue);
- if (Objects.nonNull(imageOrFlavorName)) {
- if (!evalPattern(imageOrFlavorName, regexList)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.WRONG_IMAGE_OR_FLAVOR_NAME_NOVA_SERVER.getErrorMessage(),
- imageOrFlavor, resourceId));
- }
- }
- } else {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(), imageOrFlavor,
- resourceId));
- }
- }
- }
-
-
- @SuppressWarnings("unchecked")
- private void checkNeutronPortFixedIpsName(String fileName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- String[] regexList =
- new String[]{"[^_]+_[^_]+_ips", "[^_]+_[^_]+_v6_ips", "[^_]+_[^_]+_ip_(\\d+)",
- "[^_]+_[^_]+_v6_ip_(\\d+)"};
-
- if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
- return;
- }
-
- Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
- Object fixedIps = propertiesMap.get("fixed_ips");
- if (Objects.nonNull(fixedIps) && fixedIps instanceof List) {
- List<Object> fixedIpsList = (List<Object>) fixedIps;
- for (Object fixedIpsObject : fixedIpsList) {
- Map.Entry<String, Object> fixedIpsEntry =
- ((Map<String, Object>) fixedIpsObject).entrySet().iterator().next();
- if (Objects.nonNull(fixedIpsEntry)) {
- if (fixedIpsEntry.getValue() instanceof Map) {
- String fixedIpsName = getWantedNameFromPropertyValueGetParam(fixedIpsEntry.getValue());
- if (Objects.nonNull(fixedIpsName)) {
- if (!evalPattern(fixedIpsName, regexList)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.FIXED_IPS_NOT_ALIGNED_WITH_GUIDE_LINES.getErrorMessage(),
- resourceEntry.getKey()));
- }
- }
- } else {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(), "fixed_ips",
- resourceEntry.getKey()));
- }
- }
- }
- }
- }
-
-
- private void validateNovaServerNamingConvention(String fileName, String envFileName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
- return;
- }
-
- checkIfNovaNameByGuidelines(fileName, envFileName, resourceEntry, globalContext);
- }
-
- private void checkIfNovaNameByGuidelines(String fileName, String envFileName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
- return;
- }
-
- Object novaServerName = resourceEntry.getValue().getProperties().get("name");
- Map novaNameMap;
- String novaName;
- if (Objects.nonNull(novaServerName)) {
- if (novaServerName instanceof Map) {
- novaNameMap = (Map) novaServerName;
- Object novaNameGetParam =
- novaNameMap.get(ResourceReferenceFunctions.GET_PARAM.getFunction()) == null ? null
- : novaNameMap.get(ResourceReferenceFunctions.GET_PARAM.getFunction());
- if (Objects.nonNull(novaNameGetParam)) {
- checkNovaNameGetParamValueMap(fileName, novaNameGetParam, resourceEntry, globalContext);
- novaName = novaNameGetParam instanceof List ? (String) ((List) novaNameGetParam).get(0)
- : (String) novaNameGetParam;
- checkIfNovaNameParameterInEnvIsStringOrList(fileName, envFileName, resourceEntry,
- novaName, globalContext);
- }
- } else {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
- "nova server name", resourceEntry.getKey()));
- }
- }
-
- }
-
- private void checkIfNovaNameParameterInEnvIsStringOrList(String fileName, String envFileName,
- Map.Entry<String, Resource>
- resourceEntry,
- String novaServerName,
- GlobalValidationContext globalContext) {
- if (Objects.nonNull(envFileName)) {
- Environment environment = validateEnvContent(envFileName, globalContext);
-
- if (environment != null && MapUtils.isNotEmpty(environment.getParameters())) {
- Object novaServerNameEnvValue =
- environment.getParameters().containsKey(novaServerName) ? environment.getParameters()
- .get(novaServerName) : null;
- if (Objects.nonNull(novaServerNameEnvValue)) {
- if (!DefinedHeatParameterTypes
- .isNovaServerEnvValueIsFromRightType(novaServerNameEnvValue)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.NOVA_SERVER_NAME_NOT_ALIGNED_WITH_GUIDE_LINES.getErrorMessage(),
- resourceEntry.getKey()));
- }
- }
- }
- }
- }
-
-
- private void validateNovaServerAvailabilityZoneName(String fileName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- String[] regexList = new String[]{"availability_zone_(\\d+)"};
-
- if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
- return;
- }
-
- Object availabilityZoneMap =
- resourceEntry.getValue().getProperties().containsKey("availability_zone") ? resourceEntry
- .getValue().getProperties().get("availability_zone") : null;
-
- if (Objects.nonNull(availabilityZoneMap)) {
- if (availabilityZoneMap instanceof Map) {
- String availabilityZoneName = getWantedNameFromPropertyValueGetParam(availabilityZoneMap);
-
- if (availabilityZoneName != null) {
- if (!evalPattern(availabilityZoneName, regexList)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.AVAILABILITY_ZONE_NOT_ALIGNED_WITH_GUIDE_LINES.getErrorMessage(),
- resourceEntry.getKey()));
- }
- }
- } else {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
- "availability_zone", resourceEntry.getKey()));
- }
- }
-
- }
-
- @SuppressWarnings("unchecked")
- private void checkNovaNameGetParamValueMap(String fileName, Object getParamValue,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- if (getParamValue instanceof List) {
- List<Object> getParamNameList = (List) getParamValue;
- String[] regexName = new String[]{".*_names"};
- isNovaNameAsListLegal(fileName, getParamNameList, regexName, resourceEntry, globalContext);
- } else if (getParamValue instanceof String) {
- String[] regexName = new String[]{".*_name_(\\d+)"};
- isNovaNameAsStringLegal(fileName, (String) getParamValue, regexName, resourceEntry,
- globalContext);
- }
-
- }
-
-
- private void isNovaNameAsListLegal(String fileName, List<Object> getParamNameList,
- String[] regexName, Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
-
- if (getParamNameList.size() != 2 || !evalPattern(getParamNameList.get(0), regexName)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.NOVA_SERVER_NAME_NOT_ALIGNED_WITH_GUIDE_LINES.getErrorMessage(),
- resourceEntry.getKey()));
- }
- }
-
- private boolean isNovaNameAsStringLegal(String fileName, String novaName, String[] regexName,
- Map.Entry<String, Resource> resourceEntry,
- GlobalValidationContext globalContext) {
- if (!evalPattern(novaName, regexName)) {
- globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.NOVA_SERVER_NAME_NOT_ALIGNED_WITH_GUIDE_LINES.getErrorMessage(),
- resourceEntry.getKey()));
- return false;
- }
- return true;
- }
-
- private String getWantedNameFromPropertyValueGetParam(Object value) {
- Set<String> paramName = HeatStructureUtil
- .getReferencedValuesByFunctionName(null, ResourceReferenceFunctions.GET_PARAM.getFunction(),
- value, null);
- if (paramName != null && CollectionUtils.isNotEmpty(paramName)) {
- return (String) paramName.toArray()[0];
- }
- return null;
- }
-
- private String getResourceIdFromPropertyValue(String filename, Object value,
- GlobalValidationContext globalContext) {
- Set<String> referenceValues = HeatStructureUtil.getReferencedValuesByFunctionName(filename,
- ResourceReferenceFunctions.GET_RESOURCE.getFunction(), value, globalContext);
- if (referenceValues != null && CollectionUtils.isNotEmpty(referenceValues)) {
- return (String) referenceValues.toArray()[0];
- }
- return null;
- }
-
- private boolean isPropertyValueGetResource(String filename, Object value,
- GlobalValidationContext globalContext) {
- Set<String> referenceValues = HeatStructureUtil.getReferencedValuesByFunctionName(filename,
- ResourceReferenceFunctions.GET_RESOURCE.getFunction(), value, globalContext);
- return referenceValues != null && (referenceValues.size() > 0);
- }
-
- private boolean isExpectedToBeExposed(String type) {
- return HeatResourcesTypes.isResourceExpectedToBeExposed(type);
- }
-
- private Set<String> validateManifest(ManifestContent manifestContent,
- GlobalValidationContext globalContext) {
- Set<String> baseFiles = ManifestUtil.getBaseFiles(manifestContent);
- if (baseFiles == null || baseFiles.size() == 0) {
- globalContext.addMessage(
- AsdcCommon.MANIFEST_NAME,
- ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MISSIN_BASE_HEAT_FILE.getErrorMessage()));
- } else if (baseFiles.size() > 1) {
- String baseFileList = getElementListAsString(baseFiles);
- globalContext.addMessage(
- AsdcCommon.MANIFEST_NAME,
- ErrorLevel.WARNING,
- ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.MULTI_BASE_HEAT_FILE.getErrorMessage(),
- baseFileList));
- }
- return baseFiles;
- }
-
- private String getElementListAsString(Set<String> elementCollection) {
-
- return "[" + CommonMethods.collectionToCommaSeparatedString(elementCollection) + "]";
- }
-
-
- private Environment validateEnvContent(String envFileName,
- GlobalValidationContext globalContext) {
- Environment envContent;
- try {
- envContent =
- new YamlUtil().yamlToObject(globalContext.getFileContent(envFileName), Environment.class);
- } catch (Exception exception) {
- return null;
- }
- return envContent;
- }
-
- private HeatOrchestrationTemplate checkHeatOrchestrationPreCondition(String fileName,
- GlobalValidationContext
- globalContext) {
- HeatOrchestrationTemplate heatOrchestrationTemplate;
- try {
- heatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(globalContext.getFileContent(fileName), HeatOrchestrationTemplate.class);
-
- } catch (Exception exception) {
- return null;
- }
- return heatOrchestrationTemplate;
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidator.java
new file mode 100644
index 0000000000..2531150eab
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidator.java
@@ -0,0 +1,125 @@
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+
+/**
+ * Created by TALIO on 2/15/2017.
+ */
+public class ForbiddenResourceGuideLineValidator implements Validator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private static Set<String> forbiddenResources = new HashSet<>();
+
+ @Override
+ public void init(Map<String, Object> properties) {
+ Map<String, Map<String, Object>> forbiddenResourcesMap =
+ (Map<String, Map<String, Object>>) properties.get("forbiddenResourceTypes");
+
+ forbiddenResourcesMap.entrySet().stream()
+ .filter(entry -> isResourceEnabled(entry.getValue().get("enable")))
+ .forEach(entry -> forbiddenResources.add(entry.getKey()));
+
+
+
+
+ }
+
+ private boolean isResourceEnabled(Object enableValue){
+ if(Objects.isNull(enableValue)){
+ return true;
+ }
+
+ if(enableValue instanceof Boolean){
+ return (Boolean)enableValue;
+ }
+
+ return Boolean.valueOf((String) enableValue);
+ }
+
+
+ @Override
+ public void validate(GlobalValidationContext globalContext) {
+ ManifestContent manifestContent;
+ try {
+ manifestContent = ValidationUtil.checkValidationPreCondition(globalContext);
+ } catch (Exception exception) {
+ return;
+ }
+
+ Map<String, FileData.Type> fileTypeMap = ManifestUtil.getFileTypeMap(manifestContent);
+
+ globalContext.getFiles().stream()
+ .filter(fileName -> FileData
+ .isHeatFile(fileTypeMap.get(fileName)))
+ .forEach(fileName -> validate(fileName, globalContext));
+ }
+
+ private void validate(String fileName, GlobalValidationContext globalContext) {
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate = ValidationUtil.checkHeatOrchestrationPreCondition(fileName, globalContext);
+ if (heatOrchestrationTemplate == null) {
+ return;
+ }
+
+ validateResourceTypeIsForbidden(fileName, heatOrchestrationTemplate, globalContext);
+ }
+
+ private void validateResourceTypeIsForbidden(String fileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
+ if (MapUtils.isEmpty(resourcesMap)) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ for (Map.Entry<String, Resource> resourceEntry : resourcesMap.entrySet()) {
+ String resourceType = resourceEntry.getValue().getType();
+ if (Objects.isNull(resourceType)) {
+ globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_RESOURCE_TYPE.getErrorMessage(), "null",
+ resourceEntry.getKey()), LoggerTragetServiceName.VALIDATE_RESOURCE_TYPE,
+ LoggerErrorDescription.INVALID_RESOURCE_TYPE);
+ } else {
+ if(isResourceForbidden(resourceType)){
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.FORBIDDEN_RESOURCE_IN_USE.getErrorMessage(),
+ resourceType,
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_FORBIDDEN_RESOURCE,
+ LoggerErrorDescription.FLOATING_IP_IN_USE);
+ }
+ }
+ }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private boolean isResourceForbidden(String resourceType){
+ return forbiddenResources.contains(resourceType);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidator.java
new file mode 100644
index 0000000000..2712dab11c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatResourceValidator.java
@@ -0,0 +1,341 @@
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Output;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.base.ResourceBaseValidator;
+import org.openecomp.sdc.validation.type.ConfigConstants;
+import org.openecomp.sdc.validation.type.HeatResourceValidationContext;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+
+public class HeatResourceValidator extends ResourceBaseValidator {
+ public static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private static Logger logger = (Logger) LoggerFactory.getLogger(ResourceBaseValidator.class);
+
+ @Override
+ public void init(Map<String, Object> properties) {
+ super.init((Map<String, Object>) properties.get(ConfigConstants.Resource_Base_Validator));
+ }
+
+ @Override
+ public ValidationContext createValidationContext(String fileName,
+ String envFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+ ManifestContent manifestContent = new ManifestContent();
+ try {
+ manifestContent = ValidationUtil.checkValidationPreCondition(globalContext);
+ } catch (Exception exception) {
+
+ }
+ Set<String> baseFiles = ManifestUtil.getBaseFiles(manifestContent);
+ String baseFileName = CollectionUtils.isEmpty(baseFiles) ? null : baseFiles.iterator().next();
+ HeatOrchestrationTemplate baseHot =
+ ValidationUtil.checkHeatOrchestrationPreCondition(baseFileName, globalContext);
+ Set<String> securityGroupsNamesFromBaseFileOutputs = baseFileName == null ? new HashSet<>()
+ : checkForBaseFilePortsExistenceAndReturnSecurityGroupNamesFromOutputsIfNot
+ (baseFileName, baseHot, globalContext);
+
+ Map<String, Resource> resourcesMap =
+ heatOrchestrationTemplate.getResources() == null ? new HashMap<>()
+ : heatOrchestrationTemplate.getResources();
+
+ Map<String, Output> outputMap = heatOrchestrationTemplate.getOutputs() == null ? new HashMap<>()
+ : heatOrchestrationTemplate.getOutputs();
+
+ Map<String, Map<String, Map<String, List<String>>>>
+ typeToPointingResourcesMap = new HashMap<>();
+
+ initTypeRelationsMap
+ (fileName, resourcesMap, outputMap,
+ securityGroupsNamesFromBaseFileOutputs, typeToPointingResourcesMap, globalContext);
+
+ return new HeatResourceValidationContext
+ (heatOrchestrationTemplate, typeToPointingResourcesMap, envFileName);
+ }
+
+ private void initTypeRelationsMap(String fileName,
+ Map<String, Resource> resourceMap,
+ Map<String, Output> outputMap,
+ Set<String> securityGroupsNamesFromBaseFileOutputs,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap,
+ GlobalValidationContext globalContext) {
+
+ initTypeRelationsMapFromResourcesMap
+ (fileName, resourceMap, securityGroupsNamesFromBaseFileOutputs,
+ typeToPointingResourcesMap, globalContext);
+
+ initTypeRelationsMapFromOutputsMap
+ (fileName, resourceMap, outputMap,
+ typeToPointingResourcesMap, globalContext);
+ }
+
+ private void initTypeRelationsMapFromOutputsMap(String fileName,
+ Map<String, Resource> resourceMap,
+ Map<String, Output> outputMap,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap,
+ GlobalValidationContext globalContext) {
+ for (Map.Entry<String, Output> outputEntry : outputMap.entrySet()) {
+ Object outputValue = outputEntry.getValue().getValue();
+ Set<String> referencedResources = HeatStructureUtil
+ .getReferencedValuesByFunctionName(fileName,
+ ResourceReferenceFunctions.GET_RESOURCE.getFunction(), outputValue, globalContext);
+
+ updateRelationsMapWithOutputsReferences
+ (outputEntry, resourceMap, referencedResources, typeToPointingResourcesMap);
+
+
+ }
+ }
+
+ private void updateRelationsMapWithOutputsReferences(Map.Entry<String, Output> outputEntry,
+ Map<String, Resource> resourceMap,
+ Set<String> referencedResources,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap) {
+
+ for (String pointedResourceName : referencedResources) {
+ Resource pointedResource = resourceMap.get(pointedResourceName);
+
+ if (Objects.nonNull(pointedResource)) {
+ initCurrentResourceTypeInMap(pointedResourceName, pointedResource.getType(),
+ "output", typeToPointingResourcesMap);
+
+ typeToPointingResourcesMap
+ .get(pointedResource.getType()).get(pointedResourceName)
+ .get("output").add(outputEntry.getKey());
+ }
+ }
+ }
+
+ private void initTypeRelationsMapFromResourcesMap(String fileName,
+ Map<String, Resource> resourceMap,
+ Set<String> securityGroupsNamesFromBaseFileOutputs,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap,
+ GlobalValidationContext globalContext) {
+ for (Map.Entry<String, Resource> resourceEntry : resourceMap.entrySet()) {
+ Resource pointingResource = resourceEntry.getValue();
+ Map<String, Object> properties =
+ pointingResource.getProperties() == null ? new HashMap<>() : pointingResource.getProperties();
+
+ Set<String> referencedResourcesByGetResource =
+ getResourcesIdsPointedByCurrentResource(fileName, ResourceReferenceFunctions.GET_RESOURCE,
+ properties, globalContext);
+
+ Set<String> referencedResourcesByGetAttr =
+ handleGetAttrBetweenResources(properties);
+
+ referencedResourcesByGetResource.addAll(referencedResourcesByGetAttr);
+
+ updateRelationsMapWithCurrentResourceReferences
+ (resourceMap, resourceEntry, referencedResourcesByGetResource,
+ typeToPointingResourcesMap);
+ }
+ }
+
+ private void updateRelationsMapWithSecurityGroupsFromBaseFileOutput(String fileName,
+ Map<String, Resource> resourcesMap,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, Object> properties,
+ Set<String> securityGroupsNamesFromBaseFileOutputs,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap,
+ GlobalValidationContext globalContext) {
+
+ Set<String> candidateSecurityGroupUsedFromBaseFile = getResourcesIdsPointedByCurrentResource
+ (fileName, ResourceReferenceFunctions.GET_PARAM, properties, globalContext);
+ removeNonSecurityGroupNamesFromList
+ (candidateSecurityGroupUsedFromBaseFile, securityGroupsNamesFromBaseFileOutputs);
+
+ for (String usedSecurityGroupId : candidateSecurityGroupUsedFromBaseFile) {
+ updateMapWithRelationsBetweenResources
+ (usedSecurityGroupId,
+ HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE.getHeatResource(),
+ resourceEntry, typeToPointingResourcesMap);
+
+ }
+ }
+
+ private void removeNonSecurityGroupNamesFromList(
+ Set<String> candidateSecurityGroupUsedFromBaseFile,
+ Set<String> securityGroupsNamesFromBaseFileOutputs) {
+
+ Set<String> nonSecurityGroupNames = new HashSet<>();
+ for (String candidateSecurityGroup : candidateSecurityGroupUsedFromBaseFile) {
+ if (!securityGroupsNamesFromBaseFileOutputs.contains(candidateSecurityGroup)) {
+ nonSecurityGroupNames.add(candidateSecurityGroup);
+ }
+ }
+
+ candidateSecurityGroupUsedFromBaseFile.removeAll(nonSecurityGroupNames);
+ }
+
+ private void updateRelationsMapWithCurrentResourceReferences(Map<String, Resource> resourceMap,
+ Map.Entry<String, Resource> currentResourceEntry,
+ Set<String> referencedResourcesFromCurrentResource,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap) {
+
+ for (String pointedResourceName : referencedResourcesFromCurrentResource) {
+ Resource pointedResource = resourceMap.get(pointedResourceName);
+ if (Objects.nonNull(pointedResource)) {
+ String pointedResourceType = pointedResource.getType();
+
+ updateMapWithRelationsBetweenResources
+ (pointedResourceName, pointedResourceType,
+ currentResourceEntry, typeToPointingResourcesMap);
+ }
+ }
+ }
+
+ private void updateMapWithRelationsBetweenResources(String pointedResourceName,
+ String pointedResourceType,
+ Map.Entry<String, Resource> currentResourceEntry,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap) {
+
+ initCurrentResourceTypeInMap(pointedResourceName, pointedResourceType,
+ currentResourceEntry.getValue().getType(), typeToPointingResourcesMap);
+
+ typeToPointingResourcesMap.get(pointedResourceType).get(pointedResourceName).get
+ (currentResourceEntry.getValue().getType()).add(currentResourceEntry.getKey());
+ }
+
+ private void initCurrentResourceTypeInMap(String resourceName, String resourceType,
+ String pointingResourceType,
+ Map<String, Map<String, Map<String, List<String>>>> typeToPointingResourcesMap) {
+
+ typeToPointingResourcesMap.putIfAbsent(resourceType, new HashMap<>());
+ typeToPointingResourcesMap.get(resourceType).putIfAbsent(resourceName, new HashMap<>());
+ typeToPointingResourcesMap.get(resourceType).get(resourceName).putIfAbsent
+ (pointingResourceType, new ArrayList<>());
+ }
+
+ private Set<String> handleGetAttrBetweenResources(Map<String, Object> properties){
+ Set<String> referencedResourcesByGetAttr = new HashSet<>();
+ for(Map.Entry<String, Object> proprtyEntry : properties.entrySet()){
+ referencedResourcesByGetAttr.addAll(getGetAttrReferencesInCaseOfContrail(proprtyEntry
+ .getValue()));
+ }
+
+ return referencedResourcesByGetAttr;
+ }
+
+
+ private Set<String> getGetAttrReferencesInCaseOfContrail(Object propertyValue){
+ Object value;
+ Set<String> getAttrReferences = new HashSet<>();
+
+ if (propertyValue instanceof Map) {
+ if (((Map) propertyValue).containsKey("get_attr")) {
+ value = ((Map) propertyValue).get("get_attr");
+ if (value instanceof List) {
+ if (((List) value).size() == 2 && ((List) value).get(1).equals("fq_name")) {
+ if (((List) value).get(0) instanceof String) {
+ getAttrReferences.add((String) ((List) value).get(0));
+ return getAttrReferences;
+ } else {
+ logger.warn("invalid format of 'get_attr' function - " + propertyValue.toString());
+ }
+ }
+ }
+ }else {
+ Collection<Object> valCollection = ((Map) propertyValue).values();
+ for (Object entryValue : valCollection) {
+ getAttrReferences.addAll(getGetAttrReferencesInCaseOfContrail(entryValue));
+ }
+ }
+ } else if (propertyValue instanceof List) {
+ for (Object prop : (List) propertyValue) {
+ getAttrReferences.addAll(getGetAttrReferencesInCaseOfContrail(prop));
+ }
+ }
+
+ return getAttrReferences;
+ }
+
+
+ private Set<String> getResourcesIdsPointedByCurrentResource(String fileName,
+ ResourceReferenceFunctions function,
+ Map<String, Object> properties,
+ GlobalValidationContext globalContext) {
+
+ Set<String> referencedResources = new HashSet<>();
+ for (Map.Entry<String, Object> propertyEntry : properties.entrySet()) {
+ referencedResources
+ .addAll(HeatStructureUtil
+ .getReferencedValuesByFunctionName(fileName,
+ function.getFunction(),
+ propertyEntry.getValue(),
+ globalContext));
+ }
+
+ return referencedResources;
+ }
+
+ private Set<String> checkForBaseFilePortsExistenceAndReturnSecurityGroupNamesFromOutputsIfNot(
+ String baseFileName, HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+ Set<String> securityGroupsNamesFromOutputsMap = new HashSet<>();
+
+ if (heatOrchestrationTemplate != null) {
+ Map<String, Resource> resourceMap = heatOrchestrationTemplate.getResources();
+ if (!isPortResourceExistInBaseFile(resourceMap)) {
+ getSecurityGroupsReferencedResourcesFromOutputs(securityGroupsNamesFromOutputsMap,
+ heatOrchestrationTemplate.getOutputs(), resourceMap);
+ }
+ }
+ return securityGroupsNamesFromOutputsMap;
+ }
+
+ private boolean isPortResourceExistInBaseFile(Map<String, Resource> resourceMap) {
+ for (Map.Entry<String, Resource> resourceEntry : resourceMap.entrySet()) {
+ if (resourceEntry.getValue().getType()
+ .equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource())) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ private void getSecurityGroupsReferencedResourcesFromOutputs(
+ Set<String> securityGroupsNamesFromOutputsMap, Map<String, Output> outputMap,
+ Map<String, Resource> resourceMap) {
+
+ if (MapUtils.isNotEmpty(outputMap)) {
+ for (Map.Entry<String, Output> outputEntry : outputMap.entrySet()) {
+ Object outputValue = outputEntry.getValue().getValue();
+ if (Objects.nonNull(outputValue) && outputValue instanceof Map) {
+ String resourceName = (String) ((Map) outputValue)
+ .get(ResourceReferenceFunctions.GET_RESOURCE.getFunction());
+ if (Objects.nonNull(resourceName)) {
+ Resource resource = resourceMap.get(resourceName);
+ if (Objects.nonNull(resource) && resource.getType().equals(
+ HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE.getHeatResource())) {
+ securityGroupsNamesFromOutputsMap.add(outputEntry.getKey());
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatValidator.java
index c287394a54..ddc1bb49b9 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatValidator.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/HeatValidator.java
@@ -22,13 +22,10 @@ package org.openecomp.sdc.validation.impl.validators;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
-import org.openecomp.core.utilities.json.JsonUtil;
-import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.validation.Validator;
import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.core.validation.interfaces.Validator;
import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.sdc.common.utils.AsdcCommon;
+import org.openecomp.sdc.common.errors.Messages;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.DefinedHeatParameterTypes;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
@@ -43,12 +40,14 @@ import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
import org.openecomp.sdc.heat.services.HeatStructureUtil;
import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.validation.impl.util.HeatValidationService;
-import org.openecomp.sdc.validation.impl.util.ResourceValidationHeatValidator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.openecomp.sdc.validation.util.ValidationUtil;
-import java.io.InputStream;
import java.util.Collection;
import java.util.HashSet;
import java.util.Map;
@@ -56,14 +55,17 @@ import java.util.Objects;
import java.util.Set;
public class HeatValidator implements Validator {
+ public static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ protected static Logger logger = (Logger) LoggerFactory.getLogger(HeatValidator.class);
- protected static Logger logger = LoggerFactory.getLogger(HeatValidator.class);
-
- /* validation 9*/
private static void validateAllRequiredArtifactsExist(String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- Set<String> artifacts,
- GlobalValidationContext globalContext) {
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ Set<String> artifacts,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
Collection<Resource> resourcesValues = heatOrchestrationTemplate.getResources() == null ? null
: heatOrchestrationTemplate.getResources().values();
@@ -85,13 +87,17 @@ public class HeatValidator implements Validator {
}
}
-
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
/* validation 14 */
+
private static void validateAllResourceReferencesExist(String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
Set<String> resourcesNames = heatOrchestrationTemplate.getResources() == null ? null
: heatOrchestrationTemplate.getResources().keySet();
@@ -107,12 +113,19 @@ public class HeatValidator implements Validator {
.checkResourceExistenceFromResourcesMap(fileName, resourcesNames, outputsValues,
globalContext);
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+
}
/* validation 16 */
+
private static void validateGetParamPointToParameter(String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
Set<String> parametersNames = heatOrchestrationTemplate.getParameters() == null ? null
: heatOrchestrationTemplate.getParameters().keySet();
Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
@@ -125,8 +138,6 @@ public class HeatValidator implements Validator {
Collection<Object> propertiesValues = properties.values();
if (CollectionUtils.isNotEmpty(propertiesValues)) {
for (Object propertyObject : propertiesValues) {
- //Set<String> referencedParameterNames = HeatValidationService
- // .getParameterNameFromGetParamMap(propertyObject);
Set<String> referencedParameterNames = HeatStructureUtil
.getReferencedValuesByFunctionName(fileName, "get_param", propertyObject,
globalContext);
@@ -138,21 +149,31 @@ public class HeatValidator implements Validator {
}
}
}
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
+
private static void validateReferenceParams(String fileName, String resourceName,
Set<String> parametersNamesFromFile,
Set<String> referencedParametersNames,
GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
for (String parameterName : referencedParametersNames) {
if (!isHeatPseudoParameter(parameterName)
&& !parametersNamesFromFile.contains(parameterName)) {
globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.REFERENCED_PARAMETER_NOT_FOUND.getErrorMessage(),
- parameterName, resourceName));
+ .getErrorWithParameters(Messages.REFERENCED_PARAMETER_NOT_FOUND.getErrorMessage(),
+ parameterName, resourceName),
+ LoggerTragetServiceName.VALIDATE_PARAMETER_REFERENCE_EXITENCE,
+ LoggerErrorDescription.PARAMETER_NOT_FOUND);
}
}
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
private static boolean isHeatPseudoParameter(String parameterName) {
@@ -160,9 +181,13 @@ public class HeatValidator implements Validator {
}
/* validation 18*/
+
private static void validateGetAttr(String fileName,
HeatOrchestrationTemplate heatOrchestrationTemplate,
GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
Map<String, Output> outputMap;
outputMap = heatOrchestrationTemplate.getOutputs();
@@ -170,6 +195,8 @@ public class HeatValidator implements Validator {
HeatValidationService.loopOverOutputMapAndValidateGetAttrFromNested(fileName, outputMap,
heatOrchestrationTemplate, globalContext);
}
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
/* validation 17 + */
@@ -177,12 +204,16 @@ public class HeatValidator implements Validator {
HeatOrchestrationTemplate heatOrchestrationTemplate,
GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
Environment envContent;
if (!envFileName.contains(".env")) {
globalContext.addMessage(envFileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.WRONG_ENV_FILE_EXTENSION.getErrorMessage(),
- envFileName));
+ .getErrorWithParameters(Messages
+ .WRONG_ENV_FILE_EXTENSION.getErrorMessage(), envFileName),
+ LoggerTragetServiceName.VALIDATE_ENV_FILE, LoggerErrorDescription.WRONG_FILE_EXTENSION);
}
envContent = HeatValidationService.validateEnvContent(fileName, envFileName, globalContext);
@@ -193,12 +224,19 @@ public class HeatValidator implements Validator {
heatOrchestrationTemplate);
}
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+
}
private static void validateEnvContentIsSubSetOfHeatParameters(String envFile,
- Environment envContent,
- GlobalValidationContext globalContext,
- HeatOrchestrationTemplate heatOrchestrationTemplate) {
+ Environment envContent,
+ GlobalValidationContext
+ globalContext,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", envFile);
+
Set<String> parametersNames = heatOrchestrationTemplate.getParameters() == null ? null
: heatOrchestrationTemplate.getParameters().keySet();
@@ -208,24 +246,35 @@ public class HeatValidator implements Validator {
String envParameter = envEntry.getKey();
if (!parametersNames.contains(envParameter)) {
globalContext.addMessage(envFile, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.ENV_INCLUDES_PARAMETER_NOT_IN_HEAT.getErrorMessage(), envFile,
- envParameter));
+ .getErrorWithParameters(
+ Messages.ENV_INCLUDES_PARAMETER_NOT_IN_HEAT.getErrorMessage(), envFile,
+ envParameter), LoggerTragetServiceName.VALIDATE_ENV_FILE,
+ LoggerErrorDescription.ENV_PARAMETER_NOT_IN_HEAT);
}
}
} else {
for (Map.Entry<String, Object> envEntry : envContent.getParameters().entrySet()) {
globalContext.addMessage(envFile, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.ENV_INCLUDES_PARAMETER_NOT_IN_HEAT.getErrorMessage(),
- envFile, envEntry.getKey()));
+ .getErrorWithParameters(Messages
+ .ENV_INCLUDES_PARAMETER_NOT_IN_HEAT.getErrorMessage(),
+ envFile, envEntry.getKey()), LoggerTragetServiceName.VALIDATE_ENV_FILE,
+ LoggerErrorDescription.ENV_PARAMETER_NOT_IN_HEAT);
}
}
}
+
+ mdcDataDebugMessage.debugExitMessage("file", envFile);
}
+
private static void validateParameterDefaultTypeAlignWithType(String fileName,
- HeatOrchestrationTemplate heatOrchestrationTemplate,
- GlobalValidationContext globalContext) {
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ GlobalValidationContext
+ globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
Map<String, Parameter> parametersMap = heatOrchestrationTemplate.getParameters() == null ? null
: heatOrchestrationTemplate.getParameters();
@@ -239,19 +288,28 @@ public class HeatValidator implements Validator {
DefinedHeatParameterTypes.isValueIsFromGivenType(parameterDefault, parameterType);
if (!isValueMatchDefault) {
globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.PARAMETER_DEFAULT_VALUE_NOT_ALIGN_WITH_TYPE.getErrorMessage(),
- parameterEntry.getKey(), parameterType));
+ .getErrorWithParameters(
+ Messages.PARAMETER_DEFAULT_VALUE_NOT_ALIGN_WITH_TYPE.getErrorMessage(),
+ parameterEntry.getKey(), parameterType),
+ LoggerTragetServiceName.VALIDATE_PARAMTER_DEFAULT_MATCH_TYPE,
+ LoggerErrorDescription.PARAMETER_DEFAULT_VALUE_NOT_ALIGNED_WITH_TYPE);
}
}
}
}
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
+
private static void validateEnvParametersMatchDefinedHeatParameterTypes(String envFile,
- Environment envContent,
- GlobalValidationContext globalContext,
- HeatOrchestrationTemplate heatOrchestrationTemplate) {
+ Environment envContent,
+ GlobalValidationContext globalContext,
+ HeatOrchestrationTemplate heatOrchestrationTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", envFile);
+
Map<String, Parameter> heatParameters = heatOrchestrationTemplate.getParameters();
if (MapUtils.isNotEmpty(heatParameters) && MapUtils.isNotEmpty(envContent.getParameters())) {
@@ -262,25 +320,29 @@ public class HeatValidator implements Validator {
if (parameterFromHeatFile != null) {
String parameterType = parameterFromHeatFile.getType();
if (!DefinedHeatParameterTypes.isEmptyValueInEnv(parameterEnvValue)
- && !DefinedHeatParameterTypes.isValueIsFromGivenType(parameterEnvValue,
- parameterType)) {
+ && !DefinedHeatParameterTypes
+ .isValueIsFromGivenType(parameterEnvValue, parameterType)) {
globalContext.addMessage(envFile, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(
- Messages.PARAMETER_ENV_VALUE_NOT_ALIGN_WITH_TYPE.getErrorMessage(),
- parameterName));
+ .getErrorWithParameters(
+ Messages.PARAMETER_ENV_VALUE_NOT_ALIGN_WITH_TYPE.getErrorMessage(),
+ parameterName), LoggerTragetServiceName.VALIDATE_ENV_PARAMETER_MATCH_TYPE,
+ LoggerErrorDescription.PARAMETER_DEFAULT_VALUE_NOT_ALIGNED_WITH_TYPE);
}
}
}
}
+
+ mdcDataDebugMessage.debugExitMessage("file", envFile);
}
@Override
- public void validate(GlobalValidationContext globalContext) {
+ public void validate(GlobalValidationContext globalContext) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
ManifestContent manifestContent;
try {
- manifestContent = checkValidationPreCondition(globalContext);
- } catch (Exception e0) {
+ manifestContent = ValidationUtil.checkValidationPreCondition(globalContext);
+ } catch (Exception exception) {
return;
}
String baseFileName;
@@ -299,8 +361,8 @@ public class HeatValidator implements Validator {
globalContext.getFiles().stream()
.filter(fileName -> FileData.isHeatFile(fileTypeMap.get(fileName))).forEach(
- fileName -> validate(fileName,
- fileEnvMap.get(fileName) == null ? null : fileEnvMap.get(fileName).getFile(),
+ fileName -> validate(fileName, fileEnvMap.get(fileName) == null ? null : fileEnvMap.get(
+ fileName).getFile(),
baseFileName == null ? null : baseFileName, artifacts,
securityGroupsNamesFromBaseFileOutputs, globalContext));
@@ -310,35 +372,34 @@ public class HeatValidator implements Validator {
globalContext.getFiles().stream()
.filter(fileName -> manifestArtifacts.contains(fileName) && !artifacts.contains(fileName))
.forEach(fileName -> globalContext.addMessage(fileName, ErrorLevel.WARNING,
- Messages.ARTIFACT_FILE_NOT_REFERENCED.getErrorMessage()));
+ Messages.ARTIFACT_FILE_NOT_REFERENCED.getErrorMessage(),
+ LoggerTragetServiceName.CHECK_FOR_ORPHAN_ARTIFACTS,
+ LoggerErrorDescription.ARTIFACT_NOT_REFERENCED));
- ResourceValidationHeatValidator
- .handleNotEmptyResourceNamesList(baseFileName, securityGroupsNamesFromBaseFileOutputs,
- "SecurityGroup", globalContext);
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void validate(String fileName, String envFileName, String baseFileName,
Set<String> artifacts, Set<String> securityGroupsNamesFromBaseFileOutputs,
GlobalValidationContext globalContext) {
- HeatOrchestrationTemplate heatOrchestrationTemplate =
- checkHeatOrchestrationPreCondition(fileName, globalContext);
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate = ValidationUtil.checkHeatOrchestrationPreCondition(fileName, globalContext);
if (heatOrchestrationTemplate != null) {
if (!(fileName.contains(".yaml") || fileName.contains(".yml"))) {
globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.WRONG_HEAT_FILE_EXTENSION.getErrorMessage(),
- fileName));
+ .getErrorWithParameters(Messages
+ .WRONG_HEAT_FILE_EXTENSION.getErrorMessage(), fileName),
+ LoggerTragetServiceName.CHECK_FOR_VALID_FILE_EXTENTION,
+ LoggerErrorDescription.WRONG_FILE_EXTENSION);
}
validateHeatBaseStructure(fileName, heatOrchestrationTemplate, globalContext);
-
- ResourceValidationHeatValidator
- .validateResourceType(fileName, baseFileName, securityGroupsNamesFromBaseFileOutputs,
- heatOrchestrationTemplate, globalContext);
validateParameterDefaultTypeAlignWithType(fileName, heatOrchestrationTemplate, globalContext);
validateAllResourceReferencesExist(fileName, heatOrchestrationTemplate, globalContext);
+ validateResourceDependsOn(fileName, heatOrchestrationTemplate, globalContext);
validateGetParamPointToParameter(fileName, heatOrchestrationTemplate, globalContext);
validateGetAttr(fileName, heatOrchestrationTemplate, globalContext);
validateAllRequiredArtifactsExist(fileName, heatOrchestrationTemplate, artifacts,
@@ -350,60 +411,80 @@ public class HeatValidator implements Validator {
}
}
- private void validateHeatBaseStructure(String fileName,
+ private void validateResourceDependsOn(String fileName,
HeatOrchestrationTemplate heatOrchestrationTemplate,
GlobalValidationContext globalContext) {
- if (heatOrchestrationTemplate.getHeat_template_version() == null) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_HEAT_FORMAT_REASON.getErrorMessage(),
- "missing template version"));
- }
- if (heatOrchestrationTemplate.getResources() == null
- || heatOrchestrationTemplate.getResources().size() == 0) {
- globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_HEAT_FORMAT_REASON.getErrorMessage(),
- "heat file must have minimum one resource"));
+ Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
+ if(MapUtils.isEmpty(resourcesMap)){
+ return;
}
+
+ Set<String> resourcesNames = resourcesMap.keySet();
+
+ resourcesMap.entrySet().stream()
+ .forEach(entry -> checkResourceDependsOn(fileName, entry.getValue(), resourcesNames, globalContext));
}
- protected ManifestContent checkValidationPreCondition(GlobalValidationContext globalContext) {
- InputStream manifest = globalContext.getFileContent(AsdcCommon.MANIFEST_NAME);
- if (manifest == null) {
- throw new RuntimeException("Can't load manifest file for Heat Validator");
- }
- ManifestContent manifestContent;
- try {
- manifestContent = JsonUtil.json2Object(manifest, ManifestContent.class);
- } catch (Exception e0) {
- throw new RuntimeException("Can't load manifest file for Heat Validator");
+ @SuppressWarnings("unchecked")
+ private static void checkResourceDependsOn(String fileName, Resource resource,
+ Set<String> resourcesNames,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Object dependencies = resource.getDepends_on();
+ if (dependencies instanceof Collection) {
+ ((Collection<String>) dependencies)
+ .stream()
+ .filter(resource_id -> !resourcesNames.contains(resource_id))
+ .forEach(resource_id -> globalContext.addMessage(fileName, ErrorLevel.ERROR,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_RESOURCE_IN_DEPENDS_ON.getErrorMessage(),
+ (String) resource_id), LoggerTragetServiceName.CHECK_RESOURCE_DEPENDS_ON,
+ LoggerErrorDescription.MISSING_RESOURCE_DEPENDS_ON));
+ } else if (dependencies instanceof String) {
+ if (!resourcesNames.contains(dependencies)) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_RESOURCE_IN_DEPENDS_ON.getErrorMessage(),
+ (String) dependencies), LoggerTragetServiceName.CHECK_RESOURCE_DEPENDS_ON,
+ LoggerErrorDescription.MISSING_RESOURCE_DEPENDS_ON);
+ }
}
- return manifestContent;
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
- private HeatOrchestrationTemplate checkHeatOrchestrationPreCondition(String fileName,
- GlobalValidationContext globalContext) {
- HeatOrchestrationTemplate heatOrchestrationTemplate;
- try {
- heatOrchestrationTemplate = new YamlUtil()
- .yamlToObject(globalContext.getFileContent(fileName), HeatOrchestrationTemplate.class);
- } catch (Exception e0) {
+ private void validateHeatBaseStructure(String fileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (heatOrchestrationTemplate.getHeat_template_version() == null) {
globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_HEAT_FORMAT_REASON.getErrorMessage(),
- getParserExceptionReason(e0)));
- return null;
+ .getErrorWithParameters(Messages.INVALID_HEAT_FORMAT_REASON.getErrorMessage(),
+ "missing template version"), LoggerTragetServiceName.VALIDATE_HEAT_FORMAT,
+ LoggerErrorDescription.INVALID_HEAT_FORMAT);
+ }
+ if (heatOrchestrationTemplate.getResources() == null
+ || heatOrchestrationTemplate.getResources().size() == 0) {
+ globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_HEAT_FORMAT_REASON.getErrorMessage(),
+ "The heat file does not contain any resources"),
+ LoggerTragetServiceName.VALIDATE_HEAT_FORMAT, LoggerErrorDescription.INVALID_HEAT_FORMAT);
}
- return heatOrchestrationTemplate;
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
}
-
private Set<String> checkForBaseFilePortsExistenceAndReturnSecurityGroupNamesFromOutputsIfNot(
String baseFileName, GlobalValidationContext globalContext) {
Set<String> securityGroupsNamesFromOutputsMap = new HashSet<>();
HeatOrchestrationTemplate heatOrchestrationTemplate =
- checkHeatOrchestrationPreCondition(baseFileName, globalContext);
+ ValidationUtil.checkHeatOrchestrationPreCondition(baseFileName, globalContext);
if (heatOrchestrationTemplate != null) {
Map<String, Resource> resourceMap = heatOrchestrationTemplate.getResources();
@@ -412,7 +493,6 @@ public class HeatValidator implements Validator {
heatOrchestrationTemplate.getOutputs(), resourceMap);
}
}
-
return securityGroupsNamesFromOutputsMap;
}
@@ -450,20 +530,4 @@ public class HeatValidator implements Validator {
return false;
}
-
-
- private String getParserExceptionReason(Exception e0) {
- String reason;
-
- if (e0.getCause() != null && e0.getCause().getCause() != null) {
- reason = e0.getCause().getCause().getMessage();
- } else if (e0.getCause() != null) {
- reason = e0.getCause().getMessage();
- } else {
- reason = Messages.GENERAL_HEAT_PARSER_ERROR.getErrorMessage();
- }
- return reason;
- }
-
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ManifestValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ManifestValidator.java
index 4ce40f0007..43cafb494c 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ManifestValidator.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/ManifestValidator.java
@@ -21,38 +21,54 @@
package org.openecomp.sdc.validation.impl.validators;
import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.validation.Validator;
import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.core.validation.interfaces.Validator;
import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.sdc.common.utils.AsdcCommon;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.common.utils.SdcCommon;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
+import java.util.Optional;
-public class ManifestValidator implements Validator {
-
- private static Logger logger = LoggerFactory.getLogger(YamlValidator.class);
+public class ManifestValidator implements Validator {
+ public static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private static Logger logger = (Logger) LoggerFactory.getLogger(YamlValidator.class);
@Override
public void validate(GlobalValidationContext globalContext) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
-
- InputStream content = globalContext.getFileContent(AsdcCommon.MANIFEST_NAME);
+ Optional<InputStream> content = globalContext.getFileContent(SdcCommon.MANIFEST_NAME);
ManifestContent manifestContent;
try {
- manifestContent = JsonUtil.json2Object(content, ManifestContent.class);
- } catch (RuntimeException re) {
- globalContext.addMessage(AsdcCommon.MANIFEST_NAME, ErrorLevel.ERROR,
- Messages.INVALID_MANIFEST_FILE.getErrorMessage());
+ if (content.isPresent()) {
+ manifestContent = JsonUtil.json2Object(content.get(), ManifestContent.class);
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_MANIFEST_CONTENT, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.EMPTY_FILE);
+ throw new Exception("The manifest file '" + SdcCommon.MANIFEST_NAME + "' has no content");
+ }
+ } catch (Exception re) {
+ globalContext.addMessage(SdcCommon.MANIFEST_NAME, ErrorLevel.ERROR,
+ Messages.INVALID_MANIFEST_FILE.getErrorMessage(),
+ LoggerTragetServiceName.VALIDATE_MANIFEST_CONTENT,
+ LoggerErrorDescription.INVALID_MANIFEST);
return;
}
@@ -60,22 +76,32 @@ public class ManifestValidator implements Validator {
manifestFiles.stream().filter(name ->
!globalContext.getFileContextMap().containsKey(name)
).forEach(name -> globalContext
- .addMessage(name, ErrorLevel.ERROR, Messages.MISSING_FILE_IN_ZIP.getErrorMessage()));
+ .addMessage(name, ErrorLevel.ERROR, Messages.MISSING_FILE_IN_ZIP.getErrorMessage(),
+ LoggerTragetServiceName.VALIDATE_FILE_IN_ZIP, LoggerErrorDescription.MISSING_FILE));
globalContext.getFileContextMap().keySet().stream().filter(name ->
- !manifestFiles.contains(name) && !AsdcCommon.MANIFEST_NAME.equals(name)
+ !manifestFiles.contains(name) && !SdcCommon.MANIFEST_NAME.equals(name)
).forEach(name ->
globalContext.addMessage(name, ErrorLevel.WARNING,
- Messages.MISSING_FILE_IN_MANIFEST.getErrorMessage())
+ Messages.MISSING_FILE_IN_MANIFEST.getErrorMessage(),
+ LoggerTragetServiceName.VALIDATE_FILE_IN_MANIFEST, LoggerErrorDescription.MISSING_FILE)
);
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
+
private List<String> getManifestFileList(ManifestContent manifestContent,
GlobalValidationContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
ManifestScanner manifestScanner = new ManifestScanner();
manifestScanner.init(context);
manifestScanner.scan(null, manifestContent.getData(), context);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return manifestScanner.getFileList();
}
@@ -98,7 +124,9 @@ public class ManifestValidator implements Validator {
&& childFileData.getType().equals(FileData.Type.HEAT_ENV)) {
globalContext.addMessage(childFileData.getFile(), ErrorLevel.ERROR,
ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.ENV_NOT_ASSOCIATED_TO_HEAT.getErrorMessage()));
+ .getErrorWithParameters(Messages.ENV_NOT_ASSOCIATED_TO_HEAT.getErrorMessage()),
+ LoggerTragetServiceName.SCAN_MANIFEST_STRUCTURE,
+ "env file is not associated to HEAT file");
}
}
}
@@ -109,9 +137,7 @@ public class ManifestValidator implements Validator {
if (data == null) {
return;
}
- data.stream().forEach(chileFileData -> {
- scan(chileFileData, chileFileData.getData(), globalContext);
- });
+ data.forEach(chileFileData -> scan(chileFileData, chileFileData.getData(), globalContext));
}
@@ -122,28 +148,32 @@ public class ManifestValidator implements Validator {
private void validateFileTypeVsFileName(FileData fileData) {
String fileName = fileData.getFile();
if (fileName == null) {
- this.globalValidationContext.addMessage(AsdcCommon.MANIFEST_NAME, ErrorLevel.ERROR,
- Messages.MISSING_FILE_NAME_IN_MANIFEST.getErrorMessage());
+ this.globalValidationContext.addMessage(SdcCommon.MANIFEST_NAME, ErrorLevel.ERROR,
+ Messages.MISSING_FILE_NAME_IN_MANIFEST.getErrorMessage(),
+ LoggerTragetServiceName.VALIDATE_FILE_TYPE_AND_NAME, "Missing file name in manifest");
}
FileData.Type type = fileData.getType();
if (type == null) {
this.globalValidationContext
- .addMessage(fileName, ErrorLevel.ERROR, Messages.INVALID_FILE_TYPE.getErrorMessage());
+ .addMessage(fileName, ErrorLevel.ERROR, Messages.INVALID_FILE_TYPE.getErrorMessage(),
+ LoggerTragetServiceName.VALIDATE_FILE_TYPE_AND_NAME, "Invalid file type");
} else if (type.equals(FileData.Type.HEAT_NET) || type.equals(FileData.Type.HEAT_VOL)
|| type.equals(FileData.Type.HEAT)) {
if (fileName != null && !fileName.endsWith(".yml") && !fileName.endsWith(".yaml")) {
this.globalValidationContext.addMessage(fileName, ErrorLevel.ERROR,
ErrorMessagesFormatBuilder
.getErrorWithParameters(Messages.WRONG_HEAT_FILE_EXTENSION.getErrorMessage(),
- fileName));
+ fileName), LoggerTragetServiceName.VALIDATE_FILE_TYPE_AND_NAME,
+ "Wrong HEAT file extention");
}
} else if (type.equals(FileData.Type.HEAT_ENV)) {
if (fileName != null && !fileName.endsWith(".env")) {
this.globalValidationContext.addMessage(fileName, ErrorLevel.ERROR,
ErrorMessagesFormatBuilder
.getErrorWithParameters(Messages.WRONG_ENV_FILE_EXTENSION.getErrorMessage(),
- fileName));
+ fileName), LoggerTragetServiceName.VALIDATE_FILE_TYPE_AND_NAME,
+ "Wrong env file extention");
}
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/NamingConventionGuideLineValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/NamingConventionGuideLineValidator.java
new file mode 100644
index 0000000000..724b7e4735
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/NamingConventionGuideLineValidator.java
@@ -0,0 +1,29 @@
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.validation.base.ResourceBaseValidator;
+import org.openecomp.sdc.validation.type.ConfigConstants;
+import org.openecomp.sdc.validation.type.NamingConventionValidationContext;
+
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/15/2017.
+ */
+public class NamingConventionGuideLineValidator extends ResourceBaseValidator {
+
+ @Override
+ public void init(Map<String, Object> properties){
+ super.init((Map<String, Object>) properties.get(ConfigConstants.Resource_Base_Validator));
+ }
+
+ @Override
+ public ValidationContext createValidationContext(String fileName, String envFileName,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ GlobalValidationContext globalContext){
+ return new NamingConventionValidationContext(heatOrchestrationTemplate, envFileName);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidator.java
new file mode 100644
index 0000000000..f3af7d7e48
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidator.java
@@ -0,0 +1,199 @@
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Created by TALIO on 2/15/2017.
+ */
+public class SharedResourceGuideLineValidator implements Validator {
+ public static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(GlobalValidationContext globalContext) {
+ ManifestContent manifestContent;
+ try {
+ manifestContent = ValidationUtil.checkValidationPreCondition(globalContext);
+ } catch (Exception exception) {
+ return;
+ }
+
+ Set<String> baseFiles = ValidationUtil.validateManifest(manifestContent, globalContext);
+
+ Map<String, FileData.Type> fileTypeMap = ManifestUtil.getFileTypeMap(manifestContent);
+ Map<String, FileData> fileEnvMap = ManifestUtil.getFileAndItsEnv(manifestContent);
+ globalContext.getFiles().stream()
+ .filter(fileName -> FileData
+ .isHeatFile(fileTypeMap.get(fileName)))
+ .forEach(fileName -> validate(fileName,
+ fileEnvMap.get(fileName) != null ? fileEnvMap.get(fileName).getFile() : null,
+ fileTypeMap, baseFiles, globalContext));
+
+
+ }
+
+ private void validate(String fileName, String envFileName, Map<String, FileData.Type> fileTypeMap,
+ Set<String> baseFiles, GlobalValidationContext globalContext) {
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate = ValidationUtil.checkHeatOrchestrationPreCondition(fileName, globalContext);
+ if (heatOrchestrationTemplate == null) {
+ return;
+ }
+
+ validateBaseFile(fileName, baseFiles, heatOrchestrationTemplate, globalContext);
+ validateHeatVolumeFile(fileName, fileTypeMap, heatOrchestrationTemplate, globalContext);
+ }
+
+
+ private void validateBaseFile(String fileName, Set<String> baseFiles,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+ //if not base return
+ if (baseFiles == null || !baseFiles.contains(fileName)) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ //if no resources exist return
+ if (heatOrchestrationTemplate.getResources() == null
+ || heatOrchestrationTemplate.getResources().size() == 0) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ Set<String> expectedExposedResources = new HashSet<>();
+ Set<String> actualExposedResources = new HashSet<>();
+ heatOrchestrationTemplate.getResources()
+ .entrySet()
+ .stream()
+ .filter(entry -> ValidationUtil.isExpectedToBeExposed(entry.getValue().getType()))
+ .forEach(entry -> expectedExposedResources.add(entry.getKey()));
+
+ if (heatOrchestrationTemplate.getOutputs() != null) {
+
+ heatOrchestrationTemplate.getOutputs().entrySet()
+ .stream()
+ .filter(entry -> isPropertyValueGetResource(fileName, entry.getValue().getValue(),
+ globalContext))
+ .forEach(entry -> actualExposedResources.add(
+ getResourceIdFromPropertyValue(fileName, entry.getValue().getValue(),
+ globalContext)));
+ }
+
+ ValidationUtil.removeExposedResourcesCalledByGetResource(fileName, actualExposedResources,
+ heatOrchestrationTemplate, globalContext);
+
+ actualExposedResources.forEach(expectedExposedResources::remove);
+
+ if (expectedExposedResources.size() > 0) {
+ expectedExposedResources
+ .stream()
+ .forEach(name -> globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.RESOURCE_NOT_DEFINED_IN_OUTPUT.getErrorMessage(),
+ name),
+ LoggerTragetServiceName.VALIDATE_BASE_FILE,
+ LoggerErrorDescription.RESOURCE_NOT_DEFINED_AS_OUTPUT));
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void validateHeatVolumeFile(String fileName, Map<String, FileData.Type> fileTypeMap,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ //if not heat volume return
+ if (!fileTypeMap.get(fileName).equals(FileData.Type.HEAT_VOL)) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ //if no resources exist return
+ if (heatOrchestrationTemplate.getResources() == null
+ || heatOrchestrationTemplate.getResources().size() == 0) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ Set<String> expectedExposedResources = new HashSet<>();
+ Set<String> actualExposedResources = new HashSet<>();
+ heatOrchestrationTemplate.getResources()
+ .entrySet()
+ .stream()
+ .filter(entry -> entry.getValue().getType()
+ .equals(HeatResourcesTypes.CINDER_VOLUME_RESOURCE_TYPE.getHeatResource()))
+ .forEach(entry -> expectedExposedResources.add(entry.getKey()));
+
+ if (heatOrchestrationTemplate.getOutputs() != null) {
+
+ heatOrchestrationTemplate.getOutputs().entrySet()
+ .stream()
+ .filter(entry -> isPropertyValueGetResource(fileName, entry.getValue().getValue(),
+ globalContext))
+ .forEach(entry -> actualExposedResources.add(
+ getResourceIdFromPropertyValue(fileName, entry.getValue().getValue(),
+ globalContext)));
+ }
+
+ actualExposedResources.forEach(expectedExposedResources::remove);
+
+ if (expectedExposedResources.size() > 0) {
+ expectedExposedResources
+ .stream()
+ .forEach(name -> globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.VOLUME_HEAT_NOT_EXPOSED.getErrorMessage(), name),
+ LoggerTragetServiceName.VALIDATE_VOLUME_FILE,
+ LoggerErrorDescription.VOLUME_FILE_NOT_EXPOSED));
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+
+ private boolean isPropertyValueGetResource(String filename, Object value,
+ GlobalValidationContext globalContext) {
+ Set<String> referenceValues = HeatStructureUtil.getReferencedValuesByFunctionName(filename,
+ ResourceReferenceFunctions.GET_RESOURCE.getFunction(), value, globalContext);
+ return referenceValues != null && (referenceValues.size() > 0);
+ }
+
+ private String getResourceIdFromPropertyValue(String filename, Object value,
+ GlobalValidationContext globalContext) {
+ Set<String> referenceValues = HeatStructureUtil.getReferencedValuesByFunctionName(filename,
+ ResourceReferenceFunctions.GET_RESOURCE.getFunction(), value, globalContext);
+ if (referenceValues != null && CollectionUtils.isNotEmpty(referenceValues)) {
+ return (String) referenceValues.toArray()[0];
+ }
+ return null;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java
index 4d05b2b066..4ae00ea2d9 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/YamlValidator.java
@@ -21,76 +21,63 @@
package org.openecomp.sdc.validation.impl.validators;
import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.validation.Validator;
import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.core.validation.interfaces.Validator;
import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
import org.openecomp.sdc.datatypes.error.ErrorLevel;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.yaml.snakeyaml.error.MarkedYAMLException;
-import org.yaml.snakeyaml.parser.ParserException;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.impl.util.YamlValidatorUtil;
import java.io.InputStream;
import java.util.Collection;
import java.util.Map;
+import java.util.Optional;
public class YamlValidator implements Validator {
-
- private static final Logger logger = LoggerFactory.getLogger(YamlValidator.class);
+ public static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private static final Logger logger = (Logger) LoggerFactory.getLogger(YamlValidator.class);
@Override
public void validate(GlobalValidationContext globalContext) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
Collection<String> files = globalContext.files(
(fileName, globalValidationContext) -> (fileName.endsWith(".yaml")
|| fileName.endsWith(".yml") || fileName.endsWith(".env")));
files.stream().forEach(fileName -> validate(fileName, globalContext));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
private void validate(String fileName, GlobalValidationContext globalContext) {
- InputStream rowContent = globalContext.getFileContent(fileName);
- if (rowContent == null) {
+ Optional<InputStream> rowContent = globalContext.getFileContent(fileName);
+ if (!rowContent.isPresent()) {
globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
- Messages.EMPTY_YAML_FILE.getErrorMessage()));
+ .getErrorWithParameters(Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
+ Messages.EMPTY_YAML_FILE.getErrorMessage()),
+ LoggerTragetServiceName.VALIDATE_YAML_CONTENT,
+ LoggerErrorDescription.INVALID_YAML_FORMAT);
return; /* no need to continue validation */
}
try {
- convert(rowContent, Map.class);
+ convert(rowContent.get(), Map.class);
} catch (Exception exception) {
globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
- .getErrorWithParameters(Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
- getParserExceptionReason(exception)));
- logger.error("Exception in yaml parser. message:" + exception.getMessage());
+ .getErrorWithParameters(Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
+ YamlValidatorUtil.getParserExceptionReason(exception)),
+ LoggerTragetServiceName.VALIDATE_YAML_CONTENT,
+ LoggerErrorDescription.INVALID_YAML_FORMAT);
}
}
- private String getParserExceptionReason(Exception exception) {
- String reason = null;
-
- if (exception.getCause() instanceof MarkedYAMLException) {
- if (exception.getCause() != null) {
- if (exception.getCause().getCause() instanceof ParserException) {
- reason = exception.getCause().getCause().getMessage();
- } else {
- reason = exception.getCause().getMessage();
- }
- }
- } else if (exception instanceof MarkedYAMLException) {
-
- reason = exception.getMessage();
-
- } else {
- reason = Messages.GENERAL_YAML_PARSER_ERROR.getErrorMessage();
- }
- return reason;
- }
-
-
private <T> T convert(InputStream content, Class<T> type) {
return new YamlUtil().yamlToObject(content, type);
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidator.java
new file mode 100644
index 0000000000..8ca5e69061
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidator.java
@@ -0,0 +1,92 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.type.HeatResourceValidationContext;
+import org.openecomp.sdc.validation.type.ValidatorConstants;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class ContrailNetworkPolicyResourceValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+ validateNetworkPolicyIsUsed
+ (fileName, resourceEntry, globalContext, (HeatResourceValidationContext)validationContext);
+
+ }
+
+ private static void validateNetworkPolicyIsUsed(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext,
+ HeatResourceValidationContext validationContext) {
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Map<String, Map<String, List<String>>> referencedNetworkAttachPoliciesResources =
+ validationContext.getFileLevelResourceDependencies()
+ .get(HeatResourcesTypes.CONTRAIL_NETWORK_RULE_RESOURCE_TYPE.getHeatResource());
+
+ if (MapUtils.isEmpty(referencedNetworkAttachPoliciesResources)) {
+ globalContext
+ .addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.RESOURCE_NOT_IN_USE.getErrorMessage(),
+ ValidatorConstants.Network_Policy, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_ATTACH_POLICY_IN_USE,
+ LoggerErrorDescription.NETWORK_ATTACH_POLICY_NOT_IN_USE);
+ return;
+ }
+
+ handleNetworkAttachPolicyReferences
+ (fileName, resourceEntry, referencedNetworkAttachPoliciesResources, globalContext);
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+
+ }
+
+ private static void handleNetworkAttachPolicyReferences(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, Map<String, List<String>>> pointedNetworkAttachPolicies,
+ GlobalValidationContext globalContext) {
+
+ Map<String, List<String>> resourcesPointingToCurrNetworkAttachPolicy =
+ pointedNetworkAttachPolicies.get(resourceEntry.getKey());
+ if (isNetworkAttachPolicyNotInUse(resourcesPointingToCurrNetworkAttachPolicy)) {
+ globalContext
+ .addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.RESOURCE_NOT_IN_USE.getErrorMessage(),
+ ValidatorConstants.Network_Policy, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_ATTACH_POLICY_IN_USE,
+ LoggerErrorDescription.NETWORK_ATTACH_POLICY_NOT_IN_USE);
+ }
+ }
+
+ private static boolean isNetworkAttachPolicyNotInUse(
+ Map<String, List<String>> resourcesPointingToCurrNetworkAttachPolicy) {
+ return MapUtils.isEmpty(resourcesPointingToCurrNetworkAttachPolicy);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidator.java
new file mode 100644
index 0000000000..aa7b91826c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidator.java
@@ -0,0 +1,94 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.impl.util.HeatValidationService;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+
+/**
+ * Created by TALIO on 2/22/2017.
+ */
+public class NestedResourceValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext){
+
+ handleNestedResourceType(fileName, resourceEntry.getKey(), resourceEntry.getValue(),
+ Optional.empty(), globalContext);
+ }
+
+ private static void handleNestedResourceType(String fileName, String resourceName,
+ Resource resource, Optional<String> indexVarValue,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ validateAllPropertiesMatchNestedParameters(fileName, resourceName, resource, indexVarValue,
+ globalContext);
+ validateLoopsOfNestingFromFile(fileName, resource.getType(), globalContext);
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ public static void validateAllPropertiesMatchNestedParameters(String fileName,
+ String resourceName,
+ Resource resource,
+ Optional<String> indexVarValue,
+ GlobalValidationContext
+ globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ String resourceType = resource.getType();
+ if (globalContext.getFileContextMap().containsKey(resourceType)) {
+ Set<String> propertiesNames =
+ resource.getProperties() == null ? null : resource.getProperties().keySet();
+ if (CollectionUtils.isNotEmpty(propertiesNames)) {
+ HeatValidationService
+ .checkNestedParameters(fileName, resourceType, resourceName, resource, propertiesNames,
+ indexVarValue, globalContext);
+ }
+ } else {
+ globalContext.addMessage(resourceType, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_NESTED_FILE.getErrorMessage(), resourceType),
+ LoggerTragetServiceName.VALIDATE_PROPERTIES_MATCH_NESTED_PARAMETERS,
+ LoggerErrorDescription.MISSING_FILE);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ public static void validateLoopsOfNestingFromFile(String fileName, String resourceType,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ List<String> filesInLoop = new ArrayList<>(Collections.singletonList(fileName));
+ if (HeatValidationService
+ .isNestedLoopExistInFile(fileName, resourceType, filesInLoop, globalContext)) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.NESTED_LOOP.getErrorMessage(),
+ HeatValidationService.drawFilesLoop(filesInLoop)),
+ LoggerTragetServiceName.VALIDATE_NESTING_LOOPS, LoggerErrorDescription.NESTED_LOOP);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidator.java
new file mode 100644
index 0000000000..09afec3faf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidator.java
@@ -0,0 +1,166 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.type.HeatResourceValidationContext;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+
+/**
+ * Created by TALIO on 2/22/2017.
+ */
+public class NeutronPortResourceValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+
+ validateNovaServerPortBinding
+ (fileName, resourceEntry, (HeatResourceValidationContext)validationContext, globalContext);
+ }
+
+
+ @SuppressWarnings("unchecked")
+ private static void validateNovaServerPortBinding(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ HeatResourceValidationContext heatResourceValidationContext,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Map<String, Map<String, List<String>>> portIdToPointingResources =
+ heatResourceValidationContext.getFileLevelResourceDependencies()
+ .get(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource());
+
+ if(MapUtils.isEmpty(portIdToPointingResources)){
+ globalContext
+ .addMessage(fileName, ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.PORT_NO_BIND_TO_ANY_NOVA_SERVER.getErrorMessage(),
+ resourceEntry.getKey()), LoggerTragetServiceName.CHECK_FOR_ORPHAN_PORTS,
+ LoggerErrorDescription.NO_BIND_FROM_PORT_TO_NOVA);
+
+ return;
+ }
+
+ for (Map.Entry<String, Map<String, List<String>>> portEntry :
+ portIdToPointingResources.entrySet()) {
+ checkPortBindingFromMap(fileName, portEntry, globalContext);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private static void checkPortBindingFromMap(String fileName,
+ Map.Entry<String, Map<String, List<String>>> portEntry,
+ GlobalValidationContext globalContext) {
+ Map<String, List<String>> pointingResourcesToCurrPort = portEntry.getValue();
+ List<String> pointingNovaServers = pointingResourcesToCurrPort
+ .get(HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource());
+
+ if (CollectionUtils.isEmpty(pointingNovaServers)) {
+ return;
+ }
+
+ handleErrorEventsForPortBinding(fileName, portEntry, globalContext, pointingNovaServers);
+
+
+ }
+
+ private static void handleErrorEventsForPortBinding(String fileName,
+ Map.Entry<String, Map<String, List<String>>> portEntry,
+ GlobalValidationContext globalContext,
+ List<String> pointingNovaServers) {
+ if (isThereMoreThanOneBindFromNovaToPort(pointingNovaServers)) {
+ globalContext
+ .addMessage(fileName, ErrorLevel.ERROR,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.MORE_THAN_ONE_BIND_FROM_NOVA_TO_PORT.getErrorMessage(),
+ portEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_NOVA_SERVER_PORT_BINDING,
+ LoggerErrorDescription.PORT_BINDS_MORE_THAN_ONE_NOVA);
+ }
+
+ if(isNoNovaPointingToPort(pointingNovaServers)){
+ globalContext
+ .addMessage(fileName, ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.PORT_NO_BIND_TO_ANY_NOVA_SERVER.getErrorMessage(),
+ portEntry.getKey()), LoggerTragetServiceName.CHECK_FOR_ORPHAN_PORTS,
+ LoggerErrorDescription.NO_BIND_FROM_PORT_TO_NOVA);
+ }
+ }
+
+ private static boolean isNoNovaPointingToPort(List<String> pointingNovaServers) {
+ return pointingNovaServers.size() == 0;
+ }
+
+ private static boolean isThereMoreThanOneBindFromNovaToPort(List<String> pointingNovaServers) {
+ return pointingNovaServers.size() > 1;
+ }
+
+ @SuppressWarnings("unchecked")
+ private static void validateAllSecurityGroupsAreUsed(String filename,
+ Map.Entry<String, Resource> resourceEntry,
+ List<String> securityGroupResourceNameList,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", filename);
+
+ Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
+
+ if (MapUtils.isEmpty(propertiesMap)) {
+ return;
+ }
+
+ Object securityGroupsValue = propertiesMap.get("security_groups");
+
+ if (Objects.isNull(securityGroupsValue)) {
+ return;
+ }
+
+ if (securityGroupsValue instanceof List) {
+ List<Object> securityGroupsListFromCurrResource =
+ (List<Object>) propertiesMap.get("security_groups");
+ for (Object securityGroup : securityGroupsListFromCurrResource) {
+ removeSecurityGroupNamesFromListByGivenFunction(filename,
+ ResourceReferenceFunctions.GET_RESOURCE.getFunction(), securityGroup,
+ securityGroupResourceNameList, globalContext);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", filename);
+ }
+
+ private static void removeSecurityGroupNamesFromListByGivenFunction(String filename,
+ String functionName,
+ Object securityGroup,
+ Collection<String>
+ securityGroupResourceNameList,
+ GlobalValidationContext globalContext) {
+ Set<String> securityGroupsNamesFromFunction = HeatStructureUtil
+ .getReferencedValuesByFunctionName(filename, functionName, securityGroup, globalContext);
+ securityGroupsNamesFromFunction.forEach(securityGroupResourceNameList::remove);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidator.java
new file mode 100644
index 0000000000..d7e16152f9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidator.java
@@ -0,0 +1,67 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.type.HeatResourceValidationContext;
+import org.openecomp.sdc.validation.type.ValidatorConstants;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/27/2017.
+ */
+public class NeutronSecurityGroupResourceValidator implements ResourceValidator {
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+
+ HeatResourceValidationContext heatResourceValidationContext =
+ (HeatResourceValidationContext) validationContext;
+ validateSecurityGroupIsUsed(fileName, resourceEntry, heatResourceValidationContext, globalContext);
+ }
+
+ public void validateSecurityGroupIsUsed(String fileName, Map.Entry<String, Resource> resourceEntry,
+ HeatResourceValidationContext
+ heatResourceValidationContext,
+ GlobalValidationContext globalContext) {
+
+ Map<String, Map<String, List<String>>> securityGroupsPointedByOtherResources =
+ heatResourceValidationContext.getFileLevelResourceDependencies().
+ get(HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE.getHeatResource());
+
+ if (MapUtils.isEmpty(securityGroupsPointedByOtherResources)) {
+ return;
+ }
+
+ Map<String, List<String>> resourcesPointingCurrSecurityGroup =
+ securityGroupsPointedByOtherResources.get(resourceEntry.getKey());
+
+ if(isSecurityGroupNotInUse(resourcesPointingCurrSecurityGroup)){
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.RESOURCE_NOT_IN_USE.getErrorMessage(),
+ ValidatorConstants.Security_Group, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_ALL_SERVER_GROUP_OR_SECURITY_GROUP_IN_USE,
+ LoggerErrorDescription.SERVER_GROUP_SECURITY_GROUP_NOT_IN_USE);
+ }
+
+ }
+
+ public boolean isSecurityGroupNotInUse(Map<String, List<String>>
+ referencingResourcesToCurrSecurityGroup){
+ return MapUtils.isEmpty(referencingResourcesToCurrSecurityGroup);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidator.java
new file mode 100644
index 0000000000..f56d941ba4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidator.java
@@ -0,0 +1,128 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.PolicyTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.type.HeatResourceValidationContext;
+import org.openecomp.sdc.validation.type.ValidatorConstants;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+/**
+ * Created by TALIO on 2/22/2017.
+ */
+public class NovaServerGroupResourceValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+ validateNovaServerGroupPolicy(fileName, resourceEntry, globalContext);
+ validateServerGroupIsUsed
+ (fileName, resourceEntry, globalContext, (HeatResourceValidationContext) validationContext);
+ }
+
+ @SuppressWarnings("unchecked")
+ private static void validateNovaServerGroupPolicy(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Resource resource = resourceEntry.getValue();
+ Object policies =
+ resource.getProperties() == null ? null : resource.getProperties().get("policies");
+
+ if (Objects.nonNull(policies) && policies instanceof List) {
+ List<Object> policiesList = (List<Object>) policies;
+ if (policiesList.size() == 1) {
+ Object policy = policiesList.get(0);
+ if (!isGivenPolicyValid(policy)) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.WRONG_POLICY_IN_SERVER_GROUP.getErrorMessage(),
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_NOVA_SEVER_GROUP_POLICY,
+ LoggerErrorDescription.WRONG_POLICY_SERVER_GROUP);
+ }
+ } else {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.WRONG_POLICY_IN_SERVER_GROUP.getErrorMessage(),
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_NOVA_SEVER_GROUP_POLICY,
+ LoggerErrorDescription.WRONG_POLICY_SERVER_GROUP);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private static boolean isGivenPolicyValid(Object policy) {
+ if (policy instanceof Map) {
+ return true;
+ }
+ if (policy instanceof String) {
+ return PolicyTypes.isGivenPolicyValid((String) policy);
+ }
+ return false;
+ }
+
+ public void validateServerGroupIsUsed(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext,
+ HeatResourceValidationContext validationContext) {
+
+ Map<String, Map<String, List<String>>> pointedServerGroups =
+ validationContext.getFileLevelResourceDependencies().get(HeatResourcesTypes
+ .NOVA_SERVER_GROUP_RESOURCE_TYPE.getHeatResource());
+
+ if (MapUtils.isEmpty(pointedServerGroups)) {
+ globalContext
+ .addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.RESOURCE_NOT_IN_USE.getErrorMessage(),
+ ValidatorConstants.Server_Group, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_ALL_SERVER_GROUP_OR_SECURITY_GROUP_IN_USE,
+ LoggerErrorDescription.SERVER_GROUP_SECURITY_GROUP_NOT_IN_USE);
+ return;
+ }
+
+ handleServerGroupReferences(fileName, resourceEntry, pointedServerGroups, globalContext);
+
+
+ }
+
+ private void handleServerGroupReferences(String fileName, Map.Entry<String, Resource>
+ resourceEntry, Map<String, Map<String, List<String>>> pointedServerGroups,
+ GlobalValidationContext globalContext) {
+ Map<String, List<String>> resourcesPointingToCurrServerGroup =
+ pointedServerGroups.get(resourceEntry.getKey());
+
+ if (MapUtils.isEmpty(resourcesPointingToCurrServerGroup)) {
+ globalContext
+ .addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.RESOURCE_NOT_IN_USE.getErrorMessage(),
+ ValidatorConstants.Server_Group, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_ALL_SERVER_GROUP_OR_SECURITY_GROUP_IN_USE,
+ LoggerErrorDescription.SERVER_GROUP_SECURITY_GROUP_NOT_IN_USE);
+ }
+
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidator.java
new file mode 100644
index 0000000000..5dc42c9b9a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidator.java
@@ -0,0 +1,118 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.PropertiesMapKeyTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.type.HeatResourceValidationContext;
+
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/22/2017.
+ */
+public class NovaServerResourceValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+
+ HeatResourceValidationContext heatResourceValidationContext = (HeatResourceValidationContext)
+ validationContext;
+ validateNovaServerResourceType
+ (fileName, resourceEntry, heatResourceValidationContext, globalContext);
+ }
+
+ private static void validateNovaServerResourceType(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ HeatResourceValidationContext heatResourceValidationContext,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ validateAssignedValueForImageOrFlavorFromNova(fileName, resourceEntry, globalContext);
+ validateAllServerGroupsPointedByServerExistAndDefined
+ (fileName, resourceEntry,
+ heatResourceValidationContext.getHeatOrchestrationTemplate(), globalContext);
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+
+ }
+
+ private static void validateAssignedValueForImageOrFlavorFromNova(String fileName,
+ Map.Entry<String, Resource>
+ resourceEntry,
+ GlobalValidationContext
+ globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Resource resource = resourceEntry.getValue();
+ Map<String, Object> propertiesMap = resource.getProperties();
+ if (propertiesMap.get(PropertiesMapKeyTypes.IMAGE.getKeyMap()) == null
+ && propertiesMap.get(PropertiesMapKeyTypes.FLAVOR.getKeyMap()) == null) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_IMAGE_AND_FLAVOR.getErrorMessage(),
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_ASSIGNED_VALUES_FOR_NOVA_IMAGE_FLAVOR,
+ LoggerErrorDescription.MISSING_NOVA_PROPERTIES);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ @SuppressWarnings("unchecked")
+ private static void validateAllServerGroupsPointedByServerExistAndDefined(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
+ Map<String, Object> resourceProperties = resourceEntry.getValue().getProperties();
+ Map<String, Object> schedulerHintsMap =
+ resourceProperties == null ? null : (Map<String, Object>) resourceProperties.get(
+ ResourceReferenceFunctions.SCHEDULER_HINTS.getFunction());
+
+ if (MapUtils.isEmpty(schedulerHintsMap)) {
+ return;
+ }
+
+ for (Object serverGroupValue : schedulerHintsMap.values()) {
+ if(!(serverGroupValue instanceof Map)){
+ continue;
+ }
+ Map<String, Object> currentServerMap = (Map<String, Object>) serverGroupValue;
+ String serverResourceName =
+ currentServerMap == null ? null : (String) currentServerMap
+ .get(ResourceReferenceFunctions.GET_RESOURCE.getFunction());
+ Resource serverResource =
+ serverResourceName == null || resourcesMap == null ? null
+ : resourcesMap.get(serverResourceName);
+
+ if (serverResource != null && !serverResource.getType()
+ .equals(HeatResourcesTypes.NOVA_SERVER_GROUP_RESOURCE_TYPE.getHeatResource())) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.SERVER_NOT_DEFINED_FROM_NOVA.getErrorMessage(),
+ serverResourceName, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_SERVER_GROUP_EXISTENCE,
+ LoggerErrorDescription.SERVER_NOT_DEFINED_NOVA);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidator.java
new file mode 100644
index 0000000000..c94875c9f2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidator.java
@@ -0,0 +1,136 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatConstants;
+import org.openecomp.sdc.heat.services.tree.HeatTreeManagerUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.impl.util.HeatValidationService;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+
+/**
+ * Created by TALIO on 2/22/2017.
+ */
+public class ResourceGroupResourceValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+ validateResourceGroupType(fileName, resourceEntry, globalContext);
+ }
+
+ private static void validateResourceGroupType(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Resource resourceDef = HeatTreeManagerUtil
+ .getResourceDef(fileName, resourceEntry.getKey(), resourceEntry.getValue(), globalContext);
+ if (resourceDef != null) {
+ if (Objects.nonNull(resourceDef.getType())
+ && HeatValidationService.isNestedResource(resourceDef.getType())) {
+ Optional<String> indexVarValue =
+ getResourceGroupIndexVarValue(resourceEntry, fileName, globalContext);
+ handleNestedResourceType(fileName, resourceEntry.getKey(), resourceDef, indexVarValue,
+ globalContext);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private static Optional<String> getResourceGroupIndexVarValue(
+ Map.Entry<String, Resource> resourceEntry, String fileName,
+ GlobalValidationContext globalContext) {
+ Object indexVar =
+ resourceEntry.getValue().getProperties().get(HeatConstants.INDEX_PROPERTY_NAME);
+ if (indexVar == null) {
+ return Optional.of(HeatConstants.RESOURCE_GROUP_INDEX_VAR_DEFAULT_VALUE);
+ }
+
+ if (indexVar instanceof String) {
+ return Optional.of((String) indexVar);
+ } else {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.RESOURCE_GROUP_INVALID_INDEX_VAR.getErrorMessage(),
+ resourceEntry.getKey()), LoggerTragetServiceName.VALIDATE_RESOURCE_GROUP_TYPE,
+ LoggerErrorDescription.INVALID_INDEX_VAR);
+ return Optional.empty();
+ }
+ }
+
+ private static void handleNestedResourceType(String fileName, String resourceName,
+ Resource resource, Optional<String> indexVarValue,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ validateAllPropertiesMatchNestedParameters(fileName, resourceName, resource, indexVarValue,
+ globalContext);
+ validateLoopsOfNestingFromFile(fileName, resource.getType(), globalContext);
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private static void validateAllPropertiesMatchNestedParameters(String fileName,
+ String resourceName,
+ Resource resource,
+ Optional<String> indexVarValue,
+ GlobalValidationContext
+ globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ String resourceType = resource.getType();
+ if (globalContext.getFileContextMap().containsKey(resourceType)) {
+ Set<String> propertiesNames =
+ resource.getProperties() == null ? null : resource.getProperties().keySet();
+ if (CollectionUtils.isNotEmpty(propertiesNames)) {
+ HeatValidationService
+ .checkNestedParameters(fileName, resourceType, resourceName, resource, propertiesNames,
+ indexVarValue, globalContext);
+ }
+ } else {
+ globalContext.addMessage(resourceType, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_NESTED_FILE.getErrorMessage(), resourceType),
+ LoggerTragetServiceName.VALIDATE_PROPERTIES_MATCH_NESTED_PARAMETERS,
+ LoggerErrorDescription.MISSING_FILE);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private static void validateLoopsOfNestingFromFile(String fileName, String resourceType,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ List<String> filesInLoop = new ArrayList<>(Collections.singletonList(fileName));
+ if (HeatValidationService
+ .isNestedLoopExistInFile(fileName, resourceType, filesInLoop, globalContext)) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.NESTED_LOOP.getErrorMessage(),
+ HeatValidationService.drawFilesLoop(filesInLoop)),
+ LoggerTragetServiceName.VALIDATE_NESTING_LOOPS, LoggerErrorDescription.NESTED_LOOP);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidator.java
new file mode 100644
index 0000000000..957658e8cc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidator.java
@@ -0,0 +1,81 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.Map;
+
+import static java.util.Objects.nonNull;
+
+/**
+ * Created by TALIO on 2/24/2017.
+ */
+public class ContrailServiceInstanceNamingConventionValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+ validateAvailabilityZoneName(fileName, resourceEntry, globalContext);
+ }
+
+ private void validateAvailabilityZoneName(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ String[] regexList = new String[]{"availability_zone_(\\d+)"};
+
+ if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ Object availabilityZoneMap =
+ resourceEntry.getValue().getProperties().containsKey("availability_zone") ? resourceEntry
+ .getValue().getProperties().get("availability_zone") : null;
+
+ if (nonNull(availabilityZoneMap)) {
+ if (availabilityZoneMap instanceof Map) {
+ String availabilityZoneName = ValidationUtil.getWantedNameFromPropertyValueGetParam
+ (availabilityZoneMap);
+
+ if (availabilityZoneName != null) {
+ if (!ValidationUtil.evalPattern(availabilityZoneName, regexList)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(),
+ ValidationUtil.getMessagePartAccordingToResourceType(resourceEntry),
+ "Availability Zone",
+ availabilityZoneName, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_AVAILABILITY_ZONE_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ }
+ }
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
+ "availability_zone", resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_AVAILABILITY_ZONE_NAME,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ }
+ }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidator.java
new file mode 100644
index 0000000000..05f2e4fcc7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidator.java
@@ -0,0 +1,209 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.apache.commons.lang3.tuple.Pair;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.regex.Pattern;
+
+import static java.util.Objects.nonNull;
+
+/**
+ * Created by TALIO on 2/24/2017.
+ */
+public class ContrailServiceTemplateNamingConventionValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+ validateServiceTemplateImageAndFlavor(fileName, resourceEntry, globalContext);
+ }
+
+ private void validateServiceTemplateImageAndFlavor(String fileName,
+ Map.Entry<String, Resource> entry,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (MapUtils.isEmpty(entry.getValue().getProperties())) {
+ return;
+ }
+
+ Pair<String, String> imagePair = new ImmutablePair<>("image_name", ".*_image_name");
+ Pair<String, String> flavorPair = new ImmutablePair<>("flavor", ".*_flavor_name");
+ List<Pair<String, String>> imageFlavorPairs = Arrays.asList(imagePair, flavorPair);
+
+ Map<String, Object> propertiesMap = entry.getValue().getProperties();
+
+ boolean errorExistValidatingImageOrFlavor = false;
+ for (Pair<String, String> imageOrFlavor : imageFlavorPairs) {
+ boolean errorExistWhenValidatingImageOrFlavorNames =
+ isErrorExistWhenValidatingImageOrFlavorNames(fileName, imageOrFlavor, entry,
+ propertiesMap, globalContext);
+ errorExistValidatingImageOrFlavor =
+ errorExistValidatingImageOrFlavor || errorExistWhenValidatingImageOrFlavorNames;
+ }
+
+ if (!errorExistValidatingImageOrFlavor) {
+ validateServiceTemplatePropertiesValuesVmtypesAreIdentical(fileName, entry, globalContext,
+ propertiesMap);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void validateServiceTemplatePropertiesValuesVmtypesAreIdentical(String fileName,
+ Map.Entry<String, Resource> entry,
+ GlobalValidationContext globalContext,
+ Map<String, Object> propertiesMap) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Pair<String, String> vmTypeImagePair = new ImmutablePair<>("image_name", "\\_image\\_name");
+ Pair<String, String> vmTypeFlavorPair = new ImmutablePair<>("flavor", "\\_flavor\\_name");
+ validatePropertiesValuesVmtypesAreIdentical(Arrays.asList(vmTypeImagePair, vmTypeFlavorPair),
+ fileName, entry, propertiesMap, globalContext);
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void validatePropertiesValuesVmtypesAreIdentical(List<Pair> propertiesToMatch,
+ String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, Object> propertiesMap,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (CollectionUtils.isEmpty(propertiesToMatch)) {
+ return;
+ }
+
+ String previousPropertyValueValue = null;
+ for (Pair propertyToMatch : propertiesToMatch) {
+ Optional<String> propertyVmType =
+ extractVmTypeFromProperty(fileName, resourceEntry, propertiesMap, globalContext,
+ propertyToMatch);
+ if (propertyVmType.isPresent()) {
+ String currentPropVmType = propertyVmType.get();
+ previousPropertyValueValue =
+ handleFirstIteration(previousPropertyValueValue, currentPropVmType);
+ if (addWarningIfCurrentVmTypeIsDifferentFromPrevious(fileName, resourceEntry, globalContext,
+ previousPropertyValueValue, currentPropVmType)) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private boolean addWarningIfCurrentVmTypeIsDifferentFromPrevious(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext,
+ String previousPropertyValueValue,
+ String currentPropVmType) {
+ if (!Objects.equals(previousPropertyValueValue, currentPropVmType)) {
+ globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(
+ Messages.CONTRAIL_VM_TYPE_NAME_NOT_ALIGNED_WITH_NAMING_CONVENSION
+ .getErrorMessage(), resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_CONTRAIL_VM_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ return true;
+ }
+
+ return false;
+ }
+
+ private boolean isErrorExistWhenValidatingImageOrFlavorNames(String fileName,
+ Pair<String, String> propertyNameAndRegex,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, Object> propertiesMap,
+ GlobalValidationContext globalContext) {
+ String propertyName = propertyNameAndRegex.getKey();
+ Object nameValue =
+ propertiesMap.get(propertyName) == null ? null : propertiesMap.get(propertyName);
+ String[] regexList = new String[]{propertyNameAndRegex.getValue()};
+
+ if (nonNull(nameValue)) {
+ if (nameValue instanceof Map) {
+ if (ValidationUtil.validateMapPropertyValue(fileName, resourceEntry, globalContext,
+ propertyName,
+ nameValue, regexList)) {
+ return true;
+ }
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(), propertyName,
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_IMAGE_AND_FLAVOR_NAME,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ return true;
+ }
+
+ return false;
+ }
+ return false;
+ }
+
+
+ private Optional<String> extractVmTypeFromProperty(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, Object> propertiesMap,
+ GlobalValidationContext globalContext,
+ Pair propertyKeyRegex) {
+ String propertyName = (String) propertyKeyRegex.getKey();
+ Object propertyVal = propertiesMap.get(propertyName);
+ if (nonNull(propertyVal)) {
+ if (propertyVal instanceof Map) {
+ String propertyValFromGetParam = ValidationUtil.getWantedNameFromPropertyValueGetParam
+ (propertyVal);
+ if (nonNull(propertyValFromGetParam)) {
+ Pattern pattern = Pattern.compile("" + propertyKeyRegex.getValue());
+ return Optional.ofNullable(pattern.split(propertyValFromGetParam)[0]);
+ }
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(), propertyName,
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_VM_SYNC_IN_IMAGE_FLAVOR,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ return Optional.empty();
+ }
+ }
+ return Optional.empty();
+ }
+
+ private String handleFirstIteration(String previousPropertyValueValue, String currentPropVmType) {
+ if (Objects.isNull(previousPropertyValueValue)) {
+ previousPropertyValueValue = currentPropVmType;
+ }
+
+ return previousPropertyValueValue;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java
new file mode 100644
index 0000000000..3401e15bd8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java
@@ -0,0 +1,177 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.type.NamingConventionValidationContext;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.List;
+import java.util.Map;
+
+import static java.util.Objects.nonNull;
+
+/**
+ * Created by TALIO on 2/23/2017.
+ */
+public class NeutronPortNamingConventionValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+
+ NamingConventionValidationContext namingConventionValidationContext =
+ (NamingConventionValidationContext)validationContext;
+ validatePortNetworkNamingConvention(fileName, namingConventionValidationContext.getHeatOrchestrationTemplate(), globalContext);
+ validateFixedIpsNamingConvention(fileName, namingConventionValidationContext.getHeatOrchestrationTemplate(), globalContext);
+ }
+
+ private void validatePortNetworkNamingConvention(String fileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+ String[] regexList = new String[]{".*_net_id", ".*_net_name", ".*_net_fqdn"};
+
+ heatOrchestrationTemplate
+ .getResources()
+ .entrySet()
+ .stream()
+ .filter(entry -> entry.getValue().getType()
+ .equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource()))
+ .forEach(entry -> entry.getValue()
+ .getProperties()
+ .entrySet()
+ .stream()
+ .filter(propertyEntry ->
+ propertyEntry.getKey().toLowerCase().equals("network".toLowerCase())
+ || propertyEntry.getKey().equals("network_id"))
+ .forEach(propertyEntry -> validateParamNamingConvention(fileName, entry.getKey(),
+ propertyEntry.getValue(), "Port", "Network", regexList,
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES, globalContext)));
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void validateFixedIpsNamingConvention(String fileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ heatOrchestrationTemplate.getResources()
+ .entrySet()
+ .stream()
+ .filter(entry -> HeatResourcesTypes.findByHeatResource(entry.getValue().getType()) != null)
+ .filter(entry -> HeatResourcesTypes.findByHeatResource(entry.getValue().getType())
+ .equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE))
+ .forEach(entry -> checkNeutronPortFixedIpsName(fileName, entry, globalContext));
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void checkNeutronPortFixedIpsName(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+ String[] regexList =
+ new String[]{"[^_]+_[^_]+_ips", "[^_]+_[^_]+_v6_ips", "[^_]+_[^_]+_ip_(\\d+)",
+ "[^_]+_[^_]+_v6_ip_(\\d+)"};
+
+ if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
+ return;
+ }
+
+ Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
+ Object fixedIps = propertiesMap.get("fixed_ips");
+ if (nonNull(fixedIps) && fixedIps instanceof List) {
+ List<Object> fixedIpsList = (List<Object>) fixedIps;
+ for (Object fixedIpsObject : fixedIpsList) {
+ Map.Entry<String, Object> fixedIpsEntry =
+ ((Map<String, Object>) fixedIpsObject).entrySet().iterator().next();
+ if (nonNull(fixedIpsEntry)) {
+ if (fixedIpsEntry.getValue() instanceof Map) {
+ String fixedIpsName = ValidationUtil.getWantedNameFromPropertyValueGetParam
+ (fixedIpsEntry
+ .getValue());
+ if (nonNull(fixedIpsName)) {
+ if (!ValidationUtil.evalPattern(fixedIpsName, regexList)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(),
+ "Port", "Fixed_IPS", fixedIpsName, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_FIXED_IPS_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ }
+ }
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
+ "fixed_ips", resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_FIXED_IPS_NAME,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ }
+ }
+ }
+ }
+ }
+
+ private void validateParamNamingConvention(String fileName, String resourceId,
+ Object propertyValue, String resourceType,
+ String wrongPropertyFormat, String[] regexList,
+ Messages message,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Object paramName;
+ if (propertyValue instanceof Map) {
+ paramName = ((Map) propertyValue).get("get_param");
+ if (paramName instanceof String) {
+ if (!ValidationUtil.evalPattern((String) paramName, regexList)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(message.getErrorMessage(), resourceType,
+ wrongPropertyFormat, (String) paramName, resourceId),
+ LoggerTragetServiceName.VALIDATE_PORT_NETWORK_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ }
+ }
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
+ "network or network_id", resourceId),
+ LoggerTragetServiceName.VALIDATE_PORT_NETWORK_NAME,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
new file mode 100644
index 0000000000..cf2751bef7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
@@ -0,0 +1,596 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.apache.commons.collections4.MapUtils;
+import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.apache.commons.lang3.tuple.Pair;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.DefinedHeatParameterTypes;
+import org.openecomp.sdc.heat.datatypes.model.Environment;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.type.NamingConventionValidationContext;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.TreeMap;
+
+import static java.util.Objects.nonNull;
+
+/**
+ * Created by TALIO on 2/23/2017.
+ */
+public class NovaServerNamingConventionGuideLineValidator implements ResourceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext) {
+
+ NamingConventionValidationContext namingConventionValidationContext =
+ (NamingConventionValidationContext)validationContext;
+ validateHeatNovaResource(fileName, namingConventionValidationContext.getEnvFileName(),
+ namingConventionValidationContext.getHeatOrchestrationTemplate(),
+ globalContext);
+ }
+
+ private void validateHeatNovaResource(String fileName, String envFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Map<String, String> uniqueResourcePortNetworkRole = new HashMap<>();
+ //if no resources exist return
+ if (MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
+ return;
+ }
+
+ heatOrchestrationTemplate
+ .getResources()
+ .entrySet()
+ .stream()
+ .filter(entry -> entry.getValue().getType()
+ .equals(HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource()))
+ .forEach( entry -> validateNovaServerResourceType(entry.getKey(), fileName, envFileName,
+ entry, uniqueResourcePortNetworkRole, heatOrchestrationTemplate, globalContext));
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void validateNovaServerResourceType(String resourceId, String fileName,
+ String envFileName,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, String> uniqueResourcePortNetworkRole,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ validateNovaServerResourceMetaData(fileName, resourceId,
+ heatOrchestrationTemplate.getResources().get(resourceId), globalContext);
+ validateNovaServerResourceNetworkUniqueRole(fileName, resourceId, uniqueResourcePortNetworkRole,
+ heatOrchestrationTemplate, globalContext);
+ validateAvailabilityZoneName(fileName, resourceEntry, globalContext);
+ validateNovaServerNameImageAndFlavor(fileName, envFileName, resourceEntry, globalContext);
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ @SuppressWarnings("unchecked")
+ private void validateNovaServerResourceMetaData(String fileName, String resourceId,
+ Resource resource,
+ GlobalValidationContext globalValidationContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Map<String, Object> novaServerProp = resource.getProperties();
+ Object novaServerPropMetadata;
+ if (MapUtils.isNotEmpty(novaServerProp)) {
+ novaServerPropMetadata = novaServerProp.get("metadata");
+ if (novaServerPropMetadata == null) {
+ globalValidationContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_NOVA_SERVER_METADATA.getErrorMessage(),
+ resourceId),
+ LoggerTragetServiceName.VALIDATE_NOVA_META_DATA_NAME,
+ LoggerErrorDescription.MISSING_NOVA_PROPERTIES);
+ } else if (novaServerPropMetadata instanceof Map) {
+ TreeMap<String, Object> propertyMap = new TreeMap(new Comparator<String>() {
+
+ @Override
+ public int compare(String o1, String o2) {
+ return o1.compareToIgnoreCase(o2);
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ return false;
+ }
+ });
+ propertyMap.putAll((Map) novaServerPropMetadata);
+ if (!propertyMap.containsKey("vf_module_id")) {
+ globalValidationContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.MISSING_NOVA_SERVER_VF_MODULE_ID.getErrorMessage(), resourceId),
+ LoggerTragetServiceName.VALIDATE_NOVA_META_DATA_NAME,
+ LoggerErrorDescription.MISSING_NOVA_PROPERTIES);
+ }
+ if (!propertyMap.containsKey("vnf_id")) {
+ globalValidationContext.addMessage(
+ fileName, ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_NOVA_SERVER_VNF_ID.getErrorMessage(),
+ resourceId),
+ LoggerTragetServiceName.VALIDATE_NOVA_META_DATA_NAME,
+ LoggerErrorDescription.MISSING_NOVA_PROPERTIES);
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void validateNovaServerResourceNetworkUniqueRole(String fileName, String resourceId,
+ Map<String, String> uniqueResourcePortNetworkRole,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalValidationContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ Object network;
+ String role = null;
+
+ Object propertyNetworkValue =
+ heatOrchestrationTemplate.getResources().get(resourceId).getProperties().get("networks");
+ if (propertyNetworkValue != null && propertyNetworkValue instanceof List) {
+ List<String> portResourceIdList =
+ getNovaNetworkPortResourceList(fileName, (List) propertyNetworkValue,
+ globalValidationContext);
+ for (String portResourceId : portResourceIdList) {
+ Resource portResource = heatOrchestrationTemplate.getResources().get(portResourceId);
+ if (portResource != null && portResource.getType()
+ .equals(HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource())) {
+ Map portNetwork =
+ getPortNetwork(fileName, resourceId, portResource, globalValidationContext);
+ if (Objects.nonNull(portNetwork)) {
+ network = portNetwork.get("get_param");
+ if (Objects.nonNull(network)) {
+ if (network instanceof String ){
+ role = getNetworkRole((String)network);
+ }else if (network instanceof List){
+ role = getNetworkRole((String)((List) network).get(0));
+ }
+ if (role != null && uniqueResourcePortNetworkRole.containsKey(role)) {
+ globalValidationContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.RESOURCE_CONNECTED_TO_TWO_EXTERNAL_NETWORKS_WITH_SAME_ROLE
+ .getErrorMessage(), resourceId, role),
+ LoggerTragetServiceName.VALIDATE_RESOURCE_NETWORK_UNIQUE_ROLW,
+ LoggerErrorDescription.RESOURCE_UNIQUE_NETWORK_ROLE);
+ } else {
+ uniqueResourcePortNetworkRole.put(role, portResourceId);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private List<String> getNovaNetworkPortResourceList(String filename, List propertyNetworkValue,
+ GlobalValidationContext globalContext) {
+ List<String> portResourceIdList = new ArrayList<>();
+ for (Object propValue : propertyNetworkValue) {
+ Object portPropValue = ((Map) propValue).get("port");
+ Collection<String> portResourceIds = HeatStructureUtil
+ .getReferencedValuesByFunctionName(filename, "get_resource", portPropValue,
+ globalContext);
+ if (portResourceIds != null) {
+ portResourceIdList.addAll(portResourceIds);
+ }
+ }
+
+ return portResourceIdList;
+ }
+
+ private String getNetworkRole(String network) {
+ if (network == null) {
+ return null;
+ }
+ if (network.contains("_net_id")) {
+ return network.substring(0, network.indexOf("_net_id"));
+ } else if (network.contains("net_name")) {
+ return network.substring(0, network.indexOf("_net_name"));
+ } else if (network.contains("net_fqdn")) {
+ return network.substring(0, network.indexOf("_net_fqdn"));
+ }
+ return null;
+ }
+
+ private Map getPortNetwork(String fileName, String resourceId, Resource portResource,
+ GlobalValidationContext globalValidationContext) {
+ Object portNetwork = portResource.getProperties().get("network_id");
+ if (portNetwork == null) {
+ portNetwork = portResource.getProperties().get("network");
+ }
+ if (!(portNetwork instanceof Map)) {
+ globalValidationContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
+ "network or network_id", resourceId),
+ LoggerTragetServiceName.VALIDATE_RESOURCE_NETWORK_UNIQUE_ROLW,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ return null;
+ }
+ return (Map) portNetwork;
+ }
+
+ private void validateAvailabilityZoneName(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ String[] regexList = new String[]{"availability_zone_(\\d+)"};
+
+ if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return;
+ }
+
+ Object availabilityZoneMap =
+ resourceEntry.getValue().getProperties().containsKey("availability_zone") ? resourceEntry
+ .getValue().getProperties().get("availability_zone") : null;
+
+ if (nonNull(availabilityZoneMap)) {
+ if (availabilityZoneMap instanceof Map) {
+ String availabilityZoneName = ValidationUtil.getWantedNameFromPropertyValueGetParam
+ (availabilityZoneMap);
+
+ if (availabilityZoneName != null) {
+ if (!ValidationUtil.evalPattern(availabilityZoneName, regexList)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(),
+ ValidationUtil.getMessagePartAccordingToResourceType(resourceEntry),
+ "Availability Zone",
+ availabilityZoneName, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_AVAILABILITY_ZONE_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ }
+ }
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
+ "availability_zone", resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_AVAILABILITY_ZONE_NAME,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ }
+ }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private void validateNovaServerNameImageAndFlavor(String fileName, String envFileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ String novaName =
+ validateNovaServerNamingConvention(fileName, envFileName, resourceEntry, globalContext);
+ Map<String, String> legalNovaNamingConventionMap =
+ validateImageAndFlavorFromNovaServer(fileName, resourceEntry, globalContext);
+
+ if (Objects.nonNull(novaName)) {
+ legalNovaNamingConventionMap.put("name", novaName);
+ }
+
+ if (legalNovaNamingConventionMap.keySet().size() > 1) {
+ validateNovaServerNameImageAndFlavorSync(fileName, resourceEntry,
+ legalNovaNamingConventionMap, globalContext);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private String validateNovaServerNamingConvention(String fileName, String envFileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return null;
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return checkIfNovaNameByGuidelines(fileName, envFileName, resourceEntry, globalContext);
+ }
+
+ private Map<String, String> validateImageAndFlavorFromNovaServer(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return null;
+ }
+
+ Pair<String, String> imagePair = new ImmutablePair<>("image", ".*_image_name");
+ Pair<String, String> flavorPair = new ImmutablePair<>("flavor", ".*_flavor_name");
+ List<Pair<String, String>> imageFlavorPairs = Arrays.asList(imagePair, flavorPair);
+ Map<String, Object> propertiesMap = resourceEntry.getValue().getProperties();
+ Map<String, String> imageAndFlavorLegalNames = new HashMap<>();
+
+ for (Pair<String, String> imageOrFlavor : imageFlavorPairs) {
+ boolean isErrorInImageOrFlavor =
+ isErrorExistWhenValidatingImageOrFlavorNames(fileName, imageOrFlavor, resourceEntry,
+ propertiesMap, globalContext);
+ if (!isErrorInImageOrFlavor) {
+ Object nameValue = propertiesMap.get(imageOrFlavor.getKey()) == null ? null
+ : propertiesMap.get(imageOrFlavor.getKey());
+ String imageOrFlavorName = ValidationUtil.getWantedNameFromPropertyValueGetParam(nameValue);
+ imageAndFlavorLegalNames.put(imageOrFlavor.getKey(), imageOrFlavorName);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return imageAndFlavorLegalNames;
+ }
+
+ private String checkIfNovaNameByGuidelines(String fileName, String envFileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+ if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
+ return null;
+ }
+ Object novaNameGetParam = getNovaServerName(resourceEntry);
+ String novaName = null;
+ if (nonNull(novaNameGetParam)) {
+ novaName =
+ checkNovaNameGetParamValueMap(fileName, novaNameGetParam, resourceEntry, globalContext);
+ checkIfNovaNameParameterInEnvIsStringOrList(fileName, envFileName, resourceEntry, novaName,
+ globalContext);
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(),
+ "nova server name", resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_NOVA_SERVER_NAME,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ }
+
+ return novaName;
+ }
+
+ private boolean isErrorExistWhenValidatingImageOrFlavorNames(String fileName,
+ Pair<String, String> propertyNameAndRegex,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, Object> propertiesMap,
+ GlobalValidationContext globalContext) {
+ String propertyName = propertyNameAndRegex.getKey();
+ Object nameValue =
+ propertiesMap.get(propertyName) == null ? null : propertiesMap.get(propertyName);
+ String[] regexList = new String[]{propertyNameAndRegex.getValue()};
+
+ if (nonNull(nameValue)) {
+ if (nameValue instanceof Map) {
+ if (ValidationUtil.validateMapPropertyValue(fileName, resourceEntry, globalContext,
+ propertyName,
+ nameValue, regexList)) {
+ return true;
+ }
+ } else {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSING_GET_PARAM.getErrorMessage(), propertyName,
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_IMAGE_AND_FLAVOR_NAME,
+ LoggerErrorDescription.MISSING_GET_PARAM);
+ return true;
+ }
+
+ return false;
+ }
+ return false;
+ }
+
+ private Object getNovaServerName(Map.Entry<String, Resource> resourceEntry) {
+ Object novaServerName = resourceEntry.getValue().getProperties().get("name");
+ Map novaNameMap;
+ if (nonNull(novaServerName)) {
+ if (novaServerName instanceof Map) {
+ novaNameMap = (Map) novaServerName;
+ return novaNameMap.get(ResourceReferenceFunctions.GET_PARAM.getFunction()) == null ? null
+ : novaNameMap.get(ResourceReferenceFunctions.GET_PARAM.getFunction());
+ }
+ }
+ return null;
+ }
+
+ @SuppressWarnings("unchecked")
+ private String checkNovaNameGetParamValueMap(String fileName, Object getParamValue,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+ if (getParamValue instanceof List) {
+ List<Object> getParamNameList = (List) getParamValue;
+ String[] regexName = new String[]{".*_names"};
+ return isNovaNameAsListLegal(fileName, getParamNameList, regexName, resourceEntry,
+ globalContext);
+ } else if (getParamValue instanceof String) {
+ String[] regexName = new String[]{".*_name_(\\d+)"};
+ return isNovaNameAsStringLegal(fileName, (String) getParamValue, regexName, resourceEntry,
+ globalContext);
+ }
+
+ return null;
+ }
+
+ private void checkIfNovaNameParameterInEnvIsStringOrList(String fileName, String envFileName,
+ Map.Entry<String, Resource> resourceEntry,
+ String novaServerName,
+ GlobalValidationContext globalContext) {
+ if (nonNull(envFileName)) {
+ Environment environment = ValidationUtil.validateEnvContent(envFileName, globalContext);
+
+ if (environment != null && MapUtils.isNotEmpty(environment.getParameters())) {
+ Object novaServerNameEnvValue =
+ environment.getParameters().containsKey(novaServerName) ? environment.getParameters()
+ .get(novaServerName) : null;
+ if (Objects.nonNull(novaServerNameEnvValue)) {
+ if (!DefinedHeatParameterTypes
+ .isNovaServerEnvValueIsFromRightType(novaServerNameEnvValue)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING, ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(), "Server",
+ "Name", novaServerNameEnvValue.toString(), resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_NOVA_SERVER_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ }
+ }
+ }
+ }
+ }
+
+ private String isNovaNameAsListLegal(String fileName, List<Object> getParamNameList,
+ String[] regexName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+
+ if (getParamNameList.size() != 2 || !ValidationUtil.evalPattern(getParamNameList.get(0),
+ regexName)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(), "Server",
+ "name", getParamNameList.toString(), resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_NOVA_SERVER_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ return null;
+ }
+
+ return (String) getParamNameList.get(0);
+ }
+
+ private String isNovaNameAsStringLegal(String fileName, String novaName, String[] regexName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext) {
+ if (!ValidationUtil.evalPattern(novaName, regexName)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(), "Server",
+ "name", novaName, resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_NOVA_SERVER_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ return null;
+ }
+ return novaName;
+ }
+
+ private void validateNovaServerNameImageAndFlavorSync(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ Map<String, String> legalNovaNamingConventionNames,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ List<String> vmNames = new LinkedList<>();
+
+ for (Map.Entry<String, String> nameEntry : legalNovaNamingConventionNames.entrySet()) {
+ vmNames.add(getVmName(nameEntry.getValue(), nameEntry.getKey()));
+ }
+
+ vmNames.removeIf(VMName -> VMName == null);
+
+ if (!isVmNameSync(vmNames)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.NOVA_NAME_IMAGE_FLAVOR_NOT_CONSISTENT.getErrorMessage(),
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_IMAGE_AND_FLAVOR_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ }
+
+ private String getVmName(String nameToGetVmNameFrom, String stringToGetIndexOf) {
+ int vmIndex =
+ nameToGetVmNameFrom == null ? -1 : nameToGetVmNameFrom.indexOf(stringToGetIndexOf);
+ String vmName = vmIndex < 0 ? null
+ : trimNonAlphaNumericCharactersFromEndOfString(nameToGetVmNameFrom.substring(0, vmIndex));
+
+ return vmName;
+
+ }
+
+ private boolean isVmNameSync(List<String> namesToCompare) {
+ int size = namesToCompare.size();
+ for (int i = 0; i < size - 1; i++) {
+ if (!namesToCompare.get(i).equals(namesToCompare.get(i + 1))) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private String trimNonAlphaNumericCharactersFromEndOfString(String toTrim) {
+ int stringSize = toTrim.length();
+ int stringLength = stringSize - 1;
+ String[] regexList = new String[]{"[^a-zA-Z0-9]"};
+
+ while (stringLength >= 0) {
+ if (!ValidationUtil.evalPattern(String.valueOf(toTrim.charAt(stringLength)), regexList)) {
+ break;
+ }
+ stringLength--;
+ }
+
+ return toTrim.substring(0, stringLength + 1);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/tos/ContrailResourcesMappingTo.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/tos/ContrailResourcesMappingTo.java
new file mode 100644
index 0000000000..f351af0992
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/tos/ContrailResourcesMappingTo.java
@@ -0,0 +1,118 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.validation.tos;
+
+import org.apache.commons.collections4.MapUtils;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+
+public class ContrailResourcesMappingTo {
+ private Map<String, List<String>> contrailV1Resources;
+ private Map<String, List<String>> contrailV2Resources;
+
+ /**
+ * Add ContrailV1Resource.
+ *
+ * @param fileName the file name
+ * @param resourceName the resource name
+ */
+ public void addContrailV1Resource(String fileName, String resourceName) {
+ if (MapUtils.isEmpty(contrailV1Resources)) {
+ contrailV1Resources = new HashMap<>();
+ }
+ contrailV1Resources.putIfAbsent(fileName, new ArrayList<>());
+ contrailV1Resources.get(fileName).add(resourceName);
+ }
+
+ /**
+ * Add ContrailV1Resource.
+ *
+ * @param fileName the file name
+ * @param resourceName the resource name
+ */
+ public void addContrailV2Resource(String fileName, String resourceName) {
+ if (MapUtils.isEmpty(contrailV2Resources)) {
+ contrailV2Resources = new HashMap<>();
+ }
+ contrailV2Resources.putIfAbsent(fileName, new ArrayList<>());
+ contrailV2Resources.get(fileName).add(resourceName);
+ }
+
+ public void addAll(ContrailResourcesMappingTo contrailResourcesMappingTo) {
+ addContrailV1Resources(contrailResourcesMappingTo.getContrailV1Resources());
+ addContrailV2Resources(contrailResourcesMappingTo.getContrailV2Resources());
+ }
+
+ public String fetchContrailV1Resources() {
+ return fetchContrailResources(contrailV1Resources);
+ }
+
+ public String fetchContrailV2Resources() {
+ return fetchContrailResources(contrailV2Resources);
+ }
+
+ private void addContrailV1Resources(Map<String, List<String>> contrailV1Resources) {
+ if (!MapUtils.isEmpty(contrailV1Resources)) {
+ for (Map.Entry<String, List<String>> fileResourcesEntry : contrailV1Resources.entrySet()) {
+ for (String resourceName : fileResourcesEntry.getValue()) {
+ this.addContrailV1Resource(fileResourcesEntry.getKey(), resourceName);
+ }
+ }
+ }
+ }
+
+ private void addContrailV2Resources(Map<String, List<String>> contrailV2Resources) {
+ if (!MapUtils.isEmpty(contrailV2Resources)) {
+ for (Map.Entry<String, List<String>> fileResourcesEntry : contrailV2Resources.entrySet()) {
+ for (String resourceName : fileResourcesEntry.getValue()) {
+ this.addContrailV2Resource(fileResourcesEntry.getKey(), resourceName);
+ }
+ }
+ }
+ }
+
+ private String fetchContrailResources(Map<String, List<String>> contrailResources) {
+ StringBuilder buffer = new StringBuilder();
+ if (MapUtils.isEmpty(contrailResources)) {
+ return "";
+ }
+ for (Map.Entry<String, List<String>> fileResourcesEntry : contrailResources.entrySet()) {
+ buffer.append(" file '").append(fileResourcesEntry.getKey()).append("' , resources :");
+ for (String resourceName : fileResourcesEntry.getValue()) {
+ buffer.append("'").append(resourceName).append("', ");
+ }
+ }
+ buffer.deleteCharAt(buffer.lastIndexOf(","));
+ return buffer.toString();
+ }
+
+ public Map<String, List<String>> getContrailV1Resources() {
+ return contrailV1Resources;
+ }
+
+ public Map<String, List<String>> getContrailV2Resources() {
+ return contrailV2Resources;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/type/ValidatorConstants.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/type/ValidatorConstants.java
new file mode 100644
index 0000000000..d512fb6cb3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/type/ValidatorConstants.java
@@ -0,0 +1,10 @@
+package org.openecomp.sdc.validation.type;
+
+/**
+ * Created by TALIO on 2/22/2017.
+ */
+public class ValidatorConstants {
+ public static final String Security_Group = "SecurityGroup";
+ public static final String Server_Group = "ServerGroup";
+ public static final String Network_Policy = "NetworkPolicy";
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ContrailValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ContrailValidatorTest.java
new file mode 100644
index 0000000000..30b7f68230
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ContrailValidatorTest.java
@@ -0,0 +1,99 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author Avrahamg
+ * @since October 06, 2016
+ */
+public class ContrailValidatorTest {
+
+ private Validator validator = new ContrailValidator();
+
+ @Test
+ public void testWarningMessageExistWhenConrailV1AndV2ResourcesCollidesInSameHeatFile() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/");
+ validateMessage(messages,
+ "WARNING: HEAT Package includes both Contrail 2 and Contrail 3 resources. Contrail 2 resources can be found in file 'first.yaml' , resources :'jsa_net1' . Contrail 3 resources can be found in file 'first.yaml' , resources :'jsa_net2' ",
+ "first.yaml", 2);
+ }
+
+ @Test
+ public void testWarningMessageExistWhenConrailV1AndV2ResourcesCollidesInDifferentHeatFiles() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/");
+ validateMessage(messages,
+ "WARNING: HEAT Package includes both Contrail 2 and Contrail 3 resources. Contrail 2 resources can be found in file 'first.yaml' , resources :'jsa_net1', 'jsa_net3' . Contrail 3 resources can be found in file 'second.yaml' , resources :'jsa_net2', 'jsa_net4', file 'first.yaml' , resources :'jsa_net5' ",
+ "first.yaml", 3);
+ }
+
+ @Test
+ public void testWarningMessageNotExistWhenConrailV1AndV2ResourcesCollidesInNonHeatFile() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/");
+ validateMessage(messages,
+ "WARNING: HEAT Package includes both Contrail 2 and Contrail 3 resources. Contrail 2 resources can be found in file 'first.yaml' , resources :'jsa_net1' . Contrail 3 resources can be found in file 'second.yaml' , resources :'jsa_net2' ",
+ "first.yaml", 2);
+ ;
+ }
+
+ @Test
+ public void testWarningMessageNotExistWhenOnlyConrailV1Resources() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/");
+ validateMessage(messages,
+ "WARNING: Contrail 2.x deprecated resource is in use, Resource ID [jsa_net1]", "first.yaml",
+ 2);
+ }
+
+
+ @Test
+ public void testWarningMessageOnResourceWithContrailType() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/");
+ validateMessage(messages,
+ "WARNING: Contrail 2.x deprecated resource is in use, Resource ID [template_NetworkPolicy]",
+ "first.yaml", 1);
+ ;
+ }
+
+ private void validateMessage(Map<String, MessageContainer> messages, String expectedMessage,
+ String fileNameWithErrorToCheck, int sizeOfFileMessageList) {
+ Assert.assertEquals(messages.size(), 1);
+ List<ErrorMessage> errorMessageList =
+ messages.get(fileNameWithErrorToCheck).getErrorMessageList();
+ Assert.assertEquals(errorMessageList.size(), sizeOfFileMessageList);
+ Assert.assertEquals(errorMessageList.get(0).getMessage(), expectedMessage);
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ErrorMessagesTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ErrorMessagesTest.java
index d762689049..345aad330d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ErrorMessagesTest.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ErrorMessagesTest.java
@@ -1,10 +1,31 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.validation.impl.validators;
-import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.errors.Messages;
import org.junit.Test;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.sdc.common.errors.Messages;
import org.testng.Assert;
+
public class ErrorMessagesTest {
@Test
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidatorTest.java
new file mode 100644
index 0000000000..7cee77c54c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ForbiddenResourceGuideLineValidatorTest.java
@@ -0,0 +1,55 @@
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/16/2017.
+ */
+public class ForbiddenResourceGuideLineValidatorTest {
+
+ private static String mockConfigFileName =
+ "/org/openecomp/validation/configuration/mock_resource_validator_configuration.json";
+
+ ForbiddenResourceGuideLineValidator forbiddenResourceGuideLineValidator = new
+ ForbiddenResourceGuideLineValidator();
+
+ @BeforeClass
+ public void init() throws IOException {
+ Map<String, Object> resourcesMap = ValidationTestUtil.getResourceMap(mockConfigFileName);
+
+ Map<String, Object> resourceBaseValidatorMap =
+ (Map<String, Object>) resourcesMap.get("forbiddenResourceGuideLineValidator");
+ String implementationClass =
+ (String) resourceBaseValidatorMap.get("implementationClass");
+ Map<String, Object> properties =
+ (Map<String, Object>) resourceBaseValidatorMap.get("properties");
+
+ forbiddenResourceGuideLineValidator.init(properties);
+ }
+
+ @Test
+ public void testFloatingIpResourceType() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(forbiddenResourceGuideLineValidator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+
+ messages = ValidationTestUtil.testValidator(forbiddenResourceGuideLineValidator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: OS::Neutron::FloatingIP is in use, Resource ID [FSB2]");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/HeatValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/HeatValidatorTest.java
new file mode 100644
index 0000000000..471ed7df10
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/HeatValidatorTest.java
@@ -0,0 +1,230 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.validation.impl.validators;
+
+
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+
+public class HeatValidatorTest {
+
+
+ private Validator validator = new HeatValidator();
+
+ @Test
+ public void testInvalidHeatFormat() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/heat_validator/invalid_heat_format/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Invalid HEAT format problem - [Cannot create property=kuku for JavaBean=Resource{type='null', properties=null, metadata=null, depends_on=null, update_policy='null', deletion_policy='null'}\n" +
+ " in 'reader', line 25, column 5:\n" +
+ " kuku: kuku\n" +
+ " ^\n" +
+ "Unable to find property 'kuku' on class: org.openecomp.sdc.heat.datatypes.model.Resource\n" +
+ " in 'reader', line 25, column 11:\n" +
+ " kuku: kuku\n" +
+ " ^\n" +
+ "]");
+ }
+
+ @Test
+ public void testDependsOn() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/heat_validator/depends_on_points_to_existing_resource/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: a Missing resource in depend On, Missing Resource ID [resource_not_exist]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "ERROR: a Missing resource in depend On, Missing Resource ID [resource_3]");
+ }
+
+
+ @Test
+ public void testResourcesReferencesExistInHeat() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Referenced resource - not_existing_resource not found");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "ERROR: invalid get_resource syntax is in use - null , get_resource function should get the resource id of the referenced resource");
+ }
+
+
+ @Test
+ public void testGetResourceValueIsValid() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/get_resource_value_valid/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 3);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: invalid get_resource syntax is in use - [param_1, param_2] , get_resource function should get the resource id of the referenced resource");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "ERROR: invalid get_resource syntax is in use - {get_param=param_1} , get_resource function should get the resource id of the referenced resource");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(2).getMessage(),
+ "ERROR: invalid get_resource syntax is in use - null , get_resource function should get the resource id of the referenced resource");
+ }
+
+ @Test
+ public void testTwoResourcesDoesNotHoldSameId() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+ }
+
+ @Test
+ public void negativeTestGetParamPointToExistingParameter() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Referenced parameter - not_existing_param_1 - not found, used in resource [server_pcrf_psm_001]");
+ }
+
+ @Test
+ public void testGetAttrFromNested() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: get_attr attribute not found, Attribute name [nested_output], Resource ID [server_pcrf_psm_001]");
+ }
+
+ @Test
+ public void testDefaultValueAlignWithType() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Parameter - pcrf_pps_image_name_1 default value not align with type number");
+ }
+
+
+ @Test
+ public void testEnvParametersMatchDefinedHeatParameterTypes() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Parameter env value pcrf_pps_flavor_name not align with type");
+
+ }
+
+ @Test
+ public void testReferencedArtifactsExist() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Missing artifact - nimbus-ethernet");
+
+ }
+
+ @Test
+ public void testEnvContentIsSubSetOfHeatParameters() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Env file hot-nimbus-pps_v1.0.env includes a parameter not in HEAT - mock_param");
+ }
+
+ @Test
+ public void testGetParamPseudoParameters() {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(new HeatValidator(),
+ "/org/openecomp/validation/validators/heat_validator/pseudo_parameters/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ }
+ @Test
+ public void testNoErrorWhenEmptyValueForParameterInEnv() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/heat_validator/env_empty_value/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ManifestValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ManifestValidatorTest.java
new file mode 100644
index 0000000000..3d560934dd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ManifestValidatorTest.java
@@ -0,0 +1,142 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.validation.impl.validators;
+
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+
+public class ManifestValidatorTest {
+
+
+ private ManifestValidator validator = new ManifestValidator();
+
+ @Test
+ public void testValidManifest() {
+
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/manifestValidator/validFiles");
+ Assert.assertNotNull(messages);
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+ }
+
+ @Test
+ public void testManifestMissingFileInZip() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new ManifestValidator(),
+ "/org/openecomp/validation/validators/manifestValidator/missingFileInZip");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertTrue(messages.containsKey("singleVol.yaml"));
+ ValidationTestUtil.validateErrorMessage(messages.get("singleVol.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.MISSING_FILE_IN_ZIP.getErrorMessage());
+ }
+
+ @Test
+ public void testInvalidManifest() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new ManifestValidator(),
+ "/org/openecomp/validation/validators/manifestValidator/invalidManifest");
+ Assert.assertNotNull(messages);
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertTrue(messages.containsKey(SdcCommon.MANIFEST_NAME));
+ ValidationTestUtil.validateErrorMessage(
+ messages.get(SdcCommon.MANIFEST_NAME).getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.INVALID_MANIFEST_FILE.getErrorMessage(), SdcCommon.MANIFEST_NAME);
+
+ }
+
+ @Test
+ public void testMissingFileInManifest() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new ManifestValidator(),
+ "/org/openecomp/validation/validators/manifestValidator/missingFileInManifest");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertTrue(messages.containsKey("extraFile.env"));
+ ValidationTestUtil.validateErrorMessage(messages.get("extraFile.env").getErrorMessageList().get(0).getMessage(),
+ "WARNING: " + Messages.MISSING_FILE_IN_MANIFEST.getErrorMessage());
+
+ }
+
+ @Test
+ public void testInvalidFileTypeInManifest() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new ManifestValidator(),
+ "/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 4);
+ Assert.assertTrue(messages.containsKey("single.env.illegalSuffix"));
+ Assert.assertTrue(messages.containsKey("illegalTypeFile.yaml"));
+ Assert.assertTrue(messages.containsKey("single.yaml.illegalSuffix"));
+ Assert.assertTrue(messages.containsKey("singleVol.yaml.illegalSuffix"));
+ ValidationTestUtil.validateErrorMessage(
+ messages.get("single.env.illegalSuffix").getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.WRONG_ENV_FILE_EXTENSION.getErrorMessage(),
+ "single.env.illegalSuffix");
+ ValidationTestUtil.validateErrorMessage(
+ messages.get("illegalTypeFile.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.INVALID_FILE_TYPE.getErrorMessage(), "illegalTypeFile.yaml");
+ ValidationTestUtil.validateErrorMessage(
+ messages.get("single.yaml.illegalSuffix").getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.WRONG_HEAT_FILE_EXTENSION.getErrorMessage(),
+ "single.yaml.illegalSuffix");
+ ValidationTestUtil.validateErrorMessage(
+ messages.get("singleVol.yaml.illegalSuffix").getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.WRONG_HEAT_FILE_EXTENSION.getErrorMessage(),
+ "singleVol.yaml.illegalSuffix");
+
+ }
+
+
+ @Test
+ public void testMissingFileInManifestAndInZip() {
+
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new ManifestValidator(),
+ "/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 2);
+ Assert.assertTrue(messages.containsKey("extraFile.env"));
+ Assert.assertTrue(messages.containsKey("singleVol.yaml"));
+ ValidationTestUtil.validateErrorMessage(messages.get("extraFile.env").getErrorMessageList().get(0).getMessage(),
+ "WARNING: " + Messages.MISSING_FILE_IN_MANIFEST.getErrorMessage());
+ ValidationTestUtil.validateErrorMessage(messages.get("singleVol.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.MISSING_FILE_IN_ZIP.getErrorMessage());
+
+ }
+
+
+ @Test
+ public void testEnvInRoot() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(new ManifestValidator(),
+ "/org/openecomp/validation/validators/manifestValidator/envInRoot");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertTrue(messages.containsKey("second.env"));
+ ValidationTestUtil.validateErrorMessage(messages.get("second.env").getErrorMessageList().get(0).getMessage(),
+ "ERROR: ENV file must be associated to a HEAT file");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java
new file mode 100644
index 0000000000..7d994e4f13
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/SharedResourceGuideLineValidatorTest.java
@@ -0,0 +1,155 @@
+package org.openecomp.sdc.validation.impl.validators;
+
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/15/2017.
+ */
+public class SharedResourceGuideLineValidatorTest {
+
+ Validator validator = new SharedResourceGuideLineValidator();
+
+ @Test
+ public void testBaseHeatExposeNetwork() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [SecurityGroup_expose]");
+ }
+
+ @Test
+ public void testBaseHeatExposeNetworkAndVolume() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [volume_expose]");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [net_expose]");
+ }
+
+ @Test
+ public void testBaseHeatExposeServerGroup() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [ServerGroup_expose]");
+ }
+
+ @Test
+ public void testBaseHeatExposeSecurityGroup() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [SecurityGroup_expose]");
+ }
+
+ @Test
+ public void testBaseHeatExposeVolume() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [volume_expose]");
+ }
+
+ @Test
+ public void testHeatVolumeExpose() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("firstVol.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("firstVol.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Volume is not defined as output and thus cannot be attached volume_expose");
+
+ }
+
+ @Test
+ public void testResourceIsExposedByCallingGetResourceNotFromOutput() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+
+ messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("base_virc.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("base_virc.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Resource is not defined as output and thus cannot be Shared, Resource ID [virc_RSG]");
+ }
+
+ @Test
+ public void testMissingBaseHeat() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Missing Base HEAT. Pay attention that without Base HEAT, there will be no shared resources");
+ }
+
+ @Test
+ public void testMultiBaseHeat() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(validator,
+ "/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Multi Base HEAT. Expected only one. Files [second.yaml,first.yaml].");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ValidatorBaseTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ValidatorBaseTest.java
deleted file mode 100644
index f9c5bf423b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/ValidatorBaseTest.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package org.openecomp.sdc.validation.impl.validators;
-
-import org.openecomp.core.utilities.file.FileUtils;
-import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
-import org.openecomp.core.validation.interfaces.Validator;
-import org.openecomp.core.validation.types.GlobalValidationContext;
-import org.openecomp.core.validation.types.MessageContainer;
-import org.testng.Assert;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-
-public abstract class ValidatorBaseTest {
-
- private static GlobalValidationContext createGlobalContextFromPath(String path) {
- GlobalValidationContext globalValidationContext = new GlobalValidationContext();
- Map<String, byte[]> contentMap = getContentMapByPath(path);
- if (contentMap == null) {
- return null;
- }
- contentMap.entrySet().stream()
- .forEach(entry -> globalValidationContext.addFileContext(entry.getKey(), entry.getValue()));
-
- return globalValidationContext;
- }
-
-
- // New test base implementation
-
- private static Map<String, byte[]> getContentMapByPath(String path) {
- Map<String, byte[]> contentMap = new HashMap<>();
- byte[] fileContent;
- FileInputStream fis;
- URL url = ValidatorBaseTest.class.getResource(path);
- File pathFile = new File(url.getFile());
- File[] files;
- if (pathFile.isDirectory()) {
- files = pathFile.listFiles();
- } else {
- files = new File[]{pathFile};
- }
-
- if (files == null || files.length == 0) {
- return null;
- }
-
- for (File file : files) {
- try {
- fis = new FileInputStream(file);
- fileContent = FileUtils.toByteArray(fis);
- contentMap.put(file.getName(), fileContent);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- return contentMap;
- }
-
- public abstract Map<String, MessageContainer> runValidation(String path);
-
- protected Map<String, MessageContainer> testValidator(Validator validator, String path) {
-
- GlobalValidationContext globalValidationContext = createGlobalContextFromPath(path);
- validator.validate(globalValidationContext);
-
- assert globalValidationContext != null;
- return globalValidationContext.getContextMessageContainers();
-
-
- }
-
- protected void validateErrorMessage(String actualMessage, String expected, String... params) {
- Assert.assertEquals(actualMessage.replace("\n", "").replace("\r", ""),
- ErrorMessagesFormatBuilder.getErrorWithParameters(expected, params).replace("\n", "")
- .replace("\r", ""));
-
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/YamlValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/YamlValidatorTest.java
index abce8ec88c..32e847004c 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/YamlValidatorTest.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/YamlValidatorTest.java
@@ -1,22 +1,40 @@
-package org.openecomp.sdc.validation.impl.validators.validators;
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.validation.impl.validators;
-import org.openecomp.sdc.validation.impl.validators.ValidatorBaseTest;
-import org.openecomp.sdc.validation.impl.validators.YamlValidator;
-import org.openecomp.core.validation.errors.Messages;
import org.openecomp.core.validation.types.MessageContainer;
-
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
import org.testng.Assert;
import org.testng.annotations.Test;
import java.util.Map;
-public class YamlValidatorTest extends ValidatorBaseTest {
+public class YamlValidatorTest {
public Map<String, MessageContainer> runValidation(String path) {
YamlValidator validator = new YamlValidator();
- return testValidator(validator, path);
+ return ValidationTestUtil.testValidator(validator, path);
}
@@ -24,21 +42,21 @@ public class YamlValidatorTest extends ValidatorBaseTest {
public void testValidYaml() {
Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml");
+ "/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml");
Assert.assertNotNull(messages);
Assert.assertEquals(messages.size(), 0);
}
-// @Test
+ @Test
public void testInvalidTabYaml() {
Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml");
+ "/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml");
Assert.assertNotNull(messages);
Assert.assertEquals(messages.size(), 1);
- validateErrorMessage(
+ ValidationTestUtil.validateErrorMessage(
messages.get("invalidYamlTab.yaml").getErrorMessageList().get(0).getMessage(),
- Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
+ "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
"while scanning for the next tokenfound character '\\t(TAB)' that cannot start any token. (Do not use \\t(TAB) for indentation) in 'reader', line 14, column 5: \tadmin_state_up: true ^");
}
@@ -48,13 +66,13 @@ public class YamlValidatorTest extends ValidatorBaseTest {
public void testDuplicateKeyInYaml() {
Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/yaml_validator/duplicateKey.yaml");
+ runValidation("/org/openecomp/validation/validators/yaml_validator/duplicateKey.yaml");
Assert.assertNotNull(messages);
Assert.assertEquals(messages.size(), 1);
Assert.assertTrue(messages.containsKey("duplicateKey.yaml"));
- validateErrorMessage(
+ ValidationTestUtil.validateErrorMessage(
messages.get("duplicateKey.yaml").getErrorMessageList().get(0).getMessage(),
- Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
+ "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
"while parsing MappingNode in 'reader', line 6, column 3: Key_1_unique: ^duplicate key: Key_2_not_unique in 'reader', line 31, column 1: ^");
}
@@ -62,14 +80,14 @@ public class YamlValidatorTest extends ValidatorBaseTest {
@Test
public void testInvalidYamlStructure() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/yaml_validator/invalidYamlStructure.yaml");
+ Map<String, MessageContainer> messages = runValidation(
+ "/org/openecomp/validation/validators/yaml_validator/invalidYamlStructure.yaml");
Assert.assertNotNull(messages);
Assert.assertEquals(messages.size(), 1);
Assert.assertTrue(messages.containsKey("invalidYamlStructure.yaml"));
- validateErrorMessage(
+ ValidationTestUtil.validateErrorMessage(
messages.get("invalidYamlStructure.yaml").getErrorMessageList().get(0).getMessage(),
- Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
+ "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
"while parsing a block mapping in 'reader', line 8, column 7: admin_state_up: true ^expected <block end>, but found BlockEntry in 'reader', line 10, column 7: - shared: true ^");
}
@@ -77,12 +95,12 @@ public class YamlValidatorTest extends ValidatorBaseTest {
public void testEmptyYaml() {
Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/yaml_validator/emptyYaml.yaml");
+ runValidation("/org/openecomp/validation/validators/yaml_validator/emptyYaml.yaml");
Assert.assertNotNull(messages);
Assert.assertEquals(messages.size(), 1);
Assert.assertTrue(messages.containsKey("emptyYaml.yaml"));
- validateErrorMessage(messages.get("emptyYaml.yaml").getErrorMessageList().get(0).getMessage(),
- Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
+ ValidationTestUtil.validateErrorMessage(messages.get("emptyYaml.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: " + Messages.INVALID_YAML_FORMAT_REASON.getErrorMessage(),
Messages.EMPTY_YAML_FILE.getErrorMessage());
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidatorTest.java
new file mode 100644
index 0000000000..a03120c5d6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ContrailNetworkPolicyResourceValidatorTest.java
@@ -0,0 +1,36 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class ContrailNetworkPolicyResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ ContrailNetworkPolicyResourceValidator resourceValidator = new
+ ContrailNetworkPolicyResourceValidator();
+
+ @Test
+ public void testNetworkPolicyAssociatedWithAttachPolicy() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator, resourceValidator
+ , HeatResourcesTypes.CONTRAIL_NETWORK_RULE_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: NetworkPolicy not in use, Resource Id [not_used_server_pcrf_policy]");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidatorTest.java
new file mode 100644
index 0000000000..96aa631a69
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NestedResourceValidatorTest.java
@@ -0,0 +1,70 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class NestedResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ NestedResourceValidator resourceValidator = new NestedResourceValidator();
+
+ @Test
+ public void testNoLoopsNesting() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, null,
+ "/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 4);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Nested files loop - [hot-nimbus-psm_v1.0.yaml -- nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml -- hot-nimbus-psm_v1.0.yaml]");
+
+ Assert.assertEquals(
+ messages.get("nested-points-to-hot-nimbus-psm.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(
+ messages.get("nested-points-to-hot-nimbus-psm.yaml").getErrorMessageList().get(0)
+ .getMessage(),
+ "ERROR: Nested files loop - [nested-points-to-hot-nimbus-psm.yaml -- hot-nimbus-psm_v1.0.yaml -- nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml]");
+ Assert.assertEquals(
+ messages.get("nested-points-to-hot-nimbus-psm.yaml").getErrorMessageList().get(1)
+ .getMessage(),
+ "ERROR: Nested files loop - [nested-points-to-hot-nimbus-psm.yaml -- nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml]");
+
+ Assert.assertEquals(messages.get("yaml-point-to-itself.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("yaml-point-to-itself.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Nested files loop - [yaml-point-to-itself.yaml -- yaml-point-to-itself.yaml]");
+
+ Assert.assertEquals(messages.get("nested-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("nested-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Nested files loop - [nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml -- hot-nimbus-psm_v1.0.yaml -- nested-psm_v1.0.yaml]");
+ }
+
+ @Test
+ public void testPropertiesMatchNestedParameters() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, null,
+ "/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Referenced parameter not found in nested file - nested-pps_v1.0.yaml, parameter name [server_pcrf_pps_001], Resource ID [parameter_not_existing_in_nested]");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidatorTest.java
new file mode 100644
index 0000000000..359803f473
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronPortResourceValidatorTest.java
@@ -0,0 +1,35 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class NeutronPortResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ NeutronPortResourceValidator resourceValidator = new NeutronPortResourceValidator();
+
+ @Test
+ public void testOnlyOneNovaPointsToOnePort() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Resource Port oam1_int_port exceed allowed relations from NovaServer");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidatorTest.java
new file mode 100644
index 0000000000..b8e8d1ee19
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NeutronSecurityGroupResourceValidatorTest.java
@@ -0,0 +1,53 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class NeutronSecurityGroupResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ NeutronSecurityGroupResourceValidator resourceValidator = new
+ NeutronSecurityGroupResourceValidator();
+
+ @Test
+ public void testSecurityGroupBaseFileNoPorts() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator,
+ HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("baseFile.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("baseFile.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: SecurityGroup not in use, Resource Id [jsa_security_group3]");
+ }
+
+ @Test
+ public void testSecurityGroupsCalledByPort() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator,
+ HeatResourcesTypes.NEUTRON_SECURITY_GROUP_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: SecurityGroup not in use, Resource Id [not_used_security_group]");
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidatorTest.java
new file mode 100644
index 0000000000..b0e6ebf631
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerGroupResourceValidatorTest.java
@@ -0,0 +1,51 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class NovaServerGroupResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ NovaServerGroupResourceValidator resourceValidator = new NovaServerGroupResourceValidator();
+
+ @Test
+ public void testPolicyIsAffinityOrAntiAffinity() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_GROUP_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Wrong policy in server group - pcrf_server_policies_1");
+ }
+
+ @Test
+ public void testServerGroupCalledByServer() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_GROUP_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: ServerGroup not in use, Resource Id [not_used_server_group]");
+
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidatorTest.java
new file mode 100644
index 0000000000..94bdf1e52f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/NovaServerResourceValidatorTest.java
@@ -0,0 +1,53 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class NovaServerResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ NovaServerResourceValidator resourceValidator = new NovaServerResourceValidator();
+
+ @Test
+ public void testNovaPropertiesHasAssignedValue() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Missing both Image and Flavor in NOVA Server, Resource ID [nova_server_resource_missing_both]");
+ }
+
+ @Test
+ public void testServerGroupsPointedByServersDefinedCorrectly() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Missing server group definition - BE_Affinity_2, nova_server_1");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "ERROR: Missing server group definition - BE_Affinity_2, nova_server_2");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidatorTest.java
new file mode 100644
index 0000000000..4b255ae967
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/heatresource/ResourceGroupResourceValidatorTest.java
@@ -0,0 +1,106 @@
+package org.openecomp.sdc.validation.impl.validators.heatresource;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class ResourceGroupResourceValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ ResourceGroupResourceValidator resourceValidator = new ResourceGroupResourceValidator();
+
+ @Test
+ public void testResourceGroupWithInvalidIndexVar() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 8);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Wrong value assigned to a ResourceGroup index_var property (functions are not allowed but only strings), Resource ID [resource_with_resources_group_1]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Wrong value type assigned to a nested input parameter, nested resource [resource_with_resources_group_2], property name [index_boolean], nested file [yamlFile.yaml]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(2).getMessage(),
+ "WARNING: Wrong value type assigned to a nested input parameter, nested resource [resource_with_resources_group_3], property name [index_boolean], nested file [yamlFile.yaml]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(3).getMessage(),
+ "WARNING: Wrong value type assigned to a nested input parameter, nested resource [resource_with_resources_group_3], property name [index_number], nested file [yamlFile.yaml]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(4).getMessage(),
+ "WARNING: Wrong value type assigned to a nested input parameter, nested resource [resource_with_resources_group_4], property name [index_boolean], nested file [yamlFile.yaml]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(5).getMessage(),
+ "WARNING: Wrong value type assigned to a nested input parameter, nested resource [resource_with_resources_group_5], property name [index_boolean], nested file [yamlFile.yaml]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(6).getMessage(),
+ "WARNING: Wrong value type assigned to a nested input parameter, nested resource [resource_with_resources_group_5], property name [index_number], nested file [yamlFile.yaml]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(7).getMessage(),
+ "ERROR: Wrong value assigned to a ResourceGroup index_var property (functions are not allowed but only strings), Resource ID [resource_with_resources_group_6]");
+ }
+
+ @Test
+ public void testResourceGroupWithInvalidType() {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 3);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: OS::Heat::ResourceGroup resource with resource_def which is not pointing to nested heat file is not supported, Resource ID [resource_with_resources_group_1], resource_def type [{get_param=pcrf_vnf_id}]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: OS::Heat::ResourceGroup resource with resource_def which is not pointing to nested heat file is not supported, Resource ID [resource_with_resources_group_2], resource_def type [OS::Nova::Server]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(2).getMessage(),
+ "WARNING: A resource has an invalid or unsupported type - null, Resource ID [resource_with_resources_group_3]");
+ }
+
+ @Test
+ public void testResourcesGroupWithNested() throws IOException {
+ Map<String, MessageContainer> messages =ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 3);
+
+ Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Referenced parameter not found in nested file - nested-from-resources-group.yaml, parameter name [resource_with_resources_group], Resource ID [property_not_in_nested]");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: OS::Heat::ResourceGroup resource with resource_def which is not pointing to nested heat file is not supported, Resource ID [resource_without_resources_group], resource_def type [OS::Nova::Server]");
+
+ Assert.assertEquals(messages.get("nested-pps_v1.0.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("nested-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Nested files loop - [nested-pps_v1.0.yaml -- nested-from-resources-group.yaml -- hot-nimbus-pps_v1.0.yaml -- nested-pps_v1.0.yaml]");
+
+ Assert.assertEquals(messages.get("nested-not-exist.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(
+ messages.get("nested-not-exist.yaml").getErrorMessageList().get(0).getMessage(),
+ "ERROR: Missing nested file - nested-not-exist.yaml");
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidatorTest.java
new file mode 100644
index 0000000000..2e61df2b16
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceInstanceNamingConventionValidatorTest.java
@@ -0,0 +1,41 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class ContrailServiceInstanceNamingConventionValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ ContrailServiceInstanceNamingConventionValidator resourceValidator = new
+ ContrailServiceInstanceNamingConventionValidator();
+
+ @Test
+ public void testContrailServiceInstanceAvailabilityZoneNotAlignedWithNamingConvention() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_INSTANCE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Service Instance 'Availability Zone' Parameter Name not aligned with Guidelines, Parameter Name [availability_zone_1a], Resource ID [service_instance_1]. As a result, VF/VFC Profile may miss this information");
+ }
+
+ @Test
+ public void testContrailServiceInstanceAvailabilityZoneAlignedWithNamingConvention() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_INSTANCE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidatorTest.java
new file mode 100644
index 0000000000..55a3f31b19
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/ContrailServiceTemplateNamingConventionValidatorTest.java
@@ -0,0 +1,58 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.HeatResourceValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class ContrailServiceTemplateNamingConventionValidatorTest {
+
+ HeatResourceValidator baseValidator = new HeatResourceValidator();
+ ContrailServiceTemplateNamingConventionValidator resourceValidator = new
+ ContrailServiceTemplateNamingConventionValidator();
+
+ @Test
+ public void testContrailServiceTemplateImageAndFlavorNamesAlignedWithNamingConventionButDifferentVmType() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(
+ messages.get(messages.keySet().iterator().next()).getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Service Template naming convention in Image and Flavor properties is not consistent in Resource, Resource ID service_template");
+ }
+
+ @Test
+ public void testContrailServiceTemplateImageAndFlavorNamesNotAlignedWithNamingConvention() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Service Template 'image_name' Parameter Name not aligned with Guidelines, Parameter Name [st_imaage_name], Resource ID [service_template]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Service Template 'flavor' Parameter Name not aligned with Guidelines, Parameter Name [st_flavaor_name], Resource ID [service_template]. As a result, VF/VFC Profile may miss this information");
+ }
+
+ @Test
+ public void testContrailServiceTemplateImageAndFlavorNamesAlignedWithNamingConvention() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java
new file mode 100644
index 0000000000..8aedf8219c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java
@@ -0,0 +1,64 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.openecomp.sdc.validation.impl.validators.NamingConventionGuideLineValidator;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.NamingConventionGuideLineValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class NeutronPortNamingConventionValidatorTest {
+
+ NamingConventionGuideLineValidator baseValidator = new NamingConventionGuideLineValidator();
+ NeutronPortNamingConventionValidator resourceValidator = new
+ NeutronPortNamingConventionValidator();
+
+ @Test
+ public void testHeatPortNetworkNamingConvention() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 3);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Port 'Network' Parameter Name not aligned with Guidelines, Parameter Name [not_valid_network_name], Resource ID [port_resource]. As a result, VF/VFC Profile may miss this information");
+ }
+
+ @Test
+ public void testNeutronFixedIpName() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NEUTRON_PORT_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 4);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_v6_ip_a], Resource ID [port_resource_0]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [indx], Resource ID [port_resource_1]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(2).getMessage(),
+ "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_ipz], Resource ID [port_resource_2]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(3).getMessage(),
+ "WARNING: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_v0_ip_3], Resource ID [port_resource_2]. As a result, VF/VFC Profile may miss this information");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java
new file mode 100644
index 0000000000..25b98bb6fb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java
@@ -0,0 +1,154 @@
+package org.openecomp.sdc.validation.impl.validators.namingconvention;
+
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.validation.impl.validators.NamingConventionGuideLineValidator;
+import org.openecomp.sdc.validation.util.ValidationTestUtil;
+import org.testng.Assert;
+import org.testng.annotations.Test;
+
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/28/2017.
+ */
+public class NovaServerNamingConventionGuideLineValidatorTest {
+
+ NamingConventionGuideLineValidator baseValidator = new NamingConventionGuideLineValidator();
+ NovaServerNamingConventionGuideLineValidator resourceValidator = new
+ NovaServerNamingConventionGuideLineValidator();
+
+ @Test
+ public void testHeatNovaServerMetaDataValidation() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Missing VNF_ID in Metadata property, Resource ID [FSB2]");
+ }
+
+ @Test
+ public void testNovaServerAvailabilityZoneName() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 3);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Server 'Availability Zone' Parameter Name not aligned with Guidelines, Parameter Name [availability_zone_a], Resource ID [FSB2]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Server 'Availability Zone' Parameter Name not aligned with Guidelines, Parameter Name [availability_zone], Resource ID [FSB3]. As a result, VF/VFC Profile may miss this information");
+ }
+
+ @Test
+ public void testNovaImageAndFlavorNames() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Server 'flavor' Parameter Name not aligned with Guidelines, Parameter Name [fsb2-flavor], Resource ID [FSB2]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Server 'image' Parameter Name not aligned with Guidelines, Parameter Name [fsb2-image], Resource ID [FSB3]. As a result, VF/VFC Profile may miss this information");
+ }
+
+ @Test
+ public void testNovaResourceNetworkUniqueRole() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: A resource is connected twice to the same network role, Network Role [FSB2], Resource ID [Internal1]");
+ }
+
+ @Test
+ public void testNovaServerName() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 0);
+
+ messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/");
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Server 'name' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_pps_server_4], Resource ID [FSB2]. As a result, VF/VFC Profile may miss this information");
+ }
+
+ @Test
+ public void testVMNameSyncInNova() {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 4);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Server 'name' Parameter Name not aligned with Guidelines, Parameter Name [CE_server_name], Resource ID [FSB2_legal_2]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Server 'flavor' Parameter Name not aligned with Guidelines, Parameter Name [fsb_flavor_names], Resource ID [FSB2_legal_3]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(2).getMessage(),
+ "WARNING: Nova Server naming convention in image, flavor and name properties is not consistent, Resource ID [FSB2_illegal_1]");
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(3).getMessage(),
+ "WARNING: Nova Server naming convention in image, flavor and name properties is not consistent, Resource ID [FSB2_illegal_2]");
+
+ }
+
+ @Test
+ public void testAvailabilityZoneName() throws IOException {
+ Map<String, MessageContainer> messages = ValidationTestUtil.testValidator(baseValidator,
+ resourceValidator, HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE.getHeatResource(),
+ "/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input");
+
+ Assert.assertNotNull(messages);
+ Assert.assertEquals(messages.size(), 1);
+
+ Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
+ "WARNING: Server 'Availability Zone' Parameter Name not aligned with Guidelines, Parameter Name [availability_zone_name], Resource ID [availability_zone_illegal_name_1]. As a result, VF/VFC Profile may miss this information");
+ Assert.assertEquals(
+ messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
+ "WARNING: Server 'Availability Zone' Parameter Name not aligned with Guidelines, Parameter Name [availability_zone], Resource ID [availability_zone_illegal_name_2]. As a result, VF/VFC Profile may miss this information");
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompGuideLineValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompGuideLineValidatorTest.java
deleted file mode 100644
index 44e9a3a580..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompGuideLineValidatorTest.java
+++ /dev/null
@@ -1,281 +0,0 @@
-package org.openecomp.sdc.validation.impl.validators.validators;
-
-import org.openecomp.sdc.validation.impl.validators.EcompGuideLineValidator;
-
-import org.openecomp.sdc.validation.impl.validators.ValidatorBaseTest;
-import org.openecomp.core.validation.types.MessageContainer;
-
-import org.testng.Assert;
-import org.testng.annotations.Test;
-
-import java.util.Map;
-
-public class EcompGuideLineValidatorTest extends ValidatorBaseTest {
-
- @Test
- public void testMissingBaseHeat() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().get(0).getMessage(),
- "Missing Base HEAT. Pay attention that without Base HEAT, there will be no shared resources");
- }
-
- @Test
- public void testMultiBaseHeat() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("MANIFEST.json").getErrorMessageList().get(0).getMessage(),
- "Multi Base HEAT. Expected only one. Files [second.yaml,first.yaml].");
- }
-
- @Test
- public void testBaseHeatExposeVolume() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Resource is not defined as output and thus cannot be Shared. resource id - volume_expose");
- }
-
- @Test
- public void testBaseHeatExposeServerGroup() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Resource is not defined as output and thus cannot be Shared. resource id - ServerGroup_expose");
- }
-
- @Test
- public void testBaseHeatExposeSecurityGroup() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Resource is not defined as output and thus cannot be Shared. resource id - SecurityGroup_expose");
- }
-
-
- @Test
- public void testBaseHeatExposeNetwork() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Resource is not defined as output and thus cannot be Shared. resource id - SecurityGroup_expose");
- }
-
- @Test
- public void testBaseHeatExposeNetworkAndVolume() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Resource is not defined as output and thus cannot be Shared. resource id - volume_expose");
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
- "Resource is not defined as output and thus cannot be Shared. resource id - net_expose");
- }
-
- @Test
- public void testNovaResourceNetworkUniqueRole() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "A resource is connected twice to the same network role Resource ID [FSB2] Network Role [Internal1].");
- }
-
- @Test
- public void testHeatVolumeExpose() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("firstVol.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("firstVol.yaml").getErrorMessageList().get(0).getMessage(),
- "Volume is not defined as output and thus cannot be attached volume_expose");
-
- }
-
- @Test
- public void testHeatPortNetworkNamingConvention() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 3);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Network Parameter Name not aligned with Guidelines Parameter Name [not_valid_network_name] Resource ID [port_resource]");
- }
-
- @Test
- public void testHeatNovaServerMetaDataValidation() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Missing VNF_ID Resource id [FSB2]");
- }
-
- @Test
- public void testNeutronFixedIpName() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 3);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Fixed_IPS not aligned with Guidelines, Resource ID [port_resource_0]");
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
- "Fixed_IPS not aligned with Guidelines, Resource ID [port_resource_1]");
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(2).getMessage(),
- "Fixed_IPS not aligned with Guidelines, Resource ID [port_resource_2]");
- }
-
-
- @Test
- public void testNovaServerName() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Server Name not aligned with Guidelines, Resource ID [FSB2]");
- }
-
- @Test
- public void testAvailabilityZoneName() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 3);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Server Availability Zone not aligned with Guidelines, Resource ID [FSB2]");
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
- "Server Availability Zone not aligned with Guidelines, Resource ID [FSB3]");
- }
-
- @Test
- public void testFloatingIpResourceType() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "OS::Neutron::FloatingIP is in use, Resource ID [FSB2]");
- }
-
- @Test
- public void testImageAndFlavorNames() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- messages = runValidation(
- "/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "Wrong flavor name format in NOVA Server, Resource ID [FSB2]");
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
- "Wrong image name format in NOVA Server, Resource ID [FSB3]");
- }
-
-
- @Override
- public Map<String, MessageContainer> runValidation(String path) {
- EcompGuideLineValidator validator = new EcompGuideLineValidator();
- return testValidator(validator, path);
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompNamingConventionTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompNamingConventionTest.java
deleted file mode 100644
index e4203945aa..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/EcompNamingConventionTest.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package org.openecomp.sdc.validation.impl.validators.validators;
-
-import org.openecomp.sdc.validation.impl.validators.EcompGuideLineValidator;
-import org.openecomp.sdc.validation.impl.validators.ValidatorBaseTest;
-import org.openecomp.core.validation.types.MessageContainer;
-
-import java.io.IOException;
-import java.util.Map;
-
-import org.testng.Assert;
-import org.testng.annotations.Test;
-
-public class EcompNamingConventionTest extends ValidatorBaseTest {
-
- @Test
- public void testNeutronFixedIpName() throws IOException {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 2);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 3);
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
- "Fixed_IPS not aligned with Guidelines, Resource ID [fixed_ip_illegal_name_1]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
- "Fixed_IPS not aligned with Guidelines, Resource ID [fixed_ip_illegal_name_2]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(2).getMessage(),
- "Fixed_IPS not aligned with Guidelines, Resource ID [fixed_ip_illegal_name_3]");
- }
-
-
- @Test
- public void testNovaServerName() throws IOException {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 2);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 6);
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
- "Server Name not aligned with Guidelines, Resource ID [nova_server_ilegal_name_1]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
- "Server Name not aligned with Guidelines, Resource ID [nova_server_ilegal_name_2]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(2).getMessage(),
- "Server Name not aligned with Guidelines, Resource ID [nova_server_ilegal_name_3]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(3).getMessage(),
- "Server Name not aligned with Guidelines, Resource ID [nova_server_ilegal_name_4]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(4).getMessage(),
- "Server Name not aligned with Guidelines, Resource ID [nova_server_ilegal_name_5]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(5).getMessage(),
- "Missing get_param in nova server name, Resource Id [nova_server_ilegal_name_6]");
- }
-
-
- @Test
- public void testAvailabilityZoneName() throws IOException {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 2);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
- "Server Availability Zone not aligned with Guidelines, Resource ID [availability_zone_illegal_name_1]");
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(),
- "Server Availability Zone not aligned with Guidelines, Resource ID [availability_zone_illegal_name_2]");
- }
-
-
- @Test
- public void testFloatingIpResourceType() throws IOException {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 2);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(
- messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(),
- "OS::Neutron::FloatingIP is in use, Resource ID [floating_ip_type]");
- }
-
-
- @Override
- public Map<String, MessageContainer> runValidation(String path) {
- EcompGuideLineValidator ecompGuideLineValidator = new EcompGuideLineValidator();
- return testValidator(ecompGuideLineValidator, path);
- }
-} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/HeatValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/HeatValidatorTest.java
deleted file mode 100644
index 9ff375c1a3..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/HeatValidatorTest.java
+++ /dev/null
@@ -1,356 +0,0 @@
-package org.openecomp.sdc.validation.impl.validators.validators;
-
-import org.openecomp.sdc.validation.impl.validators.HeatValidator;
-import org.openecomp.sdc.validation.impl.validators.ValidatorBaseTest;
-import org.openecomp.core.validation.types.MessageContainer;
-
-import org.testng.Assert;
-import org.testng.annotations.Test;
-
-import java.io.IOException;
-import java.util.Map;
-
-public class HeatValidatorTest extends ValidatorBaseTest {
-
-
- @Test
- public void testInvalidHeatFormat(){
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/invalid_heat_format/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Invalid HEAT format problem - [Cannot create property=kuku for JavaBean=Resource{type='null', properties=null, metadata=null, depends_on=null, update_policy='null', deletion_policy='null'}\n" +
- " in 'reader', line 25, column 5:\n" +
- " kuku: kuku\n" +
- " ^\n" +
- "Unable to find property 'kuku' on class: org.openecomp.sdc.heat.datatypes.model.Resource\n" +
- " in 'reader', line 25, column 11:\n" +
- " kuku: kuku\n" +
- " ^\n" +
- "]");
- }
-
-
- @Test
- public void testResourcesReferencesExistInHeat() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Referenced resource - not_existing_resource not found");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "invalid get_resource syntax is in use - null , get_resource function should get the resource id of the referenced resource");
- }
-
-
- @Test
- public void testGetResourceValueIsValid(){
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/get_resource_value_valid/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 3);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "invalid get_resource syntax is in use - [param_1, param_2] , get_resource function should get the resource id of the referenced resource");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "invalid get_resource syntax is in use - {get_param=param_1} , get_resource function should get the resource id of the referenced resource");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(2).getMessage(), "invalid get_resource syntax is in use - null , get_resource function should get the resource id of the referenced resource");
- }
-
- @Test
- public void testTwoResourcesDoesNotHoldSameId() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
- }
-
- @Test
- public void negativeTestGetParamPointToExistingParameter() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Referenced parameter - not_existing_param_1 - not found, used in resource - server_pcrf_psm_001");
- }
-
- @Test
- public void testGetAttrFromNested() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "get_attr attribute not found - nested_output in resource server_pcrf_psm_001");
- }
-
- @Test
- public void testPropertiesMatchNestedParameters() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Referenced parameter not found in nested file - nested-pps_v1.0.yaml, resource name - server_pcrf_pps_001, parameter name - parameter_not_existing_in_nested");
- }
-
- @Test
- public void testNovaPropertiesHasAssignedValue() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Missing both Image and Flavor in NOVA Server - nova_server_resource_missing_both");
- }
-
- @Test
- public void testNoLoopsNesting() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 4);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "A resource has an invalid or unsupported type - null, Resource ID [server_pcrf_psm_002]");
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "Nested files loop - [hot-nimbus-psm_v1.0.yaml -- nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml -- hot-nimbus-psm_v1.0.yaml]");
-
- Assert.assertEquals(messages.get("nested-points-to-hot-nimbus-psm.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("nested-points-to-hot-nimbus-psm.yaml").getErrorMessageList().get(0).getMessage(), "Nested files loop - [nested-points-to-hot-nimbus-psm.yaml -- hot-nimbus-psm_v1.0.yaml -- nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml]");
- Assert.assertEquals(messages.get("nested-points-to-hot-nimbus-psm.yaml").getErrorMessageList().get(1).getMessage(), "Nested files loop - [nested-points-to-hot-nimbus-psm.yaml -- nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml]");
-
- Assert.assertEquals(messages.get("yaml-point-to-itself.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("yaml-point-to-itself.yaml").getErrorMessageList().get(0).getMessage(), "Nested files loop - [yaml-point-to-itself.yaml -- yaml-point-to-itself.yaml]");
-
- Assert.assertEquals(messages.get("nested-psm_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("nested-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Nested files loop - [nested-psm_v1.0.yaml -- nested-points-to-hot-nimbus-psm.yaml -- hot-nimbus-psm_v1.0.yaml -- nested-psm_v1.0.yaml]");
- }
-
- @Test
- public void testOnlyOneNovaPointsToOnePort() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Resource Port oam1_int_port exceed allowed relations from NovaServer");
- }
-
- @Test
- public void testServerGroupsPointedByServersDefinedCorrectly() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 3);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Missing server group definition - BE_Affinity_2, nova_server_1");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "Missing server group definition - BE_Affinity_2, nova_server_2");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(2).getMessage(), "Referenced resource - BE_Affinity_1 not found");
- }
-
-
- @Test
- public void testPolicyIsAffinityOrAntiAffinity() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Wrong policy in server group - pcrf_server_policies_1");
- }
-
-
- @Test
- public void testEnvContentIsSubSetOfHeatParameters() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().get(0).getMessage(), "Env file hot-nimbus-pps_v1.0.env includes a parameter not in HEAT - mock_param");
- }
-
- @Test
- public void testDefaultValueAlignWithType() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Parameter - pcrf_pps_image_name_1 default value not align with type number");
- }
-
-
- @Test
- public void testEnvParametersMatchDefinedHeatParameterTypes() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.env").getErrorMessageList().get(0).getMessage(), "Parameter env value pcrf_pps_flavor_name not align with type");
-
- }
-
- @Test
- public void testReferencedArtifactsExist() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Missing artifact - nimbus-ethernet");
-
- }
-
-
- @Test
- public void testResourcesGroupWithNested() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 3);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Referenced parameter not found in nested file - nested-from-resources-group.yaml, resource name - nested-from-resources-group.yaml, parameter name - property_not_in_nested");
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "OS::Heat::ResourceGroup resource with resource_def which is not pointing to nested heat file is not supported, Resource ID [resource_without_resources_group], resource_def type [OS::Nova::Server]");
-
- Assert.assertEquals(messages.get("nested-pps_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("nested-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "Nested files loop - [nested-pps_v1.0.yaml -- nested-from-resources-group.yaml -- hot-nimbus-pps_v1.0.yaml -- nested-pps_v1.0.yaml]");
-
- Assert.assertEquals(messages.get("nested-not-exist.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("nested-not-exist.yaml").getErrorMessageList().get(0).getMessage(), "Missing nested file - nested-not-exist.yaml");
- }
-
-
- @Test
- public void testResourceGroupWithInvalidType(){
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().size(), 3);
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "OS::Heat::ResourceGroup resource with resource_def which is not pointing to nested heat file is not supported, Resource ID [resource_with_resources_group_1], resource_def type [{get_param=pcrf_vnf_id}]");
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "OS::Heat::ResourceGroup resource with resource_def which is not pointing to nested heat file is not supported, Resource ID [resource_with_resources_group_2], resource_def type [OS::Nova::Server]");
- Assert.assertEquals(messages.get("hot-nimbus-psm_v1.0.yaml").getErrorMessageList().get(2).getMessage(), "A resource has an invalid or unsupported type - null, Resource ID [resource_with_resources_group_3]");
- }
-
-
- @Test
- public void testNetworkPolicyAssociatedWithAttachPolicy() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "NetworkPolicy not in use, Resource Id [not_used_server_pcrf_policy]");
- }
-
-
- @Test
- public void testSecurityGroupsCalledByPort() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "SecurityGroup not in use, Resource Id [not_used_security_group]");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "Port not bind to any NOVA Server, Resource Id [attach_policy_resource]");
- }
-
-
- @Test
- public void testServerGroupCalledByServer() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "ServerGroup not in use, Resource Id [not_used_server_group]");
-
- }
-
-
- @Test
- public void testSecurityGroupBaseFileNoPorts() throws IOException {
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("baseFile.yaml").getErrorMessageList().size(), 1);
- Assert.assertEquals(messages.get("baseFile.yaml").getErrorMessageList().get(0).getMessage(), "SecurityGroup not in use, Resource Id [shared_security_group_id3]");
- }
-
-
- @Test
- public void testDependsOn(){
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/depends_on_points_to_existing_resource/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "a Missing resource in depend On Missing Resource ID [resource_not_exist]");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "a Missing resource in depend On Missing Resource ID [resource_3]");
- }
-
-
- @Test
- public void testSharedResourcesValidation(){
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/shared_resources/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().size(), 2);
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(0).getMessage(), "SecurityGroup not in use, Resource Id [not_used_security_group]");
- Assert.assertEquals(messages.get("hot-nimbus-pps_v1.0.yaml").getErrorMessageList().get(1).getMessage(), "Port not bind to any NOVA Server, Resource Id [attach_policy_resource]");
- }
-
-
- @Test
- public void testNoErrorWhenEmptyValueForParameterInEnv(){
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/env_empty_value/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
-
- MessageContainer envMessages = messages.get("env_empty_value.env");
- Assert.assertNull(envMessages);
- }
-
-
- @Test
- public void testGetParamPseudoParameters(){
- Map<String, MessageContainer> messages = runValidation("/openecomp/org/validation/validators/heat_validator/pseudo_parameters/input");
-
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
-
- }
-
-
- @Override
- public Map<String, MessageContainer> runValidation(String path) {
- HeatValidator heatValidator = new HeatValidator();
- return testValidator(heatValidator, path);
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/ManifestValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/ManifestValidatorTest.java
deleted file mode 100644
index 479a1fb83b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/validators/ManifestValidatorTest.java
+++ /dev/null
@@ -1,125 +0,0 @@
-package org.openecomp.sdc.validation.impl.validators.validators;
-
-
-import org.openecomp.sdc.common.utils.AsdcCommon;
-import org.openecomp.sdc.validation.impl.validators.ManifestValidator;
-import org.openecomp.sdc.validation.impl.validators.ValidatorBaseTest;
-import org.openecomp.core.validation.errors.Messages;
-import org.openecomp.core.validation.types.MessageContainer;
-
-import org.testng.Assert;
-import org.testng.annotations.Test;
-
-import java.util.Map;
-
-public class ManifestValidatorTest extends ValidatorBaseTest {
-
-
- @Test
- public void testValidManifest() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/manifestValidator/validFiles");
- Assert.assertNotNull(messages);
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 0);
- }
-
- @Test
- public void testManifestMissingFileInZip() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/manifestValidator/missingFileInZip");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertTrue(messages.containsKey("singleVol.yaml"));
- validateErrorMessage(messages.get("singleVol.yaml").getErrorMessageList().get(0).getMessage(),
- Messages.MISSING_FILE_IN_ZIP.getErrorMessage());
- }
-
- @Test
- public void testInvalidManifest() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/manifestValidator/invalidManifest");
- Assert.assertNotNull(messages);
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertTrue(messages.containsKey(AsdcCommon.MANIFEST_NAME));
- validateErrorMessage(
- messages.get(AsdcCommon.MANIFEST_NAME).getErrorMessageList().get(0).getMessage(),
- Messages.INVALID_MANIFEST_FILE.getErrorMessage(), AsdcCommon.MANIFEST_NAME);
-
- }
-
- @Test
- public void testMissingFileInManifest() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/manifestValidator/missingFileInManifest");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertTrue(messages.containsKey("extraFile.env"));
- validateErrorMessage(messages.get("extraFile.env").getErrorMessageList().get(0).getMessage(),
- Messages.MISSING_FILE_IN_MANIFEST.getErrorMessage());
-
- }
-
- @Test
- public void testInvalidFileTypeInManifest() {
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 4);
- Assert.assertTrue(messages.containsKey("single.env.illegalSuffix"));
- Assert.assertTrue(messages.containsKey("illegalTypeFile.yaml"));
- Assert.assertTrue(messages.containsKey("single.yaml.illegalSuffix"));
- Assert.assertTrue(messages.containsKey("singleVol.yaml.illegalSuffix"));
- validateErrorMessage(
- messages.get("single.env.illegalSuffix").getErrorMessageList().get(0).getMessage(),
- Messages.WRONG_ENV_FILE_EXTENSION.getErrorMessage(), "single.env.illegalSuffix");
- validateErrorMessage(
- messages.get("illegalTypeFile.yaml").getErrorMessageList().get(0).getMessage(),
- Messages.INVALID_FILE_TYPE.getErrorMessage(), "illegalTypeFile.yaml");
- validateErrorMessage(
- messages.get("single.yaml.illegalSuffix").getErrorMessageList().get(0).getMessage(),
- Messages.WRONG_HEAT_FILE_EXTENSION.getErrorMessage(), "single.yaml.illegalSuffix");
- validateErrorMessage(
- messages.get("singleVol.yaml.illegalSuffix").getErrorMessageList().get(0).getMessage(),
- Messages.WRONG_HEAT_FILE_EXTENSION.getErrorMessage(), "singleVol.yaml.illegalSuffix");
-
- }
-
-
- @Test
- public void testMissingFileInManifestAndInZip() {
-
- Map<String, MessageContainer> messages = runValidation(
- "/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 2);
- Assert.assertTrue(messages.containsKey("extraFile.env"));
- Assert.assertTrue(messages.containsKey("singleVol.yaml"));
- validateErrorMessage(messages.get("extraFile.env").getErrorMessageList().get(0).getMessage(),
- Messages.MISSING_FILE_IN_MANIFEST.getErrorMessage());
- validateErrorMessage(messages.get("singleVol.yaml").getErrorMessageList().get(0).getMessage(),
- Messages.MISSING_FILE_IN_ZIP.getErrorMessage());
-
- }
-
-
- @Test
- public void testEnvInRoot() {
- Map<String, MessageContainer> messages =
- runValidation("/openecomp/org/validation/validators/manifestValidator/envInRoot");
- Assert.assertNotNull(messages);
- Assert.assertEquals(messages.size(), 1);
- Assert.assertTrue(messages.containsKey("second.env"));
- validateErrorMessage(messages.get("second.env").getErrorMessageList().get(0).getMessage(),
- "ENV file must be associated to a HEAT file");
- }
-
- public Map<String, MessageContainer> runValidation(String path) {
- ManifestValidator manifestValidator = new ManifestValidator();
- return testValidator(manifestValidator, path);
-
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/configuration/mock_resource_validator_configuration.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/configuration/mock_resource_validator_configuration.json
new file mode 100644
index 0000000000..9fe55b0419
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/configuration/mock_resource_validator_configuration.json
@@ -0,0 +1,13 @@
+{
+ "forbiddenResourceGuideLineValidator": {
+ "enable": true,
+ "implementationClass": "org.openecomp.sdc.validation.impl.validators.ForbiddenResourceGuideLineValidator",
+ "properties": {
+ "forbiddenResourceTypes": {
+ "OS::Neutron::FloatingIP": {
+ "enable": true
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.yaml
index 368834e847..368834e847 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.yaml
index 08955562d4..08955562d4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetwork/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.yaml
index f5c6b598cc..f5c6b598cc 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.yaml
index 0c7abd6d49..0c7abd6d49 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeNetworkAndVolume/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.yaml
index fe5effbc24..fe5effbc24 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.yaml
index 781bcba716..781bcba716 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeSecurityGroup/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.yaml
index 5660cc003b..5660cc003b 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.yaml
index 89fafb9d3a..89fafb9d3a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeServerGroup/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.yaml
index e2a4301249..e2a4301249 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.yaml
index 63b576edb8..63b576edb8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/baseHeatDoesNotExposeVolume/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatDoesNotExposeVolume/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/MANIFEST.json
new file mode 100644
index 0000000000..31d26cce5a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/MANIFEST.json
@@ -0,0 +1,26 @@
+{
+ "name": "virc",
+ "description": "",
+ "data": [
+ {
+ "file": "base_virc.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_virc.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested_virc.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "user_data.sh",
+ "type": "SHELL"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.env
new file mode 100644
index 0000000000..617084511c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.env
@@ -0,0 +1,59 @@
+parameters:
+ virc_environment: 'CI-VIRC'
+ virc_version: '1609.0.0.0.64'
+ virc_version_file: 'version-VIRC_Cloud.json'
+ vnf_id: vnf_id_placeholder
+ vnf_name: 'ircc001v'
+ vf_module_id: vf_module_id_placeholder
+ vf_module_name: vf_module_name_placeholder
+ vm_roles: [
+ 'vm_role_placeholder_0',
+ 'vm_role_placeholder_1',
+ 'vm_role_placeholder_2',
+ 'vm_role_placeholder_3']
+ num_instances: 4
+ virc_names: [
+ 'irpr0001vm001pfe001p1n004v001',
+ 'irpr0001vm002pbe001p1n004v001',
+ 'irpr0001vm003mdb001p1n004v001',
+ 'irpr0001vm004mdb001p1n004v001']
+ virc_image_name: rhel7-with-openecomp-tools
+ virc_flavor_name: m1.large
+ virc_ssh_public_key: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9/ngAeNYJe8p8RvPQC4NSRu1VyWimhMx+6Q0LgD1n/UeTN+Ppn1NA0/CQDR+nX0vOMkfwkw43y3qi1kDfHSNKebxVUix1nyqXUq9n8kjhu+dsKXqiClL2B36XvsrXfkA6SRG8jsWiBgkR+hvcewjqk2pLigdi233F69GHdqKsRJOS4246/VTdXyFZX5V3W0akZ/Oh72aM+UnRb9hp+ZHzIGBHemMipkDHzCAOmWZlNuPGwqBscmMv2KWUj6Rk6b5qFoK4J1x0MjXCS/mKC3H8GsSlGhHZ6odMGEVPT5EkTQEf/ggPPPyUx0+TRv0fPh4793CxZrxo7CvpLAaoUXMH'
+ availability_zone_0: 'ZoneA'
+ virc_default_gateway: 127.0.0.1
+ virc_domain: atttest.com
+ virc_dns1: 127.0.0.1
+ management_net_name: SRE-Mgt
+ virc_management_dhcp: no
+ virc_management_default_route: yes
+ virc_management_ips: [
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1']
+ data_net_name: data
+ virc_data_ips: [
+ '192.168.1.50',
+ '192.168.1.51',
+ '192.168.1.52',
+ '192.168.1.53']
+ virc_data_dhcp: no
+ virc_data_default_route: no
+ signaling_net_name: signaling
+ virc_signaling_ips: [
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1']
+ virc_signaling_dhcp: no
+ virc_signaling_default_route: no
+ virc_sg_rules: [
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "22", "port_range_max": "22", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "5060", "port_range_max": "5060", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "::/0", "protocol": "tcp", "port_range_min": "5060", "port_range_max": "5060", "ethertype": "IPv6" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "8080", "port_range_max": "8080", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "::/0", "protocol": "tcp", "port_range_min": "8080", "port_range_max": "8080", "ethertype": "IPv6" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "7113", "port_range_max": "7113", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "8113", "port_range_max": "8113", "ethertype": "IPv4" }]
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.yaml
new file mode 100644
index 0000000000..7c1afa8ced
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/base_virc.yaml
@@ -0,0 +1,143 @@
+heat_template_version: 2015-04-30
+
+description: vIRC CC base template
+
+parameters:
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+ vnf_name:
+ type: string
+ description: Unique name for this VF instance
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ vf_module_name:
+ type: string
+ description: Unique name for this VF Module instance
+ vm_roles:
+ type: comma_delimited_list
+ description: Unique roles for first group of instances
+ virc_names:
+ type: comma_delimited_list
+ description: List of names of vIRC CC instances in first availability zone
+ virc_image_name:
+ type: string
+ description: Image used for vIRC CC instances
+ virc_flavor_name:
+ type: string
+ description: Flavor of VM to use for vIRC CC instances
+ virc_ssh_public_key:
+ type: string
+ description: Public key for SSH access to vIRC CC instances
+ availability_zone_0:
+ type: string
+ description: First availability zone ID or name
+ management_net_name:
+ type: string
+ description: vIRC CC management network name
+ virc_management_dhcp:
+ type: string
+ description: For static IPs on management port, no. For DHCP assigned IPs, yes.
+ virc_management_ips:
+ type: comma_delimited_list
+ description: vIRC CC management network fixed ips for first availability zone if static
+ virc_management_netmask:
+ type: string
+ description: vIRC CC management netmask
+ virc_management_gateway:
+ type: string
+ description: vIRC CC management gateway
+ virc_management_default_route:
+ type: string
+ description: If management port is default route on OS, yes. If not, no.
+ data_net_name:
+ type: string
+ description: vIRC CC data network name
+ virc_data_dhcp:
+ type: string
+ description: For static IPs on data port, no. For DHCP assigned IPs, yes.
+ virc_data_ips:
+ type: comma_delimited_list
+ description: vIRC CC data network fixed ips for first availability zone if static
+ virc_data_netmask:
+ type: string
+ description: vIRC CC data netmask
+ virc_data_gateway:
+ type: string
+ description: vIRC CC data gateway
+ virc_data_default_route:
+ type: string
+ description: If data port is default route on OS, yes. If not, no.
+ signaling_net_name:
+ type: string
+ description: vIRC CC signaling network name
+ virc_signaling_dhcp:
+ type: string
+ description: For static IPs on data port, no. For DHCP assigned IPs, yes.
+ virc_signaling_ips:
+ type: comma_delimited_list
+ description: vIRC CC signaling network fixed ips for first availability zone if static
+ virc_signaling_netmask:
+ type: string
+ description: vIRC CC signaling netmask
+ virc_signaling_gateway:
+ type: string
+ description: vIRC CC signaling gateway
+ virc_signaling_default_route:
+ type: string
+ description: If signaling port is default route on OS, yes. If not, no.
+ num_instances:
+ type: number
+ description: Number of instances to deploy in first availability zone
+ constraints:
+ - range: { min: 0, max: 18}
+ virc_sg_rules:
+ type: json
+ description: vIRC CC security group rules
+ virc_domain:
+ type: string
+ description: Domain of the vIRC CC instances
+ virc_dns1:
+ type: string
+ description: First DNS nameserver for vIRC CC instances
+ virc_dns2:
+ type: string
+ description: Second DNS nameserver for vIRC CC instances
+ virc_default_gateway:
+ type: string
+ description: Default gateway for vIRC CC instances
+ virc_version:
+ type: string
+ description: vIRC CC deployment version
+ virc_environment:
+ type: string
+ description: vIRC CC deployment environment
+ virc_version_file:
+ type: string
+ description: vIRC CC version file name
+
+resources:
+ virc_keypair:
+ type: OS::Nova::KeyPair
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_virc_keypair
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ public_key: { get_param: virc_ssh_public_key }
+ save_private_key: false
+
+
+ virc_RSG:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_virc_sg
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ rules: { get_param: virc_sg_rules }
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/nested_virc.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/nested_virc.yaml
new file mode 100644
index 0000000000..f4e34188c0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/nested_virc.yaml
@@ -0,0 +1,207 @@
+heat_template_version: 2015-04-30
+
+description: virc_nested
+
+parameters:
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+ vnf_name:
+ type: string
+ description: Unique name for this VF instance
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ vf_module_name:
+ type: string
+ description: Unique name for this VF Module instance
+ vm_roles:
+ type: comma_delimited_list
+ description: Unique roles for this group of instances
+ virc_names:
+ type: comma_delimited_list
+ description: name of virc instances
+ virc_image_name:
+ type: string
+ description: name of virc image
+ virc_flavor_name:
+ type: string
+ description: flavor of instance to use
+ virc_keypair:
+ type: string
+ description: Key pair containing public SSH key for vIRC instances
+ availability_zone_0:
+ type: string
+ description: Availability zone used for this resource group
+ management_net_name:
+ type: string
+ description: virc management network name
+ virc_management_dhcp:
+ type: string
+ description: yes if port configured by dhcp, otherwise no
+ virc_management_ips:
+ type: comma_delimited_list
+ description: virc management network fixed ips
+ virc_management_netmask:
+ type: string
+ description: virc management netmask
+ virc_management_gateway:
+ type: string
+ description: virc management gateway
+ virc_management_default_route:
+ type: string
+ description: yes if this default route is that of this nic
+ data_net_name:
+ type: string
+ description: virc data network name
+ virc_data_dhcp:
+ type: string
+ description: yes if port configured by dhcp, otherwise no
+ virc_data_ips:
+ type: comma_delimited_list
+ description: virc data network fixed ips
+ virc_data_netmask:
+ type: string
+ description: virc data netmask
+ virc_data_gateway:
+ type: string
+ description: virc data gateway
+ virc_data_default_route:
+ type: string
+ description: yes if this default route is that of this nic
+ signaling_net_name:
+ type: string
+ description: virc signaling network name
+ virc_signaling_dhcp:
+ type: string
+ description: yes if port configured by dhcp, otherwise no
+ virc_signaling_ips:
+ type: comma_delimited_list
+ description: virc signaling network fixed ips
+ virc_signaling_netmask:
+ type: string
+ description: virc signaling netmask
+ virc_signaling_gateway:
+ type: string
+ description: virc signaling gateway
+ virc_signaling_default_route:
+ type: string
+ description: yes if this default route is that of this nic
+ virc_sg:
+ type: string
+ description: virc security group
+ virc_domain:
+ type: string
+ description: domain of the virc instance
+ virc_dns1:
+ type: string
+ description: first dns nameserver for virc instance
+ virc_dns2:
+ type: string
+ description: second dns nameserver for virc instance
+ virc_default_gateway:
+ type: string
+ description: default gateway for VM
+ virc_version:
+ type: string
+ description: virc deployment version
+ virc_environment:
+ type: string
+ description: virc deployment environment
+ virc_version_file:
+ type: string
+ description: vIRC CC version file name
+ index_num:
+ type: number
+ description: Current index value of the resource group
+ constraints:
+ - range: { min: 0, max: 18 }
+
+resources:
+ virc_0:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [virc_names, {get_param: index_num}]}
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vnf_name: { get_param: vnf_name }
+ vf_module_id: { get_param: vf_module_id }
+ vf_module_name: { get_param: vf_module_name }
+ vm_role: { get_param: [vm_roles, {get_param: index_num}]}
+ key_name: {get_param: virc_keypair}
+ image: {get_param: virc_image_name}
+ flavor: {get_param: virc_flavor_name}
+ availability_zone: {get_param: availability_zone_0}
+ networks:
+ - port: { get_resource: virc_management_0_port}
+ - port: { get_resource: virc_data_1_port}
+ - port: { get_resource: virc_signaling_2_port}
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ template: {get_file: user_data.sh}
+ params:
+ __hostname__: {get_param: [virc_names, {get_param: index_num}]}
+ __domain__: {get_param: virc_domain}
+ __dns1__: {get_param: virc_dns1}
+ __dns2__: {get_param: virc_dns2}
+ __default_gateway__: {get_param: virc_default_gateway}
+ __port_mac_0__: {get_attr: [virc_management_0_port, mac_address]}
+ __port_ip_0__: {get_param: [virc_management_ips, {get_param: index_num}]}
+ __port_netmask_0__: {get_param: virc_management_netmask}
+ __port_gateway_0__: {get_param: virc_management_gateway}
+ __port_def_route_0__: {get_param: virc_management_default_route}
+ __port_dhcp_0__: {get_param: virc_management_dhcp}
+ __port_mac_1__: {get_attr: [virc_data_1_port, mac_address]}
+ __port_ip_1__: {get_param: [virc_data_ips, {get_param: index_num}]}
+ __port_netmask_1__: {get_param: virc_data_netmask}
+ __port_gateway_1__: {get_param: virc_data_gateway}
+ __port_def_route_1__: {get_param: virc_data_default_route}
+ __port_dhcp_1__: {get_param: virc_data_dhcp}
+ __port_ip6_1__: {get_param: [virc_data_ips, {get_param: index_num}]}
+ __port_mac_2__: {get_attr: [virc_signaling_2_port, mac_address]}
+ __port_ip_2__: {get_param: [virc_signaling_ips, {get_param: index_num}]}
+ __port_netmask_2__: {get_param: virc_signaling_netmask}
+ __port_gateway_2__: {get_param: virc_signaling_gateway}
+ __port_def_route_2__: {get_param: virc_signaling_default_route}
+ __port_dhcp_2__: {get_param: virc_signaling_dhcp}
+ __virc_environment__: {get_param: virc_environment}
+ __virc_version__: {get_param: virc_version}
+ __virc_version_file__: {get_param: virc_version_file}
+
+ virc_management_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: management_net_name }
+ fixed_ips:
+ - ip_address: { get_param: [virc_management_ips, {get_param: index_num}]}
+ security_groups:
+ - { get_param: virc_sg }
+ virc_data_1_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: data_net_name }
+ fixed_ips:
+ - ip_address: { get_param: [virc_data_ips, {get_param: index_num}]}
+ security_groups:
+ - { get_param: virc_sg }
+ virc_signaling_2_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: signaling_net_name }
+ fixed_ips:
+ - ip_address: { get_param: [virc_signaling_ips, {get_param: index_num}]}
+ security_groups:
+ - { get_param: virc_sg }
+ virc_volume:
+ type: OS::Cinder::Volume
+ properties:
+# name: {get_param: [virc_names, {get_param: index_num}]}
+ availability_zone: nova
+# availability_zone: {get_param: availability_zone_0}
+ size: 1
+ virc_volumeattachment:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ instance_uuid: { get_resource: virc_0 }
+ volume_id: { get_resource: virc_volume }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/user_data.sh b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/user_data.sh
new file mode 100644
index 0000000000..1c808d4736
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/negative/user_data.sh
@@ -0,0 +1,285 @@
+#!/bin/bash
+
+set -x
+exec >> /root/user_data.out
+exec 2>&1
+
+MOUNT_POINT=${1:-'/opt/app/virc'}
+LABEL=${2:-'VIRC_DATA'}
+DESCRIPTION=${3:-'vIRC data volume'}
+
+TAG=VIRC_PROVISIONING
+
+DISK_ID=$(ls -1 /dev/disk/by-id | tail -n1)
+DISK_NAME=$(readlink -f /dev/disk/by-id/${DISK_ID})
+FSTYPE=$(lsblk -o FSTYPE -n ${DISK_NAME})
+DISK_LABEL=$(lsblk -o LABEL -n ${DISK_NAME})
+
+# Exit with message if not root
+[[ $UID -ne 0 ]] && logger -t $TAG "Not root. Exiting." && exit 2
+
+# Create filesystem if none
+if [[ -z ${FSTYPE} ]] ; then
+ mkfs.xfs ${DISK_NAME}
+ if [[ $? -eq 0 ]] ; then
+ logger -t $TAG "Created xfs filesystem on $DISK_NAME."
+ else
+ logger -t $TAG "ERROR: Could not create xfs on $DISK_NAME. Exiting."
+ exit 90
+ fi
+fi
+sleep 0.5
+DISK_UUID=$(lsblk -no UUID ${DISK_NAME})
+
+# Create label if none
+[[ -z ${DISK_LABEL} ]] && xfs_admin -L ${LABEL} ${DISK_NAME}
+
+# Create mount point if it does not exist
+if [[ ! -d ${MOUNT_POINT} ]] ; then
+ mkdir -p ${MOUNT_POINT}
+ if [[ $? -eq 0 ]] ; then
+ logger -t $TAG "Created mount point at $MOUNT_POINT."
+ else
+ logger -t $TAG "ERROR: Could not create mount point at $MOUNT_POINT. Exiting"
+ exit 80
+ fi
+fi
+
+# Only add to /etc/fstab if not already there
+grep -q ${DISK_UUID} /etc/fstab
+if [[ $? -ne 0 ]] ; then
+ echo "# Following mount for ${DESCRIPTION}" >> /etc/fstab
+ echo "UUID=${DISK_UUID} ${MOUNT_POINT} xfs defaults 0 0" >> /etc/fstab
+ mount -a
+ mount_check_1=$?
+ mount | grep ${DISK_NAME} | grep ${MOUNT_POINT}
+ mount_check_2=$?
+ if [[ ${mount_check_1} -eq 0 ]] && [[ ${mount_check_2} -eq 0 ]]; then
+ logger -t $TAG "Successfully mounted $DISK_NAME at $MOUNT_POINT."
+ else
+ logger -t $TAG "ERROR: Could not mount $DISK_NAME at $MOUNT_POINT. Exiting."
+ exit 70
+ fi
+fi
+
+###
+### Configure network
+###
+
+hostname='__hostname__'
+domain='__domain__'
+dns1='__dns1__'
+dns2='__dns2__'
+default_gateway='__default_gateway__'
+
+# 1 disable, 0 enable
+ipv6_enable=1
+
+port_mac[0]='__port_mac_0__'
+port_ip[0]='__port_ip_0__'
+port_netmask[0]='__port_netmask_0__'
+port_gateway[0]='__port_gateway_0__'
+port_def_route[0]='__port_def_route_0__'
+port_dhcp[0]='__port_dhcp_0__'
+
+port_mac[1]='__port_mac_1__'
+port_ip[1]='__port_ip_1__'
+port_netmask[1]='__port_netmask_1__'
+port_gateway[1]='__port_gateway_1__'
+port_def_route[1]='__port_def_route_1__'
+port_dhcp[1]='__port_dhcp_1__'
+
+port_mac[2]='__port_mac_2__'
+port_ip[2]='__port_ip_2__'
+port_netmask[2]='__port_netmask_2__'
+port_gateway[2]='__port_gateway_2__'
+port_def_route[2]='__port_def_route_2__'
+port_dhcp[2]='__port_dhcp_2__'
+
+# function to add underscore
+add_underscore(){
+ echo "__${1}__"
+}
+
+# filenames
+net_scripts=/etc/sysconfig/network-scripts
+
+# update network scripts with static ips and gateways
+nic_count=($(ls -1d /sys/class/net/eth* | wc -l))
+for i in {0..2} ; do
+ if [[ ${port_mac[i]} != "__port_mac_${i}__" && \
+ ( ${port_ip[i]} != "__port_ip_${i}__" || ${port_dhcp[i]} != "__port_dhcp_${i}__" ) ]] ; then
+ for (( j=0 ; j<${nic_count} ; j++ )) ; do
+ nic_mac=$(cat /sys/class/net/eth${j}/address)
+ if [[ ${port_mac[i]} == ${nic_mac} ]] ; then
+ echo "NAME=eth${j}" > ${net_scripts}/ifcfg-eth${j}
+ echo "DEVICE=eth${j}" >> ${net_scripts}/ifcfg-eth${j}
+ if [[ ${port_dhcp[i]} =~ (yes|Yes|True|true) ]] ; then
+ echo "BOOTPROTO=dhcp" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_ip[i]} != "__port_ip_${i}__" ]] && [[ ${port_ip[i]} =~ .*:.* ]] ; then
+ [[ ${ipv6_enable} -eq 1 ]] && ipv6_enable=0
+ echo "BOOTPROTO=none" >> ${net_scripts}/ifcfg-eth${j}
+ echo "IPV6INIT=yes" >> ${net_scripts}/ifcfg-eth${j}
+ echo "IPV6ADDR=${port_ip[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ if [[ ${port_gateway[i]} != "__port_gateway_${i}__" ]] ; then
+ echo "IPV6_DEFAULTGW=${port_gateway[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_gateway[i]} == $(add_underscore 'port_gateway_0') ]] && [[ ${default_gateway} != $(add_underscore 'default_gateway') ]] ; then
+ echo "IPV6_DEFAULTGW=${default_gateway}" >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ elif [[ ${port_ip[i]} != "__port_ip_${i}__" ]] ; then
+ echo "BOOTPROTO=none" >> ${net_scripts}/ifcfg-eth${j}
+ echo "IPADDR=${port_ip[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ # Set gateway if provided. If not set, set eth0 to default
+ if [[ ${port_gateway[i]} != "__port_gateway_${i}__" ]] ; then
+ echo "GATEWAY=${port_gateway[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_gateway[i]} == $(add_underscore 'port_gateway_0') ]] && [[ ${default_gateway} != $(add_underscore 'default_gateway') ]] ; then
+ echo "GATEWAY=${default_gateway}" >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ # Set netmask if provided. Else set netmask to 255.255.255.0
+ if [[ ${port_netmask[i]} != "__port_netmask_${i}__" ]] ; then
+ echo "NETMASK=${port_netmask[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ else
+ echo 'NETMASK=255.255.255.0' >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ fi
+ echo "ONBOOT=yes" >> ${net_scripts}/ifcfg-eth${j}
+ echo "HWADDR=${nic_mac}" >> ${net_scripts}/ifcfg-eth${j}
+ # Set to DEFROUTE to no, unless otherwise stated. If not stated set to yes on eth0
+ if [[ ${port_def_route[i]} =~ (yes|Yes|True|true) ]] ; then
+ echo "DEFROUTE=yes" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_def_route[i]} == $(add_underscore 'port_def_route_0') ]] ; then
+ echo "DEFROUTE=yes" >> ${net_scripts}/ifcfg-eth${j}
+ else
+ echo "DEFROUTE=no" >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ fi
+ done
+ fi
+done
+
+# Set DNS
+if [[ ${dns1} != $(add_underscore 'dns1') ]] ; then
+ echo "PEERDNS=yes" >> ${net_scripts}/ifcfg-eth0
+ echo "DNS1=${dns1}" >> ${net_scripts}/ifcfg-eth0
+ [[ ${dns2} != $(add_underscore 'dns2') ]] && echo "DNS2=${dns2}" >> ${net_scripts}/ifcfg-eth0
+fi
+# Set default gateway
+[[ ${default_gateway} != $(add_underscore 'default_gateway') ]] && echo GATEWAY=${default_gateway} >> ${net_scripts}/ifcfg-eth0
+# Set domain
+if [[ ${domain} != $(add_underscore 'domain') ]] ; then
+ echo DOMAIN=${domain} >> ${net_scripts}/ifcfg-eth0
+ echo kernel.domainname=${domain} >> /etc/sysctl.conf
+ sysctl -p
+fi
+# Set hostname
+if [[ ${hostname} != $(add_underscore 'hostname') ]] ; then
+ hostnamectl set-hostname ${hostname}
+ sed -i "s/\(^127\.0\.0\.1 .*\)/\1 ${hostname}/" /etc/hosts
+ sed -i "s/\(^::1 .*\)/\1 ${hostname}/" /etc/hosts
+ sed -i "s/\(^127\.0\.0\.1 .*\)/\1 ${hostname}.${domain}/" /etc/hosts
+ sed -i "s/\(^::1 .*\)/\1 ${hostname}.${domain}/" /etc/hosts
+fi
+
+# Enable ipv6 if there is an ipv6 address supplied in env
+if [[ ${ipv6_enable} -eq 0 ]] ; then
+ echo net.ipv6.conf.all.disable_ipv6 = 0 >> /etc/sysctl.conf
+ echo net.ipv6.conf.default.disable_ipv6 = 0 >> /etc/sysctl.conf
+ echo net.ipv6.conf.lo.disable_ipv6 = 0 >> /etc/sysctl.conf
+ sysctl -p
+fi
+
+service network restart
+
+## Disable Password Login for MechID group
+echo "Match Group mechid" >> /etc/ssh/sshd_config
+echo -e "\tPasswordAuthentication no" >> /etc/ssh/sshd_config
+systemctl restart sshd
+
+###
+# Install SWM
+###
+
+## SWM variables
+virc_cc_environment='__virc_cc_environment__'
+virc_cc_version='__virc_cc_version__'
+virc_cc_version_file='__virc_cc_version_file__'
+
+
+## Add MechID user
+mechid_user_name=$(grep 'SWM_AUTOUSER=' /tmp/input.env | cut -f 2 -d '=')
+useradd -g mechid -p 'pahfhrkSZmUs.' ${mechid_user_name}
+
+### Workaround ### REMOVE WHEN BUG FIXED ###
+#mkdir -p /etc/chef/trusted_certs/
+
+# Get packages to install from input.env, then delete from input.env
+. /tmp/input.env
+swm_install_pkgs=(${SWM_INIT_PACKAGES})
+swm_install_pkg_deps=(${SWM_INIT_PACKAGE_DEPS})
+sed -i '/SWM_INIT_PACKAGES="/,/\"/d' /tmp/input.env
+
+./platform-init-1.5.5.sh /tmp/input.env
+
+## Install SWM packages after SWM installation
+export AFTSWM_USERNAME=${mechid_user_name}
+mechid_user_enc_passwd=$(grep 'SWM_AUTOCRED=' /tmp/input.env | cut -f 2 -d '=')
+export AFTSWM_PASSWORD=${mechid_user_enc_passwd}
+export HOSTNAME=$(hostname)
+#export HOME=/root
+
+#/opt/app/aft/aftswmcli/bin/swmcli component pkginstall -c ${swm_install_pkgs} -n $(hostname).$(domainname) -w -fi -fs
+#sleep 5
+#cd
+echo $SHELL
+whoami
+env
+pwd
+
+# install swm packages one at a time
+for package in ${swm_install_pkg_deps[@]} ; do
+ /opt/app/aft/aftswmcli/bin/swmcli component pkginstall -c ${package} -n $(hostname).$(domainname) -w -fi
+done
+
+for package in ${swm_install_pkgs[@]} ; do
+ /opt/app/aft/aftswmcli/bin/swmcli component pkginstall -c ${package} -n $(hostname).$(domainname) -w -fi
+done
+
+### Run Chef Prep Scripts ###
+USER=${mechid_user_name}
+COOKBOOK_NAME='virc_cc'
+VERSION=${virc_cc_version}
+ENV=${virc_cc_environment}
+VERSION_FILE=${virc_cc_version_file}
+
+COOKBOOK_VERSION=""
+
+for v in $(echo ${VERSION} | tr "." "\n")
+do
+ if [ "$v" -ge 0 -a "$v" -le 9 ]; then
+ COOKBOOK_VERSION=${COOKBOOK_VERSION}0$v
+ else
+ COOKBOOK_VERSION=${COOKBOOK_VERSION}$v
+ fi
+done
+
+COOKBOOK_VERSION="${COOKBOOK_VERSION:0:4}.1${COOKBOOK_VERSION:4:4}.1${COOKBOOK_VERSION:8:4}"
+
+#cd /home/$USER/chef-repo
+mkdir -p /home/$USER/scripts/$ENV
+chown -R ${mechid_user_name}:mechid /home/$USER
+
+chef_config_path="/home/${mechid_user_name}/chef-repo/.chef/knife.rb"
+
+su - -c "/usr/bin/knife client delete $(hostname).$(domainname) -y -c ${chef_config_path}" ${mechid_user_name}
+su - -c "/usr/bin/knife node delete $(hostname).$(domainname) -y -c ${chef_config_path}" ${mechid_user_name}
+
+su - -c "/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files Pyswm.py -c ${chef_config_path} > /home/${mechid_user_name}/scripts/$ENV/Pyswm.py" ${mechid_user_name}
+#/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files Pyswm.pyc > /home/$USER/scripts/$ENV/Pyswm.pyc
+su - -c "/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files install_swm.py -c ${chef_config_path} > /home/$USER/scripts/$ENV/install_swm.py" ${mechid_user_name}
+su - -c "/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files swm-installer-config.json -c ${chef_config_path} > /home/$USER/scripts/$ENV/swm-installer-config.json" ${mechid_user_name}
+
+#cd /home/$USER/scripts/$ENV
+su - -c "chmod 755 /home/$USER/scripts/$ENV/install_swm.py" ${mechid_user_name}
+su - -c "cd /home/$USER/scripts/$ENV; ./install_swm.py $VERSION $ENV --components-nodes=\"vIRC-cc:$(hostname).$(domainname)\" --version-file=${VERSION_FILE}" ${mechid_user_name}
+#./install_swm.py $VERSION $ENV --components-nodes="<<<ComponentName.FQDN>>>"
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/MANIFEST.json
new file mode 100644
index 0000000000..31d26cce5a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/MANIFEST.json
@@ -0,0 +1,26 @@
+{
+ "name": "virc",
+ "description": "",
+ "data": [
+ {
+ "file": "base_virc.yaml",
+ "type": "HEAT",
+ "isBase": "true",
+ "data": [
+ {
+ "file": "base_virc.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested_virc.yaml",
+ "type": "HEAT",
+ "isBase": "false"
+ },
+ {
+ "file": "user_data.sh",
+ "type": "SHELL"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.env
new file mode 100644
index 0000000000..617084511c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.env
@@ -0,0 +1,59 @@
+parameters:
+ virc_environment: 'CI-VIRC'
+ virc_version: '1609.0.0.0.64'
+ virc_version_file: 'version-VIRC_Cloud.json'
+ vnf_id: vnf_id_placeholder
+ vnf_name: 'ircc001v'
+ vf_module_id: vf_module_id_placeholder
+ vf_module_name: vf_module_name_placeholder
+ vm_roles: [
+ 'vm_role_placeholder_0',
+ 'vm_role_placeholder_1',
+ 'vm_role_placeholder_2',
+ 'vm_role_placeholder_3']
+ num_instances: 4
+ virc_names: [
+ 'irpr0001vm001pfe001p1n004v001',
+ 'irpr0001vm002pbe001p1n004v001',
+ 'irpr0001vm003mdb001p1n004v001',
+ 'irpr0001vm004mdb001p1n004v001']
+ virc_image_name: rhel7-with-openecomp-tools
+ virc_flavor_name: m1.large
+ virc_ssh_public_key: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9/ngAeNYJe8p8RvPQC4NSRu1VyWimhMx+6Q0LgD1n/UeTN+Ppn1NA0/CQDR+nX0vOMkfwkw43y3qi1kDfHSNKebxVUix1nyqXUq9n8kjhu+dsKXqiClL2B36XvsrXfkA6SRG8jsWiBgkR+hvcewjqk2pLigdi233F69GHdqKsRJOS4246/VTdXyFZX5V3W0akZ/Oh72aM+UnRb9hp+ZHzIGBHemMipkDHzCAOmWZlNuPGwqBscmMv2KWUj6Rk6b5qFoK4J1x0MjXCS/mKC3H8GsSlGhHZ6odMGEVPT5EkTQEf/ggPPPyUx0+TRv0fPh4793CxZrxo7CvpLAaoUXMH'
+ availability_zone_0: 'ZoneA'
+ virc_default_gateway: 127.0.0.1
+ virc_domain: atttest.com
+ virc_dns1: 127.0.0.1
+ management_net_name: SRE-Mgt
+ virc_management_dhcp: no
+ virc_management_default_route: yes
+ virc_management_ips: [
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1']
+ data_net_name: data
+ virc_data_ips: [
+ '192.168.1.50',
+ '192.168.1.51',
+ '192.168.1.52',
+ '192.168.1.53']
+ virc_data_dhcp: no
+ virc_data_default_route: no
+ signaling_net_name: signaling
+ virc_signaling_ips: [
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1',
+ '127.0.0.1']
+ virc_signaling_dhcp: no
+ virc_signaling_default_route: no
+ virc_sg_rules: [
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "22", "port_range_max": "22", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "5060", "port_range_max": "5060", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "::/0", "protocol": "tcp", "port_range_min": "5060", "port_range_max": "5060", "ethertype": "IPv6" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "8080", "port_range_max": "8080", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "::/0", "protocol": "tcp", "port_range_min": "8080", "port_range_max": "8080", "ethertype": "IPv6" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "7113", "port_range_max": "7113", "ethertype": "IPv4" },
+ { "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "port_range_min": "8113", "port_range_max": "8113", "ethertype": "IPv4" }]
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.yaml
new file mode 100644
index 0000000000..e0e8df50fc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/base_virc.yaml
@@ -0,0 +1,188 @@
+heat_template_version: 2015-04-30
+
+description: vIRC CC base template
+
+parameters:
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+ vnf_name:
+ type: string
+ description: Unique name for this VF instance
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ vf_module_name:
+ type: string
+ description: Unique name for this VF Module instance
+ vm_roles:
+ type: comma_delimited_list
+ description: Unique roles for first group of instances
+ virc_names:
+ type: comma_delimited_list
+ description: List of names of vIRC CC instances in first availability zone
+ virc_image_name:
+ type: string
+ description: Image used for vIRC CC instances
+ virc_flavor_name:
+ type: string
+ description: Flavor of VM to use for vIRC CC instances
+ virc_ssh_public_key:
+ type: string
+ description: Public key for SSH access to vIRC CC instances
+ availability_zone_0:
+ type: string
+ description: First availability zone ID or name
+ management_net_name:
+ type: string
+ description: vIRC CC management network name
+ virc_management_dhcp:
+ type: string
+ description: For static IPs on management port, no. For DHCP assigned IPs, yes.
+ virc_management_ips:
+ type: comma_delimited_list
+ description: vIRC CC management network fixed ips for first availability zone if static
+ virc_management_netmask:
+ type: string
+ description: vIRC CC management netmask
+ virc_management_gateway:
+ type: string
+ description: vIRC CC management gateway
+ virc_management_default_route:
+ type: string
+ description: If management port is default route on OS, yes. If not, no.
+ data_net_name:
+ type: string
+ description: vIRC CC data network name
+ virc_data_dhcp:
+ type: string
+ description: For static IPs on data port, no. For DHCP assigned IPs, yes.
+ virc_data_ips:
+ type: comma_delimited_list
+ description: vIRC CC data network fixed ips for first availability zone if static
+ virc_data_netmask:
+ type: string
+ description: vIRC CC data netmask
+ virc_data_gateway:
+ type: string
+ description: vIRC CC data gateway
+ virc_data_default_route:
+ type: string
+ description: If data port is default route on OS, yes. If not, no.
+ signaling_net_name:
+ type: string
+ description: vIRC CC signaling network name
+ virc_signaling_dhcp:
+ type: string
+ description: For static IPs on data port, no. For DHCP assigned IPs, yes.
+ virc_signaling_ips:
+ type: comma_delimited_list
+ description: vIRC CC signaling network fixed ips for first availability zone if static
+ virc_signaling_netmask:
+ type: string
+ description: vIRC CC signaling netmask
+ virc_signaling_gateway:
+ type: string
+ description: vIRC CC signaling gateway
+ virc_signaling_default_route:
+ type: string
+ description: If signaling port is default route on OS, yes. If not, no.
+ num_instances:
+ type: number
+ description: Number of instances to deploy in first availability zone
+ constraints:
+ - range: { min: 0, max: 18}
+ virc_sg_rules:
+ type: json
+ description: vIRC CC security group rules
+ virc_domain:
+ type: string
+ description: Domain of the vIRC CC instances
+ virc_dns1:
+ type: string
+ description: First DNS nameserver for vIRC CC instances
+ virc_dns2:
+ type: string
+ description: Second DNS nameserver for vIRC CC instances
+ virc_default_gateway:
+ type: string
+ description: Default gateway for vIRC CC instances
+ virc_version:
+ type: string
+ description: vIRC CC deployment version
+ virc_environment:
+ type: string
+ description: vIRC CC deployment environment
+ virc_version_file:
+ type: string
+ description: vIRC CC version file name
+
+resources:
+ virc_keypair:
+ type: OS::Nova::KeyPair
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_virc_keypair
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ public_key: { get_param: virc_ssh_public_key }
+ save_private_key: false
+
+ virc_RSG:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ name:
+ str_replace:
+ template: VNF_NAME_virc_sg
+ params:
+ VNF_NAME: { get_param: vnf_name }
+ rules: { get_param: virc_sg_rules }
+
+ virc_RRG_0:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: num_instances }
+ index_var: server_count
+ resource_def:
+ type: nested_virc.yaml
+ properties:
+ vnf_id: { get_param: vnf_id }
+ vnf_name: { get_param: vnf_name }
+ vf_module_id: { get_param: vf_module_id }
+ vf_module_name: { get_param: vf_module_name }
+ vm_roles: { get_param: vm_roles }
+ virc_environment: { get_param: virc_environment }
+ virc_version: { get_param: virc_version }
+ virc_version_file: { get_param: virc_version_file }
+ virc_names: { get_param: virc_names }
+ virc_image_name: { get_param: virc_image_name }
+ virc_flavor_name: { get_param: virc_flavor_name }
+ availability_zone_0: { get_param: availability_zone_0 }
+ virc_keypair: { get_resource: virc_keypair }
+ management_net_name: { get_param: management_net_name }
+ virc_management_dhcp: { get_param: virc_management_dhcp }
+ virc_management_ips: { get_param: virc_management_ips }
+ virc_management_netmask: { get_param: virc_management_netmask }
+ virc_management_gateway: { get_param: virc_management_gateway }
+ virc_management_default_route: { get_param: virc_management_default_route }
+ data_net_name: { get_param: data_net_name }
+ virc_data_dhcp: { get_param: virc_data_dhcp }
+ virc_data_ips: { get_param: virc_data_ips }
+ virc_data_netmask: { get_param: virc_data_netmask }
+ virc_data_gateway: { get_param: virc_data_gateway }
+ virc_data_default_route: { get_param: virc_data_default_route }
+ signaling_net_name: { get_param: signaling_net_name }
+ virc_signaling_ips: { get_param: virc_signaling_ips }
+ virc_signaling_dhcp: { get_param: virc_signaling_dhcp }
+ virc_signaling_netmask: { get_param: virc_signaling_netmask }
+ virc_signaling_gateway: { get_param: virc_signaling_gateway }
+ virc_signaling_default_route: { get_param: virc_signaling_default_route }
+ virc_domain: { get_param: virc_domain }
+ virc_dns1: { get_param: virc_dns1 }
+ virc_dns2: { get_param: virc_dns2 }
+ virc_default_gateway: { get_param: virc_default_gateway }
+ virc_sg: { get_resource: virc_RSG }
+ index_num: server_count
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/nested_virc.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/nested_virc.yaml
new file mode 100644
index 0000000000..f4e34188c0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/nested_virc.yaml
@@ -0,0 +1,207 @@
+heat_template_version: 2015-04-30
+
+description: virc_nested
+
+parameters:
+ vnf_id:
+ type: string
+ description: Unique ID for this VF instance
+ vnf_name:
+ type: string
+ description: Unique name for this VF instance
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ vf_module_name:
+ type: string
+ description: Unique name for this VF Module instance
+ vm_roles:
+ type: comma_delimited_list
+ description: Unique roles for this group of instances
+ virc_names:
+ type: comma_delimited_list
+ description: name of virc instances
+ virc_image_name:
+ type: string
+ description: name of virc image
+ virc_flavor_name:
+ type: string
+ description: flavor of instance to use
+ virc_keypair:
+ type: string
+ description: Key pair containing public SSH key for vIRC instances
+ availability_zone_0:
+ type: string
+ description: Availability zone used for this resource group
+ management_net_name:
+ type: string
+ description: virc management network name
+ virc_management_dhcp:
+ type: string
+ description: yes if port configured by dhcp, otherwise no
+ virc_management_ips:
+ type: comma_delimited_list
+ description: virc management network fixed ips
+ virc_management_netmask:
+ type: string
+ description: virc management netmask
+ virc_management_gateway:
+ type: string
+ description: virc management gateway
+ virc_management_default_route:
+ type: string
+ description: yes if this default route is that of this nic
+ data_net_name:
+ type: string
+ description: virc data network name
+ virc_data_dhcp:
+ type: string
+ description: yes if port configured by dhcp, otherwise no
+ virc_data_ips:
+ type: comma_delimited_list
+ description: virc data network fixed ips
+ virc_data_netmask:
+ type: string
+ description: virc data netmask
+ virc_data_gateway:
+ type: string
+ description: virc data gateway
+ virc_data_default_route:
+ type: string
+ description: yes if this default route is that of this nic
+ signaling_net_name:
+ type: string
+ description: virc signaling network name
+ virc_signaling_dhcp:
+ type: string
+ description: yes if port configured by dhcp, otherwise no
+ virc_signaling_ips:
+ type: comma_delimited_list
+ description: virc signaling network fixed ips
+ virc_signaling_netmask:
+ type: string
+ description: virc signaling netmask
+ virc_signaling_gateway:
+ type: string
+ description: virc signaling gateway
+ virc_signaling_default_route:
+ type: string
+ description: yes if this default route is that of this nic
+ virc_sg:
+ type: string
+ description: virc security group
+ virc_domain:
+ type: string
+ description: domain of the virc instance
+ virc_dns1:
+ type: string
+ description: first dns nameserver for virc instance
+ virc_dns2:
+ type: string
+ description: second dns nameserver for virc instance
+ virc_default_gateway:
+ type: string
+ description: default gateway for VM
+ virc_version:
+ type: string
+ description: virc deployment version
+ virc_environment:
+ type: string
+ description: virc deployment environment
+ virc_version_file:
+ type: string
+ description: vIRC CC version file name
+ index_num:
+ type: number
+ description: Current index value of the resource group
+ constraints:
+ - range: { min: 0, max: 18 }
+
+resources:
+ virc_0:
+ type: OS::Nova::Server
+ properties:
+ name: {get_param: [virc_names, {get_param: index_num}]}
+ metadata:
+ vnf_id: { get_param: vnf_id }
+ vnf_name: { get_param: vnf_name }
+ vf_module_id: { get_param: vf_module_id }
+ vf_module_name: { get_param: vf_module_name }
+ vm_role: { get_param: [vm_roles, {get_param: index_num}]}
+ key_name: {get_param: virc_keypair}
+ image: {get_param: virc_image_name}
+ flavor: {get_param: virc_flavor_name}
+ availability_zone: {get_param: availability_zone_0}
+ networks:
+ - port: { get_resource: virc_management_0_port}
+ - port: { get_resource: virc_data_1_port}
+ - port: { get_resource: virc_signaling_2_port}
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ template: {get_file: user_data.sh}
+ params:
+ __hostname__: {get_param: [virc_names, {get_param: index_num}]}
+ __domain__: {get_param: virc_domain}
+ __dns1__: {get_param: virc_dns1}
+ __dns2__: {get_param: virc_dns2}
+ __default_gateway__: {get_param: virc_default_gateway}
+ __port_mac_0__: {get_attr: [virc_management_0_port, mac_address]}
+ __port_ip_0__: {get_param: [virc_management_ips, {get_param: index_num}]}
+ __port_netmask_0__: {get_param: virc_management_netmask}
+ __port_gateway_0__: {get_param: virc_management_gateway}
+ __port_def_route_0__: {get_param: virc_management_default_route}
+ __port_dhcp_0__: {get_param: virc_management_dhcp}
+ __port_mac_1__: {get_attr: [virc_data_1_port, mac_address]}
+ __port_ip_1__: {get_param: [virc_data_ips, {get_param: index_num}]}
+ __port_netmask_1__: {get_param: virc_data_netmask}
+ __port_gateway_1__: {get_param: virc_data_gateway}
+ __port_def_route_1__: {get_param: virc_data_default_route}
+ __port_dhcp_1__: {get_param: virc_data_dhcp}
+ __port_ip6_1__: {get_param: [virc_data_ips, {get_param: index_num}]}
+ __port_mac_2__: {get_attr: [virc_signaling_2_port, mac_address]}
+ __port_ip_2__: {get_param: [virc_signaling_ips, {get_param: index_num}]}
+ __port_netmask_2__: {get_param: virc_signaling_netmask}
+ __port_gateway_2__: {get_param: virc_signaling_gateway}
+ __port_def_route_2__: {get_param: virc_signaling_default_route}
+ __port_dhcp_2__: {get_param: virc_signaling_dhcp}
+ __virc_environment__: {get_param: virc_environment}
+ __virc_version__: {get_param: virc_version}
+ __virc_version_file__: {get_param: virc_version_file}
+
+ virc_management_0_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: management_net_name }
+ fixed_ips:
+ - ip_address: { get_param: [virc_management_ips, {get_param: index_num}]}
+ security_groups:
+ - { get_param: virc_sg }
+ virc_data_1_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: data_net_name }
+ fixed_ips:
+ - ip_address: { get_param: [virc_data_ips, {get_param: index_num}]}
+ security_groups:
+ - { get_param: virc_sg }
+ virc_signaling_2_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_param: signaling_net_name }
+ fixed_ips:
+ - ip_address: { get_param: [virc_signaling_ips, {get_param: index_num}]}
+ security_groups:
+ - { get_param: virc_sg }
+ virc_volume:
+ type: OS::Cinder::Volume
+ properties:
+# name: {get_param: [virc_names, {get_param: index_num}]}
+ availability_zone: nova
+# availability_zone: {get_param: availability_zone_0}
+ size: 1
+ virc_volumeattachment:
+ type: OS::Cinder::VolumeAttachment
+ properties:
+ instance_uuid: { get_resource: virc_0 }
+ volume_id: { get_resource: virc_volume }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/user_data.sh b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/user_data.sh
new file mode 100644
index 0000000000..6510c728e8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/baseHeatExposeResourceUsingGetResource/positive/user_data.sh
@@ -0,0 +1,292 @@
+#!/bin/bash
+
+set -x
+exec >> /root/user_data.out
+exec 2>&1
+
+MOUNT_POINT=${1:-'/opt/app/virc'}
+LABEL=${2:-'VIRC_DATA'}
+DESCRIPTION=${3:-'vIRC data volume'}
+
+TAG=VIRC_PROVISIONING
+
+DISK_ID=$(ls -1 /dev/disk/by-id | tail -n1)
+DISK_NAME=$(readlink -f /dev/disk/by-id/${DISK_ID})
+FSTYPE=$(lsblk -o FSTYPE -n ${DISK_NAME})
+DISK_LABEL=$(lsblk -o LABEL -n ${DISK_NAME})
+
+# Exit with message if not root
+[[ $UID -ne 0 ]] && logger -t $TAG "Not root. Exiting." && exit 2
+
+# Create filesystem if none
+if [[ -z ${FSTYPE} ]] ; then
+ mkfs.xfs ${DISK_NAME}
+ if [[ $? -eq 0 ]] ; then
+ logger -t $TAG "Created xfs filesystem on $DISK_NAME."
+ else
+ logger -t $TAG "ERROR: Could not create xfs on $DISK_NAME. Exiting."
+ exit 90
+ fi
+fi
+sleep 0.5
+DISK_UUID=$(lsblk -no UUID ${DISK_NAME})
+
+# Create label if none
+[[ -z ${DISK_LABEL} ]] && xfs_admin -L ${LABEL} ${DISK_NAME}
+
+# Create mount point if it does not exist
+if [[ ! -d ${MOUNT_POINT} ]] ; then
+ mkdir -p ${MOUNT_POINT}
+ if [[ $? -eq 0 ]] ; then
+ logger -t $TAG "Created mount point at $MOUNT_POINT."
+ else
+ logger -t $TAG "ERROR: Could not create mount point at $MOUNT_POINT. Exiting"
+ exit 80
+ fi
+fi
+
+# Only add to /etc/fstab if not already there
+grep -q ${DISK_UUID} /etc/fstab
+if [[ $? -ne 0 ]] ; then
+ echo "# Following mount for ${DESCRIPTION}" >> /etc/fstab
+ echo "UUID=${DISK_UUID} ${MOUNT_POINT} xfs defaults 0 0" >> /etc/fstab
+ mount -a
+ mount_check_1=$?
+ mount | grep ${DISK_NAME} | grep ${MOUNT_POINT}
+ mount_check_2=$?
+ if [[ ${mount_check_1} -eq 0 ]] && [[ ${mount_check_2} -eq 0 ]]; then
+ logger -t $TAG "Successfully mounted $DISK_NAME at $MOUNT_POINT."
+ else
+ logger -t $TAG "ERROR: Could not mount $DISK_NAME at $MOUNT_POINT. Exiting."
+ exit 70
+ fi
+fi
+
+###
+### Configure network
+###
+
+hostname='__hostname__'
+domain='__domain__'
+dns1='__dns1__'
+dns2='__dns2__'
+default_gateway='__default_gateway__'
+
+# 1 disable, 0 enable
+ipv6_enable=1
+
+port_mac[0]='__port_mac_0__'
+port_ip[0]='__port_ip_0__'
+port_netmask[0]='__port_netmask_0__'
+port_gateway[0]='__port_gateway_0__'
+port_def_route[0]='__port_def_route_0__'
+port_dhcp[0]='__port_dhcp_0__'
+
+port_mac[1]='__port_mac_1__'
+port_ip[1]='__port_ip_1__'
+port_netmask[1]='__port_netmask_1__'
+port_gateway[1]='__port_gateway_1__'
+port_def_route[1]='__port_def_route_1__'
+port_dhcp[1]='__port_dhcp_1__'
+
+port_mac[2]='__port_mac_2__'
+port_ip[2]='__port_ip_2__'
+port_netmask[2]='__port_netmask_2__'
+port_gateway[2]='__port_gateway_2__'
+port_def_route[2]='__port_def_route_2__'
+port_dhcp[2]='__port_dhcp_2__'
+
+# function to add underscore
+add_underscore(){
+ echo "__${1}__"
+}
+
+# filenames
+net_scripts=/etc/sysconfig/network-scripts
+
+# update network scripts with static ips and gateways
+nic_count=($(ls -1d /sys/class/net/eth* | wc -l))
+for i in {0..2} ; do
+ if [[ ${port_mac[i]} != "__port_mac_${i}__" && \
+ ( ${port_ip[i]} != "__port_ip_${i}__" || ${port_dhcp[i]} != "__port_dhcp_${i}__" ) ]] ; then
+ for (( j=0 ; j<${nic_count} ; j++ )) ; do
+ nic_mac=$(cat /sys/class/net/eth${j}/address)
+ if [[ ${port_mac[i]} == ${nic_mac} ]] ; then
+ echo "NAME=eth${j}" > ${net_scripts}/ifcfg-eth${j}
+ echo "DEVICE=eth${j}" >> ${net_scripts}/ifcfg-eth${j}
+ if [[ ${port_dhcp[i]} =~ (yes|Yes|True|true) ]] ; then
+ echo "BOOTPROTO=dhcp" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_ip[i]} != "__port_ip_${i}__" ]] && [[ ${port_ip[i]} =~ .*:.* ]] ; then
+ [[ ${ipv6_enable} -eq 1 ]] && ipv6_enable=0
+ echo "BOOTPROTO=none" >> ${net_scripts}/ifcfg-eth${j}
+ echo "IPV6INIT=yes" >> ${net_scripts}/ifcfg-eth${j}
+ echo "IPV6ADDR=${port_ip[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ if [[ ${port_gateway[i]} != "__port_gateway_${i}__" ]] ; then
+ echo "IPV6_DEFAULTGW=${port_gateway[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_gateway[i]} == $(add_underscore 'port_gateway_0') ]] && [[ ${default_gateway} != $(add_underscore 'default_gateway') ]] ; then
+ echo "IPV6_DEFAULTGW=${default_gateway}" >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ elif [[ ${port_ip[i]} != "__port_ip_${i}__" ]] ; then
+ echo "BOOTPROTO=none" >> ${net_scripts}/ifcfg-eth${j}
+ echo "IPADDR=${port_ip[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ # Set gateway if provided. If not set, set eth0 to default
+ if [[ ${port_gateway[i]} != "__port_gateway_${i}__" ]] ; then
+ echo "GATEWAY=${port_gateway[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_gateway[i]} == $(add_underscore 'port_gateway_0') ]] && [[ ${default_gateway} != $(add_underscore 'default_gateway') ]] ; then
+ echo "GATEWAY=${default_gateway}" >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ # Set netmask if provided. Else set netmask to 255.255.255.0
+ if [[ ${port_netmask[i]} != "__port_netmask_${i}__" ]] ; then
+ echo "NETMASK=${port_netmask[i]}" >> ${net_scripts}/ifcfg-eth${j}
+ else
+ echo 'NETMASK=255.255.255.0' >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ fi
+ echo "ONBOOT=yes" >> ${net_scripts}/ifcfg-eth${j}
+ echo "HWADDR=${nic_mac}" >> ${net_scripts}/ifcfg-eth${j}
+ # Set to DEFROUTE to no, unless otherwise stated. If not stated set to yes on eth0
+ if [[ ${port_def_route[i]} =~ (yes|Yes|True|true) ]] ; then
+ echo "DEFROUTE=yes" >> ${net_scripts}/ifcfg-eth${j}
+ elif [[ ${port_def_route[i]} == $(add_underscore 'port_def_route_0') ]] ; then
+ echo "DEFROUTE=yes" >> ${net_scripts}/ifcfg-eth${j}
+ else
+ echo "DEFROUTE=no" >> ${net_scripts}/ifcfg-eth${j}
+ fi
+ fi
+ done
+ fi
+done
+
+# Set DNS
+if [[ ${dns1} != $(add_underscore 'dns1') ]] ; then
+ echo "PEERDNS=yes" >> ${net_scripts}/ifcfg-eth0
+ echo "DNS1=${dns1}" >> ${net_scripts}/ifcfg-eth0
+ [[ ${dns2} != $(add_underscore 'dns2') ]] && echo "DNS2=${dns2}" >> ${net_scripts}/ifcfg-eth0
+fi
+# Set default gateway
+[[ ${default_gateway} != $(add_underscore 'default_gateway') ]] && echo GATEWAY=${default_gateway} >> ${net_scripts}/ifcfg-eth0
+# Set domain
+if [[ ${domain} != $(add_underscore 'domain') ]] ; then
+ echo DOMAIN=${domain} >> ${net_scripts}/ifcfg-eth0
+ echo kernel.domainname=${domain} >> /etc/sysctl.conf
+ sysctl -p
+fi
+# Set hostname
+if [[ ${hostname} != $(add_underscore 'hostname') ]] ; then
+ hostnamectl set-hostname ${hostname}
+ sed -i "s/\(^127\.0\.0\.1 .*\)/\1 ${hostname}/" /etc/hosts
+ sed -i "s/\(^::1 .*\)/\1 ${hostname}/" /etc/hosts
+ sed -i "s/\(^127\.0\.0\.1 .*\)/\1 ${hostname}.${domain}/" /etc/hosts
+ sed -i "s/\(^::1 .*\)/\1 ${hostname}.${domain}/" /etc/hosts
+fi
+
+# Enable ipv6 if there is an ipv6 address supplied in env
+if [[ ${ipv6_enable} -eq 0 ]] ; then
+ echo net.ipv6.conf.all.disable_ipv6 = 0 >> /etc/sysctl.conf
+ echo net.ipv6.conf.default.disable_ipv6 = 0 >> /etc/sysctl.conf
+ echo net.ipv6.conf.lo.disable_ipv6 = 0 >> /etc/sysctl.conf
+ sysctl -p
+fi
+
+service network restart
+
+## Disable Password Login for MechID group
+echo "Match Group mechid" >> /etc/ssh/sshd_config
+echo -e "\tPasswordAuthentication no" >> /etc/ssh/sshd_config
+systemctl restart sshd
+
+###
+# Install SWM
+###
+
+## SWM variables
+virc_cc_environment='__virc_cc_environment__'
+virc_cc_version='__virc_cc_version__'
+virc_cc_version_file='__virc_cc_version_file__'
+
+cd /tmp
+wget 'https://codecloud.web.att.com/projects/ST_VIRC/repos/virc/browse/SWM/Install/input.env?raw' -O input.env
+wget 'https://codecloud.web.att.com/projects/ST_VIRC/repos/virc/browse/SWM/Install/platform-init-1.5.5.sh?raw' -O platform-init-1.5.5.sh
+wget 'https://codecloud.web.att.com/projects/ST_VIRC/repos/virc/browse/SWM/Install/hostname.props?raw' -O $(hostname).props
+sed -i "s/$(add_underscore 'virc_environment')/${virc_environment}/g" $(hostname).props
+sed -i "s/$(add_underscore 'virc_version')/${virc_version}/g" input.env
+chmod +x platform-init-1.5.5.sh
+
+## Add MechID user
+mechid_user_name=$(grep 'SWM_AUTOUSER=' /tmp/input.env | cut -f 2 -d '=')
+useradd -g mechid -p 'pahfhrkSZmUs.' ${mechid_user_name}
+
+### Workaround ### REMOVE WHEN BUG FIXED ###
+#mkdir -p /etc/chef/trusted_certs/
+
+# Get packages to install from input.env, then delete from input.env
+. /tmp/input.env
+swm_install_pkgs=(${SWM_INIT_PACKAGES})
+swm_install_pkg_deps=(${SWM_INIT_PACKAGE_DEPS})
+sed -i '/SWM_INIT_PACKAGES="/,/\"/d' /tmp/input.env
+
+./platform-init-1.5.5.sh /tmp/input.env
+
+## Install SWM packages after SWM installation
+export AFTSWM_USERNAME=${mechid_user_name}
+mechid_user_enc_passwd=$(grep 'SWM_AUTOCRED=' /tmp/input.env | cut -f 2 -d '=')
+export AFTSWM_PASSWORD=${mechid_user_enc_passwd}
+export HOSTNAME=$(hostname)
+#export HOME=/root
+
+#/opt/app/aft/aftswmcli/bin/swmcli component pkginstall -c ${swm_install_pkgs} -n $(hostname).$(domainname) -w -fi -fs
+#sleep 5
+#cd
+echo $SHELL
+whoami
+env
+pwd
+
+# install swm packages one at a time
+for package in ${swm_install_pkg_deps[@]} ; do
+ /opt/app/aft/aftswmcli/bin/swmcli component pkginstall -c ${package} -n $(hostname).$(domainname) -w -fi
+done
+
+for package in ${swm_install_pkgs[@]} ; do
+ /opt/app/aft/aftswmcli/bin/swmcli component pkginstall -c ${package} -n $(hostname).$(domainname) -w -fi
+done
+
+### Run Chef Prep Scripts ###
+USER=${mechid_user_name}
+COOKBOOK_NAME='virc_cc'
+VERSION=${virc_cc_version}
+ENV=${virc_cc_environment}
+VERSION_FILE=${virc_cc_version_file}
+
+COOKBOOK_VERSION=""
+
+for v in $(echo ${VERSION} | tr "." "\n")
+do
+ if [ "$v" -ge 0 -a "$v" -le 9 ]; then
+ COOKBOOK_VERSION=${COOKBOOK_VERSION}0$v
+ else
+ COOKBOOK_VERSION=${COOKBOOK_VERSION}$v
+ fi
+done
+
+COOKBOOK_VERSION="${COOKBOOK_VERSION:0:4}.1${COOKBOOK_VERSION:4:4}.1${COOKBOOK_VERSION:8:4}"
+
+#cd /home/$USER/chef-repo
+mkdir -p /home/$USER/scripts/$ENV
+chown -R ${mechid_user_name}:mechid /home/$USER
+
+chef_config_path="/home/${mechid_user_name}/chef-repo/.chef/knife.rb"
+
+su - -c "/usr/bin/knife client delete $(hostname).$(domainname) -y -c ${chef_config_path}" ${mechid_user_name}
+su - -c "/usr/bin/knife node delete $(hostname).$(domainname) -y -c ${chef_config_path}" ${mechid_user_name}
+
+su - -c "/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files Pyswm.py -c ${chef_config_path} > /home/${mechid_user_name}/scripts/$ENV/Pyswm.py" ${mechid_user_name}
+#/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files Pyswm.pyc > /home/$USER/scripts/$ENV/Pyswm.pyc
+su - -c "/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files install_swm.py -c ${chef_config_path} > /home/$USER/scripts/$ENV/install_swm.py" ${mechid_user_name}
+su - -c "/usr/bin/knife cookbook show $COOKBOOK_NAME $COOKBOOK_VERSION files swm-installer-config.json -c ${chef_config_path} > /home/$USER/scripts/$ENV/swm-installer-config.json" ${mechid_user_name}
+
+#cd /home/$USER/scripts/$ENV
+su - -c "chmod 755 /home/$USER/scripts/$ENV/install_swm.py" ${mechid_user_name}
+su - -c "cd /home/$USER/scripts/$ENV; ./install_swm.py $VERSION $ENV --components-nodes=\"vIRC-cc:$(hostname).$(domainname)\" --version-file=${VERSION_FILE}" ${mechid_user_name}
+#./install_swm.py $VERSION $ENV --components-nodes="<<<ComponentName.FQDN>>>"
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/first.yaml
index 3d3a1949b1..3d3a1949b1 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/first.yaml
index 2fc2a932fe..e4f29af580 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/first.yaml
@@ -18,7 +18,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatFloatingIpResourceType/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.yaml
index 5d6cea4d84..f9893b63ee 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/first.yaml
@@ -18,7 +18,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.yaml
index 2fc2a932fe..e4f29af580 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatFloatingIpResourceType/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.yaml
@@ -18,7 +18,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.yaml
index 60f8c45630..fbec8ccf73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/first.yaml
@@ -6,7 +6,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_4 }
+ name: { get_param: fsb2_name_4 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_a }
@@ -21,7 +21,7 @@ resources:
FSB3:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [fsb2_names, 0] }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone}
@@ -36,7 +36,7 @@ resources:
FSB4:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [fsb2_names, 0] }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_blabla}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.yaml
index 372761514f..323230ff28 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/first.yaml
@@ -7,7 +7,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_4 }
+ name: { get_param: fsb2_name_4 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
@@ -21,7 +21,7 @@ resources:
FSB3:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [fsb2_names, 0] }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerAvailabilityZoneName/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.yaml
index 58e645e168..74b16bdc5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/first.yaml
@@ -6,7 +6,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2-flavor }
availability_zone: { get_param: availability_zone_0 }
@@ -21,7 +21,7 @@ resources:
FSB3:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
image: { get_param: fsb2-image }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.yaml
index 2c9fd08fb2..e4f29af580 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaNetworkUniqueRoleConvention/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/first.yaml
@@ -18,22 +18,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
- block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
- flavor: { get_param: fsb2_flavor_name }
- availability_zone: { get_param: availability_zone_0 }
- metadata:
- VNF_id: { get_param: vnfvfVF_id }
- vf_module_id: { get_param: vf_module_id }
- networks:
- - port: { get_resource: FSB2_Internal1 }
- - port: { get_resource: FSB2_Internal2 }
- - port: { get_resource: FSB2_OAM }
-
- FSB3:
- type: OS::Nova::Server
- properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerImageAndFlavor/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerImageAndFlavor/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.yaml
index d82e1ee2d3..d9ddcbc7ed 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/first.yaml
@@ -7,7 +7,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.yaml
index 85bb15837b..b6be85b4fa 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/first.yaml
@@ -7,7 +7,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: fsb_name_2 }
+ name: { get_param: fsb2_name_2 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerMetaDataValidation/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerMetaDataValidation/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/first.yaml
index 3a8e71939f..3a8e71939f 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/first.yaml
index 13fc942865..ff17c6940a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/first.yaml
@@ -7,7 +7,7 @@ resources:
FSB2:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_4 }
+ name: { get_param: fsb2_name_4 }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
@@ -21,21 +21,7 @@ resources:
FSB3:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
- block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
- flavor: { get_param: fsb2_flavor_name }
- availability_zone: { get_param: availability_zone_0 }
- metadata:
- VnF_id: { get_param: vnfvfVF_id }
- vf_module_id: { get_param: vf_module_id }
- networks:
- - port: { get_resource: FSB2_Internal1 }
- - port: { get_resource: FSB2_Internal2 }
- - port: { get_resource: FSB2_OAM }
- FSB4:
- type: OS::Nova::Server
- properties:
- name: { get_param: [pcrf_pps_server_names, {get_param: index_num}] }
+ name: { get_param: [fsb2_names, 0] }
block_device_mapping: [{device_name: "vda", volume_id : {get_param: VMME_FSB2_boot_volume }, delete_on_termination: "false" }]
flavor: { get_param: fsb2_flavor_name }
availability_zone: { get_param: availability_zone_0 }
@@ -46,6 +32,7 @@ resources:
- port: { get_resource: FSB2_Internal1 }
- port: { get_resource: FSB2_Internal2 }
- port: { get_resource: FSB2_OAM }
+
outputs:
expose_resource_nove_output2:
description: the pcrf_server
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatNovaServerNameValidation/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatNovaServerNameValidation/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/first.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/first.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.yaml
index 85a4c58334..85a4c58334 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.yaml
index 7e0aaa373d..7e0aaa373d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortFixedIpNamingConvention/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortFixedIpNamingConvention/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/first.yaml
index abbf650c8d..abbf650c8d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/MANIFEST.json
index 76ce6de6e6..76ce6de6e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/first.yaml
index c6128e9470..12ee08952d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/first.yaml
@@ -23,11 +23,11 @@ outputs:
expose_resource_port_output_0:
description: the pcrf_server
value: { get_resource: port_resource_0 }
-expose_resource_port_output_1:
- description: the pcrf_server
- value: { get_resource: port_resource_1 }
-expose_resource_port_output_2:
- description: the pcrf_server
- value: { get_resource: port_resource_2 }
+ expose_resource_port_output_1:
+ description: the pcrf_server
+ value: { get_resource: port_resource_1 }
+ expose_resource_port_output_2:
+ description: the pcrf_server
+ value: { get_resource: port_resource_2 }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatPortNetworkNamingConvention/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatPortNetworkNamingConvention/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/MANIFEST.json
new file mode 100644
index 0000000000..76ce6de6e6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/MANIFEST.json
@@ -0,0 +1,27 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true,
+ "data": [
+ {
+ "file": "first.env",
+ "type": "HEAT_ENV"
+ },
+ {
+ "file": "firstVol.yaml",
+ "type": "HEAT_VOL"
+ }
+ ]
+ },
+ {
+ "file": "second.yaml",
+ "type": "HEAT",
+ "isBase": false
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/second.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/second.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/first.yaml
index 3173885d7e..3173885d7e 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/firstVol.yaml
index 4f0d65a735..4f0d65a735 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/negative/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/second.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/negative/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/MANIFEST.json
new file mode 100644
index 0000000000..76ce6de6e6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/MANIFEST.json
@@ -0,0 +1,27 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true,
+ "data": [
+ {
+ "file": "first.env",
+ "type": "HEAT_ENV"
+ },
+ {
+ "file": "firstVol.yaml",
+ "type": "HEAT_VOL"
+ }
+ ]
+ },
+ {
+ "file": "second.yaml",
+ "type": "HEAT",
+ "isBase": false
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/illegalTypeFile.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/illegalTypeFile.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/first.yaml
index 63b576edb8..63b576edb8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/firstVol.yaml
index 7e82b2a7e6..7e82b2a7e6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/heatVolumeExpose/positive/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/second.yaml
index bb06b9d60a..bb06b9d60a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatVolumeExpose/positive/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/first.yaml
new file mode 100644
index 0000000000..acbc8ca33b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/aligned/first.yaml
@@ -0,0 +1,45 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ service_instance_1:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1 }
+ service_template: { get_resource: service_template_1 }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: oam_mgmt_net_0_id }
+ },
+ {
+ virtual_network: { get_param: Cricket_OCS_direct_net_id }
+ },
+ {
+ virtual_network: { get_resource: hsl_direct_net }
+ },
+ {
+ virtual_network: {get_param: oam_mgmt_net_1_id},
+ static_routes: [
+ { "prefix": {get_param: prefix_0} },
+ { "prefix": {get_param: prefix_1} },
+ { "prefix": {get_param: prefix_2} },
+ ],
+ }
+ ]
+ service_template_1:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor_name }
+ service_interface_type_list: { "Fn::Split" : [ ",", "management,left,right,other" ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/first.yaml
new file mode 100644
index 0000000000..cc9d40fd5a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailserviceinstanceavailabilityzone/notaligned/first.yaml
@@ -0,0 +1,45 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ service_instance_1:
+ type: OS::Contrail::ServiceInstance
+ depends_on: [ hsl_ip_subnet]
+ properties:
+ name: { get_param: service_instance_name }
+ availability_zone: { get_param: availability_zone_1a }
+ service_template: { get_resource: service_template_1 }
+ scale_out:
+ max_instances: {get_param: max_num_fw_instances}
+ interface_list: [
+ {
+ virtual_network: { get_param: oam_mgmt_net_0_id }
+ },
+ {
+ virtual_network: { get_param: Cricket_OCS_direct_net_id }
+ },
+ {
+ virtual_network: { get_resource: hsl_direct_net }
+ },
+ {
+ virtual_network: {get_param: oam_mgmt_net_1_id},
+ static_routes: [
+ { "prefix": {get_param: prefix_0} },
+ { "prefix": {get_param: prefix_1} },
+ { "prefix": {get_param: prefix_2} },
+ ],
+ }
+ ]
+ service_template_1:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor_name }
+ service_interface_type_list: { "Fn::Split" : [ ",", "management,left,right,other" ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/first.yaml
new file mode 100644
index 0000000000..1eb7bc914d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/aligned/first.yaml
@@ -0,0 +1,17 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_image_name }
+ flavor: { get_param: st_flavor_name }
+ service_interface_type_list: { "Fn::Split" : [ ",", "management,left,right,other" ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/first.yaml
new file mode 100644
index 0000000000..9da16fe0d2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/imageandflavordifferentvmtype/first.yaml
@@ -0,0 +1,17 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st1_image_name }
+ flavor: { get_param: st_flavor_name }
+ service_interface_type_list: { "Fn::Split" : [ ",", "management,left,right,other" ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/first.yaml
new file mode 100644
index 0000000000..325cb78450
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/heatcontrailservicetemplateimageandflavor/notaligned/first.yaml
@@ -0,0 +1,17 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ service_template:
+ type: OS::Contrail::ServiceTemplate
+ properties:
+ name: { get_param: st_name }
+ service_mode: { get_param: st_mode }
+ service_type: { get_param: st_type }
+ image_name: { get_param: st_imaage_name }
+ flavor: { get_param: st_flavaor_name }
+ service_interface_type_list: { "Fn::Split" : [ ",", "management,left,right,other" ] }
+ shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] }
+ static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] }
+ service_scaling: { get_param: st_scaling } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/MANIFEST.json
index a189124e6c..a189124e6c 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/single.env.illegalSuffix b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/single.env.illegalSuffix
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/first.yaml
new file mode 100644
index 0000000000..bb06b9d60a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/first.yaml
@@ -0,0 +1,14 @@
+heat_template_version: 2013-05-23
+
+description: heat second
+
+resources:
+ network_expose:
+ type: OS::Neutron::Net
+
+outputs:
+ expose_resource_network_output:
+ description: the pcrf_server
+ value: { get_resource: network_expose }
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/firstVol.yaml
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/missingBaseHeat/firstVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/second.yaml
new file mode 100644
index 0000000000..bb06b9d60a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/missingBaseHeat/second.yaml
@@ -0,0 +1,14 @@
+heat_template_version: 2013-05-23
+
+description: heat second
+
+resources:
+ network_expose:
+ type: OS::Neutron::Net
+
+outputs:
+ expose_resource_network_output:
+ description: the pcrf_server
+ value: { get_resource: network_expose }
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/MANIFEST.json
index 3de70a21df..3de70a21df 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecompGuideLineValidator/multiBaseHeat/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/single.yaml.illegalSuffix b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/single.yaml.illegalSuffix
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/singleVol.yaml.illegalSuffix b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/first.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/singleVol.yaml.illegalSuffix
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/firstVol.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/single.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/firstVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/second.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/single.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/multiBaseHeat/second.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/MANIFEST.json
new file mode 100644
index 0000000000..76ce6de6e6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/MANIFEST.json
@@ -0,0 +1,27 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true,
+ "data": [
+ {
+ "file": "first.env",
+ "type": "HEAT_ENV"
+ },
+ {
+ "file": "firstVol.yaml",
+ "type": "HEAT_VOL"
+ }
+ ]
+ },
+ {
+ "file": "second.yaml",
+ "type": "HEAT",
+ "isBase": false
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/singleVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/singleVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/first.yaml
new file mode 100644
index 0000000000..2fe03959bd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/first.yaml
@@ -0,0 +1,61 @@
+heat_template_version: 2013-05-23
+
+description: heat expose volume resource
+
+resources:
+ FSB2_legal_1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: fsb_name_2 }
+ flavor: { get_param: fsb_flavor_name }
+ image: { get_param: fsb_image_name }
+ metadata:
+ VnF_id: { get_param: vnfvfVF_id }
+ vf_module_id: { get_param: vf_module_id }
+
+ FSB2_legal_2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: CE_server_name }
+ image: { get_param: CE_image_name }
+ flavor: { get_param: CE_flavor_name }
+ metadata:
+ VnF_id: { get_param: vnfvfVF_id }
+ vf_module_id: { get_param: vf_module_id }
+
+ FSB2_legal_3:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: fsb_name_2 }
+ flavor: { get_param: fsb_flavor_names }
+ image: { get_param: fsb_image_name }
+ metadata:
+ VnF_id: { get_param: vnfvfVF_id }
+ vf_module_id: { get_param: vf_module_id }
+
+ FSB2_illegal_1:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: fsb_name_2 }
+ flavor: {get_param: scp_flavor_name}
+ image: { get_param: pcrf_image_name }
+ metadata:
+ VnF_id: { get_param: vnfvfVF_id }
+ vf_module_id: { get_param: vf_module_id }
+
+ FSB2_illegal_2:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [fsb_names, 1] }
+ flavor: {get_param: scp_flavor_name}
+ image: { get_param: scp_image_name }
+ metadata:
+ VnF_id: { get_param: vnfvfVF_id }
+ vf_module_id: { get_param: vf_module_id }
+
+outputs:
+ expose_resource_nove_output:
+ description: the pcrf_server
+ value: { get_resource: FSB2 }
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/firstVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/firstVol.yaml
new file mode 100644
index 0000000000..7e82b2a7e6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/firstVol.yaml
@@ -0,0 +1,19 @@
+
+heat_template_version: 2013-05-23
+
+parameters:
+ not_null:
+ type: number
+ label: not_number
+
+
+resources:
+ volume_expose:
+ type: OS::Cinder::Volume
+ properties:
+ not_null: not_null
+outputs:
+ not_expose_resource_network_output:
+ description: the pcrf_server
+ value: { get_resource: volume_expose }
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/second.yaml
new file mode 100644
index 0000000000..bb06b9d60a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/attGuideLineValidator/novaVMNameSync/input/second.yaml
@@ -0,0 +1,14 @@
+heat_template_version: 2013-05-23
+
+description: heat second
+
+resources:
+ network_expose:
+ type: OS::Neutron::Net
+
+outputs:
+ expose_resource_network_output:
+ description: the pcrf_server
+ value: { get_resource: network_expose }
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/expected_output/expected_output.json
index e9106a850c..e9106a850c 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.env
index 809835d2b8..809835d2b8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.yaml
index 1b865e75d5..011a36fa2c 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/availability_zone_name/input/hot-nimbus-pps_v1.0.yaml
@@ -52,7 +52,7 @@ resources:
availability_zone_legal_name_1:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [pcrf_names, 0] }
availability_zone: {get_param: availability_zone_1}
flavor: { get_param: pcrf_flavor_name }
metadata:
@@ -62,7 +62,7 @@ resources:
availability_zone_legal_name_2:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [pcrf_names, 0] }
availability_zone: {get_resource: availability_zone_1}
flavor: { get_param: pcrf_flavor_name }
metadata:
@@ -72,7 +72,7 @@ resources:
availability_zone_illegal_name_1:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [pcrf_names, 0] }
availability_zone: {get_param: availability_zone_name}
flavor: { get_param: pcrf_flavor_name }
metadata:
@@ -82,7 +82,7 @@ resources:
availability_zone_illegal_name_2:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [pcrf_names, 0] }
availability_zone: {get_param: availability_zone}
flavor: { get_param: pcrf_flavor_name }
metadata:
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/expected_output/expected_output.json
index f0dc0d21a1..f0dc0d21a1 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.env
index 809835d2b8..809835d2b8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.yaml
index 05724cf55b..ab4279d153 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/floating_ip_resource_type/input/hot-nimbus-pps_v1.0.yaml
@@ -50,7 +50,7 @@ resources:
legal_resource_type1:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [pcrf_names, 0] }
availability_zone: {get_param: availability_zone_1}
flavor: {get_param: pcrf_flavor_name}
metadata:
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/expected_output/expected_output.json
index 7eefd3d36e..7eefd3d36e 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.env
index 809835d2b8..809835d2b8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.yaml
index 749b7144b6..749b7144b6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/neutron_port_fixed_ip_name/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/expected_output/expected_output.json
index ca1f58c1f8..ca1f58c1f8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.env
index 809835d2b8..809835d2b8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.yaml
index 766cbf150f..aaefcfb596 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/ecomp_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/att_naming_convention/nova_server_name/input/hot-nimbus-pps_v1.0.yaml
@@ -58,7 +58,7 @@ resources:
nova_server_legal_name_1:
type: OS::Nova::Server
properties:
- name: { get_param: [pcrf_pps_server_names, 0] }
+ name: { get_param: [pcrf_names, 0] }
flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
@@ -68,7 +68,7 @@ resources:
nova_server_legal_name_2:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_4 }
+ name: { get_param: pcrf_name_4 }
flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
@@ -77,7 +77,7 @@ resources:
nova_server_legal_name_3:
type: OS::Nova::Server
properties:
- name: { get_resource: pcrf_pps_server_name_4 }
+ name: { get_param: pcrf_name_4 }
flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
@@ -86,7 +86,7 @@ resources:
nova_server_ilegal_name_1:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_a }
+ name: { get_param: pcrf_name_a }
flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
@@ -95,7 +95,7 @@ resources:
nova_server_ilegal_name_2:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_nameds_a }
+ name: { get_param: pcrf_nameds_a }
flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
@@ -104,7 +104,7 @@ resources:
nova_server_ilegal_name_3:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_a }
+ name: { get_param: pcrf_pps_name_a }
flavor: { get_param: pcrf_pps_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
@@ -113,8 +113,8 @@ resources:
nova_server_ilegal_name_4:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_a }
- flavor: { get_param: pcrf_pps_flavor_name }
+ name: { get_param: pcrf_name_a }
+ flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
vf_module_id: { get_param: pcrf_vnf_module_id }
@@ -122,8 +122,8 @@ resources:
nova_server_ilegal_name_5:
type: OS::Nova::Server
properties:
- name: { get_param: pcrf_pps_server_name_a }
- flavor: { get_param: pcrf_pps_flavor_name }
+ name: { get_param: pcrf_name_a }
+ flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
vf_module_id: { get_param: pcrf_vnf_module_id }
@@ -131,8 +131,8 @@ resources:
nova_server_ilegal_name_6:
type: OS::Nova::Server
properties:
- name: pcrf_pps_server_name_a
- flavor: { get_param: pcrf_pps_flavor_name }
+ name: pcrf_name_a
+ flavor: { get_param: pcrf_flavor_name }
metadata:
vnf_id: { get_param: pcrf_vnf_id }
vf_module_id: { get_param: pcrf_vnf_module_id }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/MANIFEST.json
new file mode 100644
index 0000000000..15650ae299
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ },
+ {
+ "file": "second.yaml",
+ "type": "HEAT",
+ "isBase": false
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/first.yaml
new file mode 100644
index 0000000000..b8be8b3df9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/first.yaml
@@ -0,0 +1,22 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ nems_traffic_name:
+ description: dummy
+ type: string
+
+resources:
+ jsa_net1:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+ jsa_net3:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+ jsa_net5:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/second.yaml
new file mode 100644
index 0000000000..f8cadfee51
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesindifferentheatfiles/second.yaml
@@ -0,0 +1,19 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ nems_traffic_name:
+ description: dummy
+ type: string
+
+resources:
+ jsa_net2:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+ jsa_net4:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/MANIFEST.json
new file mode 100644
index 0000000000..d50ac7074b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/MANIFEST.json
@@ -0,0 +1,17 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ },
+ {
+ "file": "second.yaml",
+ "type": "HEAT_VOL",
+ "isBase": false
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/first.yaml
new file mode 100644
index 0000000000..ea8413c68f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/first.yaml
@@ -0,0 +1,14 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ nems_traffic_name:
+ description: dummy
+ type: string
+
+resources:
+ jsa_net1:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/second.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/second.yaml
new file mode 100644
index 0000000000..7a0f5e99a2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinnontheatfiles/second.yaml
@@ -0,0 +1,15 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ nems_traffic_name:
+ description: dummy
+ type: string
+
+resources:
+ jsa_net2:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/first.yaml
new file mode 100644
index 0000000000..c53fa03c92
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/collidesinsameheatfile/first.yaml
@@ -0,0 +1,19 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ nems_traffic_name:
+ description: dummy
+ type: string
+
+resources:
+ jsa_net1:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+ jsa_net2:
+ type: OS::ContrailV2::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/first.yaml
new file mode 100644
index 0000000000..57eb2d9c23
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/notcollides/first.yaml
@@ -0,0 +1,18 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ nems_traffic_name:
+ description: dummy
+ type: string
+
+resources:
+ jsa_net1:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
+ jsa_net2:
+ type: OS::Contrail::VirtualNetwork
+ properties:
+ name: {get_param: nems_traffic_name}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/MANIFEST.json
new file mode 100644
index 0000000000..0e8bebb1d1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/MANIFEST.json
@@ -0,0 +1,12 @@
+{
+ "name": "validTest",
+ "description": "Valid Test",
+ "version": "1610",
+ "data": [
+ {
+ "file": "first.yaml",
+ "type": "HEAT",
+ "isBase": true
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/first.yaml
new file mode 100644
index 0000000000..e56d886090
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/contrailvalidatorresources/validatenocontrailresource/first.yaml
@@ -0,0 +1,15 @@
+heat_template_version: 2013-05-23
+
+description: cmaui server template for vMMSC
+
+parameters:
+ nems_traffic_name:
+ description: dummy
+ type: string
+
+resources:
+ template_NetworkPolicy:
+ type: OS::Contrail::NetworkPolicy
+ properties:
+ name:
+ get_param: policy_name \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.env
index 8ae6fc021a..8ae6fc021a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 555f6ae852..555f6ae852 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/default_value_align_with_type/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/MANIFEST.json
index a1ec6bc0f7..a1ec6bc0f7 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/hot-nimbus-pps_v1.0.yaml
index 35a0efb28d..35a0efb28d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/depends_on_points_to_existing_resource/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.env
index 809835d2b8..809835d2b8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 4605195eaf..4605195eaf 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_content_is_subset_of_heat/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/MANIFEST.json
index d383ab6c95..d383ab6c95 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/env_empty_value.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/env_empty_value.env
index 20f9eed60d..20f9eed60d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/env_empty_value.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/env_empty_value.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/env_empty_value.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/env_empty_value.yaml
index 9d01d63908..9d01d63908 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_empty_value/input/env_empty_value.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_empty_value/input/env_empty_value.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/MANIFEST.json
index 06df1e696d..06df1e696d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.env
index 089284d177..089284d177 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 4944424af8..4944424af8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/env_parameters_match_defined_types/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/MANIFEST.json
index c27fba2205..c27fba2205 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml
index 4a66bf5bf6..4a66bf5bf6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/nested-psm_v1.0.yaml
index c26a0dd3a8..c26a0dd3a8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/negative_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml
index 4ab762d34b..4ab762d34b 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-psm_v1.0.yaml
index 4b7aac8f44..4b7aac8f44 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_attr_from_nested/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/MANIFEST.json
index c27fba2205..c27fba2205 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.yaml
index 6eb260e380..6eb260e380 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_param_points_to_existing_parameter/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/MANIFEST.json
index a1ec6bc0f7..a1ec6bc0f7 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 9a8e58ffe2..9a8e58ffe2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/get_resource_value_valid/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/invalid_heat_format/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/invalid_heat_format/negative_test/input/MANIFEST.json
index 5513de2ba2..5513de2ba2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/invalid_heat_format/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/invalid_heat_format/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/invalid_heat_format/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/invalid_heat_format/negative_test/input/hot-nimbus-psm_v1.0.yaml
index a5ee917b2c..a5ee917b2c 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/invalid_heat_format/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/invalid_heat_format/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/MANIFEST.json
index 02118a7b23..02118a7b23 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.env
new file mode 100644
index 0000000000..5d1e0b0887
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.env
@@ -0,0 +1,10 @@
+parameters:
+ pcrf_pps_server_names: ZRDM1PCRF01PPS001,ZRDM1PCRF01PPS002,ZRDM1PCRF01PPS003,ZRDM1PCRF01PPS004,ZRDM1PCRF01PPS005,ZRDM1PCRF01PPS006
+ pcrf_pps_image_name: PCRF_8.995-ATTM1.0.3.qcow2
+ pcrf_pps_flavor_name: lc.3xlarge
+ availabilityzone_name: nova
+ pcrf_cps_net_name: Mobisupport-25193-I-INT1_int_pcrf_net_0
+ pcrf_cps_net_ips: 172.26.16.7,172.26.16.8,172.26.16.9,172.26.16.10,172.26.16.11,172.26.16.12
+ pcrf_cps_net_mask: 255.255.255.0
+ pcrf_security_group_name: nimbus_security_group
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.yaml
new file mode 100644
index 0000000000..17f9ea384e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/hot-nimbus-pps_v1.0.yaml
@@ -0,0 +1,52 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Policy Server stack
+
+parameters:
+ pcrf_pps_server_names:
+ type: comma_delimited_list
+ label: PCRF PS server names
+ description: PCRF PS server names
+ pcrf_pps_image_name:
+ type: string
+ label: PCRF PS image name
+ description: PCRF PS image name
+ pcrf_pps_flavor_name:
+ type: string
+ label: PCRF PS flavor name
+ description: flavor name of PCRF PS instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ pcrf_cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ pcrf_cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ pcrf_cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcrf_security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ parameter_not_match_nested_type_param:
+ type: string
+ label: PCRF VNF Id
+ description: PCRF VNF Id
+
+resources:
+ server_pcrf_pps_001:
+ type: nested-pps_v1.0.yaml
+ properties:
+ pcrf_pps_server_name: { get_param: [pcrf_pps_server_names, 0] }
+ pcrf_pps_image_name: { get_param: pcrf_pps_image_name }
+ parameter_not_match_nested_type: { get_param: parameter_not_match_nested_type_param }
+ static_value_legal_1: 3
+ static_value_illegal_1: 4
+ static_value_legal_2: abc
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/nested-pps_v1.0.yaml
new file mode 100644
index 0000000000..76f15202dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nested_input_parameter_match_parent/input/nested-pps_v1.0.yaml
@@ -0,0 +1,86 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Policy Server stack
+
+parameters:
+ pcrf_pps_server_name:
+ type: string
+ label: PCRF PS server name
+ description: PCRF PS server name
+ pcrf_pps_image_name:
+ type: string
+ label: PCRF PS image name
+ description: PCRF PS image name
+ pcrf_pps_flavor_name:
+ type: string
+ label: PCRF PS flavor name
+ description: flavor name of PCRF PS instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ pcrf_cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ pcrf_cps_net_ip:
+ type: string
+ label: CPS network ip
+ description: CPS network ip
+ pcrf_cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcrf_security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ static_value_legal_1:
+ type: number
+ label: PCRF VNF Id
+ description: PCRF VNF Id
+ static_value_illegal_1:
+ type: boolean
+ label: PCRF VNF Id
+ description: PCRF VNF Id
+ static_value_legal_2:
+ type: string
+ label: PCRF VNF Id
+ description: PCRF VNF Id
+ parameter_not_match_nested_type:
+ type: boolean
+ label: PCRF VNF Id
+ description: PCRF VNF Id
+
+resources:
+ script_init:
+ type: OS::Heat::SoftwareConfig
+ properties:
+ group: ungrouped
+ config:
+ str_replace:
+ params:
+ $vm_name: { get_param: pcrf_pps_server_name }
+ network:
+ type: OS::Heat::CloudConfig
+ properties:
+ cloud_config:
+ write_files:
+ - path: /etc/sysconfig/network-scripts/ifcfg-eth0
+ permissions: "0644"
+ content:
+ str_replace:
+ params:
+ $dev: eth0
+ $ip: { get_param: pcrf_cps_net_ip }
+ $netmask: { get_param: pcrf_cps_net_mask }
+ runcmd:
+ - ifdown eth0 && ifup eth0
+
+ pcrf_server_init:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: { get_resource: network}
+ - config: { get_resource: script_init}
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.yaml
index b2b91ec36d..b2b91ec36d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/network_policy_associated_with_attach_policy/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/MANIFEST.json
index e789fd7b1d..e789fd7b1d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.yaml
index 49e03e0a16..49e03e0a16 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-points-to-hot-nimbus-psm.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-points-to-hot-nimbus-psm.yaml
index 981c08c011..981c08c011 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-points-to-hot-nimbus-psm.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-points-to-hot-nimbus-psm.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-psm_v1.0.yaml
index bfc412d715..bfc412d715 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/yaml-point-to-itself.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/yaml-point-to-itself.yaml
index ec2a02a5d2..ec2a02a5d2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/negative_test/input/yaml-point-to-itself.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/negative_test/input/yaml-point-to-itself.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/no_loops_nesting/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/MANIFEST.json
index dd26e5ac45..dd26e5ac45 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.yaml
index 8ef73ded21..8ef73ded21 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.yaml
index 25a4545311..25a4545311 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/nova_properties_has_assigned_value/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/MANIFEST.json
index dd26e5ac45..dd26e5ac45 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.yaml
index f7678ed6b7..f7678ed6b7 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c173fce968..c173fce968 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/one_nova_points_to_one_port/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/negative_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/expected_output/expected_output.json
index ce04d8c601..ce04d8c601 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-pps_v1.0.yaml
index fc5b6f74c3..fc5b6f74c3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-psm_v1.0.yaml
index c86aa34713..c86aa34713 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/parameter_default_value/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/MANIFEST.json
index dd26e5ac45..dd26e5ac45 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.env
index f613758633..f613758633 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.yaml
index 82edacf101..82edacf101 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-pps_v1.0.yaml
index a7966d6d47..a7966d6d47 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-psm_v1.0.yaml
index 681117d275..681117d275 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/policy_is_affinity_or_anti_affinity/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-pps_v1.0.yaml
index fc5b6f74c3..fc5b6f74c3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-psm_v1.0.yaml
index c86aa34713..c86aa34713 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/negative_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-pps_v1.0.yaml
index fc5b6f74c3..fc5b6f74c3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-psm_v1.0.yaml
index c86aa34713..c86aa34713 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties-match-nested-parameters/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/MANIFEST.json
new file mode 100644
index 0000000000..02118a7b23
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/MANIFEST.json
@@ -0,0 +1,21 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-pps_v1.0.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "hot-nimbus-pps_v1.0.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "nested-pps_v1.0.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 5d93b2f4f7..5d93b2f4f7 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/nested-pps_v1.0.yaml
index 0ed9043fc2..0ed9043fc2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/negative_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/properties_match_nested_parameters/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/pseudo_parameters/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/pseudo_parameters/input/MANIFEST.json
index d038fb2a7e..d038fb2a7e 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/pseudo_parameters/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/pseudo_parameters/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/pseudo_parameters/input/pseudo_parameters.yml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/pseudo_parameters/input/pseudo_parameters.yml
index 8dd378ccbd..8dd378ccbd 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/pseudo_parameters/input/pseudo_parameters.yml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/pseudo_parameters/input/pseudo_parameters.yml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/MANIFEST.json
index a1ec6bc0f7..a1ec6bc0f7 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/hot-nimbus-pps_v1.0.yaml
index c4680ab619..c4680ab619 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/MANIFEST.json
index ea7f326c76..ea7f326c76 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/artifact.sh b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/artifact.sh
index fc5b6f74c3..fc5b6f74c3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/artifact.sh
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/artifact.sh
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/cloud-nimbus.sh b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/cloud-nimbus.sh
index fc5b6f74c3..fc5b6f74c3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/cloud-nimbus.sh
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/cloud-nimbus.sh
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.yaml
index a591692753..a591692753 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-pps_v1.0.yaml
index fc5b6f74c3..fc5b6f74c3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-psm_v1.0.yaml
index c86aa34713..c86aa34713 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nimbus-ethernet b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nimbus-ethernet
index fc5b6f74c3..fc5b6f74c3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nimbus-ethernet
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/referenced_artifacts_exist/positive_test/input/nimbus-ethernet
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/MANIFEST.json
index 5513de2ba2..5513de2ba2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/hot-nimbus-psm_v1.0.yaml
new file mode 100644
index 0000000000..5181f94932
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/hot-nimbus-psm_v1.0.yaml
@@ -0,0 +1,138 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Session Manager stack
+
+parameters:
+ num_instances:
+ type: comma_delimited_list
+ label: PCRF SM server names
+ description: name of the PCRF SM instance
+ pcrf_psm_server_names:
+ type: comma_delimited_list
+ label: PCRF SM server names
+ description: name of the PCRF SM instance
+ pcrf_psm_image_name:
+ type: string
+ label: PCRF SM image name
+ description: PCRF SM image name
+ pcrf_psm_flavor_name:
+ type: string
+ label: PCRF SM flavor name
+ description: flavor name of PCRF SM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ pcrf_cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ pcrf_cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ pcrf_cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcrf_security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ pcrf_vnf_id:
+ type: string
+ label: PCRF VNF Id
+ description: PCRF VNF Id
+ pcrf_pps_server_names:
+ type: string
+
+ pcrf_pps_image_name:
+ type: string
+ pcrf_pps_flavor_name:
+ type: string
+ availability_zone_0:
+ type: string
+resources:
+ resource_with_resources_group_1:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: num_instances }
+ index_var: { get_param: num_instances }
+ resource_def:
+ type: yamlFile.yaml
+ properties:
+ pcrf_psm_server_names: { get_param: pcrf_pps_server_names }
+ pcrf_psm_image_name: { get_param: pcrf_pps_image_name }
+ index_string: { get_param: num_instances }
+ index_number: { get_param: num_instances }
+
+ resource_with_resources_group_2:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: num_instances }
+ index_var: myIndex
+ resource_def:
+ type: yamlFile.yaml
+ properties:
+ pcrf_psm_server_names: { get_param: pcrf_pps_server_names }
+ pcrf_psm_image_name: { get_param: pcrf_pps_image_name }
+ index_boolean: myIndex
+ index_number: myIndex
+ index_string: myIndex
+
+ resource_with_resources_group_3:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: num_instances }
+ index_var: '%myIndex%'
+ resource_def:
+ type: yamlFile.yaml
+ properties:
+ pcrf_psm_server_names: { get_param: pcrf_pps_server_names }
+ pcrf_psm_image_name: { get_param: pcrf_pps_image_name }
+ index_boolean: "%myIndex%"
+ index_number: "%index%"
+ index_string: "%myIndex%"
+ index_number_v2: "%myIndex%"
+
+ resource_with_resources_group_4:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: num_instances }
+ resource_def:
+ type: yamlFile.yaml
+ properties:
+ pcrf_psm_server_names: { get_param: pcrf_pps_server_names }
+ pcrf_psm_image_name: { get_param: pcrf_pps_image_name }
+ index_boolean: "%index%"
+ index_number: "%index%"
+ index_string: "%index%"
+
+ resource_with_resources_group_5:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: num_instances }
+ resource_def:
+ type: yamlFile.yaml
+ properties:
+ pcrf_psm_server_names: { get_param: pcrf_pps_server_names }
+ pcrf_psm_image_name: { get_param: pcrf_pps_image_name }
+ index_boolean: "%index%_ttt"
+ index_number: "%index%_ttt"
+ index_string: "%index%_ttt"
+
+ resource_with_resources_group_6:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: num_instances }
+ index_var: { remote_ip_prefix: '0.0.0.0/0', protocol: tcp, port_range_min: 22, port_range_max: 22, ethertype: IPv4 }
+ resource_def:
+ type: yamlFile.yaml
+ properties:
+ pcrf_psm_server_names: { get_param: pcrf_pps_server_names }
+ pcrf_psm_image_name: { get_param: pcrf_pps_image_name }
+ index_string: { get_param: num_instances }
+ index_number: { get_param: num_instances }
+
+
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/yamlFile.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/yamlFile.yaml
new file mode 100644
index 0000000000..5e421d57eb
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_indexvar/negative_test/input/yamlFile.yaml
@@ -0,0 +1,56 @@
+heat_template_version: 2013-05-23
+
+description: heat template that creates PCRF Session Manager stack
+
+parameters:
+ num_instances:
+ type: comma_delimited_list
+ label: PCRF SM server names
+ description: name of the PCRF SM instance
+ pcrf_psm_server_names:
+ type: comma_delimited_list
+ label: PCRF SM server names
+ description: name of the PCRF SM instance
+ pcrf_psm_image_name:
+ type: string
+ label: PCRF SM image name
+ description: PCRF SM image name
+ pcrf_psm_flavor_name:
+ type: string
+ label: PCRF SM flavor name
+ description: flavor name of PCRF SM instance
+ availabilityzone_name:
+ type: string
+ label: availabilityzone name
+ description: availabilityzone name
+ pcrf_cps_net_name:
+ type: string
+ label: CPS network name
+ description: CPS network name
+ pcrf_cps_net_ips:
+ type: comma_delimited_list
+ label: CPS network ips
+ description: CPS network ips
+ pcrf_cps_net_mask:
+ type: string
+ label: CPS network mask
+ description: CPS network mask
+ pcrf_security_group_name:
+ type: string
+ label: security group name
+ description: the name of security group
+ pcrf_vnf_id:
+ type: string
+ label: PCRF VNF Id
+ description: PCRF VNF Id
+ pcrf_pps_server_names:
+ type: string
+ index_boolean:
+ type: boolean
+ index_string:
+ type: string
+ index_number:
+ type: number
+ index_number_v2:
+ type: number
+
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/MANIFEST.json
new file mode 100644
index 0000000000..5513de2ba2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/MANIFEST.json
@@ -0,0 +1,11 @@
+{
+ "name": "hot-mog",
+ "description": "HOT template to create hot mog server",
+ "version": "2013-05-23",
+ "data": [
+ {
+ "file": "hot-nimbus-psm_v1.0.yaml",
+ "type": "HEAT"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/hot-nimbus-psm_v1.0.yaml
index 14ee7b10d2..14ee7b10d2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/yamlFile.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/yamlFile.yaml
index 12a838bcf5..12a838bcf5 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/yamlFile.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_group_invalid_type/negative_test/input/yamlFile.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/MANIFEST.json
index 3a4d09caa9..3a4d09caa9 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 1154c06f4d..1154c06f4d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml
index 05bd6c9318..05bd6c9318 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resource_references_exist_in_heat/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/MANIFEST.json
index 0c8e740434..0c8e740434 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-pps_v1.0.yaml
index e3779ed99d..e3779ed99d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml
index dc78b37ca2..dc78b37ca2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-from-resources-group.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-from-resources-group.yaml
index 836ab5c1f8..836ab5c1f8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-from-resources-group.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-from-resources-group.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-pps_v1.0.yaml
index bdf957c59e..bdf957c59e 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/negative_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.env
index a1ea053e07..a1ea053e07 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml
index b12de0def4..b12de0def4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml
index 3f91e94d74..3f91e94d74 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-from-resources-group.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-from-resources-group.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-from-resources-group.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-from-resources-group.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/resources_group_with_nested/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/MANIFEST.json
index f487bae31f..f487bae31f 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/baseFile.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/baseFile.yaml
index 9446d6fde0..7b48f5bafa 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/baseFile.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/baseFile.yaml
@@ -37,7 +37,4 @@ outputs:
value: {get_resource: jsa_security_group1}
shared_security_group_id2:
- value: {get_resource: jsa_security_group2}
-
- shared_security_group_id3:
- value: {get_resource: jsa_security_group3} \ No newline at end of file
+ value: {get_resource: jsa_security_group2} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/notBaseFile.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/notBaseFile.yaml
index 7ac05194ac..7ac05194ac 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_base_file_no_ports/input/notBaseFile.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_base_file_no_ports/input/notBaseFile.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.yaml
index 51b9481bfa..51b9481bfa 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/security_group_called_by_port/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.yaml
index 63eea76e2e..63eea76e2e 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_group_called_by_nova_server/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 1955922940..8ee534e43a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/negative_test/input/hot-nimbus-pps_v1.0.yaml
@@ -61,7 +61,7 @@ resources:
scheduler_hints: { group_1: , group_2: { get_resource: BE_Affinity_2 } }
BE_Affinity_2:
- type: OS::Neutron::Port
+ type: OS::Contrail::NetworkIpam
properties:
network: { get_param: pcrf_pps_server_names }
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/MANIFEST.json
index fe7d8bdf5a..fe7d8bdf5a 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.env
index a1ea053e07..a1ea053e07 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.yaml
index b12de0def4..b12de0def4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.yaml
index c2d7b05ead..c2d7b05ead 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-pps_v1.0.yaml
index b7291d69d3..b7291d69d3 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-psm_v1.0.yaml
index 6868728b73..6868728b73 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/server_groups_defined_correctly/positive_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/MANIFEST.json
index 1e719efb31..1e719efb31 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.yaml
index 1114734097..1114734097 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/shared_resources/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/MANIFEST.json
index 06df1e696d..06df1e696d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.env
index 340be2b815..340be2b815 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.yaml
index 717b915c68..717b915c68 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.yaml
index de8d6b7658..de8d6b7658 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-pps_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-pps_v1.0.yaml
index 153820b2c2..153820b2c2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-pps_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-pps_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-psm_v1.0.yaml
index f982cc9195..f982cc9195 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/negative_test/input/nested-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/expected_output/expected_output.json
index 9e26dfeeb6..9e26dfeeb6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/MANIFEST.json
index dd26e5ac45..dd26e5ac45 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.env
index f24e4763c6..f24e4763c6 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.yaml
index 5e940bdd49..5e940bdd49 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/heat_validator/two_resources_does_not_hold_same_id/positive_test/input/hot-nimbus-psm_v1.0.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/MANIFEST.json
index 5524f47fa8..5524f47fa8 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/extraFile.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/first.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/extraFile.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/first.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/first.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/first.yaml
index 368834e847..368834e847 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/envInRoot/first.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/first.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/second.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/single.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/envInRoot/second.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/MANIFEST.json
index de35dfc0db..de35dfc0db 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidFileTypeInManifest/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/illegalTypeFile.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/single.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/illegalTypeFile.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/singleVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/single.env.illegalSuffix
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/singleVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/single.env.illegalSuffix
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/extraFile.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/single.yaml.illegalSuffix
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/extraFile.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/single.yaml.illegalSuffix
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/singleVol.yaml.illegalSuffix
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidFileTypeInManifest/singleVol.yaml.illegalSuffix
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/MANIFEST.json
index 7b3dd77ed7..7b3dd77ed7 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/invalidManifest/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/single.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/single.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/single.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/single.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/single.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/singleVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/singleVol.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/singleVol.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/invalidManifest/singleVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/MANIFEST.json
index fd2b2c3f6d..fd2b2c3f6d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifest/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/extraFile.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/single.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/extraFile.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/single.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/single.env
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/single.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/single.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/single.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/single.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/emptyYaml.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/singleVol.yaml
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/emptyYaml.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifest/singleVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/MANIFEST.json
index 60a8efe769..60a8efe769 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInManifestAndInZip/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_empty.yml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/extraFile.env
index e69de29bb2..e69de29bb2 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_empty.yml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/extraFile.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.env
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.yaml
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInManifestAndInZip/single.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/MANIFEST.json
index 60a8efe769..60a8efe769 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/missingFileInZip/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.env
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.yaml
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/missingFileInZip/single.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/MANIFEST.json
index 60a8efe769..60a8efe769 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/manifestValidator/validFiles/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.env b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.env
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.env
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.yaml
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/single.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/singleVol.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/singleVol.yaml
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/manifestValidator/validFiles/singleVol.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/duplicateKey.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/duplicateKey.yaml
index 418cc59c71..418cc59c71 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/duplicateKey.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/duplicateKey.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/emptyYaml.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/emptyYaml.yaml
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/emptyYaml.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalidTabYamlStructure.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalidTabYamlStructure.yaml
index 9cc18cef35..9cc18cef35 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalidTabYamlStructure.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalidTabYamlStructure.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalidYamlStructure.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalidYamlStructure.yaml
index 65205e01f9..65205e01f9 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalidYamlStructure.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalidYamlStructure.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/MANIFEST.json
index a4065d0b68..a4065d0b68 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/heat_missing_from_manifast.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/heat_missing_from_manifast.yaml
index d5608abfb4..d5608abfb4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/heat_missing_from_manifast.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/heat_missing_from_manifast.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/mainValid.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/mainValid.yaml
index 318c8f1283..318c8f1283 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/mainValid.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/mainValid.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/validHeat.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/validHeat.yaml
index d5608abfb4..d5608abfb4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/validHeat.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_duplicate_key/input/validHeat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/expected_output/expected_output.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/expected_output/expected_output.json
index dedbeaf5db..dedbeaf5db 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/expected_output/expected_output.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/expected_output/expected_output.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/MANIFEST.json
index a4065d0b68..a4065d0b68 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/heat_missing_from_manifast.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/heat_missing_from_manifast.yaml
index d5608abfb4..d5608abfb4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/heat_missing_from_manifast.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/heat_missing_from_manifast.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml
index 042f301507..042f301507 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalidYamlTab.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_additionalSpaceBeforeProperty.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_additionalSpaceBeforeProperty.yaml
index b47d7d32f4..b47d7d32f4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_additionalSpaceBeforeProperty.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_additionalSpaceBeforeProperty.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_duplicateKey.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_duplicateKey.yaml
index 2dc0c63941..2dc0c63941 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_duplicateKey.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_duplicateKey.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_empty.yml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_empty.yml
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_empty.yml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_yamlInXMLFormat.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_yamlInXMLFormat.yaml
index 54626a9d62..54626a9d62 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_yamlInXMLFormat.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/invalid_yamlInXMLFormat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/validHeat.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/validHeat.yaml
index d5608abfb4..d5608abfb4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/validHeat.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/invalid_valid_yaml_structure/input/validHeat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/MANIFEST.json
index a4065d0b68..a4065d0b68 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/MANIFEST.json
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/MANIFEST.json
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/heat_missing_from_manifast.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/heat_missing_from_manifast.yaml
index d5608abfb4..d5608abfb4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/heat_missing_from_manifast.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/heat_missing_from_manifast.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/mainValid.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/mainValid.yaml
index 318c8f1283..318c8f1283 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/mainValid.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/mainValid.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml
index d5608abfb4..d5608abfb4 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/openecomp/org/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/resources/org/openecomp/validation/validators/yaml_validator/valid_yaml/input/validHeat.yaml
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml
new file mode 100644
index 0000000000..d4fad5ae65
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml
@@ -0,0 +1,45 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>openecomp-sdc-validation-sdk</artifactId>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>${testng.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>${commons.io.version}</version>
+ </dependency>
+ </dependencies>
+
+
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml.versionsBackup
new file mode 100644
index 0000000000..d179ae0469
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/pom.xml.versionsBackup
@@ -0,0 +1,42 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>openecomp-sdc-validation-sdk</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>6.9.10</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-validation-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-heat-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>2.5</version>
+ </dependency>
+ </dependencies>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ResourceValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ResourceValidator.java
new file mode 100644
index 0000000000..1bd4bc9c62
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ResourceValidator.java
@@ -0,0 +1,15 @@
+package org.openecomp.sdc.validation;
+
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/23/2017.
+ */
+public interface ResourceValidator {
+
+ void validate(String fileName, Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext, ValidationContext validationContext);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ValidationContext.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ValidationContext.java
new file mode 100644
index 0000000000..e2d0f163e5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/ValidationContext.java
@@ -0,0 +1,8 @@
+package org.openecomp.sdc.validation;
+
+/**
+ * Created by TALIO on 2/27/2017.
+ */
+public interface ValidationContext {
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/interfaces/Validator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/Validator.java
index e32dfd72b9..d7798359fe 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-api/src/main/java/org/openecomp/core/validation/interfaces/Validator.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/Validator.java
@@ -18,19 +18,15 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.core.validation.interfaces;
+ package org.openecomp.sdc.validation;
import org.openecomp.core.validation.types.GlobalValidationContext;
-public interface Validator {
+import java.util.Map;
+
- //public void validate(String fileName, GlobalValidationContext globalContext);
+public interface Validator {
void validate(GlobalValidationContext globalContext);
- //Object convert(FileValidationContext
- // fileValidationContext);
- /*default boolean filter(FileValidationContext filecontext,
- GlobalValidationContext globalValidationContext){
- return true;
- }*/
+ default void init(Map<String, Object> properties){ return; }
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/base/ResourceBaseValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/base/ResourceBaseValidator.java
new file mode 100644
index 0000000000..1a5b373833
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/base/ResourceBaseValidator.java
@@ -0,0 +1,159 @@
+package org.openecomp.sdc.validation.base;
+
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.validation.type.ConfigConstants;
+import org.openecomp.sdc.validation.util.ValidationUtil;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/**
+ * Created by TALIO on 2/16/2017.
+ */
+public class ResourceBaseValidator implements Validator {
+
+ protected Map<String, ImplementationConfiguration> resourceTypeToImpl = new HashMap<>();
+ private static Logger logger = (Logger) LoggerFactory.getLogger(ResourceBaseValidator.class);
+
+
+ public void init(Map<String, Object> properties) {
+ if (MapUtils.isEmpty(properties)) {
+ return;
+ }
+
+ properties.entrySet().stream()
+ .filter(entry -> getImplementationConfigurationFromProperties(entry.getValue()) != null).
+ forEach(entry -> resourceTypeToImpl
+ .put(entry.getKey(), getImplementationConfigurationFromProperties(entry.getValue())));
+ }
+
+ @Override
+ public void validate(GlobalValidationContext globalContext) {
+ ManifestContent manifestContent;
+ try {
+ manifestContent = ValidationUtil.checkValidationPreCondition(globalContext);
+ } catch (Exception exception) {
+ return;
+ }
+
+ Map<String, FileData.Type> fileTypeMap = ManifestUtil.getFileTypeMap(manifestContent);
+ Map<String, FileData> fileEnvMap = ManifestUtil.getFileAndItsEnv(manifestContent);
+ globalContext.getFiles().stream()
+ .filter(fileName -> FileData
+ .isHeatFile(fileTypeMap.get(fileName)))
+ .forEach(fileName -> validate(fileName,
+ fileEnvMap.get(fileName) != null ? fileEnvMap.get(fileName).getFile() : null,
+ globalContext));
+ }
+
+ private void validate(String fileName, String envFileName,
+ GlobalValidationContext globalContext) {
+ HeatOrchestrationTemplate heatOrchestrationTemplate =
+ ValidationUtil.checkHeatOrchestrationPreCondition(fileName, globalContext);
+ if (heatOrchestrationTemplate == null) {
+ return;
+ }
+
+ ValidationContext validationContext =
+ createValidationContext(fileName, envFileName, heatOrchestrationTemplate, globalContext);
+
+ Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
+ if (MapUtils.isEmpty(resourcesMap)) {
+ return;
+ }
+
+ for (Map.Entry<String, Resource> resourceEntry : resourcesMap.entrySet()) {
+ String resourceType = resourceEntry.getValue().getType();
+
+ if (Objects.isNull(resourceType)) {
+ globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_RESOURCE_TYPE.getErrorMessage(), "null",
+ resourceEntry.getKey()), LoggerTragetServiceName.VALIDATE_RESOURCE_TYPE,
+ LoggerErrorDescription.INVALID_RESOURCE_TYPE);
+ } else {
+ ResourceValidator
+ resourceValidatorImpl = getResourceValidatorInstance(resourceType, resourceTypeToImpl);
+ if (Objects.nonNull(resourceValidatorImpl)) {
+ resourceValidatorImpl.validate(fileName, resourceEntry, globalContext,
+ validationContext);
+ }
+ }
+ }
+ }
+
+ public ValidationContext createValidationContext(String fileName,
+ String envFileName,
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+ return null;
+ }
+
+ private static boolean isSupportedResourceType(String resourceType,
+ Map<String, ImplementationConfiguration> resourceTypeToImpl) {
+ return resourceTypeToImpl.containsKey(resourceType) && resourceTypeToImpl.get(resourceType)
+ .isEnable();
+
+ }
+
+ private static ResourceValidator getResourceValidatorInstance(String resourceType,
+ Map<String, ImplementationConfiguration> resourceTypeToImpl) {
+ ResourceValidator resourceBaseValidator = null;
+ if (isSupportedResourceType(resourceType, resourceTypeToImpl)) {
+ return getValidatorImpl(resourceType, resourceTypeToImpl);
+ }
+ if (HeatStructureUtil.isNestedResource(resourceType)) {
+ return getValidatorImpl("nestedResource", resourceTypeToImpl);
+ }
+ return resourceBaseValidator;
+ }
+
+ private static ResourceValidator getValidatorImpl(String resourceType,
+ Map<String, ImplementationConfiguration> resourceTypeToImpl) {
+ String implementationClass = resourceTypeToImpl.get(resourceType) != null ?
+ resourceTypeToImpl.get(resourceType).getImplementationClass() : null;
+ return implementationClass == null ? null : CommonMethods
+ .newInstance(implementationClass, ResourceValidator.class);
+ }
+
+ private ImplementationConfiguration getImplementationConfigurationFromProperties(Object value) {
+ ImplementationConfiguration implementationConfiguration = new ImplementationConfiguration();
+
+ if (!(value instanceof Map)) {
+ return null;
+ }
+
+ Map<String, Object> valueAsMap = (Map<String, Object>) value;
+ if (!(valueAsMap.containsKey(ConfigConstants.Impl_Class))) {
+ return null;
+ }
+
+ implementationConfiguration.setImplementationClass(
+ valueAsMap.get(ConfigConstants.Impl_Class).toString());
+ if (valueAsMap.containsKey(ConfigConstants.Enable)) {
+ implementationConfiguration.setEnable((Boolean.
+ valueOf(valueAsMap.get(ConfigConstants.Enable).toString())));
+ }
+
+ return implementationConfiguration;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/ConfigConstants.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/ConfigConstants.java
new file mode 100644
index 0000000000..2aea17b336
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/ConfigConstants.java
@@ -0,0 +1,17 @@
+package org.openecomp.sdc.validation.type;
+
+/**
+ * Created by TALIO on 1/30/2017.
+ */
+public class ConfigConstants {
+ public static final String Enable = "enable";
+ public static final String Impl_Class = "implementationClass";
+ public static final String Resource_Base_Validator = "resourceBaseValidator";
+
+ public static final String Namespace = "validation";
+ public static final String Mandatory_Namespace = "mandatoryValidation";
+ public static final String Validator_Impl_Key = "validatorImplementations";
+ public static final String Nested_Resource_Key = "nestedResource";
+
+ private ConfigConstants(){}
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/HeatResourceValidationContext.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/HeatResourceValidationContext.java
new file mode 100644
index 0000000000..6067876532
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/HeatResourceValidationContext.java
@@ -0,0 +1,44 @@
+package org.openecomp.sdc.validation.type;
+
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.validation.ValidationContext;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Created by TALIO on 2/23/2017.
+ */
+public class HeatResourceValidationContext implements ValidationContext {
+
+ private HeatOrchestrationTemplate heatOrchestrationTemplate;
+ // key - resource type, value - map with key = resource id and
+ // value = map with key = pointing / pointed resource type and
+ // value = pointing / pointed resource id
+ private Map<String, Map<String, Map<String, List<String>>>> fileLevelResourceDependencies;
+ private String envFileName;
+
+
+ public HeatResourceValidationContext(
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ Map<String, Map<String, Map<String, List<String>>>> fileLevelResourceDependencies,
+ String envFileName) {
+
+ this.heatOrchestrationTemplate = heatOrchestrationTemplate;
+ this.fileLevelResourceDependencies = fileLevelResourceDependencies;
+// this.zipLevelResourceDependencies = zipLevelResourceDependencies;
+ this.envFileName = envFileName;
+ }
+
+ public HeatOrchestrationTemplate getHeatOrchestrationTemplate() {
+ return heatOrchestrationTemplate;
+ }
+
+ public Map<String, Map<String, Map<String, List<String>>>> getFileLevelResourceDependencies() {
+ return fileLevelResourceDependencies;
+ }
+
+ public String getEnvFileName() {
+ return envFileName;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/NamingConventionValidationContext.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/NamingConventionValidationContext.java
new file mode 100644
index 0000000000..273cdedfa5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/type/NamingConventionValidationContext.java
@@ -0,0 +1,28 @@
+package org.openecomp.sdc.validation.type;
+
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.validation.ValidationContext;
+
+/**
+ * Created by TALIO on 2/23/2017.
+ */
+public class NamingConventionValidationContext implements ValidationContext {
+
+ private HeatOrchestrationTemplate heatOrchestrationTemplate;
+ private String envFileName;
+
+ public NamingConventionValidationContext(
+ HeatOrchestrationTemplate heatOrchestrationTemplate,
+ String envFileName) {
+ this.heatOrchestrationTemplate = heatOrchestrationTemplate;
+ this.envFileName = envFileName;
+ }
+
+ public HeatOrchestrationTemplate getHeatOrchestrationTemplate() {
+ return heatOrchestrationTemplate;
+ }
+
+ public String getEnvFileName() {
+ return envFileName;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationTestUtil.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationTestUtil.java
new file mode 100644
index 0000000000..3702e9253f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationTestUtil.java
@@ -0,0 +1,192 @@
+package org.openecomp.sdc.validation.util;
+
+import org.apache.commons.collections4.MapUtils;
+import org.apache.commons.io.IOUtils;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.core.validation.types.MessageContainer;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.validation.ResourceValidator;
+import org.openecomp.sdc.validation.ValidationContext;
+import org.openecomp.sdc.validation.Validator;
+import org.openecomp.sdc.validation.base.ResourceBaseValidator;
+import org.testng.Assert;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.StringWriter;
+import java.net.URL;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+
+/**
+ * Created by TALIO on 2/26/2017.
+ */
+public class ValidationTestUtil {
+
+ public static GlobalValidationContext createGlobalContextFromPath(String path) {
+ GlobalValidationContext globalValidationContext = new GlobalValidationContext();
+ Map<String, byte[]> contentMap = getContentMapByPath(path);
+ if (contentMap == null) {
+ return null;
+ }
+ contentMap.entrySet()
+ .forEach(entry -> globalValidationContext.addFileContext(entry.getKey(), entry.getValue()));
+
+ return globalValidationContext;
+ }
+
+ private static Map<String, byte[]> getContentMapByPath(String path) {
+ Map<String, byte[]> contentMap = new HashMap<>();
+ byte[] fileContent;
+ FileInputStream fis;
+ URL url = ValidationTestUtil.class.getResource(path);
+ File pathFile = new File(url.getFile());
+ File[] files;
+ if (pathFile.isDirectory()) {
+ files = pathFile.listFiles();
+ } else {
+ files = new File[]{pathFile};
+ }
+
+ if (files == null || files.length == 0) {
+ return null;
+ }
+
+ for (File file : files) {
+ try {
+ fis = new FileInputStream(file);
+ fileContent = FileUtils.toByteArray(fis);
+ contentMap.put(file.getName(), fileContent);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ return contentMap;
+ }
+
+ public static Map<String, MessageContainer> testValidator(Validator validator, String path) {
+
+ GlobalValidationContext globalValidationContext = createGlobalContextFromPath(path);
+ validator.validate(globalValidationContext);
+
+ assert globalValidationContext != null;
+ return globalValidationContext.getContextMessageContainers();
+
+
+ }
+
+ public static Map<String, MessageContainer> testValidator(ResourceBaseValidator baseValidator,
+ ResourceValidator resourceValidator,
+ String resourceTypeToValidate, String path) {
+
+ GlobalValidationContext globalContext = createGlobalContextFromPath(path);
+ ManifestContent manifestContent = ValidationUtil.checkValidationPreCondition(globalContext);
+ Map<String, FileData.Type> fileTypeMap = ManifestUtil.getFileTypeMap(manifestContent);
+ Map<String, FileData> fileEnvMap = ManifestUtil.getFileAndItsEnv(manifestContent);
+
+ validateFiles(baseValidator, resourceValidator, globalContext, fileEnvMap, fileTypeMap,
+ resourceTypeToValidate);
+
+ assert globalContext != null;
+ return globalContext.getContextMessageContainers();
+
+
+ }
+
+ private static void validateFiles(ResourceBaseValidator baseValidator,
+ ResourceValidator resourceValidator,
+ GlobalValidationContext globalContext,
+ Map<String, FileData> fileEnvMap,
+ Map<String, FileData.Type> fileTypeMap,
+ String resourceTypeToValidate) {
+
+ Collection<String> files = globalContext.getFiles();
+ for(String fileName : files){
+ if(FileData.isHeatFile(fileTypeMap.get(fileName))) {
+ HeatOrchestrationTemplate heatOrchestrationTemplate =
+ ValidationUtil.checkHeatOrchestrationPreCondition(fileName, globalContext);
+
+ if (Objects.isNull(heatOrchestrationTemplate)) {
+ continue;
+ }
+
+ ValidationContext validationContext = baseValidator.createValidationContext
+ (fileName,
+ fileEnvMap.get(fileName) == null ? null : fileEnvMap.get(fileName).getFile(),
+ heatOrchestrationTemplate, globalContext);
+
+ validateResources(fileName, resourceValidator, resourceTypeToValidate, validationContext,
+ globalContext);
+ }
+ }
+ }
+
+ public static void validateResources(String fileName,
+ ResourceValidator resourceValidator,
+ String resourceTypeToValidate,
+ ValidationContext validationContext,
+ GlobalValidationContext globalValidationContext){
+
+ HeatOrchestrationTemplate heatOrchestrationTemplate =
+ ValidationUtil.checkHeatOrchestrationPreCondition(fileName, globalValidationContext);
+ Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
+
+ if(MapUtils.isEmpty(resourcesMap)){
+ return;
+ }
+
+ resourcesMap.entrySet()
+ .stream()
+ .filter(resourceEntry -> isResourceNeedToBeTested(resourceEntry.getValue().getType(), resourceTypeToValidate))
+ .forEach(resourceEntry ->
+ resourceValidator.validate
+ (fileName, resourceEntry, globalValidationContext, validationContext));
+ }
+
+ private static boolean isResourceNeedToBeTested(String currResource, String resourceToTest){
+ if(Objects.isNull(resourceToTest)){
+ return HeatStructureUtil.isNestedResource(currResource);
+ }
+
+ return currResource.equals(resourceToTest);
+ }
+
+ public static void validateErrorMessage(String actualMessage, String expected, String... params) {
+ Assert.assertEquals(actualMessage.replace("\n", "").replace("\r", ""),
+ ErrorMessagesFormatBuilder.getErrorWithParameters(expected, params).replace("\n", "")
+ .replace("\r", ""));
+
+ }
+
+ public static Validator cerateValidatorImpl(ImplementationConfiguration validatorConf) {
+ Validator validator = null;
+ try {
+ validator =
+ CommonMethods.newInstance(validatorConf.getImplementationClass(), Validator.class);
+ validator.init(validatorConf.getProperties());
+ } catch (IllegalArgumentException iae) {
+ return null;
+ }
+ return validator;
+ }
+
+ public static Map<String, Object> getResourceMap(String configFileName) throws IOException {
+ URL mockResource = ValidationTestUtil.class.getResource(configFileName);
+ StringWriter writer = new StringWriter();
+ String json = IOUtils.toString(mockResource.openStream(), "UTF-8");
+ return JsonUtil.json2Object(json, Map.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationUtil.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationUtil.java
new file mode 100644
index 0000000000..ee15df65cf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-sdk/src/main/java/org/openecomp/sdc/validation/util/ValidationUtil.java
@@ -0,0 +1,277 @@
+package org.openecomp.sdc.validation.util;
+
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.core.validation.types.GlobalValidationContext;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.configuration.ImplementationConfiguration;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.model.Environment;
+import org.openecomp.sdc.heat.datatypes.model.HeatOrchestrationTemplate;
+import org.openecomp.sdc.heat.datatypes.model.HeatResourcesTypes;
+import org.openecomp.sdc.heat.datatypes.model.Resource;
+import org.openecomp.sdc.heat.datatypes.model.ResourceReferenceFunctions;
+import org.openecomp.sdc.heat.services.HeatStructureUtil;
+import org.openecomp.sdc.heat.services.manifest.ManifestUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.validation.ResourceValidator;
+
+import java.io.InputStream;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+import java.util.regex.Pattern;
+
+import static java.util.Objects.nonNull;
+
+public class ValidationUtil {
+
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public static void removeExposedResourcesCalledByGetResource(String fileName,
+ Set<String> actualExposedResources,
+ HeatOrchestrationTemplate
+ heatOrchestrationTemplate,
+ GlobalValidationContext globalContext) {
+ Map<String, Resource> resourcesMap = heatOrchestrationTemplate.getResources();
+
+ for (Map.Entry<String, Resource> resourceEntry : resourcesMap.entrySet()) {
+ Set<String> referencedResources =
+ HeatStructureUtil.getReferencedValuesByFunctionName(fileName, ResourceReferenceFunctions
+ .GET_RESOURCE
+ .getFunction(), resourceEntry.getValue().getProperties(), globalContext);
+
+ removeExposedResourcesCalledByGetResource(referencedResources, actualExposedResources,
+ resourcesMap);
+ }
+ }
+
+ private static void removeExposedResourcesCalledByGetResource(Set<String> referencedResources,
+ Set<String>
+ actualExposedResources,
+ Map<String, Resource> resourcesMap) {
+ for (String referencedResourceName : referencedResources) {
+ Resource currResource = resourcesMap.get(referencedResourceName);
+ if (Objects.nonNull(currResource)) {
+ if (isExpectedToBeExposed(currResource.getType())) {
+ actualExposedResources.add(referencedResourceName);
+ }
+ }
+ }
+ }
+
+ public static boolean isExpectedToBeExposed(String type) {
+ return HeatResourcesTypes.isResourceExpectedToBeExposed(type);
+ }
+
+ public static String getWantedNameFromPropertyValueGetParam(Object value) {
+ Set<String> paramName = HeatStructureUtil
+ .getReferencedValuesByFunctionName(null, ResourceReferenceFunctions.GET_PARAM.getFunction(),
+ value, null);
+ if (paramName != null && CollectionUtils.isNotEmpty(paramName)) {
+ return (String) paramName.toArray()[0];
+ }
+ return null;
+ }
+
+ public static boolean evalPattern(Object paramVal, String[] regexList) {
+ String value = "";
+ if (paramVal instanceof String) {
+ value = ((String) paramVal);
+ }
+ if (paramVal instanceof Integer) {
+ value = paramVal.toString();
+ }
+ return evalPattern(value, regexList);
+ }
+
+ private static boolean evalPattern(String paramVal, String[] regexList) {
+
+ for (String regex : regexList) {
+ if (Pattern.matches(regex, paramVal)) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ public static String getMessagePartAccordingToResourceType(Map.Entry<String, Resource>
+ resourceEntry) {
+ HeatResourcesTypes resourcesType =
+ HeatResourcesTypes.findByHeatResource(resourceEntry.getValue().getType());
+ if (resourcesType == HeatResourcesTypes.NOVA_SERVER_RESOURCE_TYPE) {
+ return "Server";
+ } else if (resourcesType == HeatResourcesTypes.CONTRAIL_SERVICE_TEMPLATE) {
+ return "Service Template";
+ } else if (resourcesType == HeatResourcesTypes.CONTRAIL_SERVICE_INSTANCE) {
+ return "Service Instance";
+ } else {
+ return "";
+ }
+ }
+
+ public static Environment validateEnvContent(String envFileName,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", envFileName);
+
+ Environment envContent;
+ try {
+ Optional<InputStream> fileContent = globalContext.getFileContent(envFileName);
+ if (fileContent.isPresent()) {
+ envContent = new YamlUtil().yamlToObject(fileContent.get(), Environment.class);
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_ENV_FILE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.EMPTY_FILE);
+ throw new Exception("The file '" + envFileName + "' has no content");
+ }
+ } catch (Exception exception) {
+ mdcDataDebugMessage.debugExitMessage("file", envFileName);
+ return null;
+ }
+ mdcDataDebugMessage.debugExitMessage("file", envFileName);
+ return envContent;
+ }
+
+ public static boolean validateMapPropertyValue(String fileName,
+ Map.Entry<String, Resource> resourceEntry,
+ GlobalValidationContext globalContext,
+ String propertyName, Object nameValue,
+ String[] regexList) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ String propertyValue = getWantedNameFromPropertyValueGetParam(nameValue);
+ if (nonNull(propertyValue)) {
+ if (!evalPattern(propertyValue, regexList)) {
+ globalContext.addMessage(
+ fileName,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder.getErrorWithParameters(
+ Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(),
+ getMessagePartAccordingToResourceType(resourceEntry), propertyName, propertyValue,
+ resourceEntry.getKey()),
+ LoggerTragetServiceName.VALIDATE_IMAGE_AND_FLAVOR_NAME,
+ LoggerErrorDescription.NAME_NOT_ALIGNED_WITH_GUIDELINES);
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return true;
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return false;
+ }
+
+ public static ManifestContent checkValidationPreCondition(GlobalValidationContext globalContext) {
+ Optional<InputStream> manifest = globalContext.getFileContent(SdcCommon.MANIFEST_NAME);
+ if (!manifest.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_MANIFEST_CONTENT, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.MISSING_FILE);
+ throw new RuntimeException("Can't load manifest file for Heat Validator");
+ }
+ ManifestContent manifestContent;
+ try {
+ manifestContent = JsonUtil.json2Object(manifest.get(), ManifestContent.class);
+ } catch (Exception exception) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.VALIDATE_MANIFEST_CONTENT, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_MANIFEST);
+ throw new RuntimeException("Can't load manifest file for Heat Validator");
+ }
+
+ return manifestContent;
+ }
+
+ public static String getParserExceptionReason(Exception exception) {
+ String reason;
+
+ if (exception.getCause() != null && exception.getCause().getCause() != null) {
+ reason = exception.getCause().getCause().getMessage();
+ } else if (exception.getCause() != null) {
+ reason = exception.getCause().getMessage();
+ } else {
+ reason = Messages.GENERAL_HEAT_PARSER_ERROR.getErrorMessage();
+ }
+ return reason;
+ }
+
+ public static HeatOrchestrationTemplate checkHeatOrchestrationPreCondition(String fileName,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", fileName);
+
+ HeatOrchestrationTemplate heatOrchestrationTemplate;
+ try {
+ Optional<InputStream> fileContent = globalContext.getFileContent(fileName);
+ if (fileContent.isPresent()) {
+ heatOrchestrationTemplate =
+ new YamlUtil().yamlToObject(fileContent.get(), HeatOrchestrationTemplate.class);
+ } else {
+ heatOrchestrationTemplate = null;
+ }
+ } catch (Exception exception) {
+ globalContext.addMessage(fileName, ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.INVALID_HEAT_FORMAT_REASON.getErrorMessage(),
+ getParserExceptionReason(exception)),
+ LoggerTragetServiceName.VALIDATE_HEAT_FORMAT,
+ LoggerErrorDescription.INVALID_HEAT_FORMAT);
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return null;
+ }
+ mdcDataDebugMessage.debugExitMessage("file", fileName);
+ return heatOrchestrationTemplate;
+ }
+
+ public static Set<String> validateManifest(ManifestContent manifestContent,
+ GlobalValidationContext globalContext) {
+
+ mdcDataDebugMessage.debugEntryMessage("file", SdcCommon.MANIFEST_NAME);
+
+ Set<String> baseFiles = ManifestUtil.getBaseFiles(manifestContent);
+ if (baseFiles == null || baseFiles.size() == 0) {
+ globalContext.addMessage(
+ SdcCommon.MANIFEST_NAME,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MISSIN_BASE_HEAT_FILE.getErrorMessage()),
+ LoggerTragetServiceName.VALIDATE_BASE_FILE,
+ LoggerErrorDescription.MISSING_BASE_HEAT);
+ } else if (baseFiles.size() > 1) {
+ String baseFileList = getElementListAsString(baseFiles);
+ globalContext.addMessage(
+ SdcCommon.MANIFEST_NAME,
+ ErrorLevel.WARNING,
+ ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MULTI_BASE_HEAT_FILE.getErrorMessage(),
+ baseFileList),
+ LoggerTragetServiceName.VALIDATE_BASE_FILE,
+ LoggerErrorDescription.MULTI_BASE_HEAT);
+ }
+
+ mdcDataDebugMessage.debugExitMessage("file", SdcCommon.MANIFEST_NAME);
+ return baseFiles;
+ }
+
+ private static String getElementListAsString(Set<String> elementCollection) {
+
+ return "["
+ + CommonMethods.collectionToCommaSeparatedString(elementCollection)
+ + "]";
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml
index 04680c48c3..54b745f401 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml
@@ -1,38 +1,25 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-validation-lib</name>
+ <artifactId>openecomp-sdc-validation-lib</artifactId>
+
+ <packaging>pom</packaging>
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <name>openecomp-sdc-validation-lib</name>
- <artifactId>openecomp-sdc-validation-lib</artifactId>
- <packaging>pom</packaging>
-
<modules>
<module>openecomp-sdc-validation-api</module>
<module>openecomp-sdc-validation-core</module>
<module>openecomp-sdc-validation-impl</module>
+ <module>openecomp-sdc-validation-sdk</module>
+ <module>att-sdc-validation-impl</module>
</modules>
- <dependencies>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-validation-api</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-validation-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <!--dependency>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-validation-impl</artifactId>
- <version>${project.version}</version>
- </dependency-->
- </dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..3188265847
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/pom.xml.versionsBackup
@@ -0,0 +1,24 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-validation-lib</name>
+ <artifactId>openecomp-sdc-validation-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-validation-api</module>
+ <module>openecomp-sdc-validation-core</module>
+ <module>openecomp-sdc-validation-impl</module>
+ <module>openecomp-sdc-validation-sdk</module>
+ <module>att-sdc-validation-impl</module>
+ </modules>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml
index 8062999c55..30ed034e53 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml
@@ -2,6 +2,8 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-vendor-license-api</name>
+ <artifactId>openecomp-sdc-vendor-license-api</artifactId>
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,12 +11,9 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-vendor-license-api</name>
- <artifactId>openecomp-sdc-vendor-license-api</artifactId>
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
@@ -24,7 +23,7 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-core</artifactId>
<version>${project.version}</version>
</dependency>
@@ -36,22 +35,22 @@
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>javax.el</artifactId>
- <version>2.2.4</version>
+ <version>${javax.el.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
- <version>2.7.4</version>
+ <version>${jackson.annotations.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
- <version>2.7.4</version>
+ <version>${jackson.dataformat.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.woodstox</groupId>
<artifactId>woodstox-core-asl</artifactId>
- <version>4.4.1</version>
+ <version>${woodstox.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..fc22abcf38
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/pom.xml.versionsBackup
@@ -0,0 +1,55 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-vendor-license-api</name>
+ <artifactId>openecomp-sdc-vendor-license-api</artifactId>
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.el</groupId>
+ <artifactId>javax.el-api</artifactId>
+ <version>${javax.el-api.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.glassfish.web</groupId>
+ <artifactId>javax.el</artifactId>
+ <version>2.2.4</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ <version>2.7.4</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-xml</artifactId>
+ <version>2.7.4</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.woodstox</groupId>
+ <artifactId>woodstox-core-asl</artifactId>
+ <version>4.4.1</version>
+ </dependency>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/VendorLicenseConstants.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/VendorLicenseConstants.java
index 2a1930d626..82fdf045db 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/VendorLicenseConstants.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/VendorLicenseConstants.java
@@ -32,6 +32,8 @@ public final class VendorLicenseConstants {
public static final String VENDOR_LICENSE_MODEL_ARTIFACT_NAME_WITH_PATH =
EXTERNAL_ARTIFACTS_DIR + File.separator + "vendor-license-model.xml";
public static final String VENDOR_LICENSE_MODEL_ARTIFACT_REGEX_REMOVE = " xmlns=\"\"";
+ public static final String UNSUPPORTED_OPERATION_ERROR =
+ "An error has occurred: Unsupported operation for 1707 release.";
public final class UniqueValues {
public static final String VENDOR_NAME = "Vendor name";
@@ -39,5 +41,6 @@ public final class VendorLicenseConstants {
public static final String FEATURE_GROUP_NAME = "Feature Group name";
public static final String ENTITLEMENT_POOL_NAME = "Entitlement Pool name";
public static final String LICENSE_KEY_GROUP_NAME = "License Key Group name";
+
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/EntitlementPoolDao.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/EntitlementPoolDao.java
index c507e6946a..28524e8977 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/EntitlementPoolDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/EntitlementPoolDao.java
@@ -20,12 +20,23 @@
package org.openecomp.sdc.vendorlicense.dao;
+
import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.vendorlicense.dao.types.EntitlementPoolEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
+import java.util.Collection;
+
public interface EntitlementPoolDao extends VersionableDao, BaseDao<EntitlementPoolEntity> {
+ void create(EntitlementPoolEntity entitlementPool);
+
+ void delete(EntitlementPoolEntity entitlementPool);
+
+ EntitlementPoolEntity get(EntitlementPoolEntity entitlementPool);
+
+ Collection<EntitlementPoolEntity> list(EntitlementPoolEntity entitlementPool);
+
long count(EntitlementPoolEntity entitlementPool);
void deleteAll(EntitlementPoolEntity entitlementPool);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDao.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDao.java
index a5db802861..3a7ce9ac04 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDao.java
@@ -24,10 +24,20 @@ import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.vendorlicense.dao.types.FeatureGroupEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
+import java.util.Collection;
import java.util.Set;
+
public interface FeatureGroupDao extends VersionableDao, BaseDao<FeatureGroupEntity> {
+ void delete(FeatureGroupEntity featureGroup);
+
+ void create(FeatureGroupEntity featureGroup);
+
+ FeatureGroupEntity get(FeatureGroupEntity entity);
+
+ Collection<FeatureGroupEntity> list(FeatureGroupEntity entity);
+
long count(FeatureGroupEntity featureGroup);
void deleteAll(FeatureGroupEntity featureGroup);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDaoFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDaoFactory.java
index 58832e12ae..5a32ee420a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDaoFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/FeatureGroupDaoFactory.java
@@ -24,6 +24,7 @@ import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
+
public abstract class FeatureGroupDaoFactory extends AbstractComponentFactory<FeatureGroupDao> {
public static FeatureGroupDaoFactory getInstance() {
return AbstractFactory.getInstance(FeatureGroupDaoFactory.class);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseAgreementDao.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseAgreementDao.java
index df5e972422..8e2e4889ba 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseAgreementDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseAgreementDao.java
@@ -1,8 +1,8 @@
/*-
- * ============LICENSE_START=======================================================
+ * ============LICENSE_SLicenseAgreementEntityARLicenseAgreementEntity=======================================================
* SDC
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017 ALicenseAgreementEntity&LicenseAgreementEntity Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -12,7 +12,7 @@
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * WILicenseAgreementEntityHOULicenseAgreementEntity WARRANLicenseAgreementEntityIES OR CONDILicenseAgreementEntityIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ============LICENSE_END=========================================================
@@ -24,9 +24,10 @@ import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.vendorlicense.dao.types.LicenseAgreementEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
+import java.util.Collection;
import java.util.Set;
-public interface LicenseAgreementDao extends VersionableDao, BaseDao<LicenseAgreementEntity> {
+public interface LicenseAgreementDao extends VersionableDao{
long count(LicenseAgreementEntity entity);
@@ -37,4 +38,13 @@ public interface LicenseAgreementDao extends VersionableDao, BaseDao<LicenseAgre
void updateColumnsAndDeltaFeatureGroupIds(LicenseAgreementEntity licenseAgreement,
Set<String> addedFeatureGroupIds,
Set<String> removedFeatureGroupIds);
+ Collection<LicenseAgreementEntity> list(LicenseAgreementEntity entity);
+
+ void create(LicenseAgreementEntity entity);
+
+ void update(LicenseAgreementEntity entity);
+
+ LicenseAgreementEntity get(LicenseAgreementEntity entity);
+
+ void delete(LicenseAgreementEntity entity);
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDao.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDao.java
index 43e380d9b9..4e0ce93ed4 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDao.java
@@ -20,12 +20,26 @@
package org.openecomp.sdc.vendorlicense.dao;
+
import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.vendorlicense.dao.types.LicenseKeyGroupEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
+import java.util.Collection;
+
+
public interface LicenseKeyGroupDao extends VersionableDao, BaseDao<LicenseKeyGroupEntity> {
+ void create(LicenseKeyGroupEntity licenseKeyGroup);
+
+ void delete(LicenseKeyGroupEntity licenseKeyGroup);
+
+ LicenseKeyGroupEntity get(LicenseKeyGroupEntity licenseKeyGroup);
+
+ Collection<LicenseKeyGroupEntity> list(LicenseKeyGroupEntity licenseKeyGroup);
+
+ long count(LicenseKeyGroupEntity licenseKeyGroup);
+
void deleteAll(LicenseKeyGroupEntity licenseKeyGroup);
void addReferencingFeatureGroup(LicenseKeyGroupEntity licenseKeyGroup, String featureGroupId);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDaoFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDaoFactory.java
index 1f887390db..8c76c46301 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDaoFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/LicenseKeyGroupDaoFactory.java
@@ -23,6 +23,7 @@ package org.openecomp.sdc.vendorlicense.dao;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
+
public abstract class LicenseKeyGroupDaoFactory
extends AbstractComponentFactory<LicenseKeyGroupDao> {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/VendorLicenseModelDao.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/VendorLicenseModelDao.java
index b8e39bc496..0bb2e62b41 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/VendorLicenseModelDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/VendorLicenseModelDao.java
@@ -25,5 +25,4 @@ import org.openecomp.sdc.vendorlicense.dao.types.VendorLicenseModelEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
public interface VendorLicenseModelDao extends VersionableDao, BaseDao<VendorLicenseModelEntity> {
-// void updateLastModificationTime(VendorLicenseModelEntity vendorLicenseModel);
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/AggregationFunction.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/AggregationFunction.java
index 9a5af213c4..5b5a97f92b 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/AggregationFunction.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/AggregationFunction.java
@@ -23,5 +23,5 @@ package org.openecomp.sdc.vendorlicense.dao.types;
public enum AggregationFunction {
Peak,
Average,
- Other
+ Other;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java
index ca7a09b0df..4483c67b65 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/ChoiceOrOther.java
@@ -25,6 +25,12 @@ import com.datastax.driver.mapping.annotations.UDT;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
@UDT(keyspace = "dox", name = "choice_or_other")
public class ChoiceOrOther<E extends Enum<E>> {
@@ -110,10 +116,13 @@ public class ChoiceOrOther<E extends Enum<E>> {
try {
choice = E.valueOf(enumClass, result);
- } catch (IllegalArgumentException e0) {
+ } catch (IllegalArgumentException exception) {
try {
choice = E.valueOf(enumClass, OTHER_ENUM_VALUE);
} catch (IllegalArgumentException ex) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.VALIDATE_CHOICE_VALUE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_VALUE);
throw new CoreException(new ErrorCode.ErrorCodeBuilder()
.withId(CHOICE_OR_OTHER_INVALID_ENUM_ERR_ID)
.withMessage(CHOICE_OR_OTHER_INVALID_ENUM_MSG)
@@ -124,6 +133,14 @@ public class ChoiceOrOther<E extends Enum<E>> {
}
@Override
+ public int hashCode() {
+ int result1 = choice != null ? choice.hashCode() : 0;
+ result1 = 31 * result1 + (other != null ? other.hashCode() : 0);
+ result1 = 31 * result1 + (result != null ? result.hashCode() : 0);
+ return result1;
+ }
+
+ @Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
@@ -143,12 +160,4 @@ public class ChoiceOrOther<E extends Enum<E>> {
return result != null ? result.equals(that.result) : that.result == null;
}
-
- @Override
- public int hashCode() {
- int result1 = choice != null ? choice.hashCode() : 0;
- result1 = 31 * result1 + (other != null ? other.hashCode() : 0);
- result1 = 31 * result1 + (result != null ? result.hashCode() : 0);
- return result1;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementMetric.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementMetric.java
index 42cc231273..23423dc241 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementMetric.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementMetric.java
@@ -33,5 +33,5 @@ public enum EntitlementMetric {
Units_TB,
Units_MB,
Units_GB,
- Other
+ Other;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementPoolEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementPoolEntity.java
index 8964458181..0a704721d5 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementPoolEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementPoolEntity.java
@@ -55,7 +55,6 @@ public class EntitlementPoolEntity implements VersionableEntity {
private String name;
private String description;
-
@Column(name = "threshold")
private int thresholdValue;
@@ -114,14 +113,6 @@ public class EntitlementPoolEntity implements VersionableEntity {
return getVendorLicenseModelId();
}
- public String getVendorLicenseModelId() {
- return vendorLicenseModelId;
- }
-
- public void setVendorLicenseModelId(String vendorLicenseModelId) {
- this.vendorLicenseModelId = vendorLicenseModelId;
- }
-
@Override
public String getId() {
return id;
@@ -142,6 +133,24 @@ public class EntitlementPoolEntity implements VersionableEntity {
this.version = version;
}
+ @Override
+ public String getVersionUuId() {
+ return versionUuId;
+ }
+
+ @Override
+ public void setVersionUuId(String uuId) {
+ versionUuId = uuId;
+ }
+
+ public String getVendorLicenseModelId() {
+ return vendorLicenseModelId;
+ }
+
+ public void setVendorLicenseModelId(String vendorLicenseModelId) {
+ this.vendorLicenseModelId = vendorLicenseModelId;
+ }
+
public Set<String> getReferencingFeatureGroups() {
return referencingFeatureGroups;
}
@@ -234,13 +243,11 @@ public class EntitlementPoolEntity implements VersionableEntity {
this.manufacturerReferenceNumber = manufacturerReferenceNumber;
}
-
/**
* Gets threshold for artifact.
*
* @return the threshold for artifact
*/
- //util methods for XML
public ThresholdForXml getThresholdForArtifact() {
ThresholdForXml threshold = new ThresholdForXml();
threshold.setUnit(getThresholdUnit() == null ? null : getThresholdUnit().name());
@@ -249,6 +256,14 @@ public class EntitlementPoolEntity implements VersionableEntity {
}
/**
+ * Gets version for artifact.
+ * @return version in format suitable for artifact
+ */
+ public String getVersionForArtifact() {
+ return version.toString();
+ }
+
+ /**
* Gets entitlement metric for artifact.
*
* @return the entitlement metric for artifact
@@ -277,26 +292,12 @@ public class EntitlementPoolEntity implements VersionableEntity {
return timeForXml;
}
-
@Override
- public String toString() {
- return "EntitlementPoolEntity{"
- + "vendorLicenseModelId='" + vendorLicenseModelId + '\''
- + ", version=" + version
- + ", id='" + id + '\''
- + ", name='" + name + '\''
- + ", description='" + description + '\''
- + ", thresholdValue=" + thresholdValue
- + ", thresholdUnit='" + thresholdUnit + '\''
- + ", entitlementMetric=" + entitlementMetric
- + ", increments='" + increments + '\''
- + ", aggregationFunction=" + aggregationFunction
- + ", operationalScope=" + operationalScope
- + ", time=" + time
- + ", manufacturerReferenceNumber='" + manufacturerReferenceNumber + '\''
- + ", referencingFeatureGroups=" + referencingFeatureGroups
- + ", version_uuid=" + versionUuId
- + '}';
+ public int hashCode() {
+ return Objects
+ .hash(vendorLicenseModelId, version, id, name, description, thresholdValue, thresholdUnit,
+ entitlementMetric, increments, aggregationFunction, operationalScope, time,
+ manufacturerReferenceNumber, referencingFeatureGroups);
}
@Override
@@ -310,7 +311,6 @@ public class EntitlementPoolEntity implements VersionableEntity {
EntitlementPoolEntity that = (EntitlementPoolEntity) obj;
return Float.compare(that.thresholdValue, thresholdValue) == 0
&& Objects.equals(vendorLicenseModelId, that.vendorLicenseModelId)
- && Objects.equals(version, that.version)
&& Objects.equals(id, that.id)
&& Objects.equals(name, that.name)
&& Objects.equals(description, that.description)
@@ -325,11 +325,24 @@ public class EntitlementPoolEntity implements VersionableEntity {
}
@Override
- public int hashCode() {
- return Objects
- .hash(vendorLicenseModelId, version, id, name, description, thresholdValue, thresholdUnit,
- entitlementMetric, increments, aggregationFunction, operationalScope, time,
- manufacturerReferenceNumber, referencingFeatureGroups);
+ public String toString() {
+ return "EntitlementPoolEntity{"
+ + "vendorLicenseModelId='" + vendorLicenseModelId + '\''
+ + ", version=" + version
+ + ", id='" + id + '\''
+ + ", name='" + name + '\''
+ + ", description='" + description + '\''
+ + ", thresholdValue=" + thresholdValue
+ + ", thresholdUnit='" + thresholdUnit + '\''
+ + ", entitlementMetric=" + entitlementMetric
+ + ", increments='" + increments + '\''
+ + ", aggregationFunction=" + aggregationFunction
+ + ", operationalScope=" + operationalScope
+ + ", time=" + time
+ + ", manufacturerReferenceNumber='" + manufacturerReferenceNumber + '\''
+ + ", referencingFeatureGroups=" + referencingFeatureGroups
+ + ", version_uuid=" + versionUuId
+ + '}';
}
/**
@@ -359,12 +372,4 @@ public class EntitlementPoolEntity implements VersionableEntity {
return null;
}
}
-
- public String getVersionUuId() {
- return versionUuId;
- }
-
- public void setVersionUuId(String uuId) {
- versionUuId = uuId;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementTime.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementTime.java
index 5005075122..78576d1e7d 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementTime.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/EntitlementTime.java
@@ -26,5 +26,5 @@ public enum EntitlementTime { //TODO MetricTime ? ask Segev...
Month,
Quarter,
Year,
- Other
+ Other;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupEntity.java
index de5bd2e1c5..a297f8aa63 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupEntity.java
@@ -28,7 +28,6 @@ import com.datastax.driver.mapping.annotations.Table;
import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
-
import java.util.HashSet;
import java.util.Objects;
import java.util.Set;
@@ -83,12 +82,14 @@ public class FeatureGroupEntity implements VersionableEntity {
return getVendorLicenseModelId();
}
- public String getVendorLicenseModelId() {
- return vendorLicenseModelId;
+ @Override
+ public String getId() {
+ return id;
}
- public void setVendorLicenseModelId(String vendorLicenseModelId) {
- this.vendorLicenseModelId = vendorLicenseModelId;
+ @Override
+ public void setId(String id) {
+ this.id = id;
}
@Override
@@ -101,14 +102,12 @@ public class FeatureGroupEntity implements VersionableEntity {
this.version = version;
}
- @Override
- public String getId() {
- return id;
+ public String getVendorLicenseModelId() {
+ return vendorLicenseModelId;
}
- @Override
- public void setId(String id) {
- this.id = id;
+ public void setVendorLicenseModelId(String vendorLicenseModelId) {
+ this.vendorLicenseModelId = vendorLicenseModelId;
}
public String getName() {
@@ -160,18 +159,10 @@ public class FeatureGroupEntity implements VersionableEntity {
}
@Override
- public String toString() {
- return "FeatureGroupEntity{"
- + "vendorLicenseModelId='" + vendorLicenseModelId + '\''
- + ", version=" + version
- + ", id='" + id + '\''
- + ", name='" + name + '\''
- + ", description='" + description + '\''
- + ", partNumber='" + partNumber + '\''
- + ", licenseKeyGroupIds=" + licenseKeyGroupIds
- + ", entitlementPoolIds=" + entitlementPoolIds
- + ", referencingLicenseAgreements=" + referencingLicenseAgreements
- + '}';
+ public int hashCode() {
+ return Objects
+ .hash(vendorLicenseModelId, version, id, name, description, partNumber, licenseKeyGroupIds,
+ entitlementPoolIds, referencingLicenseAgreements);
}
@Override
@@ -195,9 +186,17 @@ public class FeatureGroupEntity implements VersionableEntity {
}
@Override
- public int hashCode() {
- return Objects
- .hash(vendorLicenseModelId, version, id, name, description, partNumber, licenseKeyGroupIds,
- entitlementPoolIds, referencingLicenseAgreements);
+ public String toString() {
+ return "FeatureGroupEntity{"
+ + "vendorLicenseModelId='" + vendorLicenseModelId + '\''
+ + ", version=" + version
+ + ", id='" + id + '\''
+ + ", name='" + name + '\''
+ + ", description='" + description + '\''
+ + ", partNumber='" + partNumber + '\''
+ + ", licenseKeyGroupIds=" + licenseKeyGroupIds
+ + ", entitlementPoolIds=" + entitlementPoolIds
+ + ", referencingLicenseAgreements=" + referencingLicenseAgreements
+ + '}';
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupModel.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupModel.java
index 78e081760c..174cbbb9b9 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupModel.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/FeatureGroupModel.java
@@ -41,14 +41,14 @@ public class FeatureGroupModel {
return entitlementPools;
}
- public Set<LicenseKeyGroupEntity> getLicenseKeyGroups() {
- return licenseKeyGroups;
- }
-
public void setEntitlementPools(Set<EntitlementPoolEntity> entitlementPools) {
this.entitlementPools = entitlementPools;
}
+ public Set<LicenseKeyGroupEntity> getLicenseKeyGroups() {
+ return licenseKeyGroups;
+ }
+
public void setLicenseKeyGroups(Set<LicenseKeyGroupEntity> licenseKeyGroups) {
this.licenseKeyGroups = licenseKeyGroups;
}
@@ -72,4 +72,3 @@ public class FeatureGroupModel {
}
-
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseAgreementEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseAgreementEntity.java
index a6e46bf44c..7f7dab684a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseAgreementEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseAgreementEntity.java
@@ -86,12 +86,14 @@ public class LicenseAgreementEntity implements VersionableEntity {
return getVendorLicenseModelId();
}
- public String getVendorLicenseModelId() {
- return vendorLicenseModelId;
+ @Override
+ public String getId() {
+ return id;
}
- public void setVendorLicenseModelId(String vendorLicenseModelId) {
- this.vendorLicenseModelId = vendorLicenseModelId;
+ @Override
+ public void setId(String id) {
+ this.id = id;
}
@Override
@@ -104,14 +106,12 @@ public class LicenseAgreementEntity implements VersionableEntity {
this.version = version;
}
- @Override
- public String getId() {
- return id;
+ public String getVendorLicenseModelId() {
+ return vendorLicenseModelId;
}
- @Override
- public void setId(String id) {
- this.id = id;
+ public void setVendorLicenseModelId(String vendorLicenseModelId) {
+ this.vendorLicenseModelId = vendorLicenseModelId;
}
public String getName() {
@@ -156,6 +156,12 @@ public class LicenseAgreementEntity implements VersionableEntity {
}
@Override
+ public int hashCode() {
+ return Objects.hash(vendorLicenseModelId, version, id, name, description, licenseTerm,
+ requirementsAndConstrains, featureGroupIds);
+ }
+
+ @Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
@@ -173,10 +179,4 @@ public class LicenseAgreementEntity implements VersionableEntity {
&& Objects.equals(requirementsAndConstrains, that.requirementsAndConstrains)
&& Objects.equals(featureGroupIds, that.featureGroupIds);
}
-
- @Override
- public int hashCode() {
- return Objects.hash(vendorLicenseModelId, version, id, name, description, licenseTerm,
- requirementsAndConstrains, featureGroupIds);
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyGroupEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyGroupEntity.java
index 2a7e936cb3..07641594c2 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyGroupEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyGroupEntity.java
@@ -30,7 +30,6 @@ import org.openecomp.sdc.vendorlicense.dao.types.xml.LicenseKeyTypeForXml;
import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
-
import java.util.HashSet;
import java.util.Objects;
import java.util.Set;
@@ -87,14 +86,6 @@ public class LicenseKeyGroupEntity implements VersionableEntity {
return getVendorLicenseModelId();
}
- public String getVendorLicenseModelId() {
- return vendorLicenseModelId;
- }
-
- public void setVendorLicenseModelId(String vendorLicenseModelId) {
- this.vendorLicenseModelId = vendorLicenseModelId;
- }
-
public String getId() {
return id;
}
@@ -111,6 +102,24 @@ public class LicenseKeyGroupEntity implements VersionableEntity {
this.version = version;
}
+ @Override
+ public String getVersionUuId() {
+ return versionUuId;
+ }
+
+ @Override
+ public void setVersionUuId(String uuId) {
+ versionUuId = uuId;
+ }
+
+ public String getVendorLicenseModelId() {
+ return vendorLicenseModelId;
+ }
+
+ public void setVendorLicenseModelId(String vendorLicenseModelId) {
+ this.vendorLicenseModelId = vendorLicenseModelId;
+ }
+
public String getName() {
return name;
}
@@ -153,17 +162,10 @@ public class LicenseKeyGroupEntity implements VersionableEntity {
}
@Override
- public String toString() {
- return "LicenseKeyGroupEntity{" + "vendorLicenseModelId='" + vendorLicenseModelId + '\''
- + ", version=" + version
- + ", id='" + id + '\''
- + ", name='" + name + '\''
- + ", description='" + description + '\''
- + ", type=" + type
- + ", operationalScope=" + operationalScope
- + ", referencingFeatureGroups=" + referencingFeatureGroups
- + ", versionUuId='" + versionUuId + '\''
- + '}';
+ public int hashCode() {
+ return Objects
+ .hash(vendorLicenseModelId, version, id, name, description, type, operationalScope,
+ referencingFeatureGroups);
}
@Override
@@ -176,7 +178,6 @@ public class LicenseKeyGroupEntity implements VersionableEntity {
}
LicenseKeyGroupEntity that = (LicenseKeyGroupEntity) obj;
return Objects.equals(vendorLicenseModelId, that.vendorLicenseModelId)
- && Objects.equals(version, that.version)
&& Objects.equals(id, that.id)
&& Objects.equals(name, that.name)
&& Objects.equals(description, that.description)
@@ -186,10 +187,17 @@ public class LicenseKeyGroupEntity implements VersionableEntity {
}
@Override
- public int hashCode() {
- return Objects
- .hash(vendorLicenseModelId, version, id, name, description, type, operationalScope,
- referencingFeatureGroups);
+ public String toString() {
+ return "LicenseKeyGroupEntity{" + "vendorLicenseModelId='" + vendorLicenseModelId + '\''
+ + ", version=" + version
+ + ", id='" + id + '\''
+ + ", name='" + name + '\''
+ + ", description='" + description + '\''
+ + ", type=" + type
+ + ", operationalScope=" + operationalScope
+ + ", referencingFeatureGroups=" + referencingFeatureGroups
+ + ", versionUuId='" + versionUuId + '\''
+ + '}';
}
/**
@@ -206,6 +214,14 @@ public class LicenseKeyGroupEntity implements VersionableEntity {
}
/**
+ * Gets version for artifact.
+ * @return version in format suitable for artifact
+ */
+ public String getVersionForArtifact() {
+ return version.toString();
+ }
+
+ /**
* Gets type for artifact.
*
* @return the type for artifact
@@ -219,13 +235,4 @@ public class LicenseKeyGroupEntity implements VersionableEntity {
}
return typeXml;
}
-
-
- public String getVersionUuId() {
- return versionUuId;
- }
-
- public void setVersionUuId(String uuId) {
- versionUuId = uuId;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyType.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyType.java
index 3ba913de31..35e6f217e8 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyType.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseKeyType.java
@@ -23,5 +23,5 @@ package org.openecomp.sdc.vendorlicense.dao.types;
public enum LicenseKeyType {
Universal,
Unique,
- One_Time
+ One_Time;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseTerm.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseTerm.java
index 729a985473..b8a7f9d09b 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseTerm.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/LicenseTerm.java
@@ -24,5 +24,5 @@ public enum LicenseTerm {
Fixed_Term,
Perpetual,
Unlimited,
- Other
+ Other;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/MultiChoiceOrOther.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/MultiChoiceOrOther.java
index df9d6887ce..165260f9c5 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/MultiChoiceOrOther.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/MultiChoiceOrOther.java
@@ -25,6 +25,12 @@ import com.datastax.driver.mapping.annotations.UDT;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import java.util.HashSet;
import java.util.Set;
@@ -127,10 +133,14 @@ public class MultiChoiceOrOther<E extends Enum<E>> {
String result = results.iterator().next();
try {
choices.add(E.valueOf(enumClass, result));
- } catch (IllegalArgumentException illegalArgumentException) {
+ } catch (IllegalArgumentException exception) {
try {
choices.add(E.valueOf(enumClass, OTHER_ENUM_VALUE));
} catch (IllegalArgumentException ex) {
+
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.VALIDATE_CHOICE_VALUE, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_VALUE);
throw new CoreException(new ErrorCode.ErrorCodeBuilder()
.withId(MULTI_CHOICE_OR_OTHER_INVALID_ENUM_ERR_ID)
.withMessage(MULTI_CHOICE_OR_OTHER_INVALID_ENUM_MSG)
@@ -142,6 +152,14 @@ public class MultiChoiceOrOther<E extends Enum<E>> {
}
@Override
+ public int hashCode() {
+ int result = choices != null ? choices.hashCode() : 0;
+ result = 31 * result + (other != null ? other.hashCode() : 0);
+ result = 31 * result + (results != null ? results.hashCode() : 0);
+ return result;
+ }
+
+ @Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
@@ -161,12 +179,4 @@ public class MultiChoiceOrOther<E extends Enum<E>> {
return results != null ? results.equals(that.results) : that.results == null;
}
-
- @Override
- public int hashCode() {
- int result = choices != null ? choices.hashCode() : 0;
- result = 31 * result + (other != null ? other.hashCode() : 0);
- result = 31 * result + (results != null ? results.hashCode() : 0);
- return result;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/OperationalScope.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/OperationalScope.java
index ed9497d30b..69cdb2dabb 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/OperationalScope.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/OperationalScope.java
@@ -28,5 +28,5 @@ public enum OperationalScope {
VM,
CPU,
Core,
- Other
+ Other;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/VendorLicenseModelEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/VendorLicenseModelEntity.java
index ea93b1ab4f..b57b850f60 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/VendorLicenseModelEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/dao/types/VendorLicenseModelEntity.java
@@ -42,9 +42,6 @@ public class VendorLicenseModelEntity implements VersionableEntity {
@Frozen
private Version version;
- // @Column(name = "last_modification_time")
- // private Date lastModificationTime;
-
@Column(name = "vendor_name")
private String vendorName;
private String description;
@@ -115,6 +112,11 @@ public class VendorLicenseModelEntity implements VersionableEntity {
}
@Override
+ public int hashCode() {
+ return Objects.hash(id, version, vendorName, description, iconRef);
+ }
+
+ @Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
@@ -130,19 +132,6 @@ public class VendorLicenseModelEntity implements VersionableEntity {
&& Objects.equals(iconRef, that.iconRef);
}
- @Override
- public int hashCode() {
- return Objects.hash(id, version, vendorName, description, iconRef);
- }
-
- // public Date getLastModificationTime() {
- // return lastModificationTime;
- // }
- //
- // public void setLastModificationTime(Date lastModificationTime) {
- // this.lastModificationTime = lastModificationTime;
- // }
-
public Long getWritetimeMicroSeconds() {
return writetimeMicroSeconds;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/SubmitUncompletedLicenseModelErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/SubmitUncompletedLicenseModelErrorBuilder.java
index 0a00cff8ea..4cf134c262 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/SubmitUncompletedLicenseModelErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/SubmitUncompletedLicenseModelErrorBuilder.java
@@ -25,26 +25,23 @@ import org.openecomp.sdc.common.errors.ErrorCode;
public class SubmitUncompletedLicenseModelErrorBuilder {
- private static final String SUBMIT_UNCOMPLETED_LICENSE_MODEL_MSG =
- "Uncompleted vendor license model %s cannot be submitted. "
- + "It must contain license_agreement(s) that all feature groups "
- + "contain at least one entitlement pool.";
- private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
-
- /**
- * Instantiates a new Submit uncompleted license model error builder.
- *
- * @param vlmId the vlm id
- */
- public SubmitUncompletedLicenseModelErrorBuilder(String vlmId) {
- builder.withId(VendorLicenseErrorCodes.SUBMIT_UNCOMPLETED_LICENSE_MODEL);
- builder.withCategory(ErrorCategory.APPLICATION);
- builder.withMessage(String.format(SUBMIT_UNCOMPLETED_LICENSE_MODEL_MSG, vlmId));
- }
-
- public ErrorCode build() {
- return builder.build();
- }
+
+ private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
+
+ /**
+ * Instantiates a new Submit uncompleted license model error builder.
+ *
+ * @param error
+ */
+ public SubmitUncompletedLicenseModelErrorBuilder(UncompletedVendorLicenseModelErrorType error) {
+ builder.withId(VendorLicenseErrorCodes.SUBMIT_UNCOMPLETED_LICENSE_MODEL);
+ builder.withCategory(ErrorCategory.APPLICATION);
+ builder.withMessage(error.getErrorMessage());
+ }
+
+ public ErrorCode build() {
+ return builder.build();
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/UncompletedVendorLicenseModelErrorType.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/UncompletedVendorLicenseModelErrorType.java
new file mode 100644
index 0000000000..17632fb0ad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/UncompletedVendorLicenseModelErrorType.java
@@ -0,0 +1,28 @@
+package org.openecomp.sdc.vendorlicense.errors;
+
+/**
+ * Created by ayalaben on 5/8/2017
+ */
+public enum UncompletedVendorLicenseModelErrorType {
+
+ SUBMIT_UNCOMPLETED_VLM_MSG_MISSING_LA("Uncompleted vendor license model - cannot be submitted. \n"
+ + "It must contain a license agreement(s)."),
+
+ SUBMIT_UNCOMPLETED_VLM_MSG_LA_MISSING_FG("Uncompleted vendor license model - cannot be submitted. \n"
+ + "The license agreement(s) must contain at least one feature group."),
+
+ SUBMIT_UNCOMPLETED_VLM_MSG_FG_MISSING_EP("Uncompleted vendor license model - cannot be submitted. \n"
+ + "The feature group(s) must contain at least one entitlement pool.");
+
+
+ private String errorMessage;
+
+ UncompletedVendorLicenseModelErrorType(String errorMessage) {
+ this.errorMessage = errorMessage;
+ }
+
+ public String getErrorMessage() {
+ return errorMessage;
+ }
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/VendorLicenseErrorCodes.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/VendorLicenseErrorCodes.java
index 4cd7a5bc1b..98f773860c 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/VendorLicenseErrorCodes.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/errors/VendorLicenseErrorCodes.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.vendorlicense.errors;
+
public class VendorLicenseErrorCodes {
public static final String VENDOR_LICENSE_MODEL_NOT_FOUND = "VENDOR_LICENSE_MODEL_NOT_FOUND";
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/facade/VendorLicenseFacade.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/facade/VendorLicenseFacade.java
index e36852d25f..ecff0f56d6 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/facade/VendorLicenseFacade.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-api/src/main/java/org/openecomp/sdc/vendorlicense/facade/VendorLicenseFacade.java
@@ -37,9 +37,9 @@ import java.util.Collection;
public interface VendorLicenseFacade {
- void checkin(String vendorLicenseModelId, String user);
+ Version checkin(String vendorLicenseModelId, String user);
- void submit(String vendorLicenseModelId, String user);
+ Version submit(String vendorLicenseModelId, String user);
FeatureGroupEntity getFeatureGroup(FeatureGroupEntity featureGroup, String user);
@@ -53,8 +53,6 @@ public interface VendorLicenseFacade {
EntitlementPoolEntity createEntitlementPool(EntitlementPoolEntity entitlementPool, String user);
- LicenseKeyGroupEntity createLicenseKeyGroup(LicenseKeyGroupEntity licenseKeyGroup, String user);
-
void updateEntitlementPool(EntitlementPoolEntity entitlementPool, String user);
Collection<LicenseKeyGroupEntity> listLicenseKeyGroups(String vlmId, Version version,
@@ -65,6 +63,8 @@ public interface VendorLicenseFacade {
void updateLicenseKeyGroup(LicenseKeyGroupEntity licenseKeyGroup, String user);
+ LicenseKeyGroupEntity createLicenseKeyGroup(LicenseKeyGroupEntity licenseKeyGroup, String user);
+
VersionedVendorLicenseModel getVendorLicenseModel(String vlmId, Version version, String user);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml
index 94d2bdc45a..7ac5aef2f7 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml
@@ -5,6 +5,7 @@
<name>openecomp-sdc-vendor-license-core</name>
<artifactId>openecomp-sdc-vendor-license-core</artifactId>
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -18,12 +19,22 @@
<artifactId>openecomp-sdc-vendor-license-api</artifactId>
<version>${project.version}</version>
</dependency>
-
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
+ <version>${mockito.all.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
@@ -41,8 +52,13 @@
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
- <version>RELEASE</version>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-xml</artifactId>
+ <version>${jackson.dataformat.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..b1141fc5cd
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/pom.xml.versionsBackup
@@ -0,0 +1,53 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-vendor-license-core</name>
+ <artifactId>openecomp-sdc-vendor-license-core</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-license-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-xml</artifactId>
+ <version>2.7.4</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolCassandraDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolCassandraDaoImpl.java
index 1722f8f8de..496e653ef0 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolCassandraDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolCassandraDaoImpl.java
@@ -133,7 +133,7 @@ public class EntitlementPoolCassandraDaoImpl extends CassandraBaseDao<Entitlemen
@Query(
"UPDATE entitlement_pool SET ref_fg_ids = ref_fg_ids + ? WHERE vlm_id=? AND version=? "
- + "AND ep_id=?")
+ + " AND ep_id=?")
ResultSet addReferencingFeatureGroups(Set<String> referencingFeatureGroups,
String vendorLicenseModelId,
UDTValue vendorLicenseModelVersion, String id);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolDaoFactoryImpl.java
index c1046f79cd..dba631a6ed 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/EntitlementPoolDaoFactoryImpl.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.vendorlicense.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorlicense.dao.EntitlementPoolDao;
import org.openecomp.sdc.vendorlicense.dao.EntitlementPoolDaoFactory;
+import org.openecomp.sdc.vendorlicense.dao.impl.zusammen.EntitlementPoolZusammenDaoImpl;
+
public class EntitlementPoolDaoFactoryImpl extends EntitlementPoolDaoFactory {
- private static EntitlementPoolDao INSTANCE = new EntitlementPoolCassandraDaoImpl();
+ private static EntitlementPoolDao INSTANCE = new EntitlementPoolZusammenDaoImpl(ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public EntitlementPoolDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupCassandraDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupCassandraDaoImpl.java
index 86957a02c7..2568d719e2 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupCassandraDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupCassandraDaoImpl.java
@@ -20,6 +20,8 @@
package org.openecomp.sdc.vendorlicense.dao.impl;
+import static org.openecomp.core.utilities.CommonMethods.toSingleElementSet;
+
import com.datastax.driver.core.ResultSet;
import com.datastax.driver.core.UDTValue;
import com.datastax.driver.mapping.Mapper;
@@ -45,7 +47,6 @@ import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
-
public class FeatureGroupCassandraDaoImpl extends CassandraBaseDao<FeatureGroupEntity>
implements FeatureGroupDao {
@@ -95,6 +96,12 @@ public class FeatureGroupCassandraDaoImpl extends CassandraBaseDao<FeatureGroupE
}
@Override
+ public void deleteAll(FeatureGroupEntity entity) {
+ accessor.deleteByVlmVersion(entity.getVendorLicenseModelId(),
+ versionMapper.toUDT(entity.getVersion())).all();
+ }
+
+ @Override
public void updateFeatureGroup(FeatureGroupEntity entity,
Set<String> addedEntitlementPools,
Set<String> removedEntitlementPools,
@@ -115,18 +122,6 @@ public class FeatureGroupCassandraDaoImpl extends CassandraBaseDao<FeatureGroupE
}
@Override
- public Collection<FeatureGroupEntity> list(FeatureGroupEntity entity) {
- return accessor.listByVlmVersion(entity.getVendorLicenseModelId(),
- versionMapper.toUDT(entity.getVersion())).all();
- }
-
- @Override
- public void deleteAll(FeatureGroupEntity entity) {
- accessor.deleteByVlmVersion(entity.getVendorLicenseModelId(),
- versionMapper.toUDT(entity.getVersion())).all();
- }
-
- @Override
public void addReferencingLicenseAgreement(FeatureGroupEntity entity, String licenseAgreementId) {
accessor.addReferencingLicenseAgreements(CommonMethods.toSingleElementSet(licenseAgreementId),
entity.getVendorLicenseModelId(), versionMapper.toUDT(entity.getVersion()), entity.getId());
@@ -143,16 +138,22 @@ public class FeatureGroupCassandraDaoImpl extends CassandraBaseDao<FeatureGroupE
@Override
public void removeEntitlementPool(FeatureGroupEntity entity, String entitlementPoolId) {
- accessor.removeEntitlementPools(CommonMethods.toSingleElementSet(entitlementPoolId),
+ accessor.removeEntitlementPools(toSingleElementSet(entitlementPoolId),
entity.getVendorLicenseModelId(), versionMapper.toUDT(entity.getVersion()), entity.getId());
}
@Override
public void removeLicenseKeyGroup(FeatureGroupEntity entity, String licenseKeyGroupId) {
- accessor.removeLicenseKeyGroup(CommonMethods.toSingleElementSet(licenseKeyGroupId),
+ accessor.removeLicenseKeyGroup(toSingleElementSet(licenseKeyGroupId),
entity.getVendorLicenseModelId(), versionMapper.toUDT(entity.getVersion()), entity.getId());
}
+ @Override
+ public Collection<FeatureGroupEntity> list(FeatureGroupEntity entity) {
+ return accessor.listByVlmVersion(entity.getVendorLicenseModelId(),
+ versionMapper.toUDT(entity.getVersion())).all();
+ }
+
@Accessor
interface FeatureGroupAccessor {
@@ -167,8 +168,8 @@ public class FeatureGroupCassandraDaoImpl extends CassandraBaseDao<FeatureGroupE
@Query(
"update feature_group set name=?,description=?, part_num=?, ep_ids=ep_ids+ ?,"
- + "ep_ids=ep_ids-?, lkg_ids=lkg_ids+?,lkg_ids=lkg_ids-? WHERE "
- + "vlm_id=? AND version=? AND fg_id=?")
+ + "ep_ids=ep_ids-?, lkg_ids=lkg_ids+?,lkg_ids=lkg_ids-? WHERE vlm_id=? AND version=? "
+ + "AND fg_id=?")
ResultSet updateColumnsAndDeltaFeatureGroupIds(String name, String description,
String partNumber,
Set<String> addedEntitlementPools,
@@ -179,15 +180,15 @@ public class FeatureGroupCassandraDaoImpl extends CassandraBaseDao<FeatureGroupE
String id);
@Query(
- "UPDATE feature_group SET ref_la_ids = ref_la_ids "
- + "+ ? WHERE vlm_id=? AND version=? AND fg_id=?")
+ "UPDATE feature_group SET ref_la_ids = ref_la_ids + ? WHERE vlm_id=? AND version=? "
+ + "AND fg_id=?")
ResultSet addReferencingLicenseAgreements(Set<String> licenseAgreementIds,
String vendorLicenseModelId, UDTValue version,
String id);
@Query(
- "UPDATE feature_group SET ref_la_ids = ref_la_ids - ? "
- + "WHERE vlm_id=? AND version=? AND fg_id=?")
+ "UPDATE feature_group SET ref_la_ids = ref_la_ids - ? WHERE vlm_id=? AND version=? AND "
+ + "fg_id=?")
ResultSet removeReferencingLicenseAgreements(Set<String> licenseAgreementIds,
String vendorLicenseModelId, UDTValue version,
String id);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupDaoFactoryImpl.java
index 941b2b5ecc..830ca4c6c4 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/FeatureGroupDaoFactoryImpl.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.vendorlicense.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorlicense.dao.FeatureGroupDao;
import org.openecomp.sdc.vendorlicense.dao.FeatureGroupDaoFactory;
+import org.openecomp.sdc.vendorlicense.dao.impl.zusammen.FeatureGroupDaoZusammenImpl;
+
public class FeatureGroupDaoFactoryImpl extends FeatureGroupDaoFactory {
- private static FeatureGroupDao INSTANCE = new FeatureGroupCassandraDaoImpl();
+ private static FeatureGroupDao INSTANCE = new FeatureGroupDaoZusammenImpl(ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public FeatureGroupDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementCassandraDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementCassandraDaoImpl.java
index 6a7cc2aa60..3b5a3b3bb4 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementCassandraDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementCassandraDaoImpl.java
@@ -46,6 +46,7 @@ import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
+
public class LicenseAgreementCassandraDaoImpl extends CassandraBaseDao<LicenseAgreementEntity>
implements LicenseAgreementDao {
private static NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementDaoFactoryImpl.java
index d92e2562e9..2c1b915200 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseAgreementDaoFactoryImpl.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.vendorlicense.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorlicense.dao.LicenseAgreementDao;
import org.openecomp.sdc.vendorlicense.dao.LicenseAgreementDaoFactory;
+import org.openecomp.sdc.vendorlicense.dao.impl.zusammen.LicenseAgreementDaoZusammenImpl;
public class LicenseAgreementDaoFactoryImpl extends LicenseAgreementDaoFactory {
- private static LicenseAgreementDao INSTANCE = new LicenseAgreementCassandraDaoImpl();
+ private static LicenseAgreementDao INSTANCE = new LicenseAgreementDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public LicenseAgreementDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupCassandraDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupCassandraDaoImpl.java
index c6952c8d03..96eecc9747 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupCassandraDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupCassandraDaoImpl.java
@@ -89,6 +89,11 @@ public class LicenseKeyGroupCassandraDaoImpl extends CassandraBaseDao<LicenseKey
}
@Override
+ public long count(LicenseKeyGroupEntity licenseKeyGroup) {
+ return 0;
+ }
+
+ @Override
public void deleteAll(LicenseKeyGroupEntity entity) {
accessor.deleteByVlmVersion(entity.getVendorLicenseModelId(),
versionMapper.toUDT(entity.getVersion())).all();
@@ -115,8 +120,8 @@ public class LicenseKeyGroupCassandraDaoImpl extends CassandraBaseDao<LicenseKey
Result<LicenseKeyGroupEntity> deleteByVlmVersion(String vendorLicenseModelId, UDTValue version);
@Query(
- "UPDATE license_key_group SET ref_fg_ids = ref_fg_ids + ? WHERE vlm_id=? AND version=?"
- + " AND lkg_id=?")
+ "UPDATE license_key_group SET ref_fg_ids = ref_fg_ids + ? WHERE vlm_id=? AND version=? "
+ + "AND lkg_id=?")
ResultSet addReferencingFeatureGroups(Set<String> referencingFeatureGroups,
String vendorLicenseModelId, UDTValue version, String id);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupDaoFactoryImpl.java
index 16d1fd2a3e..407e24d906 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/LicenseKeyGroupDaoFactoryImpl.java
@@ -20,11 +20,13 @@
package org.openecomp.sdc.vendorlicense.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorlicense.dao.LicenseKeyGroupDao;
import org.openecomp.sdc.vendorlicense.dao.LicenseKeyGroupDaoFactory;
+import org.openecomp.sdc.vendorlicense.dao.impl.zusammen.LicenseKeyGroupZusammenDaoImpl;
public class LicenseKeyGroupDaoFactoryImpl extends LicenseKeyGroupDaoFactory {
- private static LicenseKeyGroupDao INSTANCE = new LicenseKeyGroupCassandraDaoImpl();
+ private static LicenseKeyGroupDao INSTANCE = new LicenseKeyGroupZusammenDaoImpl(ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public LicenseKeyGroupDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelCassandraDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelCassandraDaoImpl.java
index 4d08d98bd7..b52f4ba9dd 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelCassandraDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelCassandraDaoImpl.java
@@ -37,7 +37,8 @@ import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
import java.util.Collection;
public class VendorLicenseModelCassandraDaoImpl extends CassandraBaseDao<VendorLicenseModelEntity>
- implements VendorLicenseModelDao {
+ implements
+ VendorLicenseModelDao {
private static NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
private static Mapper<VendorLicenseModelEntity> mapper =
@@ -71,21 +72,11 @@ public class VendorLicenseModelCassandraDaoImpl extends CassandraBaseDao<VendorL
return accessor.getAll().all();
}
- // @Override
- // public void updateLastModificationTime(VendorLicenseModelEntity vendorLicenseModel){
- // accessor.updateLastModificationTime(vendorLicenseModel.getLastModificationTime(),
- // vendorLicenseModel.getId(), versionMapper.toUDT(vendorLicenseModel.getVersion()));
- // }
-
@Accessor
interface VendorLicenseModelAccessor {
@Query("SELECT * FROM vendor_license_model")
Result<VendorLicenseModelEntity> getAll();
- // @Query("UPDATE vendor_license_model set last_modification_time
- // = ? where vlm_id = ? and version = ?")
- // ResultSet updateLastModificationTime(Date lastModificationTime,
- // String vlmId, UDTValue version);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelDaoFactoryImpl.java
index d218ca4907..79d0677da7 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/VendorLicenseModelDaoFactoryImpl.java
@@ -20,12 +20,15 @@
package org.openecomp.sdc.vendorlicense.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorlicense.dao.VendorLicenseModelDao;
import org.openecomp.sdc.vendorlicense.dao.VendorLicenseModelDaoFactory;
+import org.openecomp.sdc.vendorlicense.dao.impl.zusammen.VendorLicenseModelDaoZusammenImpl;
public class VendorLicenseModelDaoFactoryImpl extends VendorLicenseModelDaoFactory {
- private static VendorLicenseModelDao INSTANCE = new VendorLicenseModelCassandraDaoImpl();
+ private static VendorLicenseModelDao INSTANCE = new VendorLicenseModelDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public VendorLicenseModelDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementPropertyName.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementPropertyName.java
new file mode 100644
index 0000000000..560402abf2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementPropertyName.java
@@ -0,0 +1,6 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+public enum ElementPropertyName {
+ type,
+ compositionData
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementType.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementType.java
new file mode 100644
index 0000000000..4d9c0fa98c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/ElementType.java
@@ -0,0 +1,6 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+public enum ElementType {
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/EntitlementPoolZusammenDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/EntitlementPoolZusammenDaoImpl.java
new file mode 100644
index 0000000000..f133aaad9a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/EntitlementPoolZusammenDaoImpl.java
@@ -0,0 +1,291 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorlicense.dao.EntitlementPoolDao;
+import org.openecomp.sdc.vendorlicense.dao.types.AggregationFunction;
+import org.openecomp.sdc.vendorlicense.dao.types.ChoiceOrOther;
+import org.openecomp.sdc.vendorlicense.dao.types.EntitlementMetric;
+import org.openecomp.sdc.vendorlicense.dao.types.EntitlementPoolEntity;
+import org.openecomp.sdc.vendorlicense.dao.types.EntitlementTime;
+import org.openecomp.sdc.vendorlicense.dao.types.MultiChoiceOrOther;
+import org.openecomp.sdc.vendorlicense.dao.types.OperationalScope;
+import org.openecomp.sdc.vendorlicense.dao.types.ThresholdUnit;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * Created by ayalaben on 3/28/2017.
+ */
+public class EntitlementPoolZusammenDaoImpl implements EntitlementPoolDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public EntitlementPoolZusammenDaoImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ //no need
+ }
+
+ @Override
+ public void create(EntitlementPoolEntity entitlementPool) {
+ ZusammenElement entitlementPoolElement =
+ buildEntitlementPoolElement(entitlementPool, Action.CREATE);
+
+ ZusammenElement entitlementPoolsElement =
+ VlmZusammenUtil.buildStructuralElement(StructureElement.EntitlementPools, null);
+
+ entitlementPoolsElement.addSubElement(entitlementPoolElement);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ Optional<Element> savedElement = zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ entitlementPoolsElement, "Create entitlement pool");
+
+ savedElement.ifPresent(element -> entitlementPool
+ .setId(element.getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(EntitlementPoolEntity entitlementPool) {
+ ZusammenElement entitlmentpoolElement =
+ buildEntitlementPoolElement(entitlementPool, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)), entitlmentpoolElement,
+ String.format("Update entitlement pool with id %s", entitlementPool.getId()));
+ }
+
+ @Override
+ public EntitlementPoolEntity get(EntitlementPoolEntity entitlementPool) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(entitlementPool.getVersion()));
+
+ return zusammenAdaptor.getElementInfo(context, elementContext, new Id(entitlementPool.getId()))
+ .map(elementInfo -> mapElementInfoToEntitlementPool(
+ entitlementPool.getVendorLicenseModelId(), entitlementPool.getVersion(), elementInfo))
+ .orElse(null);
+ }
+
+ @Override
+ public void delete(EntitlementPoolEntity entitlementPool) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ZusammenElement zusammenElement = new ZusammenElement();
+ zusammenElement.setAction(Action.DELETE);
+ zusammenElement.setElementId(new Id(entitlementPool.getId()));
+
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ ElementContext elementContext =
+ new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "delete entitlement pool. id:" + entitlementPool.getId() + ".");
+ }
+
+ @Override
+ public Collection<EntitlementPoolEntity> list(EntitlementPoolEntity entitlementPool) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(entitlementPool.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.EntitlementPools.name())
+ .stream().map(elementInfo -> mapElementInfoToEntitlementPool(
+ entitlementPool.getVendorLicenseModelId(), entitlementPool.getVersion(), elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public long count(EntitlementPoolEntity entitlementPool) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(entitlementPool.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.EntitlementPools.name())
+ .size();
+ }
+
+ @Override
+ public void removeReferencingFeatureGroup(EntitlementPoolEntity entitlementPool,
+ String referencingFeatureGroupId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(entitlementPool.getId()));
+
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ zusammenElement.setRelations(elementInfo.get().getRelations().stream()
+ .filter(relation -> !referencingFeatureGroupId
+ .equals(relation.getEdge2().getElementId().getValue()))
+ .collect(Collectors.toList()));
+
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "remove referencing feature group");
+ }
+ }
+
+ @Override
+ public void addReferencingFeatureGroup(EntitlementPoolEntity entitlementPool,
+ String referencingFeatureGroupId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entitlementPool.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(entitlementPool.getId()));
+
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ if (zusammenElement.getRelations() == null) {
+ zusammenElement.setRelations(new ArrayList<>());
+ }
+ zusammenElement.getRelations().add(VlmZusammenUtil
+ .createRelation(RelationType.EntitlmentPoolToReferencingFeatureGroup,
+ referencingFeatureGroupId));
+ zusammenAdaptor
+ .saveElement(context, elementContext, zusammenElement, "add referencing feature group");
+ }
+ }
+
+ @Override
+ public void deleteAll(EntitlementPoolEntity entitlementPool) {
+ //not supported
+ }
+
+ private ZusammenElement buildEntitlementPoolElement(EntitlementPoolEntity entitlementPool,
+ Action action) {
+ ZusammenElement entitlementPoolElement = new ZusammenElement();
+ entitlementPoolElement.setAction(action);
+ if (entitlementPool.getId() != null) {
+ entitlementPoolElement.setElementId(new Id(entitlementPool.getId()));
+ }
+ Info info = new Info();
+ info.setName(entitlementPool.getName());
+ info.setDescription(entitlementPool.getDescription());
+ info.addProperty("thresholdValue", entitlementPool.getThresholdValue());
+ info.addProperty("threshold_unit", entitlementPool.getThresholdUnit());
+ info.addProperty("entitlement_metric", entitlementPool.getEntitlementMetric());
+ info.addProperty("increments", entitlementPool.getIncrements());
+ info.addProperty("aggregation_func", entitlementPool.getAggregationFunction());
+ info.addProperty("operational_scope", entitlementPool.getOperationalScope());
+ info.addProperty("EntitlementTime", entitlementPool.getTime());
+ info.addProperty("manufacturerReferenceNumber",
+ entitlementPool.getManufacturerReferenceNumber());
+ entitlementPoolElement.setInfo(info);
+
+ if (entitlementPool.getReferencingFeatureGroups() != null &&
+ entitlementPool.getReferencingFeatureGroups().size() > 0) {
+ entitlementPoolElement.setRelations(entitlementPool.getReferencingFeatureGroups().stream()
+ .map(rel -> VlmZusammenUtil
+ .createRelation(RelationType.EntitlmentPoolToReferencingFeatureGroup, rel))
+ .collect(Collectors.toList()));
+ }
+ return entitlementPoolElement;
+ }
+
+ private EntitlementPoolEntity mapElementInfoToEntitlementPool(String vlmId, Version version,
+ ElementInfo elementInfo) {
+ EntitlementPoolEntity entitlmentPool =
+ new EntitlementPoolEntity(vlmId, version, elementInfo.getId().getValue());
+ entitlmentPool.setName(elementInfo.getInfo().getName());
+ entitlmentPool.setDescription(elementInfo.getInfo().getDescription());
+ entitlmentPool
+ .setThresholdValue(toInteger(elementInfo.getInfo().getProperty("thresholdValue")));
+ entitlmentPool.setThresholdUnit(
+ ThresholdUnit.valueOf(elementInfo.getInfo().getProperty("threshold_unit")));
+ entitlmentPool.setEntitlementMetric(
+ getEntitlementMetricCoiceOrOther(elementInfo.getInfo().getProperty("entitlement_metric")));
+ entitlmentPool.setIncrements(elementInfo.getInfo().getProperty("increments"));
+ entitlmentPool.setAggregationFunction(
+ getAggregationFuncCoiceOrOther(elementInfo.getInfo().getProperty("aggregation_func")));
+ entitlmentPool.setOperationalScope(getOperationalScopeMultiChoiceOrOther(
+ elementInfo.getInfo().getProperty("operational_scope")));
+ entitlmentPool.setTime(
+ getEntitlementTimeCoiceOrOther(elementInfo.getInfo().getProperty("EntitlementTime")));
+ entitlmentPool.setManufacturerReferenceNumber(
+ elementInfo.getInfo().getProperty("manufacturerReferenceNumber"));
+
+ if (elementInfo.getRelations() != null && elementInfo.getRelations().size() > 0) {
+ entitlmentPool
+ .setReferencingFeatureGroups(elementInfo.getRelations().stream().map(relation -> relation
+ .getEdge2().getElementId().getValue()).collect(Collectors.toSet()));
+ }
+ return entitlmentPool;
+ }
+
+ private ChoiceOrOther<AggregationFunction> getAggregationFuncCoiceOrOther(
+ Map aggregationFunction) {
+ return new ChoiceOrOther<>
+ (AggregationFunction.valueOf((String) aggregationFunction.get("choice")),
+ (String) aggregationFunction.get("other"));
+ }
+
+ private ChoiceOrOther<EntitlementMetric> getEntitlementMetricCoiceOrOther(Map entitlementMetric) {
+ return new ChoiceOrOther<>(EntitlementMetric.valueOf((String) entitlementMetric.get("choice")
+ ), (String) entitlementMetric.get("other"));
+ }
+
+ private ChoiceOrOther<EntitlementTime> getEntitlementTimeCoiceOrOther(Map entitlementTime) {
+ return new ChoiceOrOther<>(EntitlementTime.valueOf((String) entitlementTime.get("choice")),
+ (String) entitlementTime.get("other"));
+ }
+
+ private MultiChoiceOrOther<OperationalScope> getOperationalScopeMultiChoiceOrOther
+ (Map<String, Object>
+ operationalScope) {
+ Set<OperationalScope> choices = new HashSet<>();
+ ((List<String>) operationalScope.get("choices")).
+ forEach(choice -> choices.add(OperationalScope.valueOf(choice)));
+
+ return new MultiChoiceOrOther<>(choices, (String) operationalScope.get("other"));
+ }
+
+ private Integer toInteger(Object val) {
+ if (val instanceof Double) {
+ return ((Double) val).intValue();
+ } else if (val instanceof String) {
+ return new Integer((String) val);
+ } else if (val instanceof Integer) {
+ return (Integer) val;
+ }
+ throw new RuntimeException("invalid value for integer:" + val.getClass());
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/FeatureGroupDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/FeatureGroupDaoZusammenImpl.java
new file mode 100644
index 0000000000..ee6ffbfca2
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/FeatureGroupDaoZusammenImpl.java
@@ -0,0 +1,326 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Relation;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorlicense.dao.FeatureGroupDao;
+import org.openecomp.sdc.vendorlicense.dao.types.FeatureGroupEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * Created by ayalaben on 3/27/2017.
+ */
+public class FeatureGroupDaoZusammenImpl implements FeatureGroupDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public FeatureGroupDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ //no need
+ }
+
+ @Override
+ public void create(FeatureGroupEntity featureGroup) {
+ ZusammenElement featureGroupElement =
+ buildFeatureGroupElement(featureGroup, Action.CREATE);
+
+ ZusammenElement featureGroupsElement =
+ VlmZusammenUtil.buildStructuralElement(StructureElement.FeatureGroups, null);
+
+ featureGroupsElement.addSubElement(featureGroupElement);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ Optional<Element> savedElement = zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ featureGroupsElement, "Create feature group");
+
+ savedElement.ifPresent(element -> featureGroup
+ .setId(element.getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(FeatureGroupEntity featureGroup) {
+ ZusammenElement featureGroupElement = buildFeatureGroupElement(featureGroup, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)), featureGroupElement,
+ String.format("Update feature group with id %s", featureGroup.getId()));
+ }
+
+ @Override
+ public FeatureGroupEntity get(FeatureGroupEntity featureGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(featureGroup.getVersion()));
+
+ return zusammenAdaptor.getElementInfo(context, elementContext, new Id(featureGroup.getId()))
+ .map(elementInfo -> mapElementInfoToFeatureGroup(
+ featureGroup.getVendorLicenseModelId(), featureGroup.getVersion(), elementInfo))
+ .orElse(null);
+ }
+
+ @Override
+ public void delete(FeatureGroupEntity featureGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ZusammenElement zusammenElement = new ZusammenElement();
+ zusammenElement.setAction(Action.DELETE);
+ zusammenElement.setElementId(new Id(featureGroup.getId()));
+
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "delete feature group. id:" + featureGroup.getId() + ".");
+ }
+
+ @Override
+ public Collection<FeatureGroupEntity> list(FeatureGroupEntity featureGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(featureGroup.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.FeatureGroups.name())
+ .stream().map(elementInfo -> mapElementInfoToFeatureGroup(
+ featureGroup.getVendorLicenseModelId(), featureGroup.getVersion(), elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public long count(FeatureGroupEntity featureGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(featureGroup.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.FeatureGroups.name())
+ .size();
+ }
+
+ @Override
+ public void removeEntitlementPool(FeatureGroupEntity featureGroup, String entitlementPoolId) {
+ removeRelationToContainedEntity(featureGroup, entitlementPoolId, "entitlement pool");
+ }
+
+ @Override
+ public void removeLicenseKeyGroup(FeatureGroupEntity featureGroup, String licenseKeyGroupId) {
+ removeRelationToContainedEntity(featureGroup, licenseKeyGroupId, "license Key Group");
+ }
+
+ private void removeRelationToContainedEntity(FeatureGroupEntity featureGroup,
+ String containedEntityId,
+ String containedEntityType) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo = zusammenAdaptor.getElementInfo(context,
+ elementContext, new Id(featureGroup.getId()));
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ zusammenElement.setRelations(elementInfo.get().getRelations().stream()
+ .filter(
+ relation -> !containedEntityId.equals(relation.getEdge2().getElementId().getValue()))
+ .collect(Collectors.toList()));
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ String.format("remove %s", containedEntityType));
+ }
+ }
+
+ @Override
+ public void updateFeatureGroup(FeatureGroupEntity
+ featureGroup, Set<String> addedEntitlementPools,
+ Set<String> removedEntitlementPools,
+ Set<String> addedLicenseKeyGroups,
+ Set<String> removedLicenseKeyGroups) {
+ ZusammenElement featureGroupElement = buildFeatureGroupElement(featureGroup, Action.UPDATE);
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo = zusammenAdaptor.getElementInfo(context,
+ elementContext, new Id(featureGroup.getId()));
+ if (elementInfo.isPresent()) {
+ FeatureGroupEntity currentFeatureGroup =
+ mapElementInfoToFeatureGroup(featureGroup.getId(), featureGroup.getVersion(),
+ elementInfo.get());
+
+ currentFeatureGroup.getEntitlementPoolIds().removeAll(removedEntitlementPools);
+ currentFeatureGroup.getEntitlementPoolIds().addAll(addedEntitlementPools);
+ if (featureGroupElement.getRelations() == null) {
+ featureGroupElement.setRelations(new ArrayList<>());
+ }
+ featureGroupElement.getRelations()
+ .addAll(currentFeatureGroup.getEntitlementPoolIds().stream()
+ .map(relation -> VlmZusammenUtil
+ .createRelation(RelationType.FeatureGroupToEntitlmentPool, relation))
+ .collect(Collectors.toList()));
+
+ currentFeatureGroup.getLicenseKeyGroupIds().removeAll(removedLicenseKeyGroups);
+ currentFeatureGroup.getLicenseKeyGroupIds().addAll(addedLicenseKeyGroups);
+ featureGroupElement.getRelations()
+ .addAll(currentFeatureGroup.getLicenseKeyGroupIds().stream()
+ .map(relation -> VlmZusammenUtil
+ .createRelation(RelationType.FeatureGroupToLicenseKeyGroup, relation))
+ .collect(Collectors.toList()));
+
+ zusammenAdaptor
+ .saveElement(context, elementContext, featureGroupElement, "update feature group");
+ }
+ }
+
+ @Override
+ public void deleteAll(FeatureGroupEntity featureGroup) {
+ //not supported
+ }
+
+
+ @Override
+ public void addReferencingLicenseAgreement(FeatureGroupEntity featureGroup,
+ String licenseAgreementId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(featureGroup.getId()));
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ zusammenElement.getRelations().add(VlmZusammenUtil
+ .createRelation(RelationType.FeatureGroupToReferencingLicenseAgreement,
+ licenseAgreementId));
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "add referencing license agreement");
+ }
+ }
+
+ @Override
+ public void removeReferencingLicenseAgreement(FeatureGroupEntity featureGroup,
+ String licenseAgreementId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(featureGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(featureGroup.getId()));
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ zusammenElement.setRelations(elementInfo.get().getRelations().stream()
+ .filter(
+ relation -> !licenseAgreementId.equals(relation.getEdge2().getElementId().getValue()))
+ .collect(Collectors.toList()));
+
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "remove referencing license agreement");
+ }
+ }
+
+ private ZusammenElement buildFeatureGroupElement(FeatureGroupEntity featureGroup, Action action) {
+ ZusammenElement featureGroupElement = new ZusammenElement();
+ featureGroupElement.setAction(action);
+ if (featureGroup.getId() != null) {
+ featureGroupElement.setElementId(new Id(featureGroup.getId()));
+ }
+ Info info = new Info();
+ info.setName(featureGroup.getName());
+ info.setDescription(featureGroup.getDescription());
+ info.addProperty("partNumber", featureGroup.getPartNumber());
+ featureGroupElement.setInfo(info);
+
+ featureGroupElement.setRelations(new ArrayList<>());
+
+ if (featureGroup.getEntitlementPoolIds() != null &&
+ featureGroup.getEntitlementPoolIds().size() > 0) {
+ featureGroupElement.getRelations().addAll(featureGroup.getEntitlementPoolIds().stream()
+ .map(rel -> VlmZusammenUtil
+ .createRelation(RelationType.FeatureGroupToEntitlmentPool, rel))
+ .collect(Collectors.toList()));
+ }
+
+ if (featureGroup.getLicenseKeyGroupIds() != null &&
+ featureGroup.getLicenseKeyGroupIds().size() > 0) {
+ featureGroupElement.getRelations()
+ .addAll(featureGroup.getLicenseKeyGroupIds().stream()
+ .map(rel -> VlmZusammenUtil
+ .createRelation(RelationType.FeatureGroupToLicenseKeyGroup, rel))
+ .collect(Collectors.toList()));
+ }
+
+ if (featureGroup.getReferencingLicenseAgreements() != null &&
+ featureGroup.getReferencingLicenseAgreements().size() > 0) {
+ featureGroupElement.getRelations()
+ .addAll(featureGroup.getReferencingLicenseAgreements().stream()
+ .map(rel -> VlmZusammenUtil
+ .createRelation(RelationType.FeatureGroupToReferencingLicenseAgreement,
+ rel))
+ .collect(Collectors.toList()));
+ }
+ return featureGroupElement;
+ }
+
+ private FeatureGroupEntity mapElementInfoToFeatureGroup(String vlmId, Version version,
+ ElementInfo elementInfo) {
+ FeatureGroupEntity featureGroup =
+ new FeatureGroupEntity(vlmId, version, elementInfo.getId().getValue());
+ featureGroup.setName(elementInfo.getInfo().getName());
+ featureGroup.setDescription(elementInfo.getInfo().getDescription());
+ featureGroup.setPartNumber(elementInfo.getInfo().getProperty("partNumber"));
+
+ Set<String> entitlementPoolIds = new HashSet<>();
+ Set<String> licenseAgreements = new HashSet<>();
+ Set<String> licenseKeyGroupIds = new HashSet<>();
+
+ if (elementInfo.getRelations() != null) {
+ for (Relation relation : elementInfo.getRelations()) {
+ if (RelationType.FeatureGroupToEntitlmentPool.name().equals(relation.getType())) {
+ entitlementPoolIds.add(relation.getEdge2().getElementId().getValue());
+ } else if (RelationType.FeatureGroupToLicenseKeyGroup.name().equals(relation.getType())) {
+ licenseKeyGroupIds.add(relation.getEdge2().getElementId().getValue());
+ } else if (RelationType.FeatureGroupToReferencingLicenseAgreement.name()
+ .equals(relation.getType())) {
+ licenseAgreements.add(relation.getEdge2().getElementId().getValue());
+ }
+ }
+ }
+ featureGroup.setEntitlementPoolIds(entitlementPoolIds);
+ featureGroup.setLicenseKeyGroupIds(licenseKeyGroupIds);
+ featureGroup.setReferencingLicenseAgreements(licenseAgreements);
+
+ return featureGroup;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseAgreementDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseAgreementDaoZusammenImpl.java
new file mode 100644
index 0000000000..55bbae9b33
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseAgreementDaoZusammenImpl.java
@@ -0,0 +1,249 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorlicense.dao.LicenseAgreementDao;
+import org.openecomp.sdc.vendorlicense.dao.types.ChoiceOrOther;
+import org.openecomp.sdc.vendorlicense.dao.types.LicenseAgreementEntity;
+import org.openecomp.sdc.vendorlicense.dao.types.LicenseTerm;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Collection;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+
+public class LicenseAgreementDaoZusammenImpl implements LicenseAgreementDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public LicenseAgreementDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ //no need
+ }
+
+ @Override
+ public void create(LicenseAgreementEntity licenseAgreement) {
+ ZusammenElement licenseAgreementElement =
+ buildLicenseAgreementElement(licenseAgreement, Action.CREATE);
+ ZusammenElement licenseAgreementsElement =
+ VlmZusammenUtil.buildStructuralElement(StructureElement.LicenseAgreements, null);
+ licenseAgreementsElement.addSubElement(licenseAgreementElement);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ Optional<Element> savedElement = zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ licenseAgreementsElement, "Create license agreement");
+ savedElement.ifPresent(element -> licenseAgreement
+ .setId(element.getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(LicenseAgreementEntity licenseAgreement) {
+ ZusammenElement licenseAgreementElement =
+ buildLicenseAgreementElement(licenseAgreement, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ licenseAgreementElement,
+ String.format("Update license agreement with id %s", licenseAgreement.getId()));
+ }
+
+ @Override
+ public LicenseAgreementEntity get(LicenseAgreementEntity licenseAgreement) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(licenseAgreement.getVersion()));
+
+ return zusammenAdaptor.getElementInfo(context, elementContext, new Id(licenseAgreement.getId()))
+ .map(elementInfo -> mapElementInfoToLicenseAgreement(
+ licenseAgreement.getVendorLicenseModelId(), licenseAgreement.getVersion(), elementInfo))
+ .orElse(null);
+ }
+
+ @Override
+ public void delete(LicenseAgreementEntity licenseAgreement) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ZusammenElement zusammenElement = new ZusammenElement();
+ zusammenElement.setAction(Action.DELETE);
+ zusammenElement.setElementId(new Id(licenseAgreement.getId()));
+
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "delete license agreement. id:" + licenseAgreement.getId() + ".");
+ }
+
+
+ @Override
+ public Collection<LicenseAgreementEntity> list(LicenseAgreementEntity licenseAgreement) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(licenseAgreement.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null,
+ StructureElement.LicenseAgreements.name())
+ .stream().map(elementInfo -> mapElementInfoToLicenseAgreement(
+ licenseAgreement.getVendorLicenseModelId(), licenseAgreement.getVersion(), elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public long count(LicenseAgreementEntity licenseAgreement) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(licenseAgreement.getVersion()));
+
+ return zusammenAdaptor.listElementsByName(context, elementContext, null,
+ StructureElement.LicenseAgreements.name())
+ .size();
+ }
+
+ @Override
+ public void deleteAll(LicenseAgreementEntity entity) {
+ //not supported
+ }
+
+ @Override
+ public void removeFeatureGroup(LicenseAgreementEntity licenseAgreement, String featureGroupId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo = zusammenAdaptor.getElementInfo(context,
+ elementContext, new Id(licenseAgreement.getId()));
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ zusammenElement.setRelations(elementInfo.get().getRelations().stream()
+ .filter(relation -> !featureGroupId.equals(relation.getEdge2().getElementId().getValue()))
+ .collect(Collectors.toList()));
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement, "remove feature group");
+ }
+ }
+
+ @Override
+ public void updateColumnsAndDeltaFeatureGroupIds(LicenseAgreementEntity licenseAgreement,
+ Set<String> addedFeatureGroupIds,
+ Set<String> removedFeatureGroupIds) {
+ ZusammenElement licenseAgreementElement =
+ buildLicenseAgreementElement(licenseAgreement, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseAgreement.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(licenseAgreement.getId()));
+ if (elementInfo.isPresent()) {
+ LicenseAgreementEntity currentLicenseAgreement =
+ mapElementInfoToLicenseAgreement(licenseAgreement.getId(), licenseAgreement.getVersion(),
+ elementInfo.get());
+
+ currentLicenseAgreement.getFeatureGroupIds().removeAll(removedFeatureGroupIds);
+ currentLicenseAgreement.getFeatureGroupIds().addAll(addedFeatureGroupIds);
+ licenseAgreementElement.setRelations(currentLicenseAgreement.getFeatureGroupIds().stream()
+ .map(relation -> VlmZusammenUtil
+ .createRelation(RelationType.LicenseAgreementToFeatureGroup, relation))
+ .collect(Collectors.toList()));
+ zusammenAdaptor.saveElement(context, elementContext, licenseAgreementElement,
+ "update license agreement");
+ }
+ }
+
+ private LicenseAgreementEntity mapElementInfoToLicenseAgreement(String vlmId, Version version,
+ ElementInfo elementInfo) {
+ LicenseAgreementEntity licenseAgreement =
+ new LicenseAgreementEntity(vlmId, version, elementInfo.getId().getValue());
+ licenseAgreement.setName(elementInfo.getInfo().getName());
+ licenseAgreement.setDescription(elementInfo.getInfo().getDescription());
+
+ licenseAgreement
+ .setLicenseTerm(getCoiceOrOther(elementInfo.getInfo().getProperty("licenseTerm")));
+ licenseAgreement.setRequirementsAndConstrains(
+ elementInfo.getInfo().getProperty("requirementsAndConstrains"));
+ if (elementInfo.getRelations() != null && elementInfo.getRelations().size() > 0) {
+ licenseAgreement.setFeatureGroupIds(elementInfo.getRelations().stream()
+ .map(relation -> relation.getEdge2().getElementId().getValue())
+ .collect(Collectors.toSet()));
+ }
+ return licenseAgreement;
+ }
+
+ private ChoiceOrOther<LicenseTerm> getCoiceOrOther(Map licenseTerm) {
+ return new ChoiceOrOther(LicenseTerm.valueOf((String) licenseTerm.get("choice")),
+ (String) licenseTerm.get("other"));
+ }
+
+
+ private ZusammenElement buildLicenseAgreementElement(LicenseAgreementEntity licenseAgreement,
+ Action action) {
+ ZusammenElement licenseAgreementElement = new ZusammenElement();
+ licenseAgreementElement.setAction(action);
+ if (licenseAgreement.getId() != null) {
+ licenseAgreementElement.setElementId(new Id(licenseAgreement.getId()));
+ }
+ Info info = new Info();
+ info.setName(licenseAgreement.getName());
+ info.setDescription(licenseAgreement.getDescription());
+ info.addProperty("licenseTerm", licenseAgreement.getLicenseTerm());
+ info.addProperty("requirementsAndConstrains", licenseAgreement.getRequirementsAndConstrains());
+ licenseAgreementElement.setInfo(info);
+
+ if (licenseAgreement.getFeatureGroupIds() != null &&
+ licenseAgreement.getFeatureGroupIds().size() > 0) {
+ licenseAgreementElement.setRelations(licenseAgreement.getFeatureGroupIds().stream()
+ .map(rel -> VlmZusammenUtil
+ .createRelation(RelationType.LicenseAgreementToFeatureGroup, rel))
+ .collect(Collectors.toList()));
+ }
+ return licenseAgreementElement;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseKeyGroupZusammenDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseKeyGroupZusammenDaoImpl.java
new file mode 100644
index 0000000000..bf1899cb04
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/LicenseKeyGroupZusammenDaoImpl.java
@@ -0,0 +1,243 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorlicense.dao.LicenseKeyGroupDao;
+import org.openecomp.sdc.vendorlicense.dao.types.LicenseKeyGroupEntity;
+import org.openecomp.sdc.vendorlicense.dao.types.LicenseKeyType;
+import org.openecomp.sdc.vendorlicense.dao.types.MultiChoiceOrOther;
+import org.openecomp.sdc.vendorlicense.dao.types.OperationalScope;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * Created by ayalaben on 3/30/2017.
+ */
+public class LicenseKeyGroupZusammenDaoImpl implements LicenseKeyGroupDao {
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public LicenseKeyGroupZusammenDaoImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ //no need
+ }
+
+ @Override
+ public void create(LicenseKeyGroupEntity licenseKeyGroup) {
+ ZusammenElement licenseKeyGroupElement =
+ buildLicenseKeyGroupElement(licenseKeyGroup, Action.CREATE);
+
+ ZusammenElement lkgsElement =
+ VlmZusammenUtil.buildStructuralElement(StructureElement.LicenseKeyGroups, null);
+ lkgsElement.addSubElement(licenseKeyGroupElement);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ Optional<Element> savedElement = zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ lkgsElement, "Create license Key Group");
+
+ savedElement.ifPresent(element -> licenseKeyGroup
+ .setId(element.getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(LicenseKeyGroupEntity licenseKeyGroup) {
+ ZusammenElement locenseKeyGroupElement =
+ buildLicenseKeyGroupElement(licenseKeyGroup, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ locenseKeyGroupElement,
+ String.format("Update license key group with id %s", licenseKeyGroup.getId()));
+ }
+
+ @Override
+ public LicenseKeyGroupEntity get(LicenseKeyGroupEntity licenseKeyGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(licenseKeyGroup.getVersion()));
+
+ return zusammenAdaptor.getElementInfo(context, elementContext, new Id(licenseKeyGroup.getId()))
+ .map(elementInfo -> mapElementInfoToLicenseKeyGroup(
+ licenseKeyGroup.getVendorLicenseModelId(), licenseKeyGroup.getVersion(), elementInfo))
+ .orElse(null);
+ }
+
+ @Override
+ public void delete(LicenseKeyGroupEntity licenseKeyGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ZusammenElement zusammenElement = new ZusammenElement();
+ zusammenElement.setAction(Action.DELETE);
+ zusammenElement.setElementId(new Id(licenseKeyGroup.getId()));
+
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "delete license key group. id:" + licenseKeyGroup.getId() + ".");
+ }
+
+ @Override
+ public Collection<LicenseKeyGroupEntity> list(LicenseKeyGroupEntity licenseKeyGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(licenseKeyGroup.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.LicenseKeyGroups.name())
+ .stream().map(elementInfo -> mapElementInfoToLicenseKeyGroup(
+ licenseKeyGroup.getVendorLicenseModelId(), licenseKeyGroup.getVersion(), elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public long count(LicenseKeyGroupEntity licenseKeyGroup) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VlmZusammenUtil.getVersionTag(licenseKeyGroup.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.LicenseKeyGroups.name())
+ .size();
+ }
+
+ @Override
+ public void deleteAll(LicenseKeyGroupEntity licenseKeyGroup) {
+ //not supported
+ }
+
+ @Override
+ public void removeReferencingFeatureGroup(LicenseKeyGroupEntity licenseKeyGroup,
+ String featureGroupId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(licenseKeyGroup.getId()));
+
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ zusammenElement.setRelations(elementInfo.get().getRelations().stream()
+ .filter(relation -> !featureGroupId
+ .equals(relation.getEdge2().getElementId().getValue()))
+ .collect(Collectors.toList()));
+
+ zusammenAdaptor.saveElement(context, elementContext, zusammenElement,
+ "remove referencing feature group");
+ }
+ }
+
+ @Override
+ public void addReferencingFeatureGroup(LicenseKeyGroupEntity licenseKeyGroup,
+ String featureGroupId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(licenseKeyGroup.getVendorLicenseModelId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<ElementInfo> elementInfo =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(licenseKeyGroup.getId()));
+
+ if (elementInfo.isPresent()) {
+ ZusammenElement zusammenElement = VlmZusammenUtil.getZusammenElement(elementInfo.get());
+ zusammenElement.setAction(Action.UPDATE);
+ if (zusammenElement.getRelations() == null) {
+ zusammenElement.setRelations(new ArrayList<>());
+ }
+ zusammenElement.getRelations().add(VlmZusammenUtil
+ .createRelation(RelationType.LicenseKeyGroupToReferencingFeatureGroup,
+ featureGroupId));
+ zusammenAdaptor
+ .saveElement(context, elementContext, zusammenElement, "add referencing feature group");
+ }
+ }
+
+ private ZusammenElement buildLicenseKeyGroupElement(LicenseKeyGroupEntity licenseKeyGroup,
+ Action action) {
+ ZusammenElement lkgElement = new ZusammenElement();
+ lkgElement.setAction(action);
+ if (licenseKeyGroup.getId() != null) {
+ lkgElement.setElementId(new Id(licenseKeyGroup.getId()));
+ }
+ Info info = new Info();
+ info.setName(licenseKeyGroup.getName());
+ info.setDescription(licenseKeyGroup.getDescription());
+ info.addProperty("LicenseKeyType", licenseKeyGroup.getType());
+ info.addProperty("operational_scope", licenseKeyGroup.getOperationalScope());
+ lkgElement.setInfo(info);
+
+ if (licenseKeyGroup.getReferencingFeatureGroups() != null &&
+ licenseKeyGroup.getReferencingFeatureGroups().size() > 0) {
+ lkgElement.setRelations(licenseKeyGroup.getReferencingFeatureGroups().stream()
+ .map(rel -> VlmZusammenUtil
+ .createRelation(RelationType.LicenseKeyGroupToReferencingFeatureGroup, rel))
+ .collect(Collectors.toList()));
+ }
+ return lkgElement;
+ }
+
+ private LicenseKeyGroupEntity mapElementInfoToLicenseKeyGroup(String vlmId, Version version,
+ ElementInfo elementInfo) {
+ LicenseKeyGroupEntity licenseKeyGroup =
+ new LicenseKeyGroupEntity(vlmId, version, elementInfo.getId().getValue());
+ licenseKeyGroup.setName(elementInfo.getInfo().getName());
+ licenseKeyGroup.setDescription(elementInfo.getInfo().getDescription());
+
+ licenseKeyGroup
+ .setType(LicenseKeyType.valueOf(elementInfo.getInfo().getProperty("LicenseKeyType")));
+ licenseKeyGroup.setOperationalScope(getOperationalScopeMultiChoiceOrOther(
+ elementInfo.getInfo().getProperty("operational_scope")));
+
+ if (elementInfo.getRelations() != null && elementInfo.getRelations().size() > 0) {
+ licenseKeyGroup
+ .setReferencingFeatureGroups(elementInfo.getRelations().stream().map(relation -> relation
+ .getEdge2().getElementId().getValue()).collect(Collectors.toSet()));
+ }
+ return licenseKeyGroup;
+ }
+
+ private MultiChoiceOrOther<OperationalScope> getOperationalScopeMultiChoiceOrOther
+ (Map<String, Object>
+ operationalScope) {
+
+ Set<OperationalScope> choices = new HashSet<>();
+ ((List<String>) operationalScope.get("choices")).
+ forEach(choice -> choices.add(OperationalScope.valueOf(choice)));
+
+ return new MultiChoiceOrOther<>(choices, (String) operationalScope.get("other"));
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/RelationType.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/RelationType.java
new file mode 100644
index 0000000000..5ce0433f50
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/RelationType.java
@@ -0,0 +1,10 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+public enum RelationType {
+ LicenseAgreementToFeatureGroup,
+ FeatureGroupToEntitlmentPool,
+ FeatureGroupToLicenseKeyGroup,
+ FeatureGroupToReferencingLicenseAgreement,
+ EntitlmentPoolToReferencingFeatureGroup,
+ LicenseKeyGroupToReferencingFeatureGroup
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/StructureElement.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/StructureElement.java
new file mode 100644
index 0000000000..767fa52d44
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/StructureElement.java
@@ -0,0 +1,9 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+public enum StructureElement {
+ General,
+ LicenseAgreements,
+ FeatureGroups,
+ EntitlementPools,
+ LicenseKeyGroups
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VendorLicenseModelDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VendorLicenseModelDaoZusammenImpl.java
new file mode 100644
index 0000000000..cd1ef0fbcf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VendorLicenseModelDaoZusammenImpl.java
@@ -0,0 +1,138 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorlicense.dao.VendorLicenseModelDao;
+import org.openecomp.sdc.vendorlicense.dao.types.VendorLicenseModelEntity;
+import org.openecomp.sdc.versioning.VersioningManagerFactory;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
+import org.openecomp.sdc.versioning.types.VersionableEntityStoreType;
+
+import java.util.Collection;
+import java.util.Date;
+import java.util.stream.Collectors;
+
+public class VendorLicenseModelDaoZusammenImpl implements VendorLicenseModelDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public VendorLicenseModelDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ VersionableEntityMetadata metadata =
+ new VersionableEntityMetadata(VersionableEntityStoreType.Zusammen, "vlm", null, null);
+
+ VersioningManagerFactory.getInstance().createInterface()
+ .register(versionableEntityType, metadata);
+ }
+
+ @Override
+ public Collection<VendorLicenseModelEntity> list(VendorLicenseModelEntity entity) {
+ return zusammenAdaptor.listItems(ZusammenUtil.createSessionContext()).stream()
+ .map(item -> mapInfoToVlm(
+ item.getId().getValue(), null, item.getInfo(),
+ item.getModificationTime(), item.getCreationTime()))
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public void create(VendorLicenseModelEntity vendorLicenseModel) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+
+ Id itemId = zusammenAdaptor.createItem(context, mapVlmToZusammenItemInfo(vendorLicenseModel));
+ Id versionId =
+ zusammenAdaptor.createVersion(context, itemId, null, ZusammenUtil.createFirstVersionData());
+
+ ZusammenElement generalElement = mapVlmToZusammenElement(vendorLicenseModel, Action.CREATE);
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId, versionId),
+ generalElement, "Create VSP General Info Element");
+
+ vendorLicenseModel.setId(itemId.getValue());//set id for caller
+ }
+
+ @Override
+ public void update(VendorLicenseModelEntity vendorLicenseModel) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vendorLicenseModel.getId());
+ Id versionId = VlmZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+
+ zusammenAdaptor.updateItem(context, itemId, mapVlmToZusammenItemInfo(vendorLicenseModel));
+
+ ZusammenElement generalElement = mapVlmToZusammenElement(vendorLicenseModel, Action.UPDATE);
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId, versionId),
+ generalElement, "Update VSP General Info Element");
+ }
+
+ @Override
+ public VendorLicenseModelEntity get(VendorLicenseModelEntity vendorLicenseModel) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vendorLicenseModel.getId());
+ ItemVersion itemVersion = VlmZusammenUtil.getFirstVersion(context, itemId, zusammenAdaptor);
+ ElementContext elementContext = new ElementContext(itemId, itemVersion.getId(),
+ VlmZusammenUtil.getVersionTag(vendorLicenseModel.getVersion()));
+
+ return zusammenAdaptor
+ .getElementInfoByName(context, elementContext, null, StructureElement.General.name())
+ .map(generalElementInfo -> mapInfoToVlm(
+ vendorLicenseModel.getId(), vendorLicenseModel.getVersion(),
+ generalElementInfo.getInfo(),
+ itemVersion.getModificationTime(), itemVersion.getCreationTime()))
+ .orElse(null);
+ }
+
+ @Override
+ public void delete(VendorLicenseModelEntity entity) {
+
+ }
+
+ private Info mapVlmToZusammenItemInfo(VendorLicenseModelEntity vendorLicenseModel) {
+ Info info = new Info();
+ info.setName(vendorLicenseModel.getVendorName());
+ info.setDescription(vendorLicenseModel.getDescription());
+ info.addProperty("type", "vlm");
+ addVlmToInfo(info, vendorLicenseModel);
+ return info;
+ }
+
+ private ZusammenElement mapVlmToZusammenElement(VendorLicenseModelEntity vendorLicenseModel,
+ Action action) {
+ ZusammenElement generalElement =
+ VlmZusammenUtil.buildStructuralElement(StructureElement.General, action);
+ addVlmToInfo(generalElement.getInfo(), vendorLicenseModel);
+ return generalElement;
+ }
+
+ private void addVlmToInfo(Info info, VendorLicenseModelEntity vendorLicenseModel) {
+ info.addProperty(InfoPropertyName.name.name(), vendorLicenseModel.getVendorName());
+ info.addProperty(InfoPropertyName.description.name(), vendorLicenseModel.getDescription());
+ info.addProperty(InfoPropertyName.iconRef.name(), vendorLicenseModel.getIconRef());
+ }
+
+ private VendorLicenseModelEntity mapInfoToVlm(String vlmId, Version version, Info info,
+ Date modificationTime, Date creationTime) {
+ VendorLicenseModelEntity vendorLicenseModel = new VendorLicenseModelEntity(vlmId, version);
+ vendorLicenseModel.setVendorName(info.getProperty(InfoPropertyName.name.name()));
+ vendorLicenseModel.setDescription(info.getProperty(InfoPropertyName.description.name()));
+ vendorLicenseModel.setIconRef(info.getProperty(InfoPropertyName.iconRef.name()));
+ vendorLicenseModel.setWritetimeMicroSeconds(
+ modificationTime == null ? creationTime.getTime() : modificationTime.getTime());
+ return vendorLicenseModel;
+ }
+
+ private enum InfoPropertyName {
+ name,
+ description,
+ iconRef
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VlmZusammenUtil.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VlmZusammenUtil.java
new file mode 100644
index 0000000000..b2802bee66
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/dao/impl/zusammen/VlmZusammenUtil.java
@@ -0,0 +1,68 @@
+package org.openecomp.sdc.vendorlicense.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.datatypes.item.Relation;
+import com.amdocs.zusammen.datatypes.item.RelationEdge;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.vendorlicense.errors.VendorLicenseModelNotFoundErrorBuilder;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
+
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+public class VlmZusammenUtil {
+
+ static ItemVersion getFirstVersion(SessionContext context, Id itemId,
+ ZusammenAdaptor zusammenAdaptor) {
+ Optional<ItemVersion> itemVersion = zusammenAdaptor.getFirstVersion(context, itemId);
+
+ if (!itemVersion.isPresent()) {
+ throw new CoreException(
+ new VendorLicenseModelNotFoundErrorBuilder(itemId.getValue()).build());
+ }
+ return itemVersion.get();
+ }
+
+ static Id getFirstVersionId(SessionContext context, Id itemId, ZusammenAdaptor zusammenAdaptor) {
+ return getFirstVersion(context, itemId, zusammenAdaptor).getId();
+ }
+
+ // TODO: 4/25/2017 remove upon working with more than one single version
+ static String getVersionTag(Version version) {
+ return version.getStatus() == VersionStatus.Locked
+ ? null
+ : version.toString();
+ }
+
+ static ZusammenElement buildStructuralElement(StructureElement structureElement, Action action) {
+ return ZusammenUtil.buildStructuralElement(structureElement.name(), action);
+ }
+
+ static ZusammenElement getZusammenElement(ElementInfo elementInfo) {
+ ZusammenElement zusammenElement = new ZusammenElement();
+ zusammenElement.setElementId(elementInfo.getId());
+ zusammenElement.setInfo(elementInfo.getInfo());
+ zusammenElement.setRelations(elementInfo.getRelations());
+ zusammenElement.setSubElements(elementInfo.getSubElements().stream()
+ .map(VlmZusammenUtil::getZusammenElement)
+ .collect(Collectors.toList()));
+ return zusammenElement;
+ }
+
+ public static Relation createRelation(RelationType type, String to) {
+ Relation relation = new Relation();
+ relation.setType(type.name());
+ RelationEdge edge2 = new RelationEdge();
+ edge2.setElementId(new Id(to));
+ relation.setEdge2(edge2);
+ return relation;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/facade/impl/VendorLicenseFacadeImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/facade/impl/VendorLicenseFacadeImpl.java
index 678a53583c..6f3573981c 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/facade/impl/VendorLicenseFacadeImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/facade/impl/VendorLicenseFacadeImpl.java
@@ -24,6 +24,13 @@ import org.openecomp.core.util.UniqueValueUtil;
import org.openecomp.core.utilities.CommonMethods;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.vendorlicense.VendorLicenseConstants;
import org.openecomp.sdc.vendorlicense.dao.EntitlementPoolDao;
import org.openecomp.sdc.vendorlicense.dao.EntitlementPoolDaoFactory;
@@ -60,64 +67,61 @@ import java.util.Collection;
import java.util.Collections;
import java.util.List;
+import static org.openecomp.sdc.vendorlicense.VendorLicenseConstants.VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE;
+import static org.openecomp.sdc.vendorlicense.errors.UncompletedVendorLicenseModelErrorType.SUBMIT_UNCOMPLETED_VLM_MSG_FG_MISSING_EP;
+import static org.openecomp.sdc.vendorlicense.errors.UncompletedVendorLicenseModelErrorType.SUBMIT_UNCOMPLETED_VLM_MSG_LA_MISSING_FG;
+import static org.openecomp.sdc.vendorlicense.errors.UncompletedVendorLicenseModelErrorType.SUBMIT_UNCOMPLETED_VLM_MSG_MISSING_LA;
-public class VendorLicenseFacadeImpl
- implements VendorLicenseFacade {
-
+public class VendorLicenseFacadeImpl implements VendorLicenseFacade {
private static final VersioningManager versioningManager =
VersioningManagerFactory.getInstance().createInterface();
- private static final VendorLicenseModelDao vendorLicenseModelDao =
- VendorLicenseModelDaoFactory.getInstance().createInterface();
- private static final LicenseAgreementDao licenseAgreementDao =
- LicenseAgreementDaoFactory.getInstance().createInterface();
+ private static final VendorLicenseModelDao
+ vendorLicenseModelDao = VendorLicenseModelDaoFactory.getInstance().createInterface();
+ private static final LicenseAgreementDao
+ licenseAgreementDao = LicenseAgreementDaoFactory.getInstance().createInterface();
private static final FeatureGroupDao featureGroupDao =
FeatureGroupDaoFactory.getInstance().createInterface();
- private static final EntitlementPoolDao entitlementPoolDao =
- EntitlementPoolDaoFactory.getInstance().createInterface();
- private static final LicenseKeyGroupDao licenseKeyGroupDao =
- LicenseKeyGroupDaoFactory.getInstance().createInterface();
+ private static final EntitlementPoolDao
+ entitlementPoolDao = EntitlementPoolDaoFactory.getInstance().createInterface();
+ private static final LicenseKeyGroupDao
+ licenseKeyGroupDao = LicenseKeyGroupDaoFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
/**
* Instantiates a new Vendor license facade.
*/
public VendorLicenseFacadeImpl() {
- vendorLicenseModelDao
- .registerVersioning(VendorLicenseConstants.VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
- licenseAgreementDao
- .registerVersioning(VendorLicenseConstants.VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
- featureGroupDao
- .registerVersioning(VendorLicenseConstants.VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
- entitlementPoolDao
- .registerVersioning(VendorLicenseConstants.VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
- licenseKeyGroupDao
- .registerVersioning(VendorLicenseConstants.VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
+ vendorLicenseModelDao.registerVersioning(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
+ licenseAgreementDao.registerVersioning(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
+ featureGroupDao.registerVersioning(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
+ entitlementPoolDao.registerVersioning(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
+ licenseKeyGroupDao.registerVersioning(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE);
}
@Override
- public void checkin(String vendorLicenseModelId, String user) {
+ public Version checkin(String vendorLicenseModelId, String user) {
Version newVersion = versioningManager
- .checkin(VendorLicenseConstants
- .VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE,
- vendorLicenseModelId, user, null);
+ .checkin(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE, vendorLicenseModelId, user, null);
updateVlmLastModificationTime(vendorLicenseModelId, newVersion);
+ return newVersion;
}
@Override
- public void submit(String vendorLicenseModelId, String user) {
+ public Version submit(String vendorLicenseModelId, String user) {
validateCompletedVendorLicenseModel(vendorLicenseModelId, user);
Version newVersion = versioningManager
- .submit(VendorLicenseConstants
- .VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE,
- vendorLicenseModelId, user, null);
+ .submit(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE, vendorLicenseModelId, user, null);
updateVlmLastModificationTime(vendorLicenseModelId, newVersion);
+ return newVersion;
}
@Override
public FeatureGroupEntity getFeatureGroup(FeatureGroupEntity featureGroup, String user) {
Version version = VersioningUtil.resolveVersion(featureGroup.getVersion(),
- getVersionInfo(featureGroup.getVendorLicenseModelId(), VersionableEntityAction.Read, user));
+ getVersionInfo(featureGroup.getVendorLicenseModelId(), VersionableEntityAction.Read,
+ user), user);
featureGroup.setVersion(version);
return getFeatureGroup(featureGroup);
}
@@ -151,21 +155,6 @@ public class VendorLicenseFacadeImpl
}
@Override
- public LicenseAgreementEntity getLicenseAgreement(String vlmId, Version version,
- String licenseAgreementId, String user) {
- return getLicenseAgreement(vlmId, licenseAgreementId, VersioningUtil
- .resolveVersion(version, getVersionInfo(vlmId, VersionableEntityAction.Read, user)));
- }
-
- private LicenseAgreementEntity getLicenseAgreement(String vlmId, String licenseAgreementId,
- Version version) {
- LicenseAgreementEntity input = new LicenseAgreementEntity(vlmId, version, licenseAgreementId);
- LicenseAgreementEntity retrieved = licenseAgreementDao.get(input);
- VersioningUtil.validateEntityExistence(retrieved, input, VendorLicenseModelEntity.ENTITY_TYPE);
- return retrieved;
- }
-
- @Override
public LicenseAgreementModel getLicenseAgreementModel(String vlmId, Version version,
String licenseAgreementId, String user) {
LicenseAgreementEntity retrieved =
@@ -185,10 +174,10 @@ public class VendorLicenseFacadeImpl
@Override
public EntitlementPoolEntity createEntitlementPool(EntitlementPoolEntity entitlementPool,
String user) {
- entitlementPool.setVersion(
+ entitlementPool.setVersion(VersioningUtil.resolveVersion(entitlementPool.getVersion(),
getVersionInfo(entitlementPool.getVendorLicenseModelId(), VersionableEntityAction.Write,
- user).getActiveVersion());
- entitlementPool.setId(CommonMethods.nextUuId());
+ user), user));
+ //entitlementPool.setId(CommonMethods.nextUuId());
entitlementPool.setVersionUuId(CommonMethods.nextUuId());
UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.ENTITLEMENT_POOL_NAME,
entitlementPool.getVendorLicenseModelId(), entitlementPool.getVersion().toString(),
@@ -200,27 +189,10 @@ public class VendorLicenseFacadeImpl
}
@Override
- public LicenseKeyGroupEntity createLicenseKeyGroup(LicenseKeyGroupEntity licenseKeyGroup,
- String user) {
- licenseKeyGroup.setVersion(
- getVersionInfo(licenseKeyGroup.getVendorLicenseModelId(), VersionableEntityAction.Write,
- user).getActiveVersion());
- licenseKeyGroup.setId(CommonMethods.nextUuId());
- licenseKeyGroup.setVersionUuId(CommonMethods.nextUuId());
- UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.LICENSE_KEY_GROUP_NAME,
- licenseKeyGroup.getVendorLicenseModelId(), licenseKeyGroup.getVersion().toString(),
- licenseKeyGroup.getName());
- licenseKeyGroupDao.create(licenseKeyGroup);
- updateVlmLastModificationTime(licenseKeyGroup.getVendorLicenseModelId(),
- licenseKeyGroup.getVersion());
- return licenseKeyGroup;
- }
-
- @Override
public void updateEntitlementPool(EntitlementPoolEntity entitlementPool, String user) {
- entitlementPool.setVersion(
+ entitlementPool.setVersion(VersioningUtil.resolveVersion(entitlementPool.getVersion(),
getVersionInfo(entitlementPool.getVendorLicenseModelId(), VersionableEntityAction.Write,
- user).getActiveVersion());
+ user), user));
EntitlementPoolEntity retrieved = entitlementPoolDao.get(entitlementPool);
VersioningUtil
.validateEntityExistence(retrieved, entitlementPool, VendorLicenseModelEntity.ENTITY_TYPE);
@@ -240,21 +212,23 @@ public class VendorLicenseFacadeImpl
public Collection<LicenseKeyGroupEntity> listLicenseKeyGroups(String vlmId, Version version,
String user) {
return licenseKeyGroupDao.list(new LicenseKeyGroupEntity(vlmId, VersioningUtil
- .resolveVersion(version, getVersionInfo(vlmId, VersionableEntityAction.Read, user)), null));
+ .resolveVersion(version, getVersionInfo(vlmId, VersionableEntityAction.Read, user), user),
+ null));
}
@Override
public Collection<EntitlementPoolEntity> listEntitlementPools(String vlmId, Version version,
String user) {
return entitlementPoolDao.list(new EntitlementPoolEntity(vlmId, VersioningUtil
- .resolveVersion(version, getVersionInfo(vlmId, VersionableEntityAction.Read, user)), null));
+ .resolveVersion(version, getVersionInfo(vlmId, VersionableEntityAction.Read, user), user),
+ null));
}
@Override
public void updateLicenseKeyGroup(LicenseKeyGroupEntity licenseKeyGroup, String user) {
- licenseKeyGroup.setVersion(
+ licenseKeyGroup.setVersion(VersioningUtil.resolveVersion(licenseKeyGroup.getVersion(),
getVersionInfo(licenseKeyGroup.getVendorLicenseModelId(), VersionableEntityAction.Write,
- user).getActiveVersion());
+ user), user));
LicenseKeyGroupEntity retrieved = licenseKeyGroupDao.get(licenseKeyGroup);
licenseKeyGroup.setVersionUuId((CommonMethods.nextUuId()));
VersioningUtil
@@ -268,81 +242,93 @@ public class VendorLicenseFacadeImpl
licenseKeyGroup.getVersion());
}
-
@Override
- public VersionInfo getVersionInfo(String vendorLicenseModelId, VersionableEntityAction action,
- String user) {
- return versioningManager
- .getEntityVersionInfo(VendorLicenseConstants
- .VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE,
- vendorLicenseModelId, user,
- action);
+ public LicenseKeyGroupEntity createLicenseKeyGroup(LicenseKeyGroupEntity licenseKeyGroup,
+ String user) {
+ licenseKeyGroup.setVersion(VersioningUtil.resolveVersion(licenseKeyGroup.getVersion(),
+ getVersionInfo(licenseKeyGroup.getVendorLicenseModelId(), VersionableEntityAction.Write,
+ user), user));
+ //licenseKeyGroup.setId(CommonMethods.nextUuId());
+ licenseKeyGroup.setVersionUuId(CommonMethods.nextUuId());
+ UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.LICENSE_KEY_GROUP_NAME,
+ licenseKeyGroup.getVendorLicenseModelId(), licenseKeyGroup.getVersion().toString(),
+ licenseKeyGroup.getName());
+ licenseKeyGroupDao.create(licenseKeyGroup);
+ updateVlmLastModificationTime(licenseKeyGroup.getVendorLicenseModelId(),
+ licenseKeyGroup.getVersion());
+ return licenseKeyGroup;
}
@Override
public VersionedVendorLicenseModel getVendorLicenseModel(String vlmId, Version version,
String user) {
+ mdcDataDebugMessage.debugEntryMessage("VLM id", vlmId);
+
VersionInfo versionInfo = getVersionInfo(vlmId, VersionableEntityAction.Read, user);
VendorLicenseModelEntity vendorLicenseModel = vendorLicenseModelDao.get(
- new VendorLicenseModelEntity(vlmId, VersioningUtil.resolveVersion(version, versionInfo)));
+ new VendorLicenseModelEntity(vlmId,
+ VersioningUtil.resolveVersion(version, versionInfo, user)));
if (vendorLicenseModel == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_VLM, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.ENTITY_NOT_FOUND);
throw new CoreException(new VendorLicenseModelNotFoundErrorBuilder(vlmId).build());
}
+ mdcDataDebugMessage.debugExitMessage("VLM id", vlmId);
return new VersionedVendorLicenseModel(vendorLicenseModel, versionInfo);
}
@Override
public VendorLicenseModelEntity createVendorLicenseModel(
VendorLicenseModelEntity vendorLicenseModelEntity, String user) {
- UniqueValueUtil.validateUniqueValue(VendorLicenseConstants.UniqueValues.VENDOR_NAME,
- vendorLicenseModelEntity.getVendorName());
- vendorLicenseModelEntity.setId(CommonMethods.nextUuId());
- Version version = versioningManager
- .create(VendorLicenseConstants
- .VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE,
- vendorLicenseModelEntity.getId(), user);
- vendorLicenseModelEntity.setVersion(version);
+ mdcDataDebugMessage.debugEntryMessage(null, null);
- // vendorLicenseModelEntity.setLastModificationTime(new Date());
+ UniqueValueUtil.validateUniqueValue(VendorLicenseConstants.UniqueValues.VENDOR_NAME,
+ vendorLicenseModelEntity.getVendorName());
+ //vendorLicenseModelEntity.setId(CommonMethods.nextUuId());
vendorLicenseModelDao.create(vendorLicenseModelEntity);
UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.VENDOR_NAME,
vendorLicenseModelEntity.getVendorName());
+ Version version = versioningManager
+ .create(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE, vendorLicenseModelEntity.getId(), user);
+ vendorLicenseModelEntity.setVersion(version);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return vendorLicenseModelEntity;
}
@Override
public LicenseAgreementEntity createLicenseAgreement(LicenseAgreementEntity licenseAgreement,
String user) {
- Version activeVersion =
+ Version version = VersioningUtil.resolveVersion(licenseAgreement.getVersion(),
getVersionInfo(licenseAgreement.getVendorLicenseModelId(), VersionableEntityAction.Write,
- user).getActiveVersion();
- licenseAgreement.setVersion(activeVersion);
- licenseAgreement.setId(CommonMethods.nextUuId());
+ user), user);
+ licenseAgreement.setVersion(version);
+ //licenseAgreement.setId(CommonMethods.nextUuId());
VersioningUtil.validateEntitiesExistence(licenseAgreement.getFeatureGroupIds(),
- new FeatureGroupEntity(licenseAgreement.getVendorLicenseModelId(), activeVersion, null),
+ new FeatureGroupEntity(licenseAgreement.getVendorLicenseModelId(), version, null),
featureGroupDao, VendorLicenseModelEntity.ENTITY_TYPE);
+
UniqueValueUtil.validateUniqueValue(VendorLicenseConstants.UniqueValues.LICENSE_AGREEMENT_NAME,
licenseAgreement.getVendorLicenseModelId(), licenseAgreement.getVersion().toString(),
licenseAgreement.getName());
+ licenseAgreementDao.create(licenseAgreement);
+ UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.LICENSE_AGREEMENT_NAME,
+ licenseAgreement.getVendorLicenseModelId(), licenseAgreement.getVersion().toString(),
+ licenseAgreement.getName());
if (licenseAgreement.getFeatureGroupIds() != null) {
for (String addedFgId : licenseAgreement.getFeatureGroupIds()) {
featureGroupDao.addReferencingLicenseAgreement(
- new FeatureGroupEntity(licenseAgreement.getVendorLicenseModelId(), activeVersion,
+ new FeatureGroupEntity(licenseAgreement.getVendorLicenseModelId(), version,
addedFgId), licenseAgreement.getId());
}
}
-
- licenseAgreementDao.create(licenseAgreement);
- UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.LICENSE_AGREEMENT_NAME,
- licenseAgreement.getVendorLicenseModelId(), licenseAgreement.getVersion().toString(),
- licenseAgreement.getName());
-
updateVlmLastModificationTime(licenseAgreement.getVendorLicenseModelId(),
licenseAgreement.getVersion());
@@ -351,49 +337,48 @@ public class VendorLicenseFacadeImpl
@Override
public FeatureGroupEntity createFeatureGroup(FeatureGroupEntity featureGroup, String user) {
- Version activeVersion =
- getVersionInfo(featureGroup.getVendorLicenseModelId(), VersionableEntityAction.Write, user)
- .getActiveVersion();
- featureGroup.setId(CommonMethods.nextUuId());
- featureGroup.setVersion(activeVersion);
+ Version version = VersioningUtil.resolveVersion(featureGroup.getVersion(),
+ getVersionInfo(featureGroup.getVendorLicenseModelId(), VersionableEntityAction.Write,
+ user), user);
+ //featureGroup.setId(CommonMethods.nextUuId());
+ featureGroup.setVersion(version);
VersioningUtil.validateEntitiesExistence(featureGroup.getLicenseKeyGroupIds(),
- new LicenseKeyGroupEntity(featureGroup.getVendorLicenseModelId(), activeVersion, null),
+ new LicenseKeyGroupEntity(featureGroup.getVendorLicenseModelId(), version, null),
licenseKeyGroupDao, VendorLicenseModelEntity.ENTITY_TYPE);
VersioningUtil.validateEntitiesExistence(featureGroup.getEntitlementPoolIds(),
- new EntitlementPoolEntity(featureGroup.getVendorLicenseModelId(), activeVersion, null),
+ new EntitlementPoolEntity(featureGroup.getVendorLicenseModelId(), version, null),
entitlementPoolDao, VendorLicenseModelEntity.ENTITY_TYPE);
UniqueValueUtil.validateUniqueValue(VendorLicenseConstants.UniqueValues.FEATURE_GROUP_NAME,
featureGroup.getVendorLicenseModelId(), featureGroup.getVersion().toString(),
featureGroup.getName());
+ featureGroupDao.create(featureGroup);
+ UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.FEATURE_GROUP_NAME,
+ featureGroup.getVendorLicenseModelId(), featureGroup.getVersion().toString(),
+ featureGroup.getName());
+
if (featureGroup.getLicenseKeyGroupIds() != null) {
for (String addedLkgId : featureGroup.getLicenseKeyGroupIds()) {
licenseKeyGroupDao.addReferencingFeatureGroup(
- new LicenseKeyGroupEntity(featureGroup.getVendorLicenseModelId(), activeVersion,
- addedLkgId), featureGroup.getId());
+ new LicenseKeyGroupEntity(featureGroup.getVendorLicenseModelId(), version, addedLkgId),
+ featureGroup.getId());
}
}
if (featureGroup.getEntitlementPoolIds() != null) {
for (String addedEpId : featureGroup.getEntitlementPoolIds()) {
entitlementPoolDao.addReferencingFeatureGroup(
- new EntitlementPoolEntity(featureGroup.getVendorLicenseModelId(), activeVersion,
- addedEpId), featureGroup.getId());
+ new EntitlementPoolEntity(featureGroup.getVendorLicenseModelId(), version, addedEpId),
+ featureGroup.getId());
}
}
- featureGroupDao.create(featureGroup);
- UniqueValueUtil.createUniqueValue(VendorLicenseConstants.UniqueValues.FEATURE_GROUP_NAME,
- featureGroup.getVendorLicenseModelId(), featureGroup.getVersion().toString(),
- featureGroup.getName());
-
updateVlmLastModificationTime(featureGroup.getVendorLicenseModelId(),
featureGroup.getVersion());
return featureGroup;
}
-
@Override
public Collection<ErrorCode> validateLicensingData(String vlmId, Version version,
String licenseAgreementId,
@@ -404,16 +389,16 @@ public class VendorLicenseFacadeImpl
|| !versionInfo.getViewableVersions().contains(version)) {
return Collections.singletonList(new RequestedVersionInvalidErrorBuilder().build());
}
- } catch (CoreException coreException) {
- return Collections.singletonList(coreException.code());
+ } catch (CoreException exception) {
+ return Collections.singletonList(exception.code());
}
List<ErrorCode> errorMessages = new ArrayList<>();
try {
getLicenseAgreement(vlmId, licenseAgreementId, version);
- } catch (CoreException coreException) {
- errorMessages.add(coreException.code());
+ } catch (CoreException exception) {
+ errorMessages.add(exception.code());
}
for (String featureGroupId : featureGroupIds) {
@@ -428,8 +413,8 @@ public class VendorLicenseFacadeImpl
licenseAgreementId,
version).build());
}
- } catch (CoreException coreException) {
- errorMessages.add(coreException.code());
+ } catch (CoreException exception) {
+ errorMessages.add(exception.code());
}
}
@@ -437,42 +422,70 @@ public class VendorLicenseFacadeImpl
}
@Override
+ public VersionInfo getVersionInfo(String vendorLicenseModelId, VersionableEntityAction action,
+ String user) {
+ return versioningManager
+ .getEntityVersionInfo(VENDOR_LICENSE_MODEL_VERSIONABLE_TYPE, vendorLicenseModelId, user,
+ action);
+ }
+
+ @Override
public void updateVlmLastModificationTime(String vendorLicenseModelId, Version version) {
VendorLicenseModelEntity retrieved =
vendorLicenseModelDao.get(new VendorLicenseModelEntity(vendorLicenseModelId, version));
vendorLicenseModelDao.update(retrieved);
- // entity.setLastModificationTime(new Date());
- //
- // vendorLicenseModelDao.updateLastModificationTime(entity);
+ }
+
+ @Override
+ public LicenseAgreementEntity getLicenseAgreement(String vlmId, Version version,
+ String licenseAgreementId, String user) {
+ return getLicenseAgreement(vlmId, licenseAgreementId, VersioningUtil
+ .resolveVersion(version, getVersionInfo(vlmId, VersionableEntityAction.Read, user), user));
+ }
+
+ private LicenseAgreementEntity getLicenseAgreement(String vlmId, String licenseAgreementId,
+ Version version) {
+ LicenseAgreementEntity input = new LicenseAgreementEntity(vlmId, version, licenseAgreementId);
+ LicenseAgreementEntity retrieved = licenseAgreementDao.get(input);
+ VersioningUtil.validateEntityExistence(retrieved, input, VendorLicenseModelEntity.ENTITY_TYPE);
+ return retrieved;
}
private void validateCompletedVendorLicenseModel(String vendorLicenseModelId, String user) {
- Version activeVersion =
- getVersionInfo(vendorLicenseModelId, VersionableEntityAction.Read, user).getActiveVersion();
+ Version version = VersioningUtil.resolveVersion(null,
+ getVersionInfo(vendorLicenseModelId, VersionableEntityAction.Read, user), user);
Collection<LicenseAgreementEntity> licenseAgreements = licenseAgreementDao
- .list(new LicenseAgreementEntity(vendorLicenseModelId, activeVersion, null));
+ .list(new LicenseAgreementEntity(vendorLicenseModelId, version, null));
if (licenseAgreements == null || licenseAgreements.isEmpty()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SUBMIT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.SUBMIT_ENTITY);
throw new CoreException(
- new SubmitUncompletedLicenseModelErrorBuilder(vendorLicenseModelId).build());
+ new SubmitUncompletedLicenseModelErrorBuilder(SUBMIT_UNCOMPLETED_VLM_MSG_MISSING_LA).build());
}
for (LicenseAgreementEntity licenseAgreement : licenseAgreements) {
- if (licenseAgreement.getFeatureGroupIds() == null
- || licenseAgreement.getFeatureGroupIds().isEmpty()) {
+ if (licenseAgreement.getFeatureGroupIds() == null || licenseAgreement.getFeatureGroupIds().isEmpty()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SUBMIT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.SUBMIT_ENTITY);
throw new CoreException(
- new SubmitUncompletedLicenseModelErrorBuilder(vendorLicenseModelId).build());
+ new SubmitUncompletedLicenseModelErrorBuilder(SUBMIT_UNCOMPLETED_VLM_MSG_LA_MISSING_FG).build());
}
}
- Collection<FeatureGroupEntity> featureGroupEntities = featureGroupDao
- .list(new FeatureGroupEntity(vendorLicenseModelId, activeVersion, null));
+ Collection<FeatureGroupEntity> featureGroupEntities =
+ featureGroupDao.list(new FeatureGroupEntity(vendorLicenseModelId, version, null));
for (FeatureGroupEntity featureGroupEntity : featureGroupEntities) {
- if (featureGroupEntity.getEntitlementPoolIds() == null
- || featureGroupEntity.getEntitlementPoolIds().isEmpty()) {
+ if (featureGroupEntity.getEntitlementPoolIds() == null || featureGroupEntity.getEntitlementPoolIds().isEmpty()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SUBMIT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.SUBMIT_ENTITY);
throw new CoreException(
- new SubmitUncompletedLicenseModelErrorBuilder(vendorLicenseModelId).build());
+ new SubmitUncompletedLicenseModelErrorBuilder(SUBMIT_UNCOMPLETED_VLM_MSG_FG_MISSING_EP).build());
}
}
+
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/healing/impl/SimpleHealingServiceImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/healing/impl/SimpleHealingServiceImpl.java
index 8f8f34e471..eeed3b069d 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/healing/impl/SimpleHealingServiceImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/healing/impl/SimpleHealingServiceImpl.java
@@ -20,6 +20,14 @@
package org.openecomp.sdc.vendorlicense.healing.impl;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.vendorlicense.dao.EntitlementPoolDao;
import org.openecomp.sdc.vendorlicense.dao.EntitlementPoolDaoFactory;
import org.openecomp.sdc.vendorlicense.dao.LicenseKeyGroupDao;
@@ -29,11 +37,14 @@ import org.openecomp.sdc.vendorlicense.dao.types.LicenseKeyGroupEntity;
import org.openecomp.sdc.vendorlicense.healing.HealingService;
import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
+import java.util.UUID;
+
public class SimpleHealingServiceImpl implements HealingService {
private static final EntitlementPoolDao entitlementPoolDao =
EntitlementPoolDaoFactory.getInstance().createInterface();
private static final LicenseKeyGroupDao licenseKeyGroupDao =
LicenseKeyGroupDaoFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
@Override
public VersionableEntity heal(VersionableEntity toHeal, String user) {
@@ -41,23 +52,30 @@ public class SimpleHealingServiceImpl implements HealingService {
}
private VersionableEntity handleMissingVersionId(VersionableEntity toHeal, String user) {
- if (toHeal.getVersionUuId() != null) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (toHeal != null && toHeal.getVersionUuId() != null) {
return toHeal;
}
-
if (toHeal instanceof EntitlementPoolEntity) {
- toHeal.setVersionUuId(toHeal.getId());
+ toHeal.setVersionUuId(UUID.randomUUID().toString());
entitlementPoolDao.update((EntitlementPoolEntity) toHeal);
} else if (toHeal instanceof LicenseKeyGroupEntity) {
- toHeal.setVersionUuId(toHeal.getId());
+ toHeal.setVersionUuId(UUID.randomUUID().toString());
licenseKeyGroupDao.update((LicenseKeyGroupEntity) toHeal);
} else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SELF_HEALING, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.UNSUPPORTED_OPERATION);
throw new UnsupportedOperationException(
"Unsupported operation for 1610 release/1607->1610 migration.");
//todo maybe errorbuilder?
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return toHeal;
}
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/VendorLicenseArtifactsServiceImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/VendorLicenseArtifactsServiceImpl.java
index 2f11b75a98..580fc6c0e5 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/VendorLicenseArtifactsServiceImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/VendorLicenseArtifactsServiceImpl.java
@@ -20,11 +20,10 @@
package org.openecomp.sdc.vendorlicense.licenseartifacts.impl;
-import org.apache.commons.collections4.MultiValuedMap;
-import org.apache.commons.collections4.multimap.ArrayListValuedHashMap;
import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
import org.openecomp.sdc.vendorlicense.HealingServiceFactory;
-import org.openecomp.sdc.vendorlicense.VendorLicenseConstants;
import org.openecomp.sdc.vendorlicense.dao.types.EntitlementPoolEntity;
import org.openecomp.sdc.vendorlicense.dao.types.FeatureGroupEntity;
import org.openecomp.sdc.vendorlicense.dao.types.FeatureGroupModel;
@@ -35,166 +34,115 @@ import org.openecomp.sdc.vendorlicense.healing.HealingService;
import org.openecomp.sdc.vendorlicense.licenseartifacts.VendorLicenseArtifactsService;
import org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types.VendorLicenseArtifact;
import org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types.VnfLicenseArtifact;
+import org.openecomp.sdc.vendorlicense.licenseartifacts.impl.util.VendorLicenseArtifactsServiceUtils;
import org.openecomp.sdc.versioning.dao.types.Version;
-import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
-import org.openecomp.sdc.versioning.types.VersionInfo;
-import org.openecomp.sdc.versioning.types.VersionableEntityAction;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
-import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
+import static org.openecomp.sdc.vendorlicense.VendorLicenseConstants.VENDOR_LICENSE_MODEL_ARTIFACT_NAME_WITH_PATH;
+import static org.openecomp.sdc.vendorlicense.VendorLicenseConstants.VNF_ARTIFACT_NAME_WITH_PATH;
+
public class VendorLicenseArtifactsServiceImpl implements VendorLicenseArtifactsService {
- private static final VendorLicenseFacade vendorLicenseFacade = VendorLicenseFacadeFactory
- .getInstance().createInterface();
- private static final HealingService healingService = HealingServiceFactory
- .getInstance().createInterface();
+ public static final VendorLicenseFacade vendorLicenseFacade =
+ VendorLicenseFacadeFactory.getInstance().createInterface();
+ public static final HealingService healingService =
+ HealingServiceFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
- /**
- * Create License Artifacts.
- *
- * @param vspId the vsp id
- * @param vlmId the vlm id
- * @param vlmVersion the vlm version
- * @param featureGroups the feature groups
- * @param user the user
- * @return FileContentHandler
- */
- public FileContentHandler createLicenseArtifacts(String vspId, String vlmId,
- Version vlmVersion,
- List<String> featureGroups, String user) {
- FileContentHandler artifacts = new FileContentHandler();
- String vendorName = getVendorName(vlmId, user);
- artifacts.addFile(VendorLicenseConstants.VNF_ARTIFACT_NAME_WITH_PATH,
- createVnfArtifact(vspId, vlmId, vlmVersion, vendorName, featureGroups, user));
- artifacts.addFile(VendorLicenseConstants.VENDOR_LICENSE_MODEL_ARTIFACT_NAME_WITH_PATH,
- createVendorLicenseArtifact(vlmId, vendorName, user));
+ static byte[] createVnfArtifact(String vspId, String vlmId, Version vlmVersion, String vendorName,
+ List<String> featureGroups, String user) {
- return artifacts;
- }
- static byte[] createVnfArtifact(
- String vspId, String vlmId, Version vlmVersion,
- String vendorName, List<String> featureGroups,
- String user) {
+ mdcDataDebugMessage.debugEntryMessage("VLM name", vendorName);
+
VnfLicenseArtifact artifact = new VnfLicenseArtifact();
artifact.setVspId(vspId);
artifact.setVendorName(vendorName);
for (String featureGroupId : featureGroups) {
- FeatureGroupModel featureGroupModel =
- vendorLicenseFacade.getFeatureGroupModel(new FeatureGroupEntity(
- vlmId, vlmVersion, featureGroupId), user);
+ FeatureGroupModel featureGroupModel = vendorLicenseFacade
+ .getFeatureGroupModel(new FeatureGroupEntity(vlmId, vlmVersion, featureGroupId), user);
Set<EntitlementPoolEntity> entitlementPoolEntities = featureGroupModel.getEntitlementPools();
Set<LicenseKeyGroupEntity> licenseKeyGroupEntities = featureGroupModel.getLicenseKeyGroups();
- featureGroupModel.setEntitlementPools(
- entitlementPoolEntities.stream()
- .map(entitlementPoolEntity -> (EntitlementPoolEntity) healingService
- .heal(entitlementPoolEntity, user))
- .collect(Collectors.toSet()));
- featureGroupModel.setLicenseKeyGroups(
- licenseKeyGroupEntities.stream()
- .map(licenseKeyGroupEntity -> (LicenseKeyGroupEntity) healingService
- .heal(licenseKeyGroupEntity, user))
- .collect(Collectors.toSet()));
+ featureGroupModel.setEntitlementPools(entitlementPoolEntities.stream().map(
+ entitlementPoolEntity -> (EntitlementPoolEntity) healingService
+ .heal(entitlementPoolEntity, user)).collect(Collectors.toSet()));
+ featureGroupModel.setLicenseKeyGroups(licenseKeyGroupEntities.stream().map(
+ licenseKeyGroupEntity -> (LicenseKeyGroupEntity) healingService
+ .heal(licenseKeyGroupEntity, user)).collect(Collectors.toSet()));
artifact.getFeatureGroups().add(featureGroupModel);
}
+ mdcDataDebugMessage.debugExitMessage("VLM name", vendorName);
return artifact.toXml().getBytes();
}
-
static byte[] createVendorLicenseArtifact(String vlmId, String vendorName, String user) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("VLM name", vendorName);
+
VendorLicenseArtifact vendorLicenseArtifact = new VendorLicenseArtifact();
vendorLicenseArtifact.setVendorName(vendorName);
Set<EntitlementPoolEntity> entitlementPoolEntities = new HashSet<>();
Set<LicenseKeyGroupEntity> licenseKeyGroupEntities = new HashSet<>();
- List<Version> finalVersions = getFinalVersionsForVlm(vlmId);
+ List<Version> finalVersions = VendorLicenseArtifactsServiceUtils.getFinalVersionsForVlm(vlmId);
for (Version finalVersion : finalVersions) {
- entitlementPoolEntities.addAll(
- vendorLicenseFacade.listEntitlementPools(vlmId, finalVersion, user));
- licenseKeyGroupEntities.addAll(
- vendorLicenseFacade.listLicenseKeyGroups(vlmId, finalVersion, user));
+ entitlementPoolEntities
+ .addAll(vendorLicenseFacade.listEntitlementPools(vlmId, finalVersion, user));
+ licenseKeyGroupEntities
+ .addAll(vendorLicenseFacade.listLicenseKeyGroups(vlmId, finalVersion, user));
}
- entitlementPoolEntities = healEPs(user, filterChangedEntities(entitlementPoolEntities));
- licenseKeyGroupEntities = healLkgs(user, filterChangedEntities(licenseKeyGroupEntities));
+ entitlementPoolEntities = VendorLicenseArtifactsServiceUtils
+ .healEPs(user,
+ VendorLicenseArtifactsServiceUtils.filterChangedEntities(entitlementPoolEntities));
+ licenseKeyGroupEntities = VendorLicenseArtifactsServiceUtils
+ .healLkgs(user,
+ VendorLicenseArtifactsServiceUtils.filterChangedEntities(licenseKeyGroupEntities));
vendorLicenseArtifact.setEntitlementPoolEntities(entitlementPoolEntities);
vendorLicenseArtifact.setLicenseKeyGroupEntities(licenseKeyGroupEntities);
- return vendorLicenseArtifact.toXml().getBytes();
- }
-
- private static List<VersionableEntity> filterChangedEntities(
- Collection<? extends VersionableEntity> versionableEntities) {
- MultiValuedMap<String, VersionableEntity> entitiesById = mapById(versionableEntities);
- Map<String, VersionableEntity> entitiesByVersionUuId = new HashMap<>();
- List<VersionableEntity> changedOnly = new ArrayList<>();
-
- for (String epId : entitiesById.keySet()) {
- Collection<VersionableEntity> versionableEntitiesForId = entitiesById.get(epId);
- for (VersionableEntity ep : versionableEntitiesForId) {
- entitiesByVersionUuId.put(ep.getVersionUuId(), ep);
- }
- }
- changedOnly.addAll(entitiesByVersionUuId.values());
-
- return changedOnly;
- }
-
- private static MultiValuedMap<String, VersionableEntity> mapById(
- Collection<? extends VersionableEntity> versionableEntities) {
- MultiValuedMap<String, VersionableEntity> mappedById = new ArrayListValuedHashMap<>();
- for (VersionableEntity ve : versionableEntities) {
- mappedById.put(ve.getId(), ve);
- }
- return mappedById;
+ mdcDataDebugMessage.debugExitMessage("VLM name", vendorName);
+ return vendorLicenseArtifact.toXml().getBytes();
}
- private static Set<LicenseKeyGroupEntity> healLkgs(
- String user, Collection<? extends VersionableEntity> licenseKeyGroupEntities) {
- Set<LicenseKeyGroupEntity> healed = new HashSet<>();
- for (VersionableEntity licenseKeyGroupEntity : licenseKeyGroupEntities) {
- healed.add((LicenseKeyGroupEntity) healingService.heal(licenseKeyGroupEntity, user));
- }
-
- return healed;
- }
+ /**
+ * Create License Artifacts.
+ * @param vspId vspId
+ * @param vlmId vlmId
+ * @param vlmVersion vlmVersion
+ * @param featureGroups featureGroups
+ * @param user user
+ * @return FileContentHandler
+ */
+ public FileContentHandler createLicenseArtifacts(String vspId, String vlmId, Version vlmVersion,
+ List<String> featureGroups, String user) {
- private static Set<EntitlementPoolEntity> healEPs(
- String user, Collection<? extends VersionableEntity> entitlementPoolEntities) {
- Set<EntitlementPoolEntity> healed = new HashSet<>();
- for (VersionableEntity entitlementPoolEntity : entitlementPoolEntities) {
- healed.add((EntitlementPoolEntity) healingService.heal(entitlementPoolEntity, user));
- }
- return healed;
- }
+ mdcDataDebugMessage.debugEntryMessage("VSP Id", vspId);
- private static List<Version> getFinalVersionsForVlm(String vlmId) {
- VersionInfo versionInfo = vendorLicenseFacade
- .getVersionInfo(vlmId, VersionableEntityAction.Read, "");
- return versionInfo.getFinalVersions();
+ FileContentHandler artifacts = new FileContentHandler();
+ String vendorName = VendorLicenseArtifactsServiceUtils.getVendorName(vlmId, user);
- }
+ artifacts.addFile(VNF_ARTIFACT_NAME_WITH_PATH,
+ createVnfArtifact(vspId, vlmId, vlmVersion, vendorName, featureGroups, user));
+ artifacts.addFile(VENDOR_LICENSE_MODEL_ARTIFACT_NAME_WITH_PATH,
+ createVendorLicenseArtifact(vlmId, vendorName, user));
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspId);
- private static String getVendorName(String vendorLicenseModelId, String user) {
- return vendorLicenseFacade
- .getVendorLicenseModel(vendorLicenseModelId, null, user)
- .getVendorLicenseModel().getVendorName();
+ return artifacts;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/VnfLicenseArtifact.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/VnfLicenseArtifact.java
index 1f8607765a..f1da629960 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/VnfLicenseArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/VnfLicenseArtifact.java
@@ -36,11 +36,11 @@ import org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types.mixins.MixinE
import org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types.mixins.MixinFeatureGroupModel;
import org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types.mixins.MixinLicenseKeyGroupEntityForVnfArtifact;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.List;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamWriter;
@JacksonXmlRootElement(localName = "vf-license-model",
namespace = "http://xmlns.openecomp.org/asdc/license-model/1.0")
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/XmlArtifact.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/XmlArtifact.java
index 78d5e22412..3a3fbd16a3 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/XmlArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/XmlArtifact.java
@@ -22,6 +22,12 @@ package org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.vendorlicense.VendorLicenseConstants;
import org.openecomp.sdc.vendorlicense.errors.JsonErrorBuilder;
@@ -42,8 +48,11 @@ public abstract class XmlArtifact {
try {
xml = xmlMapper.writeValueAsString(this);
- } catch (com.fasterxml.jackson.core.JsonProcessingException jsonProcessingException) {
- throw new CoreException(new JsonErrorBuilder(jsonProcessingException.getMessage()).build());
+ } catch (com.fasterxml.jackson.core.JsonProcessingException exception) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.WRITE_ARTIFACT_XML, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_JSON);
+ throw new CoreException(new JsonErrorBuilder(exception.getMessage()).build());
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVendorLicenseArtifact.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVendorLicenseArtifact.java
index 1458fa80a7..020316f019 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVendorLicenseArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVendorLicenseArtifact.java
@@ -22,13 +22,14 @@ package org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types.mixins;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
-import org.openecomp.sdc.vendorlicense.dao.types.AggregationFunction;
import org.openecomp.sdc.vendorlicense.dao.types.ChoiceOrOther;
import org.openecomp.sdc.vendorlicense.dao.types.EntitlementMetric;
import org.openecomp.sdc.vendorlicense.dao.types.EntitlementTime;
import org.openecomp.sdc.vendorlicense.dao.types.OperationalScope;
+import org.openecomp.sdc.vendorlicense.dao.types.AggregationFunction;
import org.openecomp.sdc.vendorlicense.dao.types.xml.AggregationFunctionForXml;
import org.openecomp.sdc.vendorlicense.dao.types.xml.EntitlementMetricForXml;
import org.openecomp.sdc.vendorlicense.dao.types.xml.EntitlementTimeForXml;
@@ -36,6 +37,7 @@ import org.openecomp.sdc.vendorlicense.dao.types.xml.ThresholdForXml;
import java.util.Set;
+@JsonPropertyOrder({ "entitlement-pool-invariant-uuid", "entitlement-pool-uuid" })
public abstract class MixinEntitlementPoolEntityForVendorLicenseArtifact {
@JsonProperty(value = "threshold-value")
abstract ThresholdForXml getThresholdForArtifact();
@@ -43,24 +45,26 @@ public abstract class MixinEntitlementPoolEntityForVendorLicenseArtifact {
@JsonProperty(value = "entitlement-pool-uuid")
abstract String getVersionUuId();
- @JsonProperty(value = "manufacturer-reference-number")
- abstract String getManufacturerReferenceNumber();
-
@JsonIgnore
abstract Set<String> getReferencingFeatureGroups();
@JsonIgnore
abstract String getFirstClassCitizenId();
- @JsonIgnore
+ @JsonProperty(value = "entitlement-pool-invariant-uuid")
abstract String getId();
- @JsonIgnore
- abstract String getVersion();
+ @JsonProperty(value = "manufacturer-reference-number")
+ abstract String getManufacturerReferenceNumber();
+
+ @JsonProperty(value = "version")
+ abstract String getVersionForArtifact();
@JsonIgnore
abstract String getVendorLicenseModelId();
+
+
@JsonIgnore
abstract String getThresholdUnit();
@@ -79,7 +83,7 @@ public abstract class MixinEntitlementPoolEntityForVendorLicenseArtifact {
@JsonIgnore
abstract String getEntityType();
- @JacksonXmlProperty(isAttribute = false, localName = "value")
+ @JacksonXmlProperty(localName = "value")
@JacksonXmlElementWrapper(localName = "operational-scope")
abstract String getOperationalScopeForArtifact();
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVnfArtifact.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVnfArtifact.java
index c4f2b4d4bd..064d17b8fa 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVnfArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinEntitlementPoolEntityForVnfArtifact.java
@@ -59,6 +59,9 @@ public abstract class MixinEntitlementPoolEntityForVnfArtifact {
abstract String getVersion();
@JsonIgnore
+ abstract String getVersionForArtifact();
+
+ @JsonIgnore
abstract String getVendorLicenseModelId();
@JsonIgnore
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinFeatureGroupModel.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinFeatureGroupModel.java
index 1e76a74f4c..f5eb5f0bad 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinFeatureGroupModel.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinFeatureGroupModel.java
@@ -38,7 +38,7 @@ public abstract class MixinFeatureGroupModel {
@JacksonXmlElementWrapper(localName = "license-key-group-list")
abstract Set<LicenseKeyGroupEntity> getLicenseKeyGroups();
- @JacksonXmlProperty(isAttribute = false, localName = "internal-part-number")
+ @JacksonXmlProperty(isAttribute = false, localName = "part-number")
abstract String getEntityPartNumber();
@JacksonXmlProperty(isAttribute = false, localName = "feature-group-uuid")
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVendorLicenseArtifact.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVendorLicenseArtifact.java
index ed3083afe3..b5fb2f4549 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVendorLicenseArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVendorLicenseArtifact.java
@@ -37,8 +37,8 @@ public abstract class MixinLicenseKeyGroupEntityForVendorLicenseArtifact {
@JsonIgnore
abstract Set<String> getReferencingFeatureGroups();
- @JsonIgnore
- abstract String getVersion();
+ @JsonProperty(value = "version")
+ abstract String getVersionForArtifact();
@JsonIgnore
abstract String getVendorLicenseModelId();
@@ -50,7 +50,7 @@ public abstract class MixinLicenseKeyGroupEntityForVendorLicenseArtifact {
@JsonIgnore
abstract String getFirstClassCitizenId();
- @JsonIgnore
+ @JsonProperty(value = "license-key-group-invariant-uuid")
abstract String getId();
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVnfArtifact.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVnfArtifact.java
index 6281c44830..ed171c6a4b 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVnfArtifact.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/types/mixins/MixinLicenseKeyGroupEntityForVnfArtifact.java
@@ -41,6 +41,9 @@ public abstract class MixinLicenseKeyGroupEntityForVnfArtifact {
abstract String getVersion();
@JsonIgnore
+ abstract String getVersionForArtifact();
+
+ @JsonIgnore
abstract String getVendorLicenseModelId();
@@ -54,7 +57,6 @@ public abstract class MixinLicenseKeyGroupEntityForVnfArtifact {
abstract String getFirstClassCitizenId();
-
@JsonIgnore
abstract ChoiceOrOther<OperationalScope> getOperationalScope();
@@ -71,4 +73,3 @@ public abstract class MixinLicenseKeyGroupEntityForVnfArtifact {
}
-
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/util/VendorLicenseArtifactsServiceUtils.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/util/VendorLicenseArtifactsServiceUtils.java
new file mode 100644
index 0000000000..f3e09766db
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/util/VendorLicenseArtifactsServiceUtils.java
@@ -0,0 +1,132 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorlicense.licenseartifacts.impl.util;
+
+import org.apache.commons.collections4.MultiValuedMap;
+import org.apache.commons.collections4.multimap.ArrayListValuedHashMap;
+import org.openecomp.sdc.vendorlicense.HealingServiceFactory;
+import org.openecomp.sdc.vendorlicense.dao.types.EntitlementPoolEntity;
+import org.openecomp.sdc.vendorlicense.dao.types.LicenseKeyGroupEntity;
+import org.openecomp.sdc.vendorlicense.healing.HealingService;
+import org.openecomp.sdc.vendorlicense.licenseartifacts.impl.VendorLicenseArtifactsServiceImpl;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
+import org.openecomp.sdc.versioning.types.VersionInfo;
+import org.openecomp.sdc.versioning.types.VersionableEntityAction;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * @author katyr
+ * @since January 10, 2017
+ */
+
+public class VendorLicenseArtifactsServiceUtils {
+ private static final HealingService healingService =
+ HealingServiceFactory.getInstance().createInterface();
+
+ /**
+ * maps the entities by id
+ *
+ * @return a Map of id -> list of versionable entities with that id
+ */
+ static MultiValuedMap<String, VersionableEntity> mapById(
+ Collection<? extends VersionableEntity> versionableEntities) {
+ MultiValuedMap<String, VersionableEntity> mappedById = new ArrayListValuedHashMap<>();
+ for (VersionableEntity ve : versionableEntities) {
+ mappedById.put(ve.getId(), ve);
+ }
+ return mappedById;
+ }
+
+ /**
+ * For all entities with same id, only entities that differ from one another will be returned.
+ * If no change has occured, the entity with the earlier VLM version will be returned.
+ * If only one version of said entitity exists it will be returned
+ * @param versionableEntities
+ * @return a list of entities that has been changed
+ */
+ public static List<VersionableEntity> filterChangedEntities(
+ Collection<? extends VersionableEntity> versionableEntities) {
+ MultiValuedMap<String, VersionableEntity> entitiesById = mapById(
+ versionableEntities);
+ MultiValuedMap<String, VersionableEntity> entitiesByVersionUuId =
+ new ArrayListValuedHashMap<>();
+ List<VersionableEntity> changedOnly = new ArrayList<>();
+
+ for (String epId : entitiesById.keySet()) {
+ Collection<VersionableEntity> versionableEntitiesForId = entitiesById.get(epId);
+ for (VersionableEntity ep : versionableEntitiesForId) {
+ entitiesByVersionUuId.put(ep.getVersionUuId(), ep);
+ }
+ }
+
+ //for every list of eps which have the same uuid, get the one with the earliest vlm version.
+ for (String versionUid : entitiesByVersionUuId.keySet()) {
+ List<VersionableEntity> versionableEntitiesForUuid =
+ (List<VersionableEntity>) entitiesByVersionUuId.get(versionUid);
+ versionableEntitiesForUuid.sort(new VersionableEntitySortByVlmMajorVersion());
+ changedOnly.add(versionableEntitiesForUuid.get(0));
+ }
+
+ return changedOnly;
+ }
+
+ public static Set<LicenseKeyGroupEntity> healLkgs(String user,
+ Collection<? extends VersionableEntity> licenseKeyGroupEntities) {
+ Set<LicenseKeyGroupEntity> healed = new HashSet<>();
+ for (VersionableEntity licenseKeyGroupEntity : licenseKeyGroupEntities) {
+ healed.add((LicenseKeyGroupEntity) VendorLicenseArtifactsServiceImpl.healingService
+ .heal(licenseKeyGroupEntity, user));
+ }
+
+ return healed;
+ }
+
+ public static Set<EntitlementPoolEntity> healEPs(String user,
+ Collection<? extends VersionableEntity> entitlementPoolEntities) {
+ Set<EntitlementPoolEntity> healed = new HashSet<>();
+ for (VersionableEntity entitlementPoolEntity : entitlementPoolEntities) {
+ healed.add((EntitlementPoolEntity) VendorLicenseArtifactsServiceImpl.healingService
+ .heal(entitlementPoolEntity, user));
+ }
+
+ return healed;
+ }
+
+ public static List<Version> getFinalVersionsForVlm(String vlmId) {
+ VersionInfo versionInfo =
+ VendorLicenseArtifactsServiceImpl.vendorLicenseFacade
+ .getVersionInfo(vlmId, VersionableEntityAction.Read, "");
+ return versionInfo.getFinalVersions();
+
+ }
+
+ public static String getVendorName(String vendorLicenseModelId, String user) {
+ return VendorLicenseArtifactsServiceImpl.vendorLicenseFacade
+ .getVendorLicenseModel(vendorLicenseModelId, null, user)
+ .getVendorLicenseModel().getVendorName();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentArtifactDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/util/VersionableEntitySortByVlmMajorVersion.java
index 07a9f104f4..1aee2dd97e 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentArtifactDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/openecomp-sdc-vendor-license-core/src/main/java/org/openecomp/sdc/vendorlicense/licenseartifacts/impl/util/VersionableEntitySortByVlmMajorVersion.java
@@ -18,16 +18,21 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+package org.openecomp.sdc.vendorlicense.licenseartifacts.impl.util;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentArtifactDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentArtifactDaoFactory;
+import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
-public class ComponentArtifactDaoFactoryImpl extends ComponentArtifactDaoFactory {
- private static final ComponentArtifactDao INSTANCE = new ComponentArtifactDaoCassandraImpl();
+import java.util.Comparator;
+/**
+ * @author katyr
+ * @since January 10, 2017
+ */
+
+public class VersionableEntitySortByVlmMajorVersion implements Comparator<VersionableEntity> {
@Override
- public ComponentArtifactDao createInterface() {
- return INSTANCE;
+ public int compare(VersionableEntity o1, VersionableEntity o2) {
+ return Integer.compare(o1.getVersion().getMajor(), o2.getVersion().getMajor());
+
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml
index b98a669207..80d6e04e4d 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml
@@ -2,17 +2,17 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-vendor-license-lib</name>
+ <artifactId>openecomp-sdc-vendor-license-lib</artifactId>
+
+ <packaging>pom</packaging>
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <name>openecomp-sdc-vendor-license-lib</name>
- <artifactId>openecomp-sdc-vendor-license-lib</artifactId>
-
- <packaging>pom</packaging>
-
<modules>
<module>openecomp-sdc-vendor-license-api</module>
<module>openecomp-sdc-vendor-license-core</module>
@@ -21,4 +21,4 @@
<dependencies>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..0b6ebb62d8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-license-lib/pom.xml.versionsBackup
@@ -0,0 +1,23 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-vendor-license-lib</name>
+ <artifactId>openecomp-sdc-vendor-license-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-vendor-license-api</module>
+ <module>openecomp-sdc-vendor-license-core</module>
+ </modules>
+
+ <dependencies>
+
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml
index 4862094291..01f7635d41 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -12,26 +12,21 @@
<artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+
<dependencies>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-core-lib</artifactId>
<type>pom</type>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-core</artifactId>
<version>${project.version}</version>
</dependency>
@@ -55,9 +50,17 @@
<artifactId>openecomp-sdc-model-core</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.freemarker</groupId>
+ <artifactId>freemarker</artifactId>
+ <version>${freemarker.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-config-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
</dependencies>
-
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..67f6a45c0d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/pom.xml.versionsBackup
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-core-lib</artifactId>
+ <type>pom</type>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-translator-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-enrichment-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.freemarker</groupId>
+ <artifactId>freemarker</artifactId>
+ <version>2.3.25-incubating</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-config-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/VendorSoftwareProductConstants.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/VendorSoftwareProductConstants.java
index 860ef5fd41..8b2470a525 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/VendorSoftwareProductConstants.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/VendorSoftwareProductConstants.java
@@ -26,6 +26,10 @@ public final class VendorSoftwareProductConstants {
public static final String VSP_PACKAGE_ZIP = "VSPPackage.zip";
public static final String CSAR = "CSAR";
public static final String UPLOAD_RAW_DATA = "UPLOAD_RAW_DATA";
+ public static final String INFORMATION_ARTIFACT_NAME = "VSP_%s_Information.txt";
+ public static final String UNSUPPORTED_OPERATION_ERROR =
+ "An error has occurred: Unsupported operation for 1707 release.";
+
public final class UniqueValues {
public static final String VENDOR_SOFTWARE_PRODUCT_NAME = "Vendor Software Product name";
@@ -33,6 +37,8 @@ public final class VendorSoftwareProductConstants {
public static final String NETWORK_NAME = "Network name";
public static final String COMPONENT_NAME = "ComponentData name";
public static final String NIC_NAME = "NIC name";
+ public static final String ORCHESTRATION_CANDIDATE_NAME = "Orchestration Candidate name";
//public static final String COMPONENT_ARTIFACT_NAME = "ComponentArtifact name";
+
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDao.java
index ca795b4929..ef3f2f131d 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDao.java
@@ -29,10 +29,14 @@ import java.util.Collection;
public interface ComponentDao extends VersionableDao, BaseDao<ComponentEntity> {
+ ComponentEntity getQuestionnaireData(String vspId, Version version, String componentId);
+
void updateQuestionnaireData(String vspId, Version version, String componentId,
String questionnaireData);
Collection<ComponentEntity> listQuestionnaires(String vspId, Version version);
+ Collection<ComponentEntity> listCompositionAndQuestionnaire(String vspId, Version version);
+
void deleteAll(String vspId, Version version);
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDao.java
new file mode 100644
index 0000000000..1be4a5cda5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDao.java
@@ -0,0 +1,13 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao;
+
+import org.openecomp.core.dao.BaseDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.versioning.dao.VersionableDao;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+public interface ComponentDependencyModelDao extends VersionableDao,
+ BaseDao<ComponentDependencyModelEntity> {
+
+ public void deleteAll(String vspId, Version version);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDaoFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDaoFactory.java
new file mode 100644
index 0000000000..bd6f2859ad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentDependencyModelDaoFactory.java
@@ -0,0 +1,13 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao;
+
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+
+public abstract class ComponentDependencyModelDaoFactory extends
+ AbstractComponentFactory<ComponentDependencyModelDao> {
+
+ public static ComponentDependencyModelDaoFactory getInstance() {
+ return AbstractFactory.getInstance(ComponentDependencyModelDaoFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentArtifactDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/MibDao.java
index d43c9687c2..cf980a52ff 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentArtifactDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/MibDao.java
@@ -20,21 +20,22 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentArtifactEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.MibEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
import java.util.Collection;
+import java.util.Optional;
-public interface ComponentArtifactDao extends VersionableDao {
- ComponentArtifactEntity getArtifactByType(ComponentArtifactEntity entity);
+public interface MibDao extends VersionableDao {
- void update(ComponentArtifactEntity entity);
+ Optional<MibEntity> getByType(MibEntity entity);
- void delete(ComponentArtifactEntity entity);
+ void create(MibEntity entity);
- Collection<ComponentArtifactEntity> getArtifactNamesAndTypesForComponent(
- ComponentArtifactEntity entity);
+ void delete(MibEntity entity);
- void deleteAll(ComponentArtifactEntity entity);
+ Collection<MibEntity> list(MibEntity entity);
+
+ void deleteAll(MibEntity entity);
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessArtifactDaoFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/MibDaoFactory.java
index 534777c701..52c610caa6 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessArtifactDaoFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/MibDaoFactory.java
@@ -23,10 +23,10 @@ package org.openecomp.sdc.vendorsoftwareproduct.dao;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
-public abstract class ProcessArtifactDaoFactory
- extends AbstractComponentFactory<ProcessArtifactDao> {
+public abstract class MibDaoFactory
+ extends AbstractComponentFactory<MibDao> {
- public static ProcessArtifactDaoFactory getInstance() {
- return AbstractFactory.getInstance(ProcessArtifactDaoFactory.class);
+ public static MibDaoFactory getInstance() {
+ return AbstractFactory.getInstance(MibDaoFactory.class);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NetworkDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NetworkDao.java
index 199e65fd83..348b777fe6 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NetworkDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NetworkDao.java
@@ -21,13 +21,24 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao;
import org.openecomp.core.dao.BaseDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
import org.openecomp.sdc.versioning.dao.types.Version;
+import java.util.Collection;
+
public interface NetworkDao extends VersionableDao, BaseDao<NetworkEntity> {
- void updateQuestionnaireData(String vspId, Version version, String id, String questionnaireData);
+
void deleteAll(String vspId, Version version);
+
+
+
+
+
+
+
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NicDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NicDao.java
index bbfa8bf8c0..3205fcdb1f 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NicDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/NicDao.java
@@ -29,6 +29,9 @@ import java.util.Collection;
public interface NicDao extends VersionableDao, BaseDao<NicEntity> {
+ NicEntity getQuestionnaireData(String vspId, Version version, String componentId,
+ String nicId);
+
void updateQuestionnaireData(String vspId, Version version, String componentId, String nicId,
String questionnaireData);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDao.java
new file mode 100644
index 0000000000..fceac0ac98
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDao.java
@@ -0,0 +1,40 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao;
+
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+import org.openecomp.sdc.versioning.dao.VersionableDao;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Optional;
+
+public interface OrchestrationTemplateCandidateDao extends VersionableDao {
+
+ OrchestrationTemplateCandidateData get(String vspId, Version version);
+
+ void update(String vspId, OrchestrationTemplateCandidateData candidateData);
+
+ void updateStructure(String vspId, Version version, FilesDataStructure fileDataStructure);
+
+ Optional<String> getStructure(String vspId, Version version);
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDaoFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDaoFactory.java
new file mode 100644
index 0000000000..5624da018a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateCandidateDaoFactory.java
@@ -0,0 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+
+public abstract class OrchestrationTemplateCandidateDaoFactory
+ extends AbstractComponentFactory<OrchestrationTemplateCandidateDao> {
+
+ public static OrchestrationTemplateCandidateDaoFactory getInstance() {
+ return AbstractFactory.getInstance(OrchestrationTemplateCandidateDaoFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateDao.java
new file mode 100644
index 0000000000..a8c2eb8f7b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateDao.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao;
+
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadData;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
+import org.openecomp.sdc.versioning.dao.VersionableDao;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+public interface OrchestrationTemplateDao extends VersionableDao {
+
+ String getValidationData(String vspId, Version version);
+
+ UploadDataEntity getOrchestrationTemplate(String vspId, Version version);
+
+ void updateOrchestrationTemplateData(String vspId, UploadData uploadData);
+}
+
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentArtifactDaoFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateDaoFactory.java
index 56a0ec65af..be3c849a20 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ComponentArtifactDaoFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/OrchestrationTemplateDaoFactory.java
@@ -23,10 +23,10 @@ package org.openecomp.sdc.vendorsoftwareproduct.dao;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
-public abstract class ComponentArtifactDaoFactory
- extends AbstractComponentFactory<ComponentArtifactDao> {
+public abstract class OrchestrationTemplateDaoFactory
+ extends AbstractComponentFactory<OrchestrationTemplateDao> {
- public static ComponentArtifactDaoFactory getInstance() {
- return AbstractFactory.getInstance(ComponentArtifactDaoFactory.class);
+ public static OrchestrationTemplateDaoFactory getInstance() {
+ return AbstractFactory.getInstance(OrchestrationTemplateDaoFactory.class);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/PackageInfoDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/PackageInfoDao.java
index a22c725b6f..d12069f480 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/PackageInfoDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/PackageInfoDao.java
@@ -24,10 +24,15 @@ import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.PackageInfo;
import org.openecomp.sdc.versioning.dao.types.Version;
+import java.nio.ByteBuffer;
import java.util.List;
public interface PackageInfoDao extends BaseDao<PackageInfo> {
List<PackageInfo> listByCategory(String category, String subCategory);
- void deleteRowTranslateContent(String vspId, Version version);
+ public void deleteRowTranslateContent(String vspId, Version version);
+
+ void updateTranslatedContent(String vspId, Version version, ByteBuffer translateContent);
+
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessDao.java
index 8aa3400d24..c6622ef8e5 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessDao.java
@@ -1,30 +1,17 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
package org.openecomp.sdc.vendorsoftwareproduct.dao;
import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
+import org.openecomp.sdc.versioning.dao.types.Version;
+/**
+ * @author Avrahamg.
+ * @since March 23, 2017
+ */
public interface ProcessDao extends VersionableDao, BaseDao<ProcessEntity> {
-
void deleteAll(ProcessEntity entity);
+
+
+ void deleteVspAll(String vspId, Version version);
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDao.java
index d8de3c6bd4..85262db208 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDao.java
@@ -20,76 +20,26 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NicEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.PackageInfo;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessArtifactEntity;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
import org.openecomp.sdc.versioning.dao.types.Version;
-import java.nio.ByteBuffer;
import java.util.Collection;
import java.util.List;
-public interface VendorSoftwareProductDao extends VersionableDao {
-
- void createVendorSoftwareProductInfo(VspDetails vspDetails);
-
- Collection<VspDetails> listVendorSoftwareProductsInfo();
-
- VspDetails getVendorSoftwareProductInfo(VspDetails vspDetails);
-
- void updateVendorSoftwareProductInfo(VspDetails vspDetails);
-
- void deleteVendorSoftwareProductInfo(VspDetails vspDetails);
-
-
- void updateUploadData(UploadDataEntity uploadData);
-
- UploadDataEntity getUploadData(UploadDataEntity uploadData);
-
- ByteBuffer getContentData(UploadDataEntity uploadDataEntity);
-
-
- List<PackageInfo> listPackages(String category, String subCategory);
-
- void insertPackageDetails(PackageInfo packageInfo);
-
- PackageInfo getPackageInfo(PackageInfo packageInfo);
-
- void deletePackageInfo(PackageInfo packageInfo);
-
-
- Collection<NetworkEntity> listNetworks(String vspId, Version version);
-
- void createNetwork(NetworkEntity network);
- void updateNetwork(NetworkEntity network);
-
- NetworkEntity getNetwork(String vspId, Version version, String networkId);
-
- void deleteNetwork(String vspId, Version version);
+public interface VendorSoftwareProductDao extends VersionableDao {
Collection<ComponentEntity> listComponents(String vspId, Version version);
- void createComponent(ComponentEntity component);
-
- void updateComponent(ComponentEntity component);
-
- ComponentEntity getComponent(String vspId, Version version, String componentId);
-
Collection<ComponentEntity> listComponentsQuestionnaire(String vspId, Version version);
- void updateComponentQuestionnaire(String vspId, Version version, String componentId,
- String questionnaireData);
-
- void deleteComponent(String vspId, Version version);
+ Collection<ComponentEntity> listComponentsCompositionAndQuestionnaire(String vspId,
+ Version version);
Collection<ProcessEntity> listProcesses(String vspId, Version version, String componentId);
@@ -108,33 +58,23 @@ public interface VendorSoftwareProductDao extends VersionableDao {
void uploadProcessArtifact(String vspId, Version version, String componentId, String processId,
byte[] artifact, String artifactFileName);
- ProcessArtifactEntity getProcessArtifact(String vspId, Version version, String componentId,
- String processId);
+ ProcessEntity getProcessArtifact(String vspId, Version version, String componentId,
+ String processId);
void deleteProcessArtifact(String vspId, Version version, String componentId, String processId);
- VspQuestionnaireEntity getQuestionnaire(String vspId, Version version);
-
- void updateQuestionnaire(String vspId, Version version, String questionnaireData);
-
-
- Collection<NicEntity> listNics(String vspId, Version version, String componentId);
-
- void createNic(NicEntity nic);
-
- void updateNic(NicEntity nicEntity);
-
- NicEntity getNic(String vspId, Version version, String componentId, String nicId);
-
- void updateNicQuestionnaire(String vspId, Version version, String componentId, String nicId,
- String questionnaireData);
-
Collection<NicEntity> listNicsByVsp(String vspId, Version version);
- void deleteNic(String vspId, Version version, String componentId);
void deleteUploadData(String vspId, Version version);
- void updateVspLatestModificationTime(String vspId, Version version);
+ //void updateVspLatestModificationTime(String vspId, Version version);
+ void createComponentDependencyModel(
+ List<ComponentDependencyModelEntity> componentDependencyModelEntity, String vspId,
+ Version version);
+
+ Collection<ComponentDependencyModelEntity> listComponentDependencies(String vspId,Version
+ version);
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDaoFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDaoFactory.java
index 33aaa8e1ad..32070fe06a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDaoFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductDaoFactory.java
@@ -23,8 +23,9 @@ package org.openecomp.sdc.vendorsoftwareproduct.dao;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
-public abstract class VendorSoftwareProductDaoFactory
- extends AbstractComponentFactory<VendorSoftwareProductDao> {
+
+public abstract class VendorSoftwareProductDaoFactory extends
+ AbstractComponentFactory<VendorSoftwareProductDao> {
public static VendorSoftwareProductDaoFactory getInstance() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductInfoDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductInfoDao.java
index 74a3f69e6c..ffb0d5eca7 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductInfoDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/VendorSoftwareProductInfoDao.java
@@ -22,9 +22,19 @@ package org.openecomp.sdc.vendorsoftwareproduct.dao;
import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
import org.openecomp.sdc.versioning.dao.VersionableDao;
+import org.openecomp.sdc.versioning.dao.types.Version;
public interface VendorSoftwareProductInfoDao extends VersionableDao, BaseDao<VspDetails> {
-// void updateLastModificationTime(VspDetails entity);
+ void updateOldVersionIndication(VspDetails vspDetails);
+
+ void updateQuestionnaireData(String vspId, Version version, String questionnaireData);
+
+ String getQuestionnaireData(String vspId, Version version);
+
+ VspQuestionnaireEntity getQuestionnaire(String vspId, Version version);
+
+ void deleteAll(String vspId, Version version);
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/Action.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/Action.java
index 3e82053574..be78e78f5a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/Action.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/Action.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
+
public enum Action {
CREATE_PACKAGE,
CHECK_IN,
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentDependencyModelEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentDependencyModelEntity.java
new file mode 100644
index 0000000000..28a84e0a4f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentDependencyModelEntity.java
@@ -0,0 +1,155 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
+
+import com.datastax.driver.mapping.annotations.ClusteringColumn;
+import com.datastax.driver.mapping.annotations.Column;
+import com.datastax.driver.mapping.annotations.Frozen;
+import com.datastax.driver.mapping.annotations.PartitionKey;
+import com.datastax.driver.mapping.annotations.Table;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
+
+@Table(keyspace = "dox", name = "vsp_component_dependency_model")
+public class ComponentDependencyModelEntity implements VersionableEntity {
+
+ public static final String ENTITY_TYPE = "Vendor Software Product Component Dependency Model";
+ @PartitionKey
+ @Column(name = "vsp_id")
+ private String vspId;
+ @PartitionKey(value = 1)
+ @Frozen
+ private Version version;
+ @ClusteringColumn
+ @Column(name = "dependency_id")
+ private String id;
+ @Column(name = "sourcecomponent_id")
+ private String sourceComponentId;
+ @Column(name = "targetcomponent_id")
+ private String targetComponentId;
+ @Column(name = "relation")
+ private String relation;
+
+ public ComponentDependencyModelEntity() {
+
+ }
+
+ /**
+ * Instantiates a new ComponentDependencyModelEntity entity.
+ *
+ * @param vspId the vsp id
+ * @param version the version
+ * @param dependencyId the dependencyId
+ */
+ public ComponentDependencyModelEntity(String vspId, Version version, String dependencyId) {
+ this.vspId = vspId;
+ this.version = version;
+ this.id = dependencyId;
+ }
+
+ @Override
+ public String getEntityType() {
+ return ENTITY_TYPE;
+ }
+
+ @Override
+ public String getFirstClassCitizenId() {
+ return getVspId();
+ }
+
+ @Override
+ public String getId() {
+ return id;
+ }
+
+ @Override
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ @Override
+ public Version getVersion() {
+ return version;
+ }
+
+ @Override
+ public void setVersion(Version version) {
+ this.version = version;
+ }
+
+ public String getVspId() {
+ return vspId;
+ }
+
+ public void setVspId(String vspId) {
+ this.vspId = vspId;
+ }
+
+ public String getTargetComponentId() {
+ return targetComponentId;
+ }
+
+ public void setTargetComponentId(String targetComponentId) {
+ this.targetComponentId = targetComponentId;
+ }
+
+ public String getSourceComponentId() {
+ return sourceComponentId;
+ }
+
+ public void setSourceComponentId(String sourceComponentId) {
+ this.sourceComponentId = sourceComponentId;
+ }
+
+ public String getRelation() {
+ return relation;
+ }
+
+ public void setRelation(String relation) {
+ this.relation = relation;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+
+ ComponentDependencyModelEntity that = (ComponentDependencyModelEntity) o;
+
+ if (vspId != null ? !vspId.equals(that.vspId) : that.vspId != null) {
+ return false;
+ }
+ if (version != null ? !version.equals(that.version) : that.version != null) {
+ return false;
+ }
+ if (id != null ? !id.equals(that.id) : that.id != null) {
+ return false;
+ }
+ if (sourceComponentId != null ? !sourceComponentId.equals(that.sourceComponentId)
+ : that.sourceComponentId != null) {
+ return false;
+ }
+ if (targetComponentId != null ? !targetComponentId.equals(that.targetComponentId)
+ : that.targetComponentId != null) {
+ return false;
+ }
+ if (relation != null ? !relation.equals(that.relation) : that.relation != null) {
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = vspId != null ? vspId.hashCode() : 0;
+ result = 31 * result + (version != null ? version.hashCode() : 0);
+ result = 31 * result + (id != null ? id.hashCode() : 0);
+ result = 31 * result + (sourceComponentId != null ? sourceComponentId.hashCode() : 0);
+ result = 31 * result + (targetComponentId != null ? targetComponentId.hashCode() : 0);
+ result = 31 * result + (relation != null ? relation.hashCode() : 0);
+ return result;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentEntity.java
index a74ba04ec4..602fd6d15c 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentEntity.java
@@ -38,7 +38,7 @@ import java.util.List;
@Table(keyspace = "dox", name = "vsp_component")
public class ComponentEntity implements CompositionEntity {
- private static final String ENTITY_TYPE = "Vendor Software Product ComponentData";
+ private static final String ENTITY_TYPE = "Vendor Software Product Component";
@PartitionKey
@Column(name = "vsp_id")
@@ -83,22 +83,32 @@ public class ComponentEntity implements CompositionEntity {
return new CompositionEntityId(getId(), new CompositionEntityId(getVspId(), null));
}
- public String getVspId() {
- return vspId;
+ @Override
+ public String getCompositionData() {
+ return compositionData;
}
- public void setVspId(String vspId) {
- this.vspId = vspId;
+ @Override
+ public void setCompositionData(String compositionData) {
+ this.compositionData = compositionData;
}
@Override
- public Version getVersion() {
- return version;
+ public String getQuestionnaireData() {
+ return questionnaireData;
}
@Override
- public void setVersion(Version version) {
- this.version = version;
+ public void setQuestionnaireData(String questionnaireData) {
+ this.questionnaireData = questionnaireData;
+ }
+
+ public String getVspId() {
+ return vspId;
+ }
+
+ public void setVspId(String vspId) {
+ this.vspId = vspId;
}
@Override
@@ -122,13 +132,13 @@ public class ComponentEntity implements CompositionEntity {
}
@Override
- public String getCompositionData() {
- return compositionData;
+ public Version getVersion() {
+ return version;
}
@Override
- public void setCompositionData(String compositionData) {
- this.compositionData = compositionData;
+ public void setVersion(Version version) {
+ this.version = version;
}
public ComponentData getComponentCompositionData() {
@@ -140,16 +150,6 @@ public class ComponentEntity implements CompositionEntity {
this.compositionData = component == null ? null : JsonUtil.object2Json(component);
}
- @Override
- public String getQuestionnaireData() {
- return questionnaireData;
- }
-
- @Override
- public void setQuestionnaireData(String questionnaireData) {
- this.questionnaireData = questionnaireData;
- }
-
public List<NicEntity> getNics() {
return nics;
}
@@ -159,15 +159,25 @@ public class ComponentEntity implements CompositionEntity {
}
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public int hashCode() {
+ int result = vspId != null ? vspId.hashCode() : 0;
+ result = 31 * result + (version != null ? version.hashCode() : 0);
+ result = 31 * result + (id != null ? id.hashCode() : 0);
+ result = 31 * result + (compositionData != null ? compositionData.hashCode() : 0);
+ result = 31 * result + (questionnaireData != null ? questionnaireData.hashCode() : 0);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if (this == object) {
return true;
}
- if (obj == null || getClass() != obj.getClass()) {
+ if (object == null || getClass() != object.getClass()) {
return false;
}
- ComponentEntity that = (ComponentEntity) obj;
+ ComponentEntity that = (ComponentEntity) object;
if (vspId != null ? !vspId.equals(that.vspId) : that.vspId != null) {
return false;
@@ -186,14 +196,4 @@ public class ComponentEntity implements CompositionEntity {
: that.questionnaireData == null;
}
-
- @Override
- public int hashCode() {
- int result = vspId != null ? vspId.hashCode() : 0;
- result = 31 * result + (version != null ? version.hashCode() : 0);
- result = 31 * result + (id != null ? id.hashCode() : 0);
- result = 31 * result + (compositionData != null ? compositionData.hashCode() : 0);
- result = 31 * result + (questionnaireData != null ? questionnaireData.hashCode() : 0);
- return result;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentArtifactEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/MibEntity.java
index 3636a591d4..f057c1745a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ComponentArtifactEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/MibEntity.java
@@ -25,14 +25,15 @@ import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
import com.datastax.driver.mapping.annotations.Table;
-import org.openecomp.core.enrichment.types.ComponentArtifactType;
+import org.openecomp.core.enrichment.types.ArtifactType;
import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
+import java.io.Serializable;
import java.nio.ByteBuffer;
@Table(keyspace = "dox", name = "vsp_component_artifact")
-public class ComponentArtifactEntity implements VersionableEntity {
+public class MibEntity implements VersionableEntity, Serializable {
public static final String ENTITY_TYPE = "Vendor Software Product Component Artifact";
@PartitionKey
@Column(name = "vsp_id")
@@ -45,7 +46,7 @@ public class ComponentArtifactEntity implements VersionableEntity {
private String componentId;
@ClusteringColumn(value = 1)
@Column(name = "artifact_type")
- private ComponentArtifactType type;
+ private ArtifactType type;
@ClusteringColumn(value = 2)
@Column(name = "artifact_id")
private String id;
@@ -53,7 +54,7 @@ public class ComponentArtifactEntity implements VersionableEntity {
private String artifactName;
private ByteBuffer artifact;
- public ComponentArtifactEntity() {
+ public MibEntity() {
}
@@ -65,7 +66,7 @@ public class ComponentArtifactEntity implements VersionableEntity {
* @param componentId the component id
* @param id the id
*/
- public ComponentArtifactEntity(String vspId, Version version, String componentId, String id) {
+ public MibEntity(String vspId, Version version, String componentId, String id) {
this.vspId = vspId;
this.version = version;
this.componentId = componentId;
@@ -80,14 +81,6 @@ public class ComponentArtifactEntity implements VersionableEntity {
this.vspId = vspId;
}
- public Version getVersion() {
- return version;
- }
-
- public void setVersion(Version version) {
- this.version = version;
- }
-
public String getComponentId() {
return componentId;
}
@@ -114,6 +107,14 @@ public class ComponentArtifactEntity implements VersionableEntity {
this.id = id;
}
+ public Version getVersion() {
+ return version;
+ }
+
+ public void setVersion(Version version) {
+ this.version = version;
+ }
+
public String getArtifactName() {
return artifactName;
}
@@ -130,11 +131,23 @@ public class ComponentArtifactEntity implements VersionableEntity {
this.artifact = artifact;
}
- public ComponentArtifactType getType() {
+ public ArtifactType getType() {
return type;
}
- public void setType(ComponentArtifactType type) {
+ public void setType(ArtifactType type) {
this.type = type;
}
+
+ @Override
+ public String toString() {
+ return "MibEntity{" +
+ "vspId='" + vspId + '\'' +
+ ", version=" + version +
+ ", componentId='" + componentId + '\'' +
+ ", type=" + type +
+ ", id='" + id + '\'' +
+ ", artifactName='" + artifactName + '\'' +
+ '}';
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NetworkEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NetworkEntity.java
index 1599e4a88c..4b848a06b3 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NetworkEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NetworkEntity.java
@@ -31,6 +31,7 @@ import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEnti
import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Network;
import org.openecomp.sdc.versioning.dao.types.Version;
+
@Table(keyspace = "dox", name = "vsp_network")
public class NetworkEntity implements CompositionEntity {
private static final String ENTITY_TYPE = "Vendor Software Product Network";
@@ -76,22 +77,32 @@ public class NetworkEntity implements CompositionEntity {
return new CompositionEntityId(getId(), new CompositionEntityId(getVspId(), null));
}
- public String getVspId() {
- return vspId;
+ @Override
+ public String getCompositionData() {
+ return compositionData;
}
- public void setVspId(String vspId) {
- this.vspId = vspId;
+ @Override
+ public void setCompositionData(String compositionData) {
+ this.compositionData = compositionData;
}
@Override
- public Version getVersion() {
- return version;
+ public String getQuestionnaireData() {
+ return questionnaireData;
}
@Override
- public void setVersion(Version version) {
- this.version = version;
+ public void setQuestionnaireData(String questionnaireData) {
+ this.questionnaireData = questionnaireData;
+ }
+
+ public String getVspId() {
+ return vspId;
+ }
+
+ public void setVspId(String vspId) {
+ this.vspId = vspId;
}
@Override
@@ -115,13 +126,13 @@ public class NetworkEntity implements CompositionEntity {
}
@Override
- public String getCompositionData() {
- return compositionData;
+ public Version getVersion() {
+ return version;
}
@Override
- public void setCompositionData(String compositionData) {
- this.compositionData = compositionData;
+ public void setVersion(Version version) {
+ this.version = version;
}
public Network getNetworkCompositionData() {
@@ -133,25 +144,25 @@ public class NetworkEntity implements CompositionEntity {
}
@Override
- public String getQuestionnaireData() {
- return questionnaireData;
- }
-
- @Override
- public void setQuestionnaireData(String questionnaireData) {
- this.questionnaireData = questionnaireData;
+ public int hashCode() {
+ int result = vspId != null ? vspId.hashCode() : 0;
+ result = 31 * result + (version != null ? version.hashCode() : 0);
+ result = 31 * result + (id != null ? id.hashCode() : 0);
+ result = 31 * result + (compositionData != null ? compositionData.hashCode() : 0);
+ result = 31 * result + (questionnaireData != null ? questionnaireData.hashCode() : 0);
+ return result;
}
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public boolean equals(Object object) {
+ if (this == object) {
return true;
}
- if (obj == null || getClass() != obj.getClass()) {
+ if (object == null || getClass() != object.getClass()) {
return false;
}
- NetworkEntity that = (NetworkEntity) obj;
+ NetworkEntity that = (NetworkEntity) object;
if (vspId != null ? !vspId.equals(that.vspId) : that.vspId != null) {
return false;
@@ -170,14 +181,4 @@ public class NetworkEntity implements CompositionEntity {
: that.questionnaireData == null;
}
-
- @Override
- public int hashCode() {
- int result = vspId != null ? vspId.hashCode() : 0;
- result = 31 * result + (version != null ? version.hashCode() : 0);
- result = 31 * result + (id != null ? id.hashCode() : 0);
- result = 31 * result + (compositionData != null ? compositionData.hashCode() : 0);
- result = 31 * result + (questionnaireData != null ? questionnaireData.hashCode() : 0);
- return result;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NicEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NicEntity.java
index 33042a128a..656693c14d 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NicEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/NicEntity.java
@@ -34,7 +34,7 @@ import org.openecomp.sdc.versioning.dao.types.Version;
@Table(keyspace = "dox", name = "vsp_component_nic")
public class NicEntity implements CompositionEntity {
- private static final String ENTITY_TYPE = "Vendor Software Product ComponentData NIC";
+ private static final String ENTITY_TYPE = "Vendor Software Product NIC";
@PartitionKey
@Column(name = "vsp_id")
@@ -83,22 +83,32 @@ public class NicEntity implements CompositionEntity {
new CompositionEntityId(getComponentId(), new CompositionEntityId(getVspId(), null)));
}
- public String getVspId() {
- return vspId;
+ @Override
+ public String getCompositionData() {
+ return compositionData;
}
- public void setVspId(String vspId) {
- this.vspId = vspId;
+ @Override
+ public void setCompositionData(String compositionData) {
+ this.compositionData = compositionData;
}
@Override
- public Version getVersion() {
- return version;
+ public String getQuestionnaireData() {
+ return questionnaireData;
}
@Override
- public void setVersion(Version version) {
- this.version = version;
+ public void setQuestionnaireData(String questionnaireData) {
+ this.questionnaireData = questionnaireData;
+ }
+
+ public String getVspId() {
+ return vspId;
+ }
+
+ public void setVspId(String vspId) {
+ this.vspId = vspId;
}
@Override
@@ -111,14 +121,6 @@ public class NicEntity implements CompositionEntity {
return getVspId();
}
- public String getComponentId() {
- return componentId;
- }
-
- public void setComponentId(String componentId) {
- this.componentId = componentId;
- }
-
@Override
public String getId() {
return id;
@@ -130,13 +132,21 @@ public class NicEntity implements CompositionEntity {
}
@Override
- public String getCompositionData() {
- return compositionData;
+ public Version getVersion() {
+ return version;
}
@Override
- public void setCompositionData(String compositionData) {
- this.compositionData = compositionData;
+ public void setVersion(Version version) {
+ this.version = version;
+ }
+
+ public String getComponentId() {
+ return componentId;
+ }
+
+ public void setComponentId(String componentId) {
+ this.componentId = componentId;
}
public Nic getNicCompositionData() {
@@ -148,25 +158,26 @@ public class NicEntity implements CompositionEntity {
}
@Override
- public String getQuestionnaireData() {
- return questionnaireData;
- }
-
- @Override
- public void setQuestionnaireData(String questionnaireData) {
- this.questionnaireData = questionnaireData;
+ public int hashCode() {
+ int result = vspId != null ? vspId.hashCode() : 0;
+ result = 31 * result + (version != null ? version.hashCode() : 0);
+ result = 31 * result + (componentId != null ? componentId.hashCode() : 0);
+ result = 31 * result + (id != null ? id.hashCode() : 0);
+ result = 31 * result + (compositionData != null ? compositionData.hashCode() : 0);
+ result = 31 * result + (questionnaireData != null ? questionnaireData.hashCode() : 0);
+ return result;
}
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public boolean equals(Object object) {
+ if (this == object) {
return true;
}
- if (obj == null || getClass() != obj.getClass()) {
+ if (object == null || getClass() != object.getClass()) {
return false;
}
- NicEntity nicEntity = (NicEntity) obj;
+ NicEntity nicEntity = (NicEntity) object;
if (vspId != null ? !vspId.equals(nicEntity.vspId) : nicEntity.vspId != null) {
return false;
@@ -189,15 +200,4 @@ public class NicEntity implements CompositionEntity {
: nicEntity.questionnaireData == null;
}
-
- @Override
- public int hashCode() {
- int result = vspId != null ? vspId.hashCode() : 0;
- result = 31 * result + (version != null ? version.hashCode() : 0);
- result = 31 * result + (componentId != null ? componentId.hashCode() : 0);
- result = 31 * result + (id != null ? id.hashCode() : 0);
- result = 31 * result + (compositionData != null ? compositionData.hashCode() : 0);
- result = 31 * result + (questionnaireData != null ? questionnaireData.hashCode() : 0);
- return result;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/OrchestrationTemplateCandidateData.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/OrchestrationTemplateCandidateData.java
new file mode 100644
index 0000000000..de70434d2f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/OrchestrationTemplateCandidateData.java
@@ -0,0 +1,34 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
+
+import java.nio.ByteBuffer;
+
+public class OrchestrationTemplateCandidateData {
+ private ByteBuffer contentData;
+ private String filesDataStructure;
+
+
+ public OrchestrationTemplateCandidateData() {
+ }
+
+ public OrchestrationTemplateCandidateData(ByteBuffer contentData,
+ String dataStructureJson) {
+ this.contentData = contentData;
+ this.filesDataStructure = dataStructureJson;
+ }
+
+ public ByteBuffer getContentData() {
+ return contentData;
+ }
+
+ public void setContentData(ByteBuffer contentData) {
+ this.contentData = contentData;
+ }
+
+ public String getFilesDataStructure() {
+ return filesDataStructure;
+ }
+
+ public void setFilesDataStructure(String filesDataStructure) {
+ this.filesDataStructure = filesDataStructure;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessArtifactEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/OrchestrationTemplateCandidateDataEntity.java
index 89e6de1e87..c451a72056 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessArtifactEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/OrchestrationTemplateCandidateDataEntity.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
-import com.datastax.driver.mapping.annotations.ClusteringColumn;
import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
@@ -30,66 +29,55 @@ import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
import java.nio.ByteBuffer;
-@Table(keyspace = "dox", name = "vsp_process")
-public class ProcessArtifactEntity implements VersionableEntity {
- public static final String ENTITY_TYPE = "Vendor Software Product Process artifact";
+@Table(keyspace = "dox", name = "vsp_orchestration_template_candidate")
+public class OrchestrationTemplateCandidateDataEntity implements VersionableEntity {
+ private static final String ENTITY_TYPE =
+ "Vendor Software Product Upload Orchestration_candidate data";
+
@PartitionKey
@Column(name = "vsp_id")
- private String vspId;
+ private String id;
+
@PartitionKey(value = 1)
@Frozen
private Version version;
- @ClusteringColumn
- @Column(name = "component_id")
- private String componentId;
- @ClusteringColumn(value = 1)
- @Column(name = "process_id")
- private String id;
- @Column(name = "artifact_name")
- private String artifactName;
- private ByteBuffer artifact;
- public ProcessArtifactEntity() {
+ @Column(name = "content_data")
+ private ByteBuffer contentData;
+
+ @Column(name = "files_data_structure")
+ private String filesDataStructure;
+ public OrchestrationTemplateCandidateDataEntity() {
}
/**
- * Instantiates a new Process artifact entity.
+ * Instantiates a new OrchestrationTemplateCandidateDataEntity.
*
- * @param vspId the vsp id
- * @param version the version
- * @param componentId the component id
- * @param id the id
+ * @param id the id
+ * @param version the Version
+
*/
- public ProcessArtifactEntity(String vspId, Version version, String componentId, String id) {
- this.vspId = vspId;
- this.version = version;
- this.componentId = componentId;
+ public OrchestrationTemplateCandidateDataEntity(String id, Version version) {
this.id = id;
- }
-
- public String getVspId() {
- return vspId;
- }
-
- public void setVspId(String vspId) {
- this.vspId = vspId;
- }
-
- public Version getVersion() {
- return version;
- }
-
- public void setVersion(Version version) {
this.version = version;
}
- public String getComponentId() {
- return componentId;
- }
-
- public void setComponentId(String componentId) {
- this.componentId = componentId;
+ /**
+ * Instantiates a new OrchestrationTemplateCandidateDataEntity.
+ *
+ * @param filesDataStructure the files data Structure
+ * @param version the version
+ * @param contentData the contentData
+ * @param id the id
+ */
+ public OrchestrationTemplateCandidateDataEntity(String id, Version version,
+ ByteBuffer contentData,
+ String filesDataStructure) {
+ this.id = id;
+ this.contentData = contentData;
+ this.filesDataStructure = filesDataStructure;
+ this.version = version;
}
@Override
@@ -99,7 +87,7 @@ public class ProcessArtifactEntity implements VersionableEntity {
@Override
public String getFirstClassCitizenId() {
- return getVspId();
+ return null;
}
public String getId() {
@@ -110,19 +98,29 @@ public class ProcessArtifactEntity implements VersionableEntity {
this.id = id;
}
- public String getArtifactName() {
- return artifactName;
+ @Override
+ public Version getVersion() {
+ return version;
+ }
+
+ @Override
+ public void setVersion(Version version) {
+ this.version = version;
+ }
+
+ public ByteBuffer getContentData() {
+ return contentData;
}
- public void setArtifactName(String artifactName) {
- this.artifactName = artifactName;
+ public void setContentData(ByteBuffer contentData) {
+ this.contentData = contentData;
}
- public ByteBuffer getArtifact() {
- return artifact;
+ public String getFilesDataStructure() {
+ return filesDataStructure;
}
- public void setArtifact(ByteBuffer artifact) {
- this.artifact = artifact;
+ public void setFilesDataStructure(String filesDataStructure) {
+ this.filesDataStructure = filesDataStructure;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/PackageInfo.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/PackageInfo.java
index 03f26cb57d..ad02883b2e 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/PackageInfo.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/PackageInfo.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
-
import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
@@ -29,6 +28,7 @@ import org.openecomp.sdc.versioning.dao.types.Version;
import java.nio.ByteBuffer;
+
@Table(keyspace = "dox", name = "package_details")
public class PackageInfo {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessEntity.java
index d407540194..eacc3c4bae 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessEntity.java
@@ -22,12 +22,15 @@ package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
import com.datastax.driver.mapping.annotations.ClusteringColumn;
import com.datastax.driver.mapping.annotations.Column;
+import com.datastax.driver.mapping.annotations.Enumerated;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.PartitionKey;
import com.datastax.driver.mapping.annotations.Table;
import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
+import java.nio.ByteBuffer;
+
@Table(keyspace = "dox", name = "vsp_process")
public class ProcessEntity implements VersionableEntity {
public static final String ENTITY_TYPE = "Vendor Software Product Process";
@@ -45,8 +48,12 @@ public class ProcessEntity implements VersionableEntity {
private String id;
private String name;
private String description;
+ @Column(name = "type")
+ @Enumerated
+ private ProcessType type;
@Column(name = "artifact_name")
private String artifactName;
+ private ByteBuffer artifact;
public ProcessEntity() {
@@ -75,14 +82,6 @@ public class ProcessEntity implements VersionableEntity {
this.vspId = vspId;
}
- public Version getVersion() {
- return version;
- }
-
- public void setVersion(Version version) {
- this.version = version;
- }
-
public String getComponentId() {
return componentId;
}
@@ -109,8 +108,16 @@ public class ProcessEntity implements VersionableEntity {
this.id = id;
}
+ public Version getVersion() {
+ return version;
+ }
+
+ public void setVersion(Version version) {
+ this.version = version;
+ }
+
public String getName() {
- return name;
+ return name == null ? "" : name;
}
public void setName(String name) {
@@ -125,6 +132,14 @@ public class ProcessEntity implements VersionableEntity {
this.description = description;
}
+ public ProcessType getType() {
+ return type;
+ }
+
+ public void setType(ProcessType type) {
+ this.type = type;
+ }
+
public String getArtifactName() {
return artifactName;
}
@@ -133,16 +148,24 @@ public class ProcessEntity implements VersionableEntity {
this.artifactName = artifactName;
}
+ public ByteBuffer getArtifact() {
+ return artifact;
+ }
+
+ public void setArtifact(ByteBuffer artifact) {
+ this.artifact = artifact;
+ }
+
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public boolean equals(Object other) {
+ if (this == other) {
return true;
}
- if (obj == null || getClass() != obj.getClass()) {
+ if (other == null || getClass() != other.getClass()) {
return false;
}
- ProcessEntity that = (ProcessEntity) obj;
+ ProcessEntity that = (ProcessEntity) other;
if (vspId != null ? !vspId.equals(that.vspId) : that.vspId != null) {
return false;
@@ -159,10 +182,22 @@ public class ProcessEntity implements VersionableEntity {
if (name != null ? !name.equals(that.name) : that.name != null) {
return false;
}
- return description != null ? description.equals(that.description) : that.description == null
- &&
- (artifactName != null ? artifactName.equals(that.artifactName) : that.artifactName == null);
+ if (description != null ? !description.equals(that.description) : that.description != null) {
+ return false;
+ }
+ if (artifactName != null ? !artifactName.equals(that.artifactName)
+ : that.artifactName != null) {
+ return false;
+ }
+ if (artifact != null ? !artifact.equals(that.artifact) : that.artifact != null) {
+ return false;
+ }
+ if (type != null ? !type.equals(that.type) : that.type != null) {
+ return false;
+ }
+
+ return true;
}
@Override
@@ -173,7 +208,23 @@ public class ProcessEntity implements VersionableEntity {
result = 31 * result + (id != null ? id.hashCode() : 0);
result = 31 * result + (name != null ? name.hashCode() : 0);
result = 31 * result + (description != null ? description.hashCode() : 0);
+ result = 31 * result + (type != null ? type.hashCode() : 0);
result = 31 * result + (artifactName != null ? artifactName.hashCode() : 0);
+ result = 31 * result + (artifact != null ? artifact.hashCode() : 0);
return result;
}
+
+ @Override
+ public String toString() {
+ return "ProcessEntity{" +
+ "vspId='" + vspId + '\'' +
+ ", version=" + version +
+ ", componentId='" + componentId + '\'' +
+ ", id='" + id + '\'' +
+ ", name='" + name + '\'' +
+ ", description='" + description + '\'' +
+ ", type=" + type +
+ ", artifactName='" + artifactName + '\'' +
+ '}';
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessType.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessType.java
new file mode 100644
index 0000000000..d49386c3bf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/ProcessType.java
@@ -0,0 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
+
+public enum ProcessType {
+ Lifecycle_Operations,
+ Other
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/TranslatedFileData.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/TranslatedFileData.java
index c6f197a4cf..506d7e51aa 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/TranslatedFileData.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/TranslatedFileData.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
+
public class TranslatedFileData {
private String displayName;
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadData.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadData.java
new file mode 100644
index 0000000000..071af919a4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadData.java
@@ -0,0 +1,90 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
+
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.heat.datatypes.structure.ValidationStructureList;
+
+import java.nio.ByteBuffer;
+
+
+public class UploadData {
+
+ private String id;
+
+ private String packageName;
+
+ private String packageVersion;
+
+ private String validationData;
+
+ private ByteBuffer contentData;
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getPackageName() {
+ return packageName;
+ }
+
+ public void setPackageName(String packageName) {
+ this.packageName = packageName;
+ }
+
+ public String getPackageVersion() {
+ return packageVersion;
+ }
+
+ public void setPackageVersion(String packageVersion) {
+ this.packageVersion = packageVersion;
+ }
+
+ public String getValidationData() {
+ return validationData;
+ }
+
+ public void setValidationData(String validationData) {
+ this.validationData = validationData;
+ }
+
+ public ValidationStructureList getValidationDataStructure() {
+ return validationData == null ? null
+ : JsonUtil.json2Object(validationData, ValidationStructureList.class);
+ }
+
+ public void setValidationDataStructure(ValidationStructureList validationData) {
+ this.validationData = validationData == null ? null
+ : JsonUtil.object2Json(validationData);
+ }
+
+ public ByteBuffer getContentData() {
+ return contentData;
+ }
+
+ public void setContentData(ByteBuffer contentData) {
+ this.contentData = contentData;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadDataEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadDataEntity.java
index a70b2cd6c8..2ade95b025 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadDataEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/UploadDataEntity.java
@@ -20,10 +20,6 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
-import com.datastax.driver.mapping.annotations.Column;
-import com.datastax.driver.mapping.annotations.Frozen;
-import com.datastax.driver.mapping.annotations.PartitionKey;
-import com.datastax.driver.mapping.annotations.Table;
import org.openecomp.core.utilities.json.JsonUtil;
import org.openecomp.sdc.heat.datatypes.structure.ValidationStructureList;
import org.openecomp.sdc.versioning.dao.types.Version;
@@ -31,28 +27,19 @@ import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
import java.nio.ByteBuffer;
-@Table(keyspace = "dox", name = "vsp_information")
public class UploadDataEntity implements VersionableEntity {
private static final String ENTITY_TYPE = "Vendor Software Product Upload data";
- @PartitionKey
- @Column(name = "vsp_id")
private String id;
- @PartitionKey(value = 1)
- @Frozen
private Version version;
- @Column(name = "package_name")
private String packageName;
- @Column(name = "package_version")
private String packageVersion;
- @Column(name = "validation_data")
private String validationData;
- @Column(name = "content_data")
private ByteBuffer contentData;
public UploadDataEntity() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspDetails.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspDetails.java
index 3423ba36b3..0019bce477 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspDetails.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspDetails.java
@@ -20,11 +20,6 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
-import com.datastax.driver.mapping.annotations.Column;
-import com.datastax.driver.mapping.annotations.Computed;
-import com.datastax.driver.mapping.annotations.Frozen;
-import com.datastax.driver.mapping.annotations.PartitionKey;
-import com.datastax.driver.mapping.annotations.Table;
import org.openecomp.core.utilities.json.JsonUtil;
import org.openecomp.sdc.heat.datatypes.structure.ValidationStructureList;
import org.openecomp.sdc.versioning.dao.types.Version;
@@ -32,16 +27,12 @@ import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
import java.util.List;
-@Table(keyspace = "dox", name = "vsp_information")
+
public class VspDetails implements VersionableEntity {
public static final String ENTITY_TYPE = "Vendor Software Product";
- @PartitionKey
- @Column(name = "vsp_id")
private String id;
- @PartitionKey(value = 1)
- @Frozen
private Version version;
private String name;
@@ -49,37 +40,24 @@ public class VspDetails implements VersionableEntity {
private String category;
- @Column(name = "sub_category")
private String subCategory;
private String icon;
- @Column(name = "vendor_name")
private String vendorName;
- @Column(name = "vendor_id")
private String vendorId;
- @Column(name = "vlm_version")
- @Frozen
private Version vlmVersion;
- @Column(name = "license_agreement")
private String licenseAgreement;
- @Column(name = "feature_groups")
private List<String> featureGroups;
- @Column(name = "package_name")
- private String packageName;
-
- @Column(name = "package_version")
- private String packageVersion;
-
- @Column(name = "validation_data")
private String validationData;
- @Computed("writetime(name)")
+ private String oldVersion;
+
private Long writetimeMicroSeconds;
public VspDetails() {
@@ -198,22 +176,6 @@ public class VspDetails implements VersionableEntity {
this.featureGroups = featureGroups;
}
- public String getPackageName() {
- return packageName;
- }
-
- public void setPackageName(String packageName) {
- this.packageName = packageName;
- }
-
- public String getPackageVersion() {
- return packageVersion;
- }
-
- public void setPackageVersion(String packageVersion) {
- this.packageVersion = packageVersion;
- }
-
public String getValidationData() {
return validationData;
}
@@ -239,4 +201,23 @@ public class VspDetails implements VersionableEntity {
public void setWritetimeMicroSeconds(Long writetimeMicroSeconds) {
this.writetimeMicroSeconds = writetimeMicroSeconds;
}
+
+ /*public boolean isOldVersion() {
+ return this.oldVersion;
+ }*/
+
+ public String getOldVersion(){
+ return this.oldVersion;
+ }
+
+ public void setOldVersion(String oldVersion) {
+ this.oldVersion = oldVersion;
+ }
+
+ @Override
+ public String toString() {
+ return String.format(
+ "Vsp id = '%s', Version = %s', Name = %s', Category = %s', Description = %s', Vendor = %s'",
+ this.id, this.version, this.name, this.category, this.description, this.vendorName);
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspQuestionnaireEntity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspQuestionnaireEntity.java
index 42fbecfe01..da41ab28ba 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspQuestionnaireEntity.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/type/VspQuestionnaireEntity.java
@@ -20,25 +20,17 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
-import com.datastax.driver.mapping.annotations.Column;
-import com.datastax.driver.mapping.annotations.Frozen;
-import com.datastax.driver.mapping.annotations.PartitionKey;
-import com.datastax.driver.mapping.annotations.Table;
import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityId;
import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
import org.openecomp.sdc.versioning.dao.types.Version;
-@Table(keyspace = "dox", name = "vsp_information")
+
+
public class VspQuestionnaireEntity implements CompositionEntity {
private static final String ENTITY_TYPE = "Vendor Software Product";
- @PartitionKey
- @Column(name = "vsp_id")
private String id;
- @PartitionKey(value = 1)
- @Frozen
private Version version;
- @Column(name = "questionnaire_data")
private String questionnaireData;
public VspQuestionnaireEntity() {
@@ -51,6 +43,16 @@ public class VspQuestionnaireEntity implements CompositionEntity {
}
@Override
+ public String getEntityType() {
+ return ENTITY_TYPE;
+ }
+
+ @Override
+ public String getFirstClassCitizenId() {
+ return getId();
+ }
+
+ @Override
public String getId() {
return id;
}
@@ -71,16 +73,6 @@ public class VspQuestionnaireEntity implements CompositionEntity {
}
@Override
- public String getEntityType() {
- return ENTITY_TYPE;
- }
-
- @Override
- public String getFirstClassCitizenId() {
- return getId();
- }
-
- @Override
public CompositionEntityType getType() {
return CompositionEntityType.vsp;
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeFilter.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/errors/utils/ErrorsUtil.java
index d87dcd7b1d..fc23a77bef 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeFilter.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/errors/utils/ErrorsUtil.java
@@ -18,30 +18,25 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.vendorsoftwareproduct.errors.utils;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
-public class NodeFilter {
-
- Map<String, List<Constraint>> properties;
- Map<String, CapabilityFilterDefinition> capabilities;
-
- public Map<String, List<Constraint>> getProperties() {
-
- return properties;
- }
-
- public void setProperties(Map<String, List<Constraint>> properties) {
- this.properties = properties;
- }
-
- public Map<String, CapabilityFilterDefinition> getCapabilities() {
- return capabilities;
- }
-
- public void setCapabilities(Map<String, CapabilityFilterDefinition> capabilities) {
- this.capabilities = capabilities;
- }
+/**
+ * Created by Talio on 11/30/2016.
+ */
+public class ErrorsUtil {
+
+ public static void addStructureErrorToErrorMap(String fileName, ErrorMessage errorMessage, Map<String, List<ErrorMessage>> errors) {
+ List<ErrorMessage> errorList = errors.get(fileName);
+ if (errorList == null) {
+ errorList = new ArrayList<>();
+ errors.put(fileName, errorList);
+ }
+ errorList.add(errorMessage);
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CandidateServiceFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CandidateServiceFactory.java
new file mode 100644
index 0000000000..f16d8d4ebe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CandidateServiceFactory.java
@@ -0,0 +1,35 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.CandidateService;
+
+/**
+ * Created by Talio on 12/15/2016.
+ */
+public abstract class CandidateServiceFactory extends AbstractComponentFactory<CandidateService> {
+
+ public static CandidateServiceFactory getInstance(){
+ return AbstractFactory.getInstance(CandidateServiceFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionDataExtractorFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionDataExtractorFactory.java
new file mode 100644
index 0000000000..d10b8b715d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionDataExtractorFactory.java
@@ -0,0 +1,33 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionDataExtractor;
+
+public abstract class CompositionDataExtractorFactory extends
+ AbstractComponentFactory<CompositionDataExtractor> {
+
+ public static CompositionDataExtractorFactory getInstance() {
+ return AbstractFactory.getInstance(CompositionDataExtractorFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionEntityDataManagerFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionEntityDataManagerFactory.java
new file mode 100644
index 0000000000..bcb6174dce
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/CompositionEntityDataManagerFactory.java
@@ -0,0 +1,33 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionEntityDataManager;
+
+public abstract class CompositionEntityDataManagerFactory extends
+ AbstractComponentFactory<CompositionEntityDataManager> {
+
+ public static CompositionEntityDataManagerFactory getInstance() {
+ return AbstractFactory.getInstance(CompositionEntityDataManagerFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/InformationArtifactGeneratorFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/InformationArtifactGeneratorFactory.java
new file mode 100644
index 0000000000..7e6e7db5dc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/InformationArtifactGeneratorFactory.java
@@ -0,0 +1,33 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactGenerator;
+
+
+public abstract class InformationArtifactGeneratorFactory extends AbstractComponentFactory<InformationArtifactGenerator> {
+
+ public static InformationArtifactGeneratorFactory getInstance() {
+ return AbstractFactory.getInstance(InformationArtifactGeneratorFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/ManifestCreatorFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/ManifestCreatorFactory.java
new file mode 100644
index 0000000000..9189ffce6d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/ManifestCreatorFactory.java
@@ -0,0 +1,35 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.ManifestCreator;
+
+/**
+ * Created by Talio on 12/15/2016.
+ */
+public abstract class ManifestCreatorFactory extends AbstractComponentFactory<ManifestCreator>{
+
+ public static ManifestCreatorFactory getInstance(){
+ return AbstractFactory.getInstance(ManifestCreatorFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnnaireDataServiceFactory.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnnaireDataServiceFactory.java
new file mode 100644
index 0000000000..a1b9430e41
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnnaireDataServiceFactory.java
@@ -0,0 +1,34 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
+
+import org.openecomp.core.factory.api.AbstractComponentFactory;
+import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactGenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.questionnaire.QuestionnaireDataService;
+
+
+public abstract class QuestionnnaireDataServiceFactory extends AbstractComponentFactory<QuestionnaireDataService> {
+
+ public static QuestionnnaireDataServiceFactory getInstance() {
+ return AbstractFactory.getInstance(QuestionnnaireDataServiceFactory.class);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/InformationArtifactData.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/InformationArtifactData.java
new file mode 100644
index 0000000000..2bf11b03d6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/InformationArtifactData.java
@@ -0,0 +1,83 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.informationArtifact;
+
+
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.ComponentQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.NicQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.VspQuestionnaire;
+
+import java.util.List;
+
+/**
+ * Created by TALIO on 11/22/2016
+ */
+public class InformationArtifactData {
+ private VspDetails vspDetails;
+ private VspQuestionnaire vspQuestionnaire;
+ private List<ComponentQuestionnaire> componentQuestionnaires;
+ private List<NicQuestionnaire> nicQuestionnaires;
+
+
+ public InformationArtifactData(VspDetails vspDetails, VspQuestionnaire vspQuestionnaire, List<ComponentQuestionnaire> componentQuestionnaires, List<NicQuestionnaire> nicQuestionnaires) {
+ this.vspDetails = vspDetails;
+ this.vspQuestionnaire = vspQuestionnaire;
+ this.componentQuestionnaires = componentQuestionnaires;
+ this.nicQuestionnaires = nicQuestionnaires;
+ }
+
+ public InformationArtifactData() {
+
+ }
+
+ public VspQuestionnaire getVspQuestionnaire() {
+ return vspQuestionnaire;
+ }
+
+ public void setVspQuestionnaire(VspQuestionnaire vspQuestionnaire) {
+ this.vspQuestionnaire = vspQuestionnaire;
+ }
+
+ public List<ComponentQuestionnaire> getComponentQuestionnaires() {
+ return componentQuestionnaires;
+ }
+
+ public void setComponentQuestionnaires(List<ComponentQuestionnaire> componentQuestionnaires) {
+ this.componentQuestionnaires = componentQuestionnaires;
+ }
+
+ public List<NicQuestionnaire> getNicQuestionnaires() {
+ return nicQuestionnaires;
+ }
+
+ public void setNicQuestionnaires(List<NicQuestionnaire> nicQuestionnaires) {
+ this.nicQuestionnaires = nicQuestionnaires;
+ }
+
+ public VspDetails getVspDetails() {
+ return vspDetails;
+ }
+
+ public void setVspDetails(VspDetails vspDetails) {
+ this.vspDetails = vspDetails;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessArtifactDao.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/InformationArtifactGenerator.java
index 5b562368b5..11d8e7b501 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ProcessArtifactDao.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/InformationArtifactGenerator.java
@@ -18,15 +18,18 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.vendorsoftwareproduct.dao;
+package org.openecomp.sdc.vendorsoftwareproduct.informationArtifact;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessArtifactEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
-public interface ProcessArtifactDao {
+import java.io.IOException;
+import java.nio.ByteBuffer;
- void update(ProcessArtifactEntity entity);
-
- ProcessArtifactEntity get(ProcessArtifactEntity entity);
+/**
+ * @author katyr
+ * @since November 29, 2016
+ */
- void delete(ProcessArtifactEntity entity);
+public interface InformationArtifactGenerator {
+ String generate(String vspId, Version version) throws IOException;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/questionnaire/QuestionnaireDataService.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/questionnaire/QuestionnaireDataService.java
new file mode 100644
index 0000000000..0bf10c09e8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/questionnaire/QuestionnaireDataService.java
@@ -0,0 +1,33 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.questionnaire;
+
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactData;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+/**
+ * @author katyr
+ * @since November 29, 2016
+ */
+
+public interface QuestionnaireDataService {
+ InformationArtifactData generateQuestionnaireDataForInformationArtifact(String vspId, Version version);
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Metadata.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/HeatFileAnalyzer.java
index 162e693dba..533f041621 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Metadata.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/HeatFileAnalyzer.java
@@ -18,38 +18,30 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.vendorsoftwareproduct.services;
-import java.util.Map;
-
-public class Metadata {
-
- private String template_name;
- private String template_author;
- private String template_version;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.AnalyzedZipHeatFiles;
+import java.io.IOException;
+import java.util.Map;
- public String getTemplate_name() {
- return template_name;
- }
-
- public void setTemplate_name(String templateName) {
- this.template_name = templateName;
- }
+/**
+ * @author Avrahamg
+ * @since December 21, 2016
+ */
+public interface HeatFileAnalyzer {
- public String getTemplate_author() {
- return template_author;
+ static boolean isEnvFile(String fileName) {
+ return fileName.endsWith(".env");
}
- public void setTemplate_author(String templateAuthor) {
- this.template_author = templateAuthor;
+ static boolean isYamlFile(String fileName) {
+ return fileName.endsWith(".yml") || fileName.endsWith(".yaml");
}
- public String getTemplate_version() {
- return template_version;
+ static boolean isYamlOrEnvFile(String fileName) {
+ return isYamlFile(fileName) || isEnvFile(fileName);
}
- public void setTemplate_version(String templateVersion) {
- this.template_version = templateVersion;
- }
+ AnalyzedZipHeatFiles analyzeFilesNotEligibleForModulesFromFileAnalyzer(Map<String, byte[]> files) throws IOException;
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionDataExtractor.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionDataExtractor.java
new file mode 100644
index 0000000000..0b82638277
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionDataExtractor.java
@@ -0,0 +1,31 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.composition;
+
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionData;
+
+public interface CompositionDataExtractor {
+
+ CompositionData extractServiceCompositionData(ToscaServiceModel toscaServiceModel);
+
+ String getComponentDisplayName(String componentName);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionEntityDataManager.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionEntityDataManager.java
new file mode 100644
index 0000000000..5bde801188
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/composition/CompositionEntityDataManager.java
@@ -0,0 +1,77 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.composition;
+
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.CompositionEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NicEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Component;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityId;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityValidationData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateContext;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateInput;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Collection;
+import java.util.Map;
+import java.util.Set;
+
+public interface CompositionEntityDataManager {
+
+ Map<CompositionEntityId, Collection<String>> validateEntitiesQuestionnaire();
+
+ void addEntity(CompositionEntity entity, SchemaTemplateInput schemaTemplateInput);
+
+ CompositionEntityValidationData validateEntity(CompositionEntity entity,
+ SchemaTemplateContext schemaTemplateContext,
+ SchemaTemplateInput schemaTemplateInput);
+
+ void buildTrees();
+
+ void addErrorsToTrees(Map<CompositionEntityId, Collection<String>> errors);
+
+ Set<CompositionEntityValidationData> getEntityListWithErrors();
+
+ Collection<CompositionEntityValidationData> getTrees();
+
+ void saveCompositionData(String vspId, Version version, CompositionData compositionData);
+
+ Set<CompositionEntityValidationData> getAllErrorsByVsp(String vspId);
+
+ void saveComponents(String vspId, Version version, CompositionData compositionData,
+ Map<String, String> networkIdByName);
+
+ void saveNicsByComponent(String vspId, Version version,
+ Map<String, String> networkIdByName, Component component,
+ String componentId);
+
+ Map<String, String> saveNetworks(String vspId, Version version,
+ CompositionData compositionData);
+
+ NetworkEntity createNetwork(NetworkEntity network);
+
+ ComponentEntity createComponent(ComponentEntity component);
+
+ NicEntity createNic(NicEntity nic);
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/CandidateService.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/CandidateService.java
new file mode 100644
index 0000000000..4ca623e6a3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/CandidateService.java
@@ -0,0 +1,75 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule;
+
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.types.CandidateDataEntityTo;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.AnalyzedZipHeatFiles;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.ByteBuffer;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+public interface CandidateService {
+ Optional<ErrorMessage> validateNonEmptyFileToUpload(InputStream heatFileToUpload);
+
+ Optional<ErrorMessage> validateRawZipData(byte[] uploadedFileData);
+
+ OrchestrationTemplateCandidateData createCandidateDataEntity(
+ CandidateDataEntityTo candidateDataEntityTo, InputStream zipFileManifest, AnalyzedZipHeatFiles analyzedZipHeatFiles) throws Exception;
+
+ void updateCandidateUploadData(OrchestrationTemplateCandidateData uploadData, String
+ itemId);
+
+ Optional<FilesDataStructure> getOrchestrationTemplateCandidateFileDataStructure(String vspId,
+ Version activeVersion);
+
+ void updateOrchestrationTemplateCandidateFileDataStructure(String vspId, Version activeVersion,
+ FilesDataStructure fileDataStructure);
+
+ OrchestrationTemplateCandidateData getOrchestrationTemplateCandidate(String vspId,
+ Version activeVersion);
+
+ Optional<ByteArrayInputStream> fetchZipFileByteArrayInputStream(String vspId,
+ OrchestrationTemplateCandidateData candidateDataEntity,
+ String manifest, Map<String, List<ErrorMessage>> uploadErrors);
+
+ byte[] replaceManifestInZip(ByteBuffer contentData, String manifest, String vspId)
+ throws IOException;
+
+ Optional<ManifestContent> createManifest(VspDetails vspDetails,
+ FileContentHandler fileContentHandler, AnalyzedZipHeatFiles analyzedZipHeatFiles);
+
+ String createManifest(VspDetails vspDetails, FilesDataStructure structure);
+
+ Optional<List<ErrorMessage>> validateFileDataStructure(FilesDataStructure filesDataStructure);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/ManifestCreator.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/ManifestCreator.java
new file mode 100644
index 0000000000..fd70d20c22
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/filedatastructuremodule/ManifestCreator.java
@@ -0,0 +1,38 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule;
+
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.AnalyzedZipHeatFiles;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+
+import java.util.Optional;
+
+public interface ManifestCreator {
+ Optional<ManifestContent> createManifest(VspDetails vspDetails, FilesDataStructure filesDataStructure);
+
+ Optional<ManifestContent> createManifest(VspDetails vspDetails, FileContentHandler
+ fileContentHandler, AnalyzedZipHeatFiles analyzedZipHeatFiles);
+
+ boolean isFileBaseFile(String fileName);
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/HeatFileAnalyzerRowDataImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/HeatFileAnalyzerRowDataImpl.java
new file mode 100644
index 0000000000..d26942219f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/HeatFileAnalyzerRowDataImpl.java
@@ -0,0 +1,152 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.impl;
+
+import org.openecomp.sdc.vendorsoftwareproduct.services.HeatFileAnalyzer;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.AnalyzedZipHeatFiles;
+
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.*;
+import java.util.regex.Pattern;
+
+public class HeatFileAnalyzerRowDataImpl implements HeatFileAnalyzer {
+ private static final String HEAT_IDENTIFIER_REGEX = "^heat_template_version:.*";
+ private static final String HEAT_RESOURCES_REGEX = "^resources:\\s*$";
+ private static final String HEAT_PARAMETERS_REGEX = "^parameters:\\s*$";
+ private static final String HEAT_CONDITIONS_REGEX = "^conditions:\\s*$";
+ private static final String HEAT_OUTPUTS_REGEX = "^outputs:\\s*$";
+ private static final String HEAT_PARAMETER_GROUP_REGEX = "^parameter_groups:\\s*$";
+ private static final String HEAT_DESCRIPTION_REGEX = "^description:\\s*$";
+ //allowing spaces at start followed by 'type:' + spaces + any characters + ('.yml' or '.yaml')+
+ // spaces
+ private static final String HEAT_NESTED_RESOURCE_REGEX = "\\s*type:\\s*\\S*.(yml|yaml)\\s*$";
+
+
+ private static final String IDENTIFIER = "IDENTIFIER";
+ private static final String RESOURCES = "RESOURCES";
+ private static final String PARAMETERS = "PARAMETERS";
+ private static final String CONDITIONS = "CONDITIONS";
+ private static final String OUTPUTS = "OUTPUTS";
+ private static final String PARAMETER_GROUP = "PARAMETER_GROUP";
+ private static final String DESCRIPTION = "DESCRIPTION";
+ private static final String NESTED_PATTERN = "NESTED_PATTERN";
+
+ private Map<String, Pattern> patterns;
+
+ public HeatFileAnalyzerRowDataImpl() {
+ patterns = new HashMap<>();
+ patterns.put(IDENTIFIER, Pattern.compile(HEAT_IDENTIFIER_REGEX));
+ patterns.put(RESOURCES, Pattern.compile(HEAT_RESOURCES_REGEX));
+ patterns.put(PARAMETERS, Pattern.compile(HEAT_PARAMETERS_REGEX));
+ patterns.put(CONDITIONS, Pattern.compile(HEAT_CONDITIONS_REGEX));
+ patterns.put(OUTPUTS, Pattern.compile(HEAT_OUTPUTS_REGEX));
+ patterns.put(PARAMETER_GROUP, Pattern.compile(HEAT_PARAMETER_GROUP_REGEX));
+ patterns.put(DESCRIPTION, Pattern.compile(HEAT_DESCRIPTION_REGEX));
+ patterns.put(NESTED_PATTERN, Pattern.compile(HEAT_NESTED_RESOURCE_REGEX));
+ }
+
+ @Override
+ public AnalyzedZipHeatFiles analyzeFilesNotEligibleForModulesFromFileAnalyzer(Map<String, byte[]> files)
+ throws IOException {
+ AnalyzedZipHeatFiles analyzedZipHeatFiles = new AnalyzedZipHeatFiles();
+
+ BufferedReader bfReader;
+ for (Map.Entry<String, byte[]> fileData : files.entrySet()) {
+ String fileName = fileData.getKey();
+ if (!HeatFileAnalyzer.isYamlFile(fileName)) {
+ analyzedZipHeatFiles.addOtherNonModuleFile(fileName);
+ continue;
+ }
+ boolean foundHeatIdentifier = false;
+ try (InputStream is = new ByteArrayInputStream(fileData.getValue())) {
+ bfReader = new BufferedReader(new InputStreamReader(is));
+ String line;
+ boolean isResourcesSection = false;
+ Set<String> nestedFilesNames = new HashSet<>();
+ while ((line = bfReader.readLine()) != null) {
+ if (!foundHeatIdentifier && isMatch(patterns.get(IDENTIFIER), line)) {
+ foundHeatIdentifier = true;
+ analyzedZipHeatFiles.addModuleFile(fileName);
+ if (isResourcesSection) // it means the identifier is located after the resources
+ // section
+ {
+ break;
+ }
+ } else if (isMatch(patterns.get(RESOURCES), line)) {
+ isResourcesSection = true;
+ } else if (isResourceSectionEnd(line, isResourcesSection)) {
+ if (foundHeatIdentifier) {
+ break;
+ }
+ } else if (isResourcesSection) {
+ Optional<String> optionalNestedFileName = fetchNestedFileName(line);
+ optionalNestedFileName
+ .ifPresent(nestedFilesNames::add);
+ }
+ }
+ analyzedZipHeatFiles.addNestedFiles(fetchFileNamesToReturn(nestedFilesNames,
+ foundHeatIdentifier));
+ }
+ }
+ return analyzedZipHeatFiles;
+ }
+
+ private Optional<String> fetchNestedFileName(String line) {
+ if (isMatch(patterns.get(NESTED_PATTERN), line)) {
+ String trimmedLine = line.trim();
+ String nestedFileName = trimmedLine
+ .substring(trimmedLine.indexOf("type:") + "type:".length(), trimmedLine.length())
+ .trim();
+ return Optional.of(nestedFileName);
+ }
+ return Optional.empty();
+ }
+
+ private Set<String> fetchFileNamesToReturn(Set<String> filesNamesToReturn,
+ boolean foundHeatIdentifier) {
+ if (!foundHeatIdentifier) {
+ return new HashSet<>();
+ } else {
+ return filesNamesToReturn;
+ }
+ }
+
+ private boolean isResourceSectionEnd(String line, boolean isResourcesSection) {
+ return isResourcesSection && isStartOfNonResourcesHeatSection(line);
+ }
+
+ private boolean isStartOfNonResourcesHeatSection(String line) {
+ return isMatch(patterns.get(PARAMETERS), line) ||
+ isMatch(patterns.get(CONDITIONS), line) ||
+ isMatch(patterns.get(OUTPUTS), line) ||
+ isMatch(patterns.get(PARAMETER_GROUP), line) ||
+ isMatch(patterns.get(DESCRIPTION), line);
+ }
+
+ private boolean isMatch(Pattern pattern, String line) {
+ return pattern.matcher(line).matches();
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGenerator.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGenerator.java
new file mode 100644
index 0000000000..6b1837fa10
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGenerator.java
@@ -0,0 +1,64 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.schemagenerator;
+
+import freemarker.template.Template;
+import freemarker.template.TemplateException;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateContext;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateInput;
+
+import java.io.IOException;
+import java.io.StringWriter;
+import java.io.Writer;
+
+public class SchemaGenerator {
+ public static final String SCHEMA_GENERATION_ERROR = "SCHEMA_GENERATION_ERROR";
+
+ /**
+ * Generate string.
+ *
+ * @param schemaTemplateContext the schema template context
+ * @param entityType the entity type
+ * @param input the input
+ * @return the string
+ */
+ public static String generate(SchemaTemplateContext schemaTemplateContext,
+ CompositionEntityType entityType, SchemaTemplateInput input) {
+ Template schemaTemplate =
+ SchemaGeneratorConfig.getSchemaTemplate(schemaTemplateContext, entityType);
+ return processTemplate(input, schemaTemplate);
+ }
+
+ private static String processTemplate(SchemaTemplateInput input, Template schemaTemplate) {
+ try (Writer writer = new StringWriter(1024)) {
+ schemaTemplate.process(input, writer);
+ return writer.toString();
+ } catch (IOException | TemplateException exception) {
+ throw new CoreException(
+ new ErrorCode.ErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION)
+ .withId(SCHEMA_GENERATION_ERROR).withMessage(exception.getMessage()).build());
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGeneratorConfig.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGeneratorConfig.java
new file mode 100644
index 0000000000..3937ca2f2e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/schemagenerator/SchemaGeneratorConfig.java
@@ -0,0 +1,154 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.schemagenerator;
+
+import freemarker.cache.StringTemplateLoader;
+import freemarker.template.Configuration;
+import freemarker.template.Template;
+import freemarker.template.TemplateExceptionHandler;
+import org.openecomp.core.utilities.applicationconfig.ApplicationConfig;
+import org.openecomp.core.utilities.applicationconfig.ApplicationConfigFactory;
+import org.openecomp.core.utilities.applicationconfig.type.ConfigurationData;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateContext;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+public class SchemaGeneratorConfig {
+ public static final String SCHEMA_GENERATOR_INITIALIZATION_ERROR =
+ "SCHEMA_GENERATOR_INITIALIZATION_ERROR";
+ public static final String SCHEMA_GENERATOR_INITIALIZATION_ERROR_MSG =
+ "Error occurred while loading questionnaire schema schemaTemplates";
+ private static final String CONFIGURATION_NAMESPACE = "vsp.schemaTemplates";
+ private static Map<SchemaTemplateId, SchemaTemplate> schemaTemplates = new HashMap<>();
+ private static ApplicationConfig applicationConfig =
+ ApplicationConfigFactory.getInstance().createInterface();
+
+ private static Configuration configuration = new Configuration(Configuration.VERSION_2_3_23);
+ private static StringTemplateLoader stringLoader = new StringTemplateLoader();
+
+ static {
+ configuration.setClassLoaderForTemplateLoading(SchemaGenerator.class.getClassLoader(),
+ File.pathSeparator);
+ configuration.setDefaultEncoding("UTF-8");
+ configuration.setTemplateExceptionHandler(TemplateExceptionHandler.RETHROW_HANDLER);
+ configuration.setLogTemplateExceptions(true);
+ configuration.setTemplateLoader(stringLoader);
+ }
+
+ public static void insertSchemaTemplate(SchemaTemplateContext schemaTemplateContext,
+ CompositionEntityType entityType,
+ String schemaTemplateString) {
+ applicationConfig.insertValue(CONFIGURATION_NAMESPACE,
+ new SchemaTemplateId(schemaTemplateContext, entityType).toString(), schemaTemplateString);
+ }
+
+ /**
+ * Gets schema template.
+ *
+ * @param schemaTemplateContext the schema template context
+ * @param entityType the entity type
+ * @return the schema template
+ */
+ public static Template getSchemaTemplate(SchemaTemplateContext schemaTemplateContext,
+ CompositionEntityType entityType) {
+ SchemaTemplateId id = new SchemaTemplateId(schemaTemplateContext, entityType);
+ ConfigurationData configurationData =
+ applicationConfig.getConfigurationData(CONFIGURATION_NAMESPACE, id.toString());
+
+ SchemaTemplate schemaTemplate = schemaTemplates.get(id);
+ if (schemaTemplate == null || schemaTemplate.timestamp != configurationData.getTimeStamp()) {
+ stringLoader.putTemplate(id.toString(), configurationData.getValue());
+ Template template;
+ try {
+ template = configuration.getTemplate(id.toString());
+ } catch (IOException exception) {
+ throw new CoreException(
+ new ErrorCode.ErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION)
+ .withId(SCHEMA_GENERATOR_INITIALIZATION_ERROR)
+ .withMessage(SCHEMA_GENERATOR_INITIALIZATION_ERROR_MSG).build(), exception);
+ }
+ schemaTemplate = new SchemaTemplate(template, configurationData.getTimeStamp());
+ schemaTemplates.put(id, schemaTemplate);
+ }
+ return schemaTemplate.template;
+ }
+
+ private static class SchemaTemplateId {
+ private SchemaTemplateContext context;
+ private CompositionEntityType entityType;
+
+ public SchemaTemplateId(SchemaTemplateContext context, CompositionEntityType entityType) {
+ this.context = context;
+ this.entityType = entityType;
+ }
+
+ @Override
+ public String toString() {
+ return context + "." + entityType;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null || getClass() != obj.getClass()) {
+ return false;
+ }
+
+ SchemaTemplateId that = (SchemaTemplateId) obj;
+
+ if (entityType != that.entityType) {
+ return false;
+ }
+ if (context != that.context) {
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = entityType != null ? entityType.hashCode() : 0;
+ result = 31 * result + (context != null ? context.hashCode() : 0);
+ return result;
+ }
+ }
+
+ private static class SchemaTemplate {
+ private Template template;
+ private long timestamp;
+
+ public SchemaTemplate(Template template, long timestamp) {
+ this.template = template;
+ this.timestamp = timestamp;
+ }
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateEntityBuilder.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateEntityBuilder.java
new file mode 100644
index 0000000000..9540f3d965
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateEntityBuilder.java
@@ -0,0 +1,107 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.utils;
+
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
+import org.openecomp.sdc.heat.services.tree.HeatTreeManager;
+import org.openecomp.sdc.heat.services.tree.HeatTreeManagerUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.services.HeatFileAnalyzer;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.CandidateService;
+import org.openecomp.sdc.vendorsoftwareproduct.services.impl.HeatFileAnalyzerRowDataImpl;
+import org.openecomp.sdc.vendorsoftwareproduct.types.CandidateDataEntityTo;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.AnalyzedZipHeatFiles;
+
+import java.io.InputStream;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+public class CandidateEntityBuilder {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+ private CandidateService candidateService;
+
+ public CandidateEntityBuilder(CandidateService candidateService) {
+ this.candidateService = candidateService;
+ }
+
+ public OrchestrationTemplateCandidateData buildCandidateEntityFromZip(
+ VspDetails vspDetails, byte[] uploadedFileData, FileContentHandler contentMap,
+ Map<String, List<ErrorMessage>> uploadErrors, String user) throws Exception {
+ //mdcDataDebugMessage.debugEntryMessage("VSP Id", vspDetails.getId());
+
+ InputStream zipFileManifest = contentMap.getFileContent(SdcCommon.MANIFEST_NAME);
+ HeatFileAnalyzer heatFileAnalyzer = new HeatFileAnalyzerRowDataImpl();
+ AnalyzedZipHeatFiles analyzedZipHeatFiles =
+ heatFileAnalyzer.analyzeFilesNotEligibleForModulesFromFileAnalyzer(contentMap.getFiles());
+ HeatStructureTree tree = getHeatStructureTree(vspDetails, contentMap, analyzedZipHeatFiles);
+
+ CandidateDataEntityTo candidateDataEntityTo =
+ new CandidateDataEntityTo(vspDetails.getId(), user, uploadedFileData, tree, contentMap,
+ vspDetails.getVersion());
+ candidateDataEntityTo.setErrors(uploadErrors);
+ OrchestrationTemplateCandidateData candidateDataEntity =
+ candidateService.createCandidateDataEntity(candidateDataEntityTo, zipFileManifest,
+ analyzedZipHeatFiles);
+
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspDetails.getId());
+ return candidateDataEntity;
+ }
+
+ private HeatStructureTree getHeatStructureTree(VspDetails vspDetails,
+ FileContentHandler contentMap,
+ AnalyzedZipHeatFiles analyzedZipHeatFiles) {
+ addManifestToFileContentMapIfNotExist(vspDetails, contentMap, analyzedZipHeatFiles);
+ HeatTreeManager heatTreeManager = HeatTreeManagerUtil.initHeatTreeManager(contentMap);
+ heatTreeManager.createTree();
+ return heatTreeManager.getTree();
+ }
+
+ private void addManifestToFileContentMapIfNotExist(VspDetails vspDetails,
+ FileContentHandler fileContentHandler,
+ AnalyzedZipHeatFiles analyzedZipHeatFiles) {
+ mdcDataDebugMessage.debugEntryMessage("VSP Id", vspDetails.getId());
+
+ InputStream manifest = fileContentHandler.getFileContent(SdcCommon.MANIFEST_NAME);
+ if (Objects.isNull(manifest)) {
+ Optional<ManifestContent> manifestContentOptional =
+ candidateService.createManifest(vspDetails, fileContentHandler, analyzedZipHeatFiles);
+ if (!manifestContentOptional.isPresent()) {
+ throw new RuntimeException(Messages.CREATE_MANIFEST_FROM_ZIP.getErrorMessage());
+ }
+ ManifestContent manifestContent = manifestContentOptional.get();
+ fileContentHandler.addFile(
+ SdcCommon.MANIFEST_NAME,
+ String.valueOf(JsonUtil.sbObject2Json(manifestContent)).getBytes());
+ }
+
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspDetails.getId());
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/CandidateDataEntityTo.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/CandidateDataEntityTo.java
new file mode 100644
index 0000000000..4ea0a02053
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/CandidateDataEntityTo.java
@@ -0,0 +1,90 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types;
+
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class CandidateDataEntityTo {
+ private final String vspId;
+ private final String user;
+// private final UploadFileResponse uploadFileResponse;
+ private Map<String, List<ErrorMessage>> errors = new HashMap<>();
+ private final byte[] uploadedFileData;
+ private final HeatStructureTree tree;
+ private final Version activeVersion;
+ private final FileContentHandler contentMap;
+
+ /**
+ * Instantiates a new Candidate data entity to.
+ * @param vspId the vsp id
+ * @param user the user
+ * @param uploadedFileData the uploaded file data
+ * @param tree the tree
+ * @param contentMap the content map
+ * @param activeVersion the active version
+ */
+ public CandidateDataEntityTo(String vspId, String user,
+ byte[] uploadedFileData, HeatStructureTree tree,
+ FileContentHandler contentMap, Version activeVersion) {
+ this.vspId = vspId;
+ this.user = user;
+ this.errors = errors;
+ this.uploadedFileData = uploadedFileData;
+ this.tree = tree;
+ this.activeVersion = activeVersion;
+ this.contentMap = contentMap;
+ }
+
+ public String getVspId() {
+ return vspId;
+ }
+
+ public String getUser() {
+ return user;
+ }
+
+ public byte[] getUploadedFileData() {
+ return uploadedFileData;
+ }
+
+ public HeatStructureTree getTree() {
+ return tree;
+ }
+
+ public Version getActiveVersion() {
+ return activeVersion;
+ }
+
+ public FileContentHandler getContentMap() {
+ return contentMap;
+ }
+
+ public Map<String, List<ErrorMessage>> getErrors() {return errors;}
+
+ public void setErrors(Map<String, List<ErrorMessage>> errors) {this.errors = errors;}
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/AnalyzedZipHeatFiles.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/AnalyzedZipHeatFiles.java
new file mode 100644
index 0000000000..5e04a1683c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/AnalyzedZipHeatFiles.java
@@ -0,0 +1,84 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat;
+
+import org.apache.commons.collections4.CollectionUtils;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Objects;
+import java.util.Set;
+
+/**
+ * @author Avrahamg
+ * @since December 25, 2016
+ */
+public class AnalyzedZipHeatFiles {
+ private Set<String> nestedFiles = new HashSet<>();
+ private Set<String> otherNonModuleFiles = new HashSet<>();
+ private Set<String> moduleFiles = new HashSet<>();
+
+ public void addNestedFile(String fileName)
+ {
+ nestedFiles.add(fileName);
+ moduleFiles.remove(fileName);
+ }
+
+ public void addNestedFiles(Collection<String> fileNames)
+ {
+ nestedFiles.addAll(fileNames);
+ moduleFiles.removeAll(fileNames);
+ }
+
+ public void addOtherNonModuleFile(String fileName)
+ {
+ otherNonModuleFiles.add(fileName);
+ moduleFiles.remove(fileName);
+ }
+
+ public void addOtherNonModuleFiles(Collection<String> fileNames)
+ {
+ otherNonModuleFiles.addAll(fileNames);
+ moduleFiles.removeAll(fileNames);
+ }
+
+ public void addModuleFile(String fileName)
+ {
+ moduleFiles.add(fileName);
+ }
+
+ public Collection<String> getFilesNotEligbleForModules()
+ {
+ return CollectionUtils.union(this.getNestedFiles(), this.getOtherNonModuleFiles());
+ }
+
+ public Set<String> getNestedFiles() {
+ return nestedFiles;
+ }
+
+ public Set<String> getOtherNonModuleFiles() {
+ return otherNonModuleFiles;
+ }
+
+ public Set<String> getModuleFiles() {
+ return moduleFiles;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/Constants.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/Constants.java
new file mode 100644
index 0000000000..4e19dd67e9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/Constants.java
@@ -0,0 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat;
+
+public class Constants {
+ public static final String BASE_HEAT_REGEX = "(^base_.*\\.|.*_base\\.|.*_base_.*\\.|^base\\.)(yaml|yml)$";
+ public static final String VOL_FILE_NAME_SUFFIX = "_volume";
+ public static final String ENV_FILE_EXTENSION = ".env";
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PolicyDefinition.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/FilesDataStructure.java
index 90f44ae36a..f0d5458082 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PolicyDefinition.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/FilesDataStructure.java
@@ -18,46 +18,46 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat;
+import java.util.ArrayList;
import java.util.List;
-import java.util.Map;
-public class PolicyDefinition implements Template {
- private String type;
- private String description;
- private Map<String, Object> properties;
- private List<String> targets;
+public class FilesDataStructure {
+ private List<Module> modules = new ArrayList<>();
+ private List<String> unassigned = new ArrayList<>();
+ private List<String> artifacts = new ArrayList<>();
+ private List<String> nested = new ArrayList<>();
- public String getType() {
- return type;
+ public List<Module> getModules() {
+ return modules;
}
- public void setType(String type) {
- this.type = type;
+ public void setModules(List<Module> modules) {
+ this.modules = modules;
}
- public String getDescription() {
- return description;
+ public List<String> getUnassigned() {
+ return unassigned;
}
- public void setDescription(String description) {
- this.description = description;
+ public void setUnassigned(List<String> unassigned) {
+ this.unassigned = unassigned;
}
- public Map<String, Object> getProperties() {
- return properties;
+ public List<String> getArtifacts() {
+ return artifacts;
}
- public void setProperties(Map<String, Object> properties) {
- this.properties = properties;
+ public void setArtifacts(List<String> artifacts) {
+ this.artifacts = artifacts;
}
- public List<String> getTargets() {
- return targets;
+ public List<String> getNested() {
+ return nested;
}
- public void setTargets(List<String> targets) {
- this.targets = targets;
+ public void setNested(List<String> nested) {
+ this.nested = nested;
}
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ArtifactDefinition.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/Module.java
index 8461fef85f..45a29f928f 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ArtifactDefinition.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/candidateheat/Module.java
@@ -18,52 +18,62 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat;
-public class ArtifactDefinition {
- private String type;
- private String file;
- private String repository;
- private String description;
- private String deploy_path;
+public class Module {
+ private String name;
+ private Boolean isBase;
+ private String yaml;
+ private String env;
+ private String vol;
+ private String volEnv;
- public String getType() {
- return type;
+ public String getName() {
+ return name;
}
- public void setType(String type) {
- this.type = type;
+ public void setName(String name) {
+ this.name = name;
}
- public String getFile() {
- return file;
+ public Boolean getIsBase() {
+ return isBase;
}
- public void setFile(String file) {
- this.file = file;
+ public void setIsBase(Boolean isBase) {
+ this.isBase = isBase;
}
- public String getRepository() {
- return repository;
+ public String getYaml() {
+ return yaml;
}
- public void setRepository(String repository) {
- this.repository = repository;
+ public void setYaml(String yaml) {
+ this.yaml = yaml;
}
- public String getDescription() {
- return description;
+ public String getEnv() {
+ return env;
}
- public void setDescription(String description) {
- this.description = description;
+ public void setEnv(String env) {
+ this.env = env;
}
- public String getDeploy_path() {
- return deploy_path;
+ public String getVol() {
+ return vol;
}
- public void setDeploy_path(String deployPath) {
- this.deploy_path = deployPath;
+ public void setVol(String vol) {
+ this.vol = vol;
}
+
+ public String getVolEnv() {
+ return volEnv;
+ }
+
+ public void setVolEnv(String volEnv) {
+ this.volEnv = volEnv;
+ }
+
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ComponentData.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ComponentData.java
index 0b3096c686..28d187ec69 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ComponentData.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ComponentData.java
@@ -24,6 +24,7 @@ public class ComponentData implements CompositionDataEntity {
private String name;
private String description;
private String displayName;
+ private String vfcCode;
public String getName() {
return name;
@@ -50,15 +51,23 @@ public class ComponentData implements CompositionDataEntity {
}
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public int hashCode() {
+ int result = name.hashCode();
+ result = 31 * result + (description != null ? description.hashCode() : 0);
+ result = 31 * result + (displayName != null ? displayName.hashCode() : 0);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if (this == object) {
return true;
}
- if (!(obj instanceof ComponentData)) {
+ if (!(object instanceof ComponentData)) {
return false;
}
- ComponentData that = (ComponentData) obj;
+ ComponentData that = (ComponentData) object;
if (!name.equals(that.name)) {
return false;
@@ -70,11 +79,11 @@ public class ComponentData implements CompositionDataEntity {
}
- @Override
- public int hashCode() {
- int result = name.hashCode();
- result = 31 * result + (description != null ? description.hashCode() : 0);
- result = 31 * result + (displayName != null ? displayName.hashCode() : 0);
- return result;
+ public String getVfcCode() {
+ return vfcCode;
+ }
+
+ public void setVfcCode(String vfcCode) {
+ this.vfcCode = vfcCode;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityId.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityId.java
index af1123b2e8..71c8e4609a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityId.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityId.java
@@ -38,15 +38,22 @@ public class CompositionEntityId {
}
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public int hashCode() {
+ int result = id != null ? id.hashCode() : 0;
+ result = 31 * result + (parentId != null ? parentId.hashCode() : 0);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if (this == object) {
return true;
}
- if (obj == null || getClass() != obj.getClass()) {
+ if (object == null || getClass() != object.getClass()) {
return false;
}
- CompositionEntityId that = (CompositionEntityId) obj;
+ CompositionEntityId that = (CompositionEntityId) object;
if (id != null ? !id.equals(that.id) : that.id != null) {
return false;
@@ -54,11 +61,4 @@ public class CompositionEntityId {
return parentId != null ? parentId.equals(that.parentId) : that.parentId == null;
}
-
- @Override
- public int hashCode() {
- int result = id != null ? id.hashCode() : 0;
- result = 31 * result + (parentId != null ? parentId.hashCode() : 0);
- return result;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityType.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityType.java
index f762aeb341..4695210de5 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityType.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityType.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.vendorsoftwareproduct.types.composition;
+
public enum CompositionEntityType {
vsp,
network,
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityValidationData.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityValidationData.java
new file mode 100644
index 0000000000..d126763409
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/CompositionEntityValidationData.java
@@ -0,0 +1,132 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.composition;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+public class CompositionEntityValidationData {
+ private CompositionEntityType entityType;
+ private String entityId;
+ private String entityName;
+ private Collection<String> errors;
+ private Collection<CompositionEntityValidationData> subEntitiesValidationData;
+
+ public CompositionEntityValidationData(CompositionEntityType entityType, String entityId) {
+ this.entityType = entityType;
+ this.entityId = entityId;
+ }
+
+ public String getEntityName() {
+ return entityName;
+ }
+
+ public void setEntityName(String entityName) {
+ this.entityName = entityName;
+ }
+
+ public CompositionEntityType getEntityType() {
+ return entityType;
+ }
+
+ public void setEntityType(CompositionEntityType entityType) {
+ this.entityType = entityType;
+ }
+
+ public String getEntityId() {
+ return entityId;
+ }
+
+ public void setEntityId(String entityId) {
+ this.entityId = entityId;
+ }
+
+ public Collection<String> getErrors() {
+ return errors;
+ }
+
+ public void setErrors(Collection<String> errors) {
+ this.errors = errors;
+ }
+
+ public Collection<CompositionEntityValidationData> getSubEntitiesValidationData() {
+ return subEntitiesValidationData;
+ }
+
+ public void setSubEntitiesValidationData(Collection<CompositionEntityValidationData> toSet) {
+ this.subEntitiesValidationData = toSet;
+ }
+
+ /**
+ * Add sub entity validation data.
+ *
+ * @param subEntityValidationData the sub entity validation data
+ */
+ public void addSubEntityValidationData(CompositionEntityValidationData subEntityValidationData) {
+ if (subEntitiesValidationData == null) {
+ subEntitiesValidationData = new ArrayList<>();
+ }
+ subEntitiesValidationData.add(subEntityValidationData);
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+
+ CompositionEntityValidationData that = (CompositionEntityValidationData) o;
+
+ if (entityType != that.entityType) {
+ return false;
+ }
+ if (entityId != null ? !entityId.equals(that.entityId) : that.entityId != null) {
+ return false;
+ }
+ if (entityName != null ? !entityName.equals(that.entityName) : that.entityName != null) {
+ return false;
+ }
+ if (errors != null ? !errors.equals(that.errors) : that.errors != null) {
+ return false;
+ }
+ if (subEntitiesValidationData != null ? !subEntitiesValidationData
+ .equals(that.subEntitiesValidationData) : that.subEntitiesValidationData != null) {
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = entityType != null ? entityType.hashCode() : 0;
+ result = 31 * result + (entityId != null ? entityId.hashCode() : 0);
+ result = 31 * result + (entityName != null ? entityName.hashCode() : 0);
+ result = 31 * result + (errors != null ? errors.hashCode() : 0);
+ result =
+ 31 * result +
+ (subEntitiesValidationData != null ? subEntitiesValidationData.hashCode() : 0);
+ return result;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ExtractCompositionDataContext.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ExtractCompositionDataContext.java
new file mode 100644
index 0000000000..6736512cee
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/ExtractCompositionDataContext.java
@@ -0,0 +1,134 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.composition;
+
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Component;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Network;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Nic;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+public class ExtractCompositionDataContext {
+ private List<Network> networks = new ArrayList<>();
+ private List<Component> components = new ArrayList<>();
+ private Map<String, Nic> nics = new HashMap<>();
+ private Set<String> handledServiceTemplates = new HashSet<>();
+ private Set<String> createdComponents = new HashSet<>();
+
+ public Set<String> getCreatedComponents() {
+ return createdComponents;
+ }
+
+ public void setCreatedComponents(Set<String> createdComponents) {
+ this.createdComponents = createdComponents;
+ }
+
+ public Set<String> getHandledServiceTemplates() {
+ return handledServiceTemplates;
+ }
+
+ public void setHandledServiceTemplates(Set<String> handledServiceTemplates) {
+ this.handledServiceTemplates = handledServiceTemplates;
+ }
+
+ public void addHandledServiceTemplates(String handledServiceTemplate) {
+ this.handledServiceTemplates.add(handledServiceTemplate);
+ }
+
+ public List<Network> getNetworks() {
+ return networks;
+ }
+
+ public void setNetworks(List<Network> networks) {
+ this.networks = networks;
+ }
+
+ /**
+ * Add network.
+ *
+ * @param network the network
+ */
+ public void addNetwork(Network network) {
+ if (network != null) {
+ networks.add(network);
+ }
+ }
+
+ /**
+ * Add networks.
+ *
+ * @param network the network
+ */
+ public void addNetworks(List<Network> network) {
+ if (networks != null) {
+ networks.addAll(network);
+ }
+ }
+
+ public List<Component> getComponents() {
+ return components;
+ }
+
+ public void setComponents(List<Component> components) {
+ this.components = components;
+ }
+
+ /**
+ * Add component.
+ *
+ * @param component the component
+ */
+ public void addComponent(Component component) {
+ if (component != null) {
+ components.add(component);
+ }
+ }
+
+ /**
+ * Add components.
+ *
+ * @param components the components
+ */
+ public void addComponents(List<Component> components) {
+ if (components != null) {
+ this.components.addAll(components);
+ }
+ }
+
+ public Map<String, Nic> getNics() {
+ return nics;
+ }
+
+ public void setNics(Map<String, Nic> nics) {
+ this.nics = nics;
+ }
+
+ public void addNic(String nicId, Nic nic) {
+ this.nics.put(nicId, nic);
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Network.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Network.java
index 2f9eb4e69c..ba0361b3b4 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Network.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Network.java
@@ -41,15 +41,22 @@ public class Network implements CompositionDataEntity {
}
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public int hashCode() {
+ int result = name != null ? name.hashCode() : 0;
+ result = 31 * result + (dhcp ? 1 : 0);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if (this == object) {
return true;
}
- if (obj == null || getClass() != obj.getClass()) {
+ if (object == null || getClass() != object.getClass()) {
return false;
}
- Network network = (Network) obj;
+ Network network = (Network) object;
if (dhcp != network.dhcp) {
return false;
@@ -57,11 +64,4 @@ public class Network implements CompositionDataEntity {
return name != null ? name.equals(network.name) : network.name == null;
}
-
- @Override
- public int hashCode() {
- int result = name != null ? name.hashCode() : 0;
- result = 31 * result + (dhcp ? 1 : 0);
- return result;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Nic.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Nic.java
index e44a731824..24832951a8 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Nic.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/composition/Nic.java
@@ -68,15 +68,24 @@ public class Nic implements CompositionDataEntity {
}
@Override
- public boolean equals(Object obj) {
- if (this == obj) {
+ public int hashCode() {
+ int result = name != null ? name.hashCode() : 0;
+ result = 31 * result + (description != null ? description.hashCode() : 0);
+ result = 31 * result + (networkId != null ? networkId.hashCode() : 0);
+ result = 31 * result + (networkType != null ? networkType.hashCode() : 0);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if (this == object) {
return true;
}
- if (obj == null || getClass() != obj.getClass()) {
+ if (object == null || getClass() != object.getClass()) {
return false;
}
- Nic nic = (Nic) obj;
+ Nic nic = (Nic) object;
if (name != null ? !name.equals(nic.name) : nic.name != null) {
return false;
@@ -90,13 +99,4 @@ public class Nic implements CompositionDataEntity {
return networkType == nic.networkType;
}
-
- @Override
- public int hashCode() {
- int result = name != null ? name.hashCode() : 0;
- result = 31 * result + (description != null ? description.hashCode() : 0);
- result = 31 * result + (networkId != null ? networkId.hashCode() : 0);
- result = 31 * result + (networkType != null ? networkType.hashCode() : 0);
- return result;
- }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/ComponentQuestionnaire.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/ComponentQuestionnaire.java
new file mode 100644
index 0000000000..e451292eaf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/ComponentQuestionnaire.java
@@ -0,0 +1,79 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component;
+
+
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute.Compute;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general.General;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.highAvailability.HighAvailabilityAndLoadBalancing;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.network.Network;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.storage.Storage;
+
+/**
+ * Created by TALIO on 11/21/2016
+ */
+public class ComponentQuestionnaire {
+ private General general;
+ private Compute compute;
+ private HighAvailabilityAndLoadBalancing highAvailabilityAndLoadBalancing;
+ private Network network;
+ private Storage storage;
+
+ public General getGeneral() {
+ return general;
+ }
+
+ public void setGeneral(General general) {
+ this.general = general;
+ }
+
+ public Compute getCompute() {
+ return compute;
+ }
+
+ public void setCompute(Compute compute) {
+ this.compute = compute;
+ }
+
+ public HighAvailabilityAndLoadBalancing getHighAvailabilityAndLoadBalancing() {
+ return highAvailabilityAndLoadBalancing;
+ }
+
+ public void setHighAvailabilityAndLoadBalancing(HighAvailabilityAndLoadBalancing highAvailabilityAndLoadBalancing) {
+ this.highAvailabilityAndLoadBalancing = highAvailabilityAndLoadBalancing;
+ }
+
+ public Network getNetwork() {
+ return network;
+ }
+
+ public void setNetwork(Network network) {
+ this.network = network;
+ }
+
+ public Storage getStorage() {
+ return storage;
+ }
+
+ public void setStorage(Storage storage) {
+ this.storage = storage;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/Compute.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/Compute.java
new file mode 100644
index 0000000000..9295288aca
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/Compute.java
@@ -0,0 +1,54 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Compute {
+ private GuestOS guestOS;
+ private NumOfVMs numOfVMs;
+ private VmSizing vmSizing;
+
+ public GuestOS getGuestOS() {
+ return guestOS;
+ }
+
+ public void setGuestOS(GuestOS guestOS) {
+ this.guestOS = guestOS;
+ }
+
+ public NumOfVMs getNumOfVMs() {
+ return numOfVMs;
+ }
+
+ public void setNumOfVMs(NumOfVMs numOfVMs) {
+ this.numOfVMs = numOfVMs;
+ }
+
+ public VmSizing getVmSizing() {
+ return vmSizing;
+ }
+
+ public void setVmSizing(VmSizing vmSizing) {
+ this.vmSizing = vmSizing;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/GuestOS.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/GuestOS.java
new file mode 100644
index 0000000000..db22b3a3ee
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/GuestOS.java
@@ -0,0 +1,54 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class GuestOS {
+ private String name;
+ private String tools;
+ private int bitSize;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getTools() {
+ return tools;
+ }
+
+ public void setTools(String tools) {
+ this.tools = tools;
+ }
+
+ public int getBitSize() {
+ return bitSize;
+ }
+
+ public void setBitSize(int bitSize) {
+ this.bitSize = bitSize;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/NumOfVMs.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/NumOfVMs.java
new file mode 100644
index 0000000000..3b0b8dbb0c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/NumOfVMs.java
@@ -0,0 +1,63 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class NumOfVMs {
+ private int minimum;
+ private int maximum;
+ private String CpuOverSubscriptionRatio;
+ private String MemoryRAM;
+
+ public int getMinimum() {
+ return minimum;
+ }
+
+ public void setMinimum(int minimum) {
+ this.minimum = minimum;
+ }
+
+ public int getMaximum() {
+ return maximum;
+ }
+
+ public void setMaximum(int maximum) {
+ this.maximum = maximum;
+ }
+
+ public String getCpuOverSubscriptionRatio() {
+ return CpuOverSubscriptionRatio;
+ }
+
+ public void setCpuOverSubscriptionRatio(String cpuOverSubscriptionRatio) {
+ CpuOverSubscriptionRatio = cpuOverSubscriptionRatio;
+ }
+
+ public String getMemoryRAM() {
+ return MemoryRAM;
+ }
+
+ public void setMemoryRAM(String memoryRAM) {
+ MemoryRAM = memoryRAM;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/VmSizing.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/VmSizing.java
new file mode 100644
index 0000000000..2ae7f48f33
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/compute/VmSizing.java
@@ -0,0 +1,63 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class VmSizing {
+ private int numOfCPUs;
+ private int fileSystemSizeGB;
+ private int persistentStorageVolumeSize;
+ private int IOOperationsPerSec;
+
+ public int getNumOfCPUs() {
+ return numOfCPUs;
+ }
+
+ public void setNumOfCPUs(int numOfCPUs) {
+ this.numOfCPUs = numOfCPUs;
+ }
+
+ public int getFileSystemSizeGB() {
+ return fileSystemSizeGB;
+ }
+
+ public void setFileSystemSizeGB(int fileSystemSizeGB) {
+ this.fileSystemSizeGB = fileSystemSizeGB;
+ }
+
+ public int getPersistentStorageVolumeSize() {
+ return persistentStorageVolumeSize;
+ }
+
+ public void setPersistentStorageVolumeSize(int persistentStorageVolumeSize) {
+ this.persistentStorageVolumeSize = persistentStorageVolumeSize;
+ }
+
+ public int getIOOperationsPerSec() {
+ return IOOperationsPerSec;
+ }
+
+ public void setIOOperationsPerSec(int IOOperationsPerSec) {
+ this.IOOperationsPerSec = IOOperationsPerSec;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/General.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/General.java
new file mode 100644
index 0000000000..7d64906741
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/General.java
@@ -0,0 +1,72 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class General {
+ private Hypervisor hypervisor;
+ private Image image;
+ protected Recovery recovery;
+ private String dnsConfiguration;
+ private String vmCloneUsage;
+
+ public Hypervisor getHypervisor() {
+ return hypervisor;
+ }
+
+ public void setHypervisor(Hypervisor hypervisor) {
+ this.hypervisor = hypervisor;
+ }
+
+ public Image getImage() {
+ return image;
+ }
+
+ public void setImage(Image image) {
+ this.image = image;
+ }
+
+ public Recovery getRecovery() {
+ return recovery;
+ }
+
+ public void setRecovery(Recovery recovery) {
+ this.recovery = recovery;
+ }
+
+ public String getDnsConfiguration() {
+ return dnsConfiguration;
+ }
+
+ public void setDnsConfiguration(String dnsConfiguration) {
+ this.dnsConfiguration = dnsConfiguration;
+ }
+
+ public String getVmCloneUsage() {
+ return vmCloneUsage;
+ }
+
+ public void setVmCloneUsage(String vmCloneUsage) {
+ this.vmCloneUsage = vmCloneUsage;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Hypervisor.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Hypervisor.java
new file mode 100644
index 0000000000..930a3ce285
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Hypervisor.java
@@ -0,0 +1,54 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Hypervisor {
+ private String hypervisor;
+ private String drivers;
+ private String containerFeaturesDescription;
+
+ public String getHypervisor() {
+ return hypervisor;
+ }
+
+ public void setHypervisor(String hypervisor) {
+ this.hypervisor = hypervisor;
+ }
+
+ public String getDrivers() {
+ return drivers;
+ }
+
+ public void setDrivers(String drivers) {
+ this.drivers = drivers;
+ }
+
+ public String getContainerFeaturesDescription() {
+ return containerFeaturesDescription;
+ }
+
+ public void setContainerFeaturesDescription(String containerFeaturesDescription) {
+ this.containerFeaturesDescription = containerFeaturesDescription;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Image.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Image.java
new file mode 100644
index 0000000000..09e83b875f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Image.java
@@ -0,0 +1,63 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Image {
+ private String format;
+ private String providedBy;
+ private int bootDiskSizePerVM;
+ private int ephemeralDiskSizePerVM;
+
+ public String getFormat() {
+ return format;
+ }
+
+ public void setFormat(String format) {
+ this.format = format;
+ }
+
+ public String getProvidedBy() {
+ return providedBy;
+ }
+
+ public void setProvidedBy(String providedBy) {
+ this.providedBy = providedBy;
+ }
+
+ public int getBootDiskSizePerVM() {
+ return bootDiskSizePerVM;
+ }
+
+ public void setBootDiskSizePerVM(int bootDiskSizePerVM) {
+ this.bootDiskSizePerVM = bootDiskSizePerVM;
+ }
+
+ public int getEphemeralDiskSizePerVM() {
+ return ephemeralDiskSizePerVM;
+ }
+
+ public void setEphemeralDiskSizePerVM(int ephemeralDiskSizePerVM) {
+ this.ephemeralDiskSizePerVM = ephemeralDiskSizePerVM;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Recovery.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Recovery.java
new file mode 100644
index 0000000000..4a13829d71
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/general/Recovery.java
@@ -0,0 +1,54 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Recovery {
+ private int pointObjective;
+ private int timeObjective;
+ private String vmProcessFailuresHandling;
+
+ public int getPointObjective() {
+ return pointObjective;
+ }
+
+ public void setPointObjective(int pointObjective) {
+ this.pointObjective = pointObjective;
+ }
+
+ public int getTimeObjective() {
+ return timeObjective;
+ }
+
+ public void setTimeObjective(int timeObjective) {
+ this.timeObjective = timeObjective;
+ }
+
+ public String getVmProcessFailuresHandling() {
+ return vmProcessFailuresHandling;
+ }
+
+ public void setVmProcessFailuresHandling(String vmProcessFailuresHandling) {
+ this.vmProcessFailuresHandling = vmProcessFailuresHandling;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/highAvailability/HighAvailabilityAndLoadBalancing.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/highAvailability/HighAvailabilityAndLoadBalancing.java
new file mode 100644
index 0000000000..b5965887ba
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/highAvailability/HighAvailabilityAndLoadBalancing.java
@@ -0,0 +1,100 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.highAvailability;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class HighAvailabilityAndLoadBalancing {
+ private String failureLoadDistribution;
+ private String nkModelImplementation;
+ private String architectureChoice;
+ private String slaRequirements;
+ private String horizontalScaling;
+ private String loadDistributionMechanism;
+ private String isComponentMandatory;
+ private String highAvailabilityMode;
+
+ public String getFailureLoadDistribution() {
+ return failureLoadDistribution;
+ }
+
+ public void setFailureLoadDistribution(String failureLoadDistribution) {
+ this.failureLoadDistribution = failureLoadDistribution;
+ }
+
+ public String getNkModelImplementation() {
+ return nkModelImplementation;
+ }
+
+ public void setNkModelImplementation(String nkModelImplementation) {
+ this.nkModelImplementation = nkModelImplementation;
+ }
+
+ public String getArchitectureChoice() {
+ return architectureChoice;
+ }
+
+ public void setArchitectureChoice(String architectureChoice) {
+ this.architectureChoice = architectureChoice;
+ }
+
+ public String getSlaRequirements() {
+ return slaRequirements;
+ }
+
+ public void setSlaRequirements(String slaRequirements) {
+ this.slaRequirements = slaRequirements;
+ }
+
+ public String getHorizontalScaling() {
+ return horizontalScaling;
+ }
+
+ public void setHorizontalScaling(String horizontalScaling) {
+ this.horizontalScaling = horizontalScaling;
+ }
+
+ public String getLoadDistributionMechanism() {
+ return loadDistributionMechanism;
+ }
+
+ public void setLoadDistributionMechanism(String loadDistributionMechanism) {
+ this.loadDistributionMechanism = loadDistributionMechanism;
+ }
+
+ public String getIsComponentMandatory() {
+ return isComponentMandatory;
+ }
+
+ public void setIsComponentMandatory(String isComponentMandatory) {
+ this.isComponentMandatory = isComponentMandatory;
+ }
+
+ public String getHighAvailabilityMode() {
+ return highAvailabilityMode;
+ }
+
+ public void setHighAvailabilityMode(String highAvailabilityMode) {
+ this.highAvailabilityMode = highAvailabilityMode;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/Network.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/Network.java
new file mode 100644
index 0000000000..3e631c791e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/Network.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.network;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Network {
+ private NetworkCapacity networkCapacity;
+
+ public NetworkCapacity getNetworkCapacity() {
+ return networkCapacity;
+ }
+
+ public void setNetworkCapacity(NetworkCapacity networkCapacity) {
+ this.networkCapacity = networkCapacity;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/NetworkCapacity.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/NetworkCapacity.java
new file mode 100644
index 0000000000..cd1e6e67b5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/network/NetworkCapacity.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.network;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class NetworkCapacity {
+ private String protocolWithHighestTrafficProfileAcrossAllNICs;
+ private int networkTransactionsPerSecond;
+
+ public String getProtocolWithHighestTrafficProfileAcrossAllNICs() {
+ return protocolWithHighestTrafficProfileAcrossAllNICs;
+ }
+
+ public void setProtocolWithHighestTrafficProfileAcrossAllNICs(String protocolWithHighestTrafficProfileAcrossAllNICs) {
+ this.protocolWithHighestTrafficProfileAcrossAllNICs = protocolWithHighestTrafficProfileAcrossAllNICs;
+ }
+
+ public int getNetworkTransactionsPerSecond() {
+ return networkTransactionsPerSecond;
+ }
+
+ public void setNetworkTransactionsPerSecond(int networkTransactionsPerSecond) {
+ this.networkTransactionsPerSecond = networkTransactionsPerSecond;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/Backup.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/Backup.java
new file mode 100644
index 0000000000..df5bcb0a02
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/Backup.java
@@ -0,0 +1,63 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.storage;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Backup {
+ private String backupType;
+ private String backupSolution;
+ private String backupNIC;
+ private int backupStorageSize;
+
+ public String getBackupType() {
+ return backupType;
+ }
+
+ public void setBackupType(String backupType) {
+ this.backupType = backupType;
+ }
+
+ public String getBackupSolution() {
+ return backupSolution;
+ }
+
+ public void setBackupSolution(String backupSolution) {
+ this.backupSolution = backupSolution;
+ }
+
+ public String getBackupNIC() {
+ return backupNIC;
+ }
+
+ public void setBackupNIC(String backupNIC) {
+ this.backupNIC = backupNIC;
+ }
+
+ public int getBackupStorageSize() {
+ return backupStorageSize;
+ }
+
+ public void setBackupStorageSize(int backupStorageSize) {
+ this.backupStorageSize = backupStorageSize;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/LogBackup.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/LogBackup.java
new file mode 100644
index 0000000000..cbf1fbeb78
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/LogBackup.java
@@ -0,0 +1,63 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.storage;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class LogBackup {
+ private int sizeOfLogFiles;
+ private int logBackupFrequency;
+ private int logRetentionPeriod;
+ private String logFileLocation;
+
+ public int getSizeOfLogFiles() {
+ return sizeOfLogFiles;
+ }
+
+ public void setSizeOfLogFiles(int sizeOfLogFiles) {
+ this.sizeOfLogFiles = sizeOfLogFiles;
+ }
+
+ public int getLogBackupFrequency() {
+ return logBackupFrequency;
+ }
+
+ public void setLogBackupFrequency(int logBackupFrequency) {
+ this.logBackupFrequency = logBackupFrequency;
+ }
+
+ public int getLogRetentionPeriod() {
+ return logRetentionPeriod;
+ }
+
+ public void setLogRetentionPeriod(int logRetentionPeriod) {
+ this.logRetentionPeriod = logRetentionPeriod;
+ }
+
+ public String getLogFileLocation() {
+ return logFileLocation;
+ }
+
+ public void setLogFileLocation(String logFileLocation) {
+ this.logFileLocation = logFileLocation;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/SnapshotBackup.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/SnapshotBackup.java
new file mode 100644
index 0000000000..6d61c5751a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/SnapshotBackup.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.storage;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class SnapshotBackup {
+ private int snapshotFrequency;
+
+ public int getSnapshotFrequency() {
+ return snapshotFrequency;
+ }
+
+ public void setSnapshotFrequency(int snapshotFrequency) {
+ this.snapshotFrequency = snapshotFrequency;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentInfo.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/Storage.java
index 0a1f3d36ff..36d34964ef 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-impl/src/main/java/org/openecomp/sdc/enrichment/impl/tosca/ComponentInfo.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/component/storage/Storage.java
@@ -18,30 +18,37 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.enrichment.impl.tosca;
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.storage;
-import org.openecomp.core.enrichment.types.ComponentCeilometerInfo;
-import org.openecomp.core.enrichment.types.ComponentMibInfo;
-import org.openecomp.core.enrichment.types.EntityInfo;
-
-public class ComponentInfo implements EntityInfo {
-
- private ComponentCeilometerInfo ceilometerInfo;
- private ComponentMibInfo mibInfo;
-
- public ComponentCeilometerInfo getCeilometerInfo() {
- return ceilometerInfo;
- }
-
- public void setCeilometerInfo(ComponentCeilometerInfo ceilometerInfo) {
- this.ceilometerInfo = ceilometerInfo;
- }
-
- public ComponentMibInfo getMibInfo() {
- return mibInfo;
- }
-
- public void setMibInfo(ComponentMibInfo mibInfo) {
- this.mibInfo = mibInfo;
- }
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Storage {
+ private Backup backup;
+ private LogBackup logBackup;
+ private SnapshotBackup snapshotBackup;
+
+ public Backup getBackup() {
+ return backup;
+ }
+
+ public void setBackup(Backup backup) {
+ this.backup = backup;
+ }
+
+ public LogBackup getLogBackup() {
+ return logBackup;
+ }
+
+ public void setLogBackup(LogBackup logBackup) {
+ this.logBackup = logBackup;
+ }
+
+ public SnapshotBackup getSnapshotBackup() {
+ return snapshotBackup;
+ }
+
+ public void setSnapshotBackup(SnapshotBackup snapshotBackup) {
+ this.snapshotBackup = snapshotBackup;
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/AcceptableJitter.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/AcceptableJitter.java
new file mode 100644
index 0000000000..e81822ef5f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/AcceptableJitter.java
@@ -0,0 +1,54 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class AcceptableJitter {
+ private int mean;
+ private int max;
+ private int variable;
+
+ public int getMean() {
+ return mean;
+ }
+
+ public void setMean(int mean) {
+ this.mean = mean;
+ }
+
+ public int getMax() {
+ return max;
+ }
+
+ public void setMax(int max) {
+ this.max = max;
+ }
+
+ public int getVariable() {
+ return variable;
+ }
+
+ public void setVariable(int variable) {
+ this.variable = variable;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/IpConfiguration.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/IpConfiguration.java
new file mode 100644
index 0000000000..06359eb3ef
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/IpConfiguration.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class IpConfiguration {
+ private boolean ipv4Required;
+ private boolean ipv6Required;
+
+ public boolean isIpv4Required() {
+ return ipv4Required;
+ }
+
+ public void setIpv4Required(boolean ipv4Required) {
+ this.ipv4Required = ipv4Required;
+ }
+
+ public boolean isIpv6Required() {
+ return ipv6Required;
+ }
+
+ public void setIpv6Required(boolean ipv6Required) {
+ this.ipv6Required = ipv6Required;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Network.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Network.java
new file mode 100644
index 0000000000..882d309b66
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Network.java
@@ -0,0 +1,44 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+/**
+ * Created by TALIO on 11/22/2016
+ */
+public class Network {
+ private String networkDescription;
+
+ public String getNetworkDescription() {
+ return networkDescription;
+ }
+
+ public void setNetworkDescription(String networkDescription) {
+ this.networkDescription = networkDescription;
+ }
+
+ @Override
+ public String toString() {
+ final StringBuilder sb = new StringBuilder("Network{");
+ sb.append("networkDescription='").append(networkDescription).append('\'');
+ sb.append('}');
+ return sb.toString();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/NicQuestionnaire.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/NicQuestionnaire.java
new file mode 100644
index 0000000000..0bc8b5df47
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/NicQuestionnaire.java
@@ -0,0 +1,63 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+/**
+ * Created by TALIO on 11/21/2016.
+ */
+public class NicQuestionnaire {
+ private Protocols protocols;
+ private IpConfiguration ipConfiguration;
+ private Network network;
+ private Sizing sizing;
+
+ public Protocols getProtocols() {
+ return protocols;
+ }
+
+ public void setProtocols(Protocols protocols) {
+ this.protocols = protocols;
+ }
+
+ public IpConfiguration getIpConfiguration() {
+ return ipConfiguration;
+ }
+
+ public void setIpConfiguration(IpConfiguration ipConfiguration) {
+ this.ipConfiguration = ipConfiguration;
+ }
+
+ public Network getNetwork() {
+ return network;
+ }
+
+ public void setNetwork(Network network) {
+ this.network = network;
+ }
+
+ public Sizing getSizing() {
+ return sizing;
+ }
+
+ public void setSizing(Sizing sizing) {
+ this.sizing = sizing;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PacketsAndBytes.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PacketsAndBytes.java
new file mode 100644
index 0000000000..358620254c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PacketsAndBytes.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class PacketsAndBytes {
+ private PeakAndAvg packets;
+ private PeakAndAvg bytes;
+
+ public PeakAndAvg getPackets() {
+ return packets;
+ }
+
+ public void setPackets(PeakAndAvg packets) {
+ this.packets = packets;
+ }
+
+ public PeakAndAvg getBytes() {
+ return bytes;
+ }
+
+ public void setBytes(PeakAndAvg bytes) {
+ this.bytes = bytes;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PeakAndAvg.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PeakAndAvg.java
new file mode 100644
index 0000000000..3d80224698
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/PeakAndAvg.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class PeakAndAvg {
+ private int peak;
+ private int avg;
+
+ public int getPeak() {
+ return peak;
+ }
+
+ public void setPeak(int peak) {
+ this.peak = peak;
+ }
+
+ public int getAvg() {
+ return avg;
+ }
+
+ public void setAvg(int avg) {
+ this.avg = avg;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Protocols.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Protocols.java
new file mode 100644
index 0000000000..37b76bd451
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Protocols.java
@@ -0,0 +1,58 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class Protocols {
+ private List<String> protocols = new ArrayList<>();
+ private String protocolWithHighestTrafficProfile;
+
+ public List<String> getProtocols() {
+ return protocols;
+ }
+
+ public void setProtocols(List<String> protocols) {
+ this.protocols = protocols;
+ }
+
+ public String getProtocolWithHighestTrafficProfile() {
+ return protocolWithHighestTrafficProfile;
+ }
+
+ public void setProtocolWithHighestTrafficProfile(String protocolWithHighestTrafficProfile) {
+ this.protocolWithHighestTrafficProfile = protocolWithHighestTrafficProfile;
+ }
+
+ @Override
+ public String toString() {
+ final StringBuilder sb = new StringBuilder("Protocols{");
+ sb.append("protocols=").append(protocols);
+ sb.append(", protocolWithHighestTrafficProfile='").append(protocolWithHighestTrafficProfile)
+ .append('\'');
+ sb.append('}');
+ return sb.toString();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Sizing.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Sizing.java
new file mode 100644
index 0000000000..32a9e5a186
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/nic/Sizing.java
@@ -0,0 +1,81 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic;
+
+/**
+ * Created by TALIO on 11/22/2016
+ */
+public class Sizing {
+ private String describeQualityOfService;
+ private int acceptablePacketLoss;
+ private PacketsAndBytes inflowTrafficPerSecond;
+ private PacketsAndBytes outflowTrafficPerSecond;
+ private PacketsAndBytes flowLength;
+ private AcceptableJitter acceptableJitter;
+
+ public String getDescribeQualityOfService() {
+ return describeQualityOfService;
+ }
+
+ public void setDescribeQualityOfService(String describeQualityOfService) {
+ this.describeQualityOfService = describeQualityOfService;
+ }
+
+ public int getAcceptablePacketLoss() {
+ return acceptablePacketLoss;
+ }
+
+ public void setAcceptablePacketLoss(int acceptablePacketLoss) {
+ this.acceptablePacketLoss = acceptablePacketLoss;
+ }
+
+ public PacketsAndBytes getInflowTrafficPerSecond() {
+ return inflowTrafficPerSecond;
+ }
+
+ public void setInflowTrafficPerSecond(PacketsAndBytes inflowTrafficPerSecond) {
+ this.inflowTrafficPerSecond = inflowTrafficPerSecond;
+ }
+
+ public PacketsAndBytes getOutflowTrafficPerSecond() {
+ return outflowTrafficPerSecond;
+ }
+
+ public void setOutflowTrafficPerSecond(PacketsAndBytes outflowTrafficPerSecond) {
+ this.outflowTrafficPerSecond = outflowTrafficPerSecond;
+ }
+
+ public PacketsAndBytes getFlowLength() {
+ return flowLength;
+ }
+
+ public void setFlowLength(PacketsAndBytes flowLength) {
+ this.flowLength = flowLength;
+ }
+
+ public AcceptableJitter getAcceptableJitter() {
+ return acceptableJitter;
+ }
+
+ public void setAcceptableJitter(AcceptableJitter acceptableJitter) {
+ this.acceptableJitter = acceptableJitter;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/VspQuestionnaire.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/VspQuestionnaire.java
new file mode 100644
index 0000000000..0b53e04f0c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/VspQuestionnaire.java
@@ -0,0 +1,39 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp;
+
+
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general.General;
+
+/**
+ * Created by TALIO on 11/21/2016.
+ */
+public class VspQuestionnaire {
+ private General general;
+
+ public General getGeneral() {
+ return general;
+ }
+
+ public void setGeneral(General general) {
+ this.general = general;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/Availability.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/Availability.java
new file mode 100644
index 0000000000..4f146466f8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/Availability.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general;
+
+/**
+ * Created by TALIO on 11/21/2016.
+ */
+public class Availability {
+ private boolean useAvailabilityZonesForHighAvailability = false;
+
+ public boolean isUseAvailabilityZonesForHighAvailability() {
+ return useAvailabilityZonesForHighAvailability;
+ }
+
+ public void setUseAvailabilityZonesForHighAvailability(boolean useAvailabilityZonesForHighAvailability) {
+ this.useAvailabilityZonesForHighAvailability = useAvailabilityZonesForHighAvailability;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/General.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/General.java
new file mode 100644
index 0000000000..566374f1f7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/General.java
@@ -0,0 +1,64 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general;
+
+/**
+ * Created by TALIO on 11/22/2016.
+ */
+public class General {
+
+ private String affinityData;
+ private Availability availability;
+ private RegionsData regionsData;
+ private StorageDataReplication storageDataReplication;
+
+ public StorageDataReplication getStorageDataReplication() {
+ return storageDataReplication;
+ }
+
+ public void setStorageDataReplication(StorageDataReplication storageDataReplication) {
+ this.storageDataReplication = storageDataReplication;
+ }
+
+ public String getAffinityData() {
+ return affinityData;
+ }
+
+ public void setAffinityData(String affinityData) {
+ this.affinityData = affinityData;
+ }
+
+ public Availability getAvailability() {
+ return availability;
+ }
+
+ public void setAvailability(Availability availability) {
+ this.availability = availability;
+ }
+
+ public RegionsData getRegionsData() {
+ return regionsData;
+ }
+
+ public void setRegionsData(RegionsData regionsData) {
+ this.regionsData = regionsData;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/RegionsData.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/RegionsData.java
new file mode 100644
index 0000000000..efdcb46e89
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/RegionsData.java
@@ -0,0 +1,48 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by TALIO on 11/21/2016.
+ */
+public class RegionsData {
+ private boolean multiRegion;
+ private List<String> regions = new ArrayList<>();
+
+ public boolean isMultiRegion() {
+ return multiRegion;
+ }
+
+ public void setMultiRegion(boolean multiRegion) {
+ this.multiRegion = multiRegion;
+ }
+
+ public List<String> getRegions() {
+ return regions;
+ }
+
+ public void setRegions(List<String> regions) {
+ this.regions = regions;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/StorageDataReplication.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/StorageDataReplication.java
new file mode 100644
index 0000000000..7c073af422
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/questionnaire/vsp/general/StorageDataReplication.java
@@ -0,0 +1,72 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general;
+
+/**
+ * Created by TALIO on 11/21/2016.
+ */
+public class StorageDataReplication {
+ private boolean storageReplicationAcrossRegion;
+ private int storageReplicationSize;
+ private int storageReplicationFrequency;
+ private String storageReplicationSource;
+ private String storageReplicationDestination;
+
+ public String getStorageReplicationDestination() {
+ return storageReplicationDestination;
+ }
+
+ public void setStorageReplicationDestination(String storageReplicationDestination) {
+ this.storageReplicationDestination = storageReplicationDestination;
+ }
+
+ public int getStorageReplicationSize() {
+ return storageReplicationSize;
+ }
+
+ public void setStorageReplicationSize(int storageReplicationSize) {
+ this.storageReplicationSize = storageReplicationSize;
+ }
+
+ public int getStorageReplicationFrequency() {
+ return storageReplicationFrequency;
+ }
+
+ public void setStorageReplicationFrequency(int storageReplicationFrequency) {
+ this.storageReplicationFrequency = storageReplicationFrequency;
+ }
+
+ public String getStorageReplicationSource() {
+ return storageReplicationSource;
+ }
+
+ public void setStorageReplicationSource(String storageReplicationSource) {
+ this.storageReplicationSource = storageReplicationSource;
+ }
+
+ public boolean isStorageReplicationAcrossRegion() {
+ return storageReplicationAcrossRegion;
+ }
+
+ public void setStorageReplicationAcrossRegion(boolean storageReplicationAcrossRegion) {
+ this.storageReplicationAcrossRegion = storageReplicationAcrossRegion;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationConfiguration.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/ComponentCompositionSchemaInput.java
index 1a74e1cc34..46d0c6c40d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-core/src/main/java/org/openecomp/sdc/validation/utils/ValidationConfiguration.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/ComponentCompositionSchemaInput.java
@@ -18,20 +18,27 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.validation.utils;
+package org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator;
-import java.util.Collections;
-import java.util.List;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.ComponentData;
-public class ValidationConfiguration {
- private List<ValidatorConfiguration> validatorConfigurationList;
+public class ComponentCompositionSchemaInput implements SchemaTemplateInput {
+ private boolean manual;
+ private ComponentData component;
- public List<ValidatorConfiguration> getValidatorConfigurationList() {
- return Collections.unmodifiableList(validatorConfigurationList);
+ public boolean isManual() {
+ return manual;
}
- public void setValidatorConfigurationList(
- List<ValidatorConfiguration> validatorConfigurationList) {
- this.validatorConfigurationList = validatorConfigurationList;
+ public void setManual(boolean manual) {
+ this.manual = manual;
+ }
+
+ public ComponentData getComponent() {
+ return component;
+ }
+
+ public void setComponent(ComponentData component) {
+ this.component = component;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/NameExtractorService.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/ComponentQuestionnaireSchemaInput.java
index ed338e2bf5..1f92e6d957 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/helper/NameExtractorService.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/ComponentQuestionnaireSchemaInput.java
@@ -18,16 +18,25 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.translator.services.heattotosca.helper;
+package org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator;
import java.util.List;
import java.util.Map;
-import java.util.Optional;
-public interface NameExtractorService {
- Optional<String> extractNodeTypeNameByPropertiesPriority(
- Map<String, Object> properties,List<PropertyRegexMatcher> propertiesRegexMatchers);
+public class ComponentQuestionnaireSchemaInput implements SchemaTemplateInput {
+ private List<String> nicNames;
+ private Map componentQuestionnaireData;
- PropertyRegexMatcher getPropertyRegexMatcher(String propertyName, List<String> regexMatchers,
- String propertyValueSearchTerm);
+ public ComponentQuestionnaireSchemaInput(List<String> nicNames, Map componentQuestionnaireData) {
+ this.nicNames = nicNames;
+ this.componentQuestionnaireData = componentQuestionnaireData;
+ }
+
+ public List<String> getNicNames() {
+ return nicNames;
+ }
+
+ public Map getComponentQuestionnaireData() {
+ return componentQuestionnaireData;
+ }
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityAssignment.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/NetworkCompositionSchemaInput.java
index b548f7855c..67a2f3d5a1 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityAssignment.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/NetworkCompositionSchemaInput.java
@@ -18,28 +18,27 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator;
-import java.util.Map;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Network;
-public class CapabilityAssignment {
+public class NetworkCompositionSchemaInput implements SchemaTemplateInput {
+ private boolean manual;
+ private Network network;
- private Map<String, Object> properties;
- private Map<String, Object> attributes;
-
- public Map<String, Object> getProperties() {
- return properties;
+ public boolean isManual() {
+ return manual;
}
- public void setProperties(Map<String, Object> properties) {
- this.properties = properties;
+ public void setManual(boolean manual) {
+ this.manual = manual;
}
- public Map<String, Object> getAttributes() {
- return attributes;
+ public Network getNetwork() {
+ return network;
}
- public void setAttributes(Map<String, Object> attributes) {
- this.attributes = attributes;
+ public void setNetwork(Network network) {
+ this.network = network;
}
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/heatextend/ParameterDefinitionExt.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/NicCompositionSchemaInput.java
index bde81108de..87693a492c 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/heatextend/ParameterDefinitionExt.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/NicCompositionSchemaInput.java
@@ -18,38 +18,38 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model.heatextend;
+package org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Nic;
-import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
+import java.util.Collection;
-public class ParameterDefinitionExt extends ParameterDefinition {
+public class NicCompositionSchemaInput implements SchemaTemplateInput {
+ private boolean manual;
+ private Nic nic;
+ private Collection<String> networkIds;
- String label;
- Boolean hidden;
- Boolean immutable;
-
- public String getLabel() {
- return label;
+ public boolean isManual() {
+ return manual;
}
- public void setLabel(String label) {
- this.label = label;
+ public void setManual(boolean manual) {
+ this.manual = manual;
}
- public Boolean getHidden() {
- return hidden;
+ public Nic getNic() {
+ return nic;
}
- public void setHidden(Boolean hidden) {
- this.hidden = hidden;
+ public void setNic(Nic nic) {
+ this.nic = nic;
}
- public Boolean getImmutable() {
- return immutable;
+ public Collection<String> getNetworkIds() {
+ return networkIds;
}
- public void setImmutable(Boolean immutable) {
- this.immutable = immutable;
+ public void setNetworkIds(Collection<String> networkIds) {
+ this.networkIds = networkIds;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/SchemaTemplateContext.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/SchemaTemplateContext.java
new file mode 100644
index 0000000000..3ee3e4a5e6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/SchemaTemplateContext.java
@@ -0,0 +1,26 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator;
+
+public enum SchemaTemplateContext {
+ composition,
+ questionnaire
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Template.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/SchemaTemplateInput.java
index 128bb3c0a9..93e614f98b 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Template.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/types/schemagenerator/SchemaTemplateInput.java
@@ -18,7 +18,8 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.tosca.datatypes.model;
+package org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator;
+
+public interface SchemaTemplateInput {
-public interface Template {
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/resources/factoryConfiguration.json
index 86b2f857cf..85177c42c1 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/resources/factoryConfiguration.json
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-api/src/main/resources/factoryConfiguration.json
@@ -1,14 +1,23 @@
{
"org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.VendorSoftwareProductDaoFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.dao.VspDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.VspDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.VendorSoftwareProductInfoDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.UploadDataDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.UploadDataDaoFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.OrchestrationTemplateCandidateDaoFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.OrchestrationTemplateDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.PackageInfoDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.NetworkDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.ComponentDaoFactoryImpl",
- "org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentArtifactDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.ComponentArtifactDaoFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.dao.MibDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.MibDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.NicDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.NicDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.VspQuestionnaireDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.VspQuestionnaireDaoFactoryImpl",
"org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.ProcessDaoFactoryImpl",
- "org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessArtifactDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.ProcessArtifactDaoFactoryImpl"
-
+ "org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessArtifactDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.ProcessArtifactDaoFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.factory.QuestionnnaireDataServiceFactory": "org.openecomp.sdc.vendorsoftwareproduct.factory.QuestionnaireDataServiceFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.factory.InformationArtifactGeneratorFactory":"org.openecomp.sdc.vendorsoftwareproduct.factory.InformationArtifactGeneratorFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.factory.CandidateServiceFactory": "org.openecomp.sdc.vendorsoftwareproduct.factory.impl.CandidateServiceFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.factory.CompositionDataExtractorFactory": "org.openecomp.sdc.vendorsoftwareproduct.factory.impl.CompositionDataExtractorFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.factory.CompositionEntityDataManagerFactory": "org.openecomp.sdc.vendorsoftwareproduct.factory.impl.CompositionEntityDataManagerFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.factory.ManifestCreatorFactory": "org.openecomp.sdc.vendorsoftwareproduct.factory.impl.ManifestCreatorFactoryImpl",
+ "org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDaoFactory": "org.openecomp.sdc.vendorsoftwareproduct.dao.impl.ComponentDependencyModelDaoFactoryImpl"
} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml
index ce7f7be7fd..939e1b003a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml
@@ -1,49 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-vendor-software-product-lib</artifactId>
<version>1.1.0-SNAPSHOT</version>
</parent>
- <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
-
<dependencies>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.14</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>openecomp-sdc-enrichment-impl</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
- <version>2.3.23</version>
+ <version>${freemarker.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
@@ -52,7 +35,7 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-config-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -62,6 +45,87 @@
<version>${project.version}</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>fop</artifactId>
+ <version>${fop.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-xml</artifactId>
+ <version>${jackson.dataformat.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>${commons.io.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <version>${mockito.all.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.12</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-lang3</artifactId>
+ <version>3.4</version>
+ </dependency>
+
+
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-tosca-datatype</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ </dependency>
</dependencies>
-</project> \ No newline at end of file
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <skipTests>true</skipTests>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..634e0874ac
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/pom.xml.versionsBackup
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>openecomp-sdc-vendor-software-product-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-vendor-software-product-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-api</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.freemarker</groupId>
+ <artifactId>freemarker</artifactId>
+ <version>2.3.23</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>${testng.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-config-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-model-impl</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>fop</artifactId>
+ <version>2.1</version>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
+ <artifactId>jackson-dataformat-xml</artifactId>
+ <version>2.7.4</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>2.5</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.12</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductCreationFailedBuilder.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductCreationFailedBuilder.java
new file mode 100644
index 0000000000..45989ddbf0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductCreationFailedBuilder.java
@@ -0,0 +1,28 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.errors;
+
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.vendorsoftwareproduct.errors.VendorSoftwareProductErrorCodes;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.text.MessageFormat;
+
+public class VendorSoftwareProductCreationFailedBuilder {
+ private static final String VSP_CREATION_FAILED = "Failed to create VSP; %s";
+ private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
+
+ /**
+ * Instantiates a new Vendor software product creation failed error builder.
+ *
+ */
+ public VendorSoftwareProductCreationFailedBuilder(String reason) {
+ builder.withId(VendorSoftwareProductErrorCodes.FAILED_TO_CREATE_VSP);
+ builder.withCategory(ErrorCategory.APPLICATION);
+ builder
+ .withMessage(String.format(VSP_CREATION_FAILED, reason));
+ }
+
+ public ErrorCode build() {
+ return builder.build();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductNotFoundErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductNotFoundErrorBuilder.java
new file mode 100644
index 0000000000..ef5b43fad4
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/errors/VendorSoftwareProductNotFoundErrorBuilder.java
@@ -0,0 +1,47 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao.errors;
+
+
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+
+import static org.openecomp.sdc.vendorsoftwareproduct.errors.VendorSoftwareProductErrorCodes.VSP_NOT_FOUND;
+
+public class VendorSoftwareProductNotFoundErrorBuilder {
+ private static final String VSP_FOUND_MSG = "Vendor software product with Id %s not found.";
+ private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
+
+ /**
+ * Instantiates a new Vendor software product not found error builder.
+ *
+ * @param vendorSoftwareProductId the vendor software product id
+ */
+ public VendorSoftwareProductNotFoundErrorBuilder(String vendorSoftwareProductId) {
+ builder.withId(VSP_NOT_FOUND);
+ builder.withCategory(ErrorCategory.APPLICATION);
+ builder.withMessage(String.format(VSP_FOUND_MSG, vendorSoftwareProductId));
+ }
+
+ public ErrorCode build() {
+ return builder.build();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentArtifactDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentArtifactDaoCassandraImpl.java
deleted file mode 100644
index 2525537cef..0000000000
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentArtifactDaoCassandraImpl.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
-
-import com.datastax.driver.core.ResultSet;
-import com.datastax.driver.core.UDTValue;
-import com.datastax.driver.mapping.Mapper;
-import com.datastax.driver.mapping.Result;
-import com.datastax.driver.mapping.UDTMapper;
-import com.datastax.driver.mapping.annotations.Accessor;
-import com.datastax.driver.mapping.annotations.Query;
-import org.openecomp.core.dao.impl.CassandraBaseDao;
-import org.openecomp.core.nosqldb.api.NoSqlDb;
-import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentArtifactDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentArtifactEntity;
-import org.openecomp.sdc.versioning.VersioningManagerFactory;
-import org.openecomp.sdc.versioning.dao.types.Version;
-import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
-
-
-import java.nio.ByteBuffer;
-import java.util.Collection;
-
-public class ComponentArtifactDaoCassandraImpl extends CassandraBaseDao<ComponentArtifactEntity>
- implements ComponentArtifactDao {
-
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final ComponentArtifactAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(ComponentArtifactAccessor.class);
- private static final Mapper<ComponentArtifactEntity> mapper =
- noSqlDb.getMappingManager().mapper(ComponentArtifactEntity.class);
- private static final UDTMapper<Version> versionMapper =
- noSqlDb.getMappingManager().udtMapper(Version.class);
-
-
- @Override
- public void registerVersioning(String versionableEntityType) {
- VersionableEntityMetadata metadata = new VersionableEntityMetadata(
- mapper.getTableMetadata().getName(),
- mapper.getTableMetadata().getPartitionKey().get(0).getName(),
- mapper.getTableMetadata().getPartitionKey().get(1).getName());
-
- // metadata.setUniqueValuesMetadata(Collections.singletonList(new UniqueValueMetadata
- // (VendorSoftwareProductConstants.UniqueValues.COMPONENT_ARTIFACT_NAME,
- // Arrays.asList(mapper.getTableMetadata().getPartitionKey().get(0).getName(), mapper
- // .getTableMetadata().getPartitionKey().get(1).getName(), "name"))));
-
- VersioningManagerFactory.getInstance().createInterface()
- .register(versionableEntityType, metadata);
- }
-
- @Override
- public ComponentArtifactEntity getArtifactByType(ComponentArtifactEntity entity) {
- return accessor.listByType(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getType().toString()).one();
- }
-
- @Override
- protected Mapper<ComponentArtifactEntity> getMapper() {
- return mapper;
- }
-
- @Override
- protected Object[] getKeys(ComponentArtifactEntity entity) {
- return new Object[]{entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getType().toString(), entity.getId()};
- }
-
- @Override
- public Collection<ComponentArtifactEntity> list(ComponentArtifactEntity entity) {
- return accessor.listByType(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getType().toString()).all();
- }
-
- @Override
- public void update(ComponentArtifactEntity entity) {
- accessor.update(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getId(), entity.getArtifactName(), entity.getArtifact(),
- entity.getType().toString());
-
- }
-
- @Override
- public void delete(ComponentArtifactEntity entity) {
- accessor.delete(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getType().toString());
- }
-
- @Override
- public Collection<ComponentArtifactEntity> getArtifactNamesAndTypesForComponent(
- ComponentArtifactEntity entity) {
- return accessor.getArtifactNamesAndTypesForComponent(entity.getVspId(),
- versionMapper.toUDT(entity.getVersion()), entity.getComponentId()).all();
- }
-
- @Override
- public void deleteAll(ComponentArtifactEntity entity) {
- accessor.deleteAll(entity.getVspId(), versionMapper.toUDT(entity.getVersion()));
- }
-
-
- @Accessor
- interface ComponentArtifactAccessor {
-
- @Query(
- "insert into vsp_component_artifact (vsp_id, version, component_id, artifact_id, name, "
- + "artifact, artifact_type) values (?,?,?,?,?,?,?)")
- ResultSet update(String vspId, UDTValue version, String componentId, String id,
- String artifactName, ByteBuffer artifact, String type);
-
- @Query(
- "select vsp_id, version, component_id, artifact_type, artifact_id, name, artifact from "
- + "vsp_component_artifact where vsp_id=? and version=? and component_id=? and "
- + "artifact_type =?")
- Result<ComponentArtifactEntity> listByType(String vspId, UDTValue version, String componentId,
- String type);
-
- @Query(
- "delete name, artifact from vsp_component_artifact where vsp_id=? and version=? and "
- + "component_id=? and artifact_type=? and artifact_id=?")
- ResultSet delete(String vspId, UDTValue version, String componentId, String type,
- String artifactId);
-
- @Query(
- "delete from vsp_component_artifact where vsp_id=? and version=? and component_id=? "
- + "and artifact_type=?")
- ResultSet delete(String vspId, UDTValue version, String componentId, String artifactType);
-
- @Query("delete from vsp_component_artifact where vsp_id=? and version=?")
- ResultSet deleteAll(String vspId, UDTValue version);
-
- @Query(
- "select name, artifact_type from vsp_component_artifact where vsp_id=? and version=? "
- + "and component_id=?")
- Result<ComponentArtifactEntity> getArtifactNamesAndTypesForComponent(String vspId,
- UDTValue version,
- String componentId);
-
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoCassandraImpl.java
index 85372380c0..9cdd950a72 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoCassandraImpl.java
@@ -61,10 +61,10 @@ public class ComponentDaoCassandraImpl extends CassandraBaseDao<ComponentEntity>
mapper.getTableMetadata().getPartitionKey().get(1).getName());
- metadata.setUniqueValuesMetadata(Collections.singletonList(
- new UniqueValueMetadata(VendorSoftwareProductConstants.UniqueValues.COMPONENT_NAME,
- Arrays.asList(mapper.getTableMetadata().getPartitionKey().get(0).getName(),
- mapper.getTableMetadata().getPartitionKey().get(1).getName(), "name"))));
+ metadata.setUniqueValuesMetadata(Collections.singletonList(new UniqueValueMetadata(
+ VendorSoftwareProductConstants.UniqueValues.COMPONENT_NAME,
+ Arrays.asList(mapper.getTableMetadata().getPartitionKey().get(0).getName(),
+ mapper.getTableMetadata().getPartitionKey().get(1).getName(), "name"))));
VersioningManagerFactory.getInstance().createInterface()
.register(versionableEntityType, metadata);
@@ -93,9 +93,14 @@ public class ComponentDaoCassandraImpl extends CassandraBaseDao<ComponentEntity>
}
@Override
- public void updateQuestionnaireData(String vspId, Version version, String id,
+ public ComponentEntity getQuestionnaireData(String vspId, Version version, String componentId) {
+ return accessor.getQuestionnaireData(vspId, versionMapper.toUDT(version), componentId);
+ }
+
+ @Override
+ public void updateQuestionnaireData(String vspId, Version version, String componentId,
String questionnaireData) {
- accessor.updateQuestionnaireData(questionnaireData, vspId, versionMapper.toUDT(version), id);
+ accessor.updateQuestionnaireData(questionnaireData, vspId, versionMapper.toUDT(version), componentId);
}
@Override
@@ -104,6 +109,11 @@ public class ComponentDaoCassandraImpl extends CassandraBaseDao<ComponentEntity>
}
@Override
+ public Collection<ComponentEntity> listCompositionAndQuestionnaire(String vspId, Version version){
+ return accessor.listCompositionAndQuestionnaire(vspId, versionMapper.toUDT(version)).all();
+ }
+
+ @Override
public void deleteAll(String vspId, Version version) {
accessor.deleteAll(vspId, version);
}
@@ -112,24 +122,34 @@ public class ComponentDaoCassandraImpl extends CassandraBaseDao<ComponentEntity>
interface ComponentAccessor {
@Query(
- "select vsp_id, version, component_id, composition_data from vsp_component "
- + "where vsp_id=? and version=?")
+ "select vsp_id, version, component_id, composition_data from vsp_component"
+ + " where vsp_id=? and version=?")
Result<ComponentEntity> list(String vspId, UDTValue version);
@Query(
- "select vsp_id, version, component_id, questionnaire_data from vsp_component "
- + "where vsp_id=? and version=?")
+ "select vsp_id, version, component_id, composition_data, questionnaire_data from vsp_component"
+ + " where vsp_id=? and version=?")
+ Result<ComponentEntity> listCompositionAndQuestionnaire(String vspId, UDTValue version);
+
+ @Query(
+ "select vsp_id, version, component_id, questionnaire_data from vsp_component"
+ + " where vsp_id=? and version=?")
Result<ComponentEntity> listQuestionnaires(String vspId, UDTValue version);
@Query(
- "insert into vsp_component (vsp_id, version, component_id, composition_data) "
- + "values (?,?,?,?)")
+ "select vsp_id, version, component_id, questionnaire_data from vsp_component"
+ + " where vsp_id=? and version=? and component_id=?")
+ ComponentEntity getQuestionnaireData(String vspId, UDTValue version, String id);
+
+ @Query(
+ "insert into vsp_component (vsp_id, version, component_id, composition_data)"
+ + " values (?,?,?,?)")
ResultSet updateCompositionData(String vspId, UDTValue version, String id,
String compositionData);
@Query(
- "update vsp_component set questionnaire_data=? where vsp_id=? and version=? "
- + "and component_id=?")
+ "update vsp_component set questionnaire_data=? where vsp_id=? and version=?"
+ + " and component_id=?")
ResultSet updateQuestionnaireData(String questionnaireData, String vspId, UDTValue version,
String id);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoFactoryImpl.java
index 1e57242ce1..1ef0caac0c 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDaoFactoryImpl.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.ComponentDaoZusammenImpl;
public class ComponentDaoFactoryImpl extends ComponentDaoFactory {
- private static final ComponentDao INSTANCE = new ComponentDaoCassandraImpl();
+ private static final ComponentDao INSTANCE = new ComponentDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public ComponentDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoCassandraImpl.java
new file mode 100644
index 0000000000..b46486eb32
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoCassandraImpl.java
@@ -0,0 +1,87 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+
+import com.datastax.driver.core.ResultSet;
+import com.datastax.driver.core.UDTValue;
+import com.datastax.driver.mapping.Mapper;
+import com.datastax.driver.mapping.Result;
+import com.datastax.driver.mapping.UDTMapper;
+import com.datastax.driver.mapping.annotations.Accessor;
+import com.datastax.driver.mapping.annotations.Query;
+import org.openecomp.core.dao.impl.CassandraBaseDao;
+import org.openecomp.core.nosqldb.api.NoSqlDb;
+import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductConstants;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
+import org.openecomp.sdc.versioning.VersioningManagerFactory;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.types.UniqueValueMetadata;
+import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+
+public class ComponentDependencyModelDaoCassandraImpl extends CassandraBaseDao
+ <ComponentDependencyModelEntity> implements ComponentDependencyModelDao {
+
+ private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
+ private static final Mapper<ComponentDependencyModelEntity> mapper =
+ noSqlDb.getMappingManager().mapper(ComponentDependencyModelEntity.class);
+ private static final ComponentDependencyModelDaoCassandraImpl.ComponentDependencyModelAccessor
+ accessor = noSqlDb.getMappingManager().createAccessor(
+ ComponentDependencyModelDaoCassandraImpl.ComponentDependencyModelAccessor.class);
+ private static final UDTMapper<Version> versionMapper =
+ noSqlDb.getMappingManager().udtMapper(Version.class);
+
+ @Override
+ protected Mapper<ComponentDependencyModelEntity> getMapper() {
+ return mapper;
+ }
+
+ @Override
+ protected Object[] getKeys(ComponentDependencyModelEntity entity) {
+ return new Object[]{entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
+ entity.getId()};
+ }
+
+ @Override
+ public Collection<ComponentDependencyModelEntity> list(ComponentDependencyModelEntity entity) {
+ return accessor
+ .list(entity.getVspId(), versionMapper.toUDT(entity.getVersion())).all();
+ }
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ accessor.deleteAll(vspId, versionMapper.toUDT(version));
+ }
+
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ VersionableEntityMetadata metadata = new VersionableEntityMetadata(
+ mapper.getTableMetadata().getName(),
+ mapper.getTableMetadata().getPartitionKey().get(0).getName(),
+ mapper.getTableMetadata().getPartitionKey().get(1).getName());
+
+ metadata.setUniqueValuesMetadata(Collections.singletonList(new UniqueValueMetadata(
+ VendorSoftwareProductConstants.UniqueValues.PROCESS_NAME,
+ Arrays.asList("vsp_id", "version", "component_id", "name"))));
+
+ VersioningManagerFactory.getInstance().createInterface()
+ .register(versionableEntityType, metadata);
+
+ }
+
+ @Accessor
+ interface ComponentDependencyModelAccessor {
+ @Query("delete from vsp_component_dependency_model where vsp_id=? and version=?")
+ ResultSet deleteAll(String vspId, UDTValue version);
+
+ @Query(
+ "select * from vsp_component_dependency_model where vsp_id=? and version=?")
+ Result<ComponentDependencyModelEntity> list(String vspId, UDTValue version);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoFactoryImpl.java
new file mode 100644
index 0000000000..e90e39bbc3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ComponentDependencyModelDaoFactoryImpl.java
@@ -0,0 +1,18 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+
+
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.ComponentDependencyModelDaoZusammenImpl;
+
+public class ComponentDependencyModelDaoFactoryImpl extends ComponentDependencyModelDaoFactory {
+
+ private static final ComponentDependencyModelDao INSTANCE = new
+ ComponentDependencyModelDaoZusammenImpl( ZusammenAdaptorFactory.getInstance().createInterface());
+
+ @Override
+ public ComponentDependencyModelDao createInterface() {
+ return INSTANCE;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/UploadDataDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/MibDaoFactoryImpl.java
index 317bc344c4..923744bae7 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/UploadDataDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/MibDaoFactoryImpl.java
@@ -20,14 +20,17 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.UploadDataDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.UploadDataDaoFactory;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.MibDaoZusammenImpl;
-public class UploadDataDaoFactoryImpl extends UploadDataDaoFactory {
- private static final UploadDataDao INSTANCE = new UploadDataDaoImpl();
+public class MibDaoFactoryImpl extends MibDaoFactory {
+ private static final MibDao INSTANCE = new MibDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
- public UploadDataDao createInterface() {
+ public MibDao createInterface() {
return INSTANCE;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoCassandraImpl.java
index f7b8f30f0a..83807af5f8 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoCassandraImpl.java
@@ -60,10 +60,10 @@ public class NetworkDaoCassandraImpl extends CassandraBaseDao<NetworkEntity> imp
mapper.getTableMetadata().getPartitionKey().get(1).getName());
- metadata.setUniqueValuesMetadata(Collections.singletonList(
- new UniqueValueMetadata(VendorSoftwareProductConstants.UniqueValues.NETWORK_NAME,
- Arrays.asList(mapper.getTableMetadata().getPartitionKey().get(0).getName(),
- mapper.getTableMetadata().getPartitionKey().get(1).getName(), "name"))));
+ metadata.setUniqueValuesMetadata(Collections.singletonList(new UniqueValueMetadata(
+ VendorSoftwareProductConstants.UniqueValues.NETWORK_NAME,
+ Arrays.asList(mapper.getTableMetadata().getPartitionKey().get(0).getName(),
+ mapper.getTableMetadata().getPartitionKey().get(1).getName(), "name"))));
VersioningManagerFactory.getInstance().createInterface()
.register(versionableEntityType, metadata);
@@ -86,28 +86,30 @@ public class NetworkDaoCassandraImpl extends CassandraBaseDao<NetworkEntity> imp
entity.getId(), entity.getCompositionData());
}
- @Override
+ /*@Override
public void updateQuestionnaireData(String vspId, Version version, String id,
String questionnaireData) {
accessor.updateQuestionnaireData(questionnaireData, vspId, versionMapper.toUDT(version), id);
- }
+ }*/
@Override
- public Collection<NetworkEntity> list(NetworkEntity entity) {
- return accessor.list(entity.getVspId(), versionMapper.toUDT(entity.getVersion())).all();
+ public void deleteAll(String vspId, Version version) {
+ accessor.deleteAll(vspId, version);
}
+
+
@Override
- public void deleteAll(String vspId, Version version) {
- accessor.deleteAll(vspId, version);
+ public Collection<NetworkEntity> list(NetworkEntity entity) {
+ return accessor.list(entity.getVspId(), versionMapper.toUDT(entity.getVersion())).all();
}
@Accessor
interface NetworkAccessor {
@Query(
- "select vsp_id, version, network_id, composition_data from vsp_network where vsp_id=? "
- + "and version=?")
+ "select vsp_id, version, network_id, composition_data from vsp_network where vsp_id=?"
+ + " and version=?")
Result<NetworkEntity> list(String vspId, UDTValue version);
@Query(
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoFactoryImpl.java
index b4360996df..5bccc5ced2 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NetworkDaoFactoryImpl.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.NetworkDaoZusammenImpl;
public class NetworkDaoFactoryImpl extends NetworkDaoFactory {
- private static final NetworkDao INSTANCE = new NetworkDaoCassandraImpl();
+ private static final NetworkDao INSTANCE = new NetworkDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public NetworkDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoCassandraImpl.java
index e7e1eed8e0..a84ab38ccc 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoCassandraImpl.java
@@ -60,9 +60,9 @@ public class NicDaoCassandraImpl extends CassandraBaseDao<NicEntity> implements
mapper.getTableMetadata().getPartitionKey().get(1).getName());
- metadata.setUniqueValuesMetadata(Collections
- .singletonList(new UniqueValueMetadata(VendorSoftwareProductConstants.UniqueValues.NIC_NAME,
- Arrays.asList("vsp_id", "version", "component_id", "name"))));
+ metadata.setUniqueValuesMetadata(Collections.singletonList(new UniqueValueMetadata(
+ VendorSoftwareProductConstants.UniqueValues.NIC_NAME,
+ Arrays.asList("vsp_id", "version", "component_id", "name"))));
VersioningManagerFactory.getInstance().createInterface()
.register(versionableEntityType, metadata);
@@ -91,6 +91,12 @@ public class NicDaoCassandraImpl extends CassandraBaseDao<NicEntity> implements
}
@Override
+ public NicEntity getQuestionnaireData(String vspId, Version version, String componentId,
+ String nicId) {
+ return null; // TODO: 3/20/2017
+ }
+
+ @Override
public void updateQuestionnaireData(String vspId, Version version, String id, String componentId,
String questionnaireData) {
accessor.updateQuestionnaireData(questionnaireData, vspId, versionMapper.toUDT(version), id,
@@ -102,12 +108,6 @@ public class NicDaoCassandraImpl extends CassandraBaseDao<NicEntity> implements
return accessor.listByVspId(vspId, versionMapper.toUDT(version)).all();
}
- @Override
- public Collection<NicEntity> list(NicEntity entity) {
- return accessor.listByComponentId(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId()).all();
- }
-
public void deleteByComponentId(String vspId, Version version, String componentId) {
accessor.deleteByComponentId(vspId, version, componentId);
}
@@ -116,26 +116,32 @@ public class NicDaoCassandraImpl extends CassandraBaseDao<NicEntity> implements
accessor.deleteByVspId(vspId, versionMapper.toUDT(version));
}
+ @Override
+ public Collection<NicEntity> list(NicEntity entity) {
+ return accessor.listByComponentId(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
+ entity.getComponentId()).all();
+ }
+
@Accessor
interface NicAccessor {
@Query(
- "select vsp_id, version, component_id, nic_id, composition_data "
- + "from vsp_component_nic where vsp_id=? and version=? and component_id=?")
+ "select vsp_id, version, component_id, nic_id, composition_data"
+ + " from vsp_component_nic where vsp_id=? and version=? and component_id=?")
Result<NicEntity> listByComponentId(String vspId, UDTValue version, String componentId);
@Query("select * from vsp_component_nic where vsp_id=? and version=?")
Result<NicEntity> listByVspId(String vspId, UDTValue version);
@Query(
- "insert into vsp_component_nic (vsp_id, version, component_id, nic_id, composition_data) "
- + "values (?,?,?,?,?)")
+ "insert into vsp_component_nic (vsp_id, version, component_id, nic_id, composition_data)"
+ + " values (?,?,?,?,?)")
ResultSet updateCompositionData(String vspId, UDTValue version, String componentId, String id,
String compositionData);
@Query(
- "update vsp_component_nic set questionnaire_data=? where vsp_id=? and version=? "
- + "and component_id=? and nic_id=?")
+ "update vsp_component_nic set questionnaire_data=? where vsp_id=? and version=?"
+ + " and component_id=? and nic_id=?")
ResultSet updateQuestionnaireData(String questionnaireData, String vspId, UDTValue version,
String componentId, String id);
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoFactoryImpl.java
index f4dd8d5a71..76e5d443f2 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/NicDaoFactoryImpl.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.NicDaoZusammenImpl;
public class NicDaoFactoryImpl extends NicDaoFactory {
- private static final NicDao INSTANCE = new NicDaoCassandraImpl();
+ private static final NicDao INSTANCE = new NicDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public NicDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateCandidateDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateCandidateDaoFactoryImpl.java
new file mode 100644
index 0000000000..8cc2c6f61f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateCandidateDaoFactoryImpl.java
@@ -0,0 +1,38 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.OrchestrationTemplateCandidateDaoZusammenImpl;
+
+public class OrchestrationTemplateCandidateDaoFactoryImpl
+ extends OrchestrationTemplateCandidateDaoFactory {
+ private static final OrchestrationTemplateCandidateDao INSTANCE =
+ new OrchestrationTemplateCandidateDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
+
+ @Override
+ public OrchestrationTemplateCandidateDao createInterface() {
+ return INSTANCE;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateDaoFactoryImpl.java
new file mode 100644
index 0000000000..8b90462131
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/OrchestrationTemplateDaoFactoryImpl.java
@@ -0,0 +1,39 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.OrchestrationTemplateDaoZusammenImpl;
+
+
+public class OrchestrationTemplateDaoFactoryImpl
+ extends OrchestrationTemplateDaoFactory {
+ private static final OrchestrationTemplateDao INSTANCE =
+ new OrchestrationTemplateDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
+
+ @Override
+ public OrchestrationTemplateDao createInterface() {
+ return INSTANCE;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/PackageInfoDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/PackageInfoDaoImpl.java
index 9b7b81fe52..37917284e0 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/PackageInfoDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/PackageInfoDaoImpl.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+import com.datastax.driver.core.UDTValue;
import com.datastax.driver.mapping.Mapper;
import com.datastax.driver.mapping.Result;
import com.datastax.driver.mapping.UDTMapper;
@@ -28,10 +29,13 @@ import com.datastax.driver.mapping.annotations.Query;
import org.openecomp.core.dao.impl.CassandraBaseDao;
import org.openecomp.core.nosqldb.api.NoSqlDb;
import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
import org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.PackageInfo;
import org.openecomp.sdc.versioning.dao.types.Version;
+import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -46,6 +50,8 @@ public class PackageInfoDaoImpl extends CassandraBaseDao<PackageInfo> implements
private static final UDTMapper<Version> versionMapper =
noSqlDb.getMappingManager().udtMapper(Version.class);
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
@Override
protected Mapper<PackageInfo> getMapper() {
return mapper;
@@ -63,6 +69,8 @@ public class PackageInfoDaoImpl extends CassandraBaseDao<PackageInfo> implements
@Override
public List<PackageInfo> listByCategory(String category, String subCategory) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
Result<PackageInfo> packages = accessor.listInfo();
List<PackageInfo> filteredPackages = new ArrayList<>();
@@ -79,7 +87,7 @@ public class PackageInfoDaoImpl extends CassandraBaseDao<PackageInfo> implements
filteredPackages.add(packageInfo);
}
}
-
+ mdcDataDebugMessage.debugExitMessage(null, null);
return filteredPackages;
}
@@ -88,16 +96,25 @@ public class PackageInfoDaoImpl extends CassandraBaseDao<PackageInfo> implements
accessor.deleteRowTranslateContent(vspId, version);
}
+ @Override
+ public void updateTranslatedContent(String vspId, Version version, ByteBuffer translateContent){
+ accessor.updateTranslateContent(translateContent, vspId, versionMapper.toUDT(version));
+ }
+
@Accessor
interface PackageInfoAccessor {
@Query(
- "SELECT vsp_id,version,display_name,vsp_name,vsp_description,vendor_name,category,"
- + "sub_category,vendor_release,package_checksum,package_type FROM package_details")
+ "SELECT vsp_id,version,display_name,vsp_name,vsp_description,vendor_name,category"
+ + " ,sub_category, vendor_release,package_checksum,package_type FROM package_details")
Result<PackageInfo> listInfo();
@Query("DELETE TRANSLATE_CONTENT FROM package_details WHERE vsp_id=? and version=?")
Result<PackageInfo> deleteRowTranslateContent(String vspId, Version version);
+ @Query("UPDATE package_details set translate_content = ? where vsp_id = ? and version = ?")
+ Result<PackageInfo> updateTranslateContent(ByteBuffer translateContent, String vspId,
+ UDTValue version);
+
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessArtifactDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessArtifactDaoCassandraImpl.java
deleted file mode 100644
index 0e9fd90a13..0000000000
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessArtifactDaoCassandraImpl.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
-
-import com.datastax.driver.core.ResultSet;
-import com.datastax.driver.core.UDTValue;
-import com.datastax.driver.mapping.UDTMapper;
-import com.datastax.driver.mapping.annotations.Accessor;
-import com.datastax.driver.mapping.annotations.Query;
-import org.openecomp.core.nosqldb.api.NoSqlDb;
-import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessArtifactDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessArtifactEntity;
-import org.openecomp.sdc.versioning.dao.types.Version;
-
-import java.nio.ByteBuffer;
-
-public class ProcessArtifactDaoCassandraImpl implements ProcessArtifactDao {
-
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final ProcessArtifactAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(ProcessArtifactAccessor.class);
- private static final UDTMapper<Version> versionMapper =
- noSqlDb.getMappingManager().udtMapper(Version.class);
-
- @Override
- public void update(ProcessArtifactEntity entity) {
- accessor.update(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getId(), entity.getArtifactName(), entity.getArtifact());
- }
-
- @Override
- public ProcessArtifactEntity get(ProcessArtifactEntity entity) {
- return accessor
- .get(entity.getVspId(), versionMapper.toUDT(entity.getVersion()), entity.getComponentId(),
- entity.getId());
- }
-
- @Override
- public void delete(ProcessArtifactEntity entity) {
- accessor.delete(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getId());
- }
-
- @Accessor
- interface ProcessArtifactAccessor {
-
- @Query(
- "insert into vsp_process (vsp_id, version, component_id, process_id, artifact_name,"
- + " artifact) values (?,?,?,?,?,?)")
- ResultSet update(String vspId, UDTValue version, String componentId, String id,
- String artifactName, ByteBuffer artifact);
-
- @Query(
- "select vsp_id, version, component_id, process_id, artifact_name, artifact "
- + "from vsp_process where vsp_id=? and version=? and component_id=? and process_id=?")
- ProcessArtifactEntity get(String vspId, UDTValue version, String componentId, String id);
-
- @Query(
- "delete artifact_name, artifact from vsp_process where vsp_id=? and version=? and"
- + " component_id=? and process_id=?")
- ResultSet delete(String vspId, UDTValue version, String componentId, String id);
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoCassandraImpl.java
deleted file mode 100644
index b8900eb5d3..0000000000
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoCassandraImpl.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
-
-import com.datastax.driver.core.ResultSet;
-import com.datastax.driver.core.UDTValue;
-import com.datastax.driver.mapping.Mapper;
-import com.datastax.driver.mapping.Result;
-import com.datastax.driver.mapping.UDTMapper;
-import com.datastax.driver.mapping.annotations.Accessor;
-import com.datastax.driver.mapping.annotations.Query;
-import org.openecomp.core.nosqldb.api.NoSqlDb;
-import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductConstants;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
-import org.openecomp.sdc.versioning.VersioningManagerFactory;
-import org.openecomp.sdc.versioning.dao.types.Version;
-import org.openecomp.sdc.versioning.types.UniqueValueMetadata;
-import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
-
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-
-public class ProcessDaoCassandraImpl implements ProcessDao {
-
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final Mapper<ProcessEntity> mapper =
- noSqlDb.getMappingManager().mapper(ProcessEntity.class);
- private static final ProcessAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(ProcessAccessor.class);
- private static final UDTMapper<Version> versionMapper =
- noSqlDb.getMappingManager().udtMapper(Version.class);
-
- @Override
- public void registerVersioning(String versionableEntityType) {
- VersionableEntityMetadata metadata = new VersionableEntityMetadata(
- mapper.getTableMetadata().getName(),
- mapper.getTableMetadata().getPartitionKey().get(0).getName(),
- mapper.getTableMetadata().getPartitionKey().get(1).getName());
-
- metadata.setUniqueValuesMetadata(Collections.singletonList(
- new UniqueValueMetadata(VendorSoftwareProductConstants.UniqueValues.PROCESS_NAME,
- Arrays.asList("vsp_id", "version", "component_id", "name"))));
-
- VersioningManagerFactory.getInstance().createInterface()
- .register(versionableEntityType, metadata);
- }
-
- @Override
- public Collection<ProcessEntity> list(ProcessEntity entity) {
- return accessor
- .list(entity.getVspId(), versionMapper.toUDT(entity.getVersion()), entity.getComponentId())
- .all();
- }
-
- @Override
- public void create(ProcessEntity entity) {
- accessor.update(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getId(), entity.getName(), entity.getDescription());
- }
-
- @Override
- public void update(ProcessEntity entity) {
- accessor.update(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getId(), entity.getName(), entity.getDescription());
- }
-
- @Override
- public ProcessEntity get(ProcessEntity entity) {
- return accessor
- .get(entity.getVspId(), versionMapper.toUDT(entity.getVersion()), entity.getComponentId(),
- entity.getId());
- }
-
- @Override
- public void delete(ProcessEntity entity) {
- if (entity.getId() == null) {
- accessor.deleteAll(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId());
- } else {
- accessor.delete(entity.getVspId(), versionMapper.toUDT(entity.getVersion()),
- entity.getComponentId(), entity.getId());
- }
- }
-
- public void deleteAll(ProcessEntity entity) {
- accessor.deleteAll(entity.getVspId(), versionMapper.toUDT(entity.getVersion()));
- }
-
- @Accessor
- interface ProcessAccessor {
-
- @Query(
- "insert into vsp_process (vsp_id, version, component_id, process_id, name, description) "
- + "values (?,?,?,?,?,?)")
- ResultSet update(String vspId, UDTValue version, String componentId, String id, String name,
- String description);
-
- @Query(
- "select vsp_id, version, component_id, process_id, name, description, artifact_name "
- + "from vsp_process where vsp_id=? and version=? and component_id=? and process_id=?")
- ProcessEntity get(String vspId, UDTValue version, String componentId, String id);
-
- @Query(
- "select vsp_id, version, component_id, process_id, name, description, artifact_name "
- + "from vsp_process where vsp_id=? and version=? and component_id=?")
- Result<ProcessEntity> list(String vspId, UDTValue version, String componentId);
-
- @Query(
- "delete from vsp_process where vsp_id=? and version=? and component_id=? and process_id=?")
- ResultSet delete(String vspId, UDTValue version, String componentId, String id);
-
- @Query("delete from vsp_process where vsp_id=? and version=? and component_id=?")
- ResultSet deleteAll(String vspId, UDTValue version, String componentId);
-
- @Query("delete from vsp_process where vsp_id=? and version=?")
- ResultSet deleteAll(String vspId, UDTValue version);
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoFactoryImpl.java
index 4c981d8448..ada76e790a 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessDaoFactoryImpl.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDao;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.ProcessDaoZusammenImpl;
public class ProcessDaoFactoryImpl extends ProcessDaoFactory {
- private static final ProcessDao INSTANCE = new ProcessDaoCassandraImpl();
+ private static final ProcessDao INSTANCE = new ProcessDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public ProcessDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/UploadDataDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/UploadDataDaoImpl.java
deleted file mode 100644
index df019a4f53..0000000000
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/UploadDataDaoImpl.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
-
-import com.datastax.driver.core.UDTValue;
-import com.datastax.driver.mapping.Mapper;
-import com.datastax.driver.mapping.Result;
-import com.datastax.driver.mapping.UDTMapper;
-import com.datastax.driver.mapping.annotations.Accessor;
-import com.datastax.driver.mapping.annotations.Query;
-import org.openecomp.core.dao.impl.CassandraBaseDao;
-import org.openecomp.core.nosqldb.api.NoSqlDb;
-import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.UploadDataDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
-import org.openecomp.sdc.versioning.dao.types.Version;
-
-import java.nio.ByteBuffer;
-import java.util.Collection;
-
-public class UploadDataDaoImpl extends CassandraBaseDao<UploadDataEntity> implements UploadDataDao {
-
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final Mapper<UploadDataEntity> mapper =
- noSqlDb.getMappingManager().mapper(UploadDataEntity.class);
- private static final UploadDataAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(UploadDataAccessor.class);
- private static final UDTMapper<Version> versionMapper =
- noSqlDb.getMappingManager().udtMapper(Version.class);
-
- @Override
- protected Mapper<UploadDataEntity> getMapper() {
- return mapper;
- }
-
- @Override
- protected Object[] getKeys(UploadDataEntity entity) {
- return new Object[]{entity.getId(), versionMapper.toUDT(entity.getVersion())};
- }
-
- @Override
- public Collection<UploadDataEntity> list(UploadDataEntity entity) {
- return accessor.listAll().all();
- }
-
- @Override
- public void deleteContentDataAndValidationData(String vspId, Version version) {
- accessor.deleteContentDataAndValidationData(vspId, versionMapper.toUDT(version));
- }
-
- @Override
- public ByteBuffer getContentData(String vspId, Version version) {
- return accessor.getContentData(vspId, version).one().getContentData();
- }
-
-
- @Accessor
- interface UploadDataAccessor {
-
- @Query(
- "SELECT package_name, package_version, content_data, validation_data FROM vsp_information")
- Result<UploadDataEntity> listAll();
-
- @Query(
- "DELETE package_name, package_version, content_data, validation_data FROM vsp_information "
- + "WHERE vsp_id=? and version=?")
- Result<VspDetails> deleteContentDataAndValidationData(String vspId, UDTValue udtValue);
-
- @Query("SELECT CONTENT_DATA FROM vsp_information WHERE vsp_id=? and version=?")
- Result<UploadDataEntity> getContentData(String vspId, Version version);
-
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoFactoryImpl.java
index 587f8ac036..96bb16ca70 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoFactoryImpl.java
@@ -20,9 +20,11 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+import org.openecomp.sdc.vendorsoftwareproduct.VendorSoftwareProductConstants;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
+
public class VendorSoftwareProductDaoFactoryImpl extends VendorSoftwareProductDaoFactory {
private static final VendorSoftwareProductDao INSTANCE = new VendorSoftwareProductDaoImpl();
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoImpl.java
index f592e63280..c0a215fff5 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductDaoImpl.java
@@ -22,202 +22,97 @@ package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
import org.openecomp.core.model.dao.EnrichedServiceArtifactDao;
import org.openecomp.core.model.dao.EnrichedServiceArtifactDaoFactory;
+import org.openecomp.core.model.dao.EnrichedServiceModelDao;
+import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
import org.openecomp.core.model.dao.ServiceArtifactDaoFactory;
import org.openecomp.core.model.dao.ServiceArtifactDaoInter;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentArtifactDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentArtifactDaoFactory;
+import org.openecomp.core.model.dao.ServiceModelDao;
+import org.openecomp.core.model.dao.ServiceModelDaoFactory;
+import org.openecomp.core.model.dao.ServiceTemplateDaoFactory;
+import org.openecomp.core.model.dao.ServiceTemplateDaoInter;
+import org.openecomp.core.utilities.CommonMethods;
import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDaoFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDaoFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDaoFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.PackageInfoDaoFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessArtifactDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessArtifactDaoFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDaoFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.UploadDataDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.UploadDataDaoFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.VspQuestionnaireDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.VspQuestionnaireDaoFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentArtifactEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NicEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.PackageInfo;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessArtifactEntity;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
import org.openecomp.sdc.versioning.dao.types.Version;
import java.nio.ByteBuffer;
import java.util.Collection;
import java.util.List;
-import java.util.Objects;
public class VendorSoftwareProductDaoImpl implements VendorSoftwareProductDao {
- private static final VendorSoftwareProductInfoDao vspInfoDao =
- VendorSoftwareProductInfoDaoFactory.getInstance().createInterface();
+ private static final VendorSoftwareProductInfoDao vspInfoDao = VendorSoftwareProductInfoDaoFactory
+ .getInstance().createInterface();
private static final PackageInfoDao packageInfoDao =
PackageInfoDaoFactory.getInstance().createInterface();
- private static final UploadDataDao uploadDataDao =
- UploadDataDaoFactory.getInstance().createInterface();
- private static final VspQuestionnaireDao vspQuestionnaireDao =
- VspQuestionnaireDaoFactory.getInstance().createInterface();
+ private static final OrchestrationTemplateCandidateDao orchestrationTemplateCandidateDataDao =
+ OrchestrationTemplateCandidateDaoFactory.getInstance().createInterface();
private static final NetworkDao networkDao = NetworkDaoFactory.getInstance().createInterface();
private static final ComponentDao componentDao =
ComponentDaoFactory.getInstance().createInterface();
private static final NicDao nicDao = NicDaoFactory.getInstance().createInterface();
private static final ProcessDao processDao = ProcessDaoFactory.getInstance().createInterface();
- private static final ProcessArtifactDao processArtifactDao =
- ProcessArtifactDaoFactory.getInstance().createInterface();
- private static final ComponentArtifactDao componentArtifactDao =
- ComponentArtifactDaoFactory.getInstance().createInterface();
- private static final ServiceArtifactDaoInter artifactDao =
- ServiceArtifactDaoFactory.getInstance().createInterface();
+ private static final MibDao
+ MIB_DAO = MibDaoFactory.getInstance().createInterface();
+ private static final ServiceArtifactDaoInter
+ artifactDao = ServiceArtifactDaoFactory.getInstance().createInterface();
+ public static final ServiceTemplateDaoInter
+ templateDao = ServiceTemplateDaoFactory.getInstance().createInterface();
private static final EnrichedServiceArtifactDao enrichArtifactDao =
EnrichedServiceArtifactDaoFactory.getInstance().createInterface();
+ private static final EnrichedServiceModelDao enrichedServiceModelDao =
+ EnrichedServiceModelDaoFactory.getInstance().createInterface();
+ private static final ServiceModelDao serviceModelDao =
+ ServiceModelDaoFactory.getInstance().createInterface();
+ private static final ComponentDependencyModelDao componentDependencyModelDao =
+ ComponentDependencyModelDaoFactory.getInstance().createInterface();
@Override
public void registerVersioning(String versionableEntityType) {
vspInfoDao.registerVersioning(versionableEntityType);
- vspQuestionnaireDao.registerVersioning(versionableEntityType);
networkDao.registerVersioning(versionableEntityType);
componentDao.registerVersioning(versionableEntityType);
nicDao.registerVersioning(versionableEntityType);
processDao.registerVersioning(versionableEntityType);
+ orchestrationTemplateCandidateDataDao.registerVersioning(versionableEntityType);
+ componentDependencyModelDao.registerVersioning(versionableEntityType);
}
@Override
- public void createVendorSoftwareProductInfo(VspDetails vspDetails) {
- vspInfoDao.create(vspDetails);
- }
-
- @Override
- public Collection<VspDetails> listVendorSoftwareProductsInfo() {
- return vspInfoDao.list(new VspDetails());
- }
-
- public VspDetails getVendorSoftwareProductInfo(VspDetails vspDetails) {
- return vspInfoDao.get(vspDetails);
- }
-
-
- @Override
- public void updateVendorSoftwareProductInfo(VspDetails vspDetails) {
- vspInfoDao.update(vspDetails);
- }
-
- @Override
- public void deleteVendorSoftwareProductInfo(VspDetails vspDetails) {
- vspInfoDao.delete(vspDetails);
- }
-
- @Override
- public void updateUploadData(UploadDataEntity uploadData) {
- uploadDataDao.update(uploadData);
- }
-
- @Override
- public UploadDataEntity getUploadData(UploadDataEntity uploadData) {
- return uploadDataDao.get(uploadData);
- }
-
- @Override
- public ByteBuffer getContentData(UploadDataEntity uploadDataEntity) {
- return uploadDataDao.getContentData(uploadDataEntity.getId(), uploadDataEntity.getVersion());
- }
-
- @Override
- public void insertPackageDetails(PackageInfo packageInfo) {
- packageInfoDao.update(packageInfo);
- }
-
- @Override
- public PackageInfo getPackageInfo(PackageInfo packageInfo) {
- return packageInfoDao.get(packageInfo);
- }
-
- @Override
- public void deletePackageInfo(PackageInfo packageInfo) {
- packageInfoDao.delete(packageInfo);
- }
-
- @Override
- public Collection<NetworkEntity> listNetworks(String vspId, Version version) {
- return networkDao.list(new NetworkEntity(vspId, version, null));
- }
-
- @Override
- public void createNetwork(NetworkEntity network) {
- networkDao.create(network);
- }
-
- @Override
- public void updateNetwork(NetworkEntity networkEntity) {
- networkDao.update(networkEntity);
- }
-
- @Override
- public NetworkEntity getNetwork(String vspId, Version version, String networkId) {
- return networkDao.get(new NetworkEntity(vspId, version, networkId));
- }
-
- @Override
- public void deleteNetwork(String vspId, Version version) {
- NetworkEntity networkEntity = new NetworkEntity(vspId, version, null);
- networkDao.delete(networkEntity);
- }
-
- @Override
- public List<PackageInfo> listPackages(String category, String subCategory) {
- return packageInfoDao.listByCategory(category, subCategory);
- }
-
-
- @Override
public Collection<ComponentEntity> listComponents(String vspId, Version version) {
return componentDao.list(new ComponentEntity(vspId, version, null));
}
@Override
- public void createComponent(ComponentEntity component) {
- componentDao.create(component);
- }
-
- @Override
- public void updateComponent(ComponentEntity component) {
- componentDao.update(component);
- }
-
- @Override
- public ComponentEntity getComponent(String vspId, Version version, String componentId) {
- return componentDao.get(new ComponentEntity(vspId, version, componentId));
- }
-
- @Override
public Collection<ComponentEntity> listComponentsQuestionnaire(String vspId, Version version) {
return componentDao.listQuestionnaires(vspId, version);
}
@Override
- public void updateComponentQuestionnaire(String vspId, Version version, String componentId,
- String questionnaireData) {
- componentDao.updateQuestionnaireData(vspId, version, componentId, questionnaireData);
- }
-
- @Override
- public void deleteComponent(String vspId, Version version) {
- ComponentEntity componentEntity = new ComponentEntity(vspId, version, null);
- componentDao.delete(componentEntity);
+ public Collection<ComponentEntity> listComponentsCompositionAndQuestionnaire(String vspId,
+ Version version) {
+ return componentDao.listCompositionAndQuestionnaire(vspId, version);
}
@Override
@@ -255,60 +150,25 @@ public class VendorSoftwareProductDaoImpl implements VendorSoftwareProductDao {
@Override
public void uploadProcessArtifact(String vspId, Version version, String componentId,
String processId, byte[] artifact, String artifactName) {
- ProcessArtifactEntity processArtifact =
- new ProcessArtifactEntity(vspId, version, componentId, processId);
+ ProcessEntity
+ processArtifact = new ProcessEntity(vspId, version, componentId, processId);
+ processArtifact = processDao.get(processArtifact);
processArtifact.setArtifact(ByteBuffer.wrap(artifact));
processArtifact.setArtifactName(artifactName);
- processArtifactDao.update(processArtifact);
+ processDao.update(processArtifact);
}
@Override
- public ProcessArtifactEntity getProcessArtifact(String vspId, Version version, String componentId,
- String processId) {
- return processArtifactDao
- .get(new ProcessArtifactEntity(vspId, version, componentId, processId));
+ public ProcessEntity getProcessArtifact(String vspId, Version version, String componentId,
+ String processId) {
+ return processDao
+ .get(new ProcessEntity(vspId, version, componentId, processId));
}
@Override
public void deleteProcessArtifact(String vspId, Version version, String componentId,
String processId) {
- processArtifactDao.delete(new ProcessArtifactEntity(vspId, version, componentId, processId));
- }
-
- @Override
- public VspQuestionnaireEntity getQuestionnaire(String vspId, Version version) {
- return vspQuestionnaireDao.get(new VspQuestionnaireEntity(vspId, version));
- }
-
- @Override
- public void updateQuestionnaire(String vspId, Version version, String questionnaireData) {
- vspQuestionnaireDao.updateQuestionnaireData(vspId, version, questionnaireData);
- }
-
- @Override
- public Collection<NicEntity> listNics(String vspId, Version version, String componentId) {
- return nicDao.list(new NicEntity(vspId, version, componentId, null));
- }
-
- @Override
- public void createNic(NicEntity nic) {
- nicDao.create(nic);
- }
-
- @Override
- public NicEntity getNic(String vspId, Version version, String componentId, String nicId) {
- return nicDao.get(new NicEntity(vspId, version, componentId, nicId));
- }
-
- @Override
- public void updateNic(NicEntity nicEntity) {
- nicDao.update(nicEntity);
- }
-
- @Override
- public void updateNicQuestionnaire(String vspId, Version version, String componentId,
- String nicId, String questionnaireData) {
- nicDao.updateQuestionnaireData(vspId, version, componentId, nicId, questionnaireData);
+ processDao.delete(new ProcessEntity(vspId, version, componentId, processId));
}
@Override
@@ -317,33 +177,49 @@ public class VendorSoftwareProductDaoImpl implements VendorSoftwareProductDao {
}
@Override
- public void deleteNic(String vspId, Version version, String componentId) {
- NicEntity nicEntity = new NicEntity(vspId, version, componentId, null);
- nicDao.delete(nicEntity);
- }
-
- @Override
public void deleteUploadData(String vspId, Version version) {
+
networkDao.deleteAll(vspId, version);
- nicDao.deleteByVspId(vspId, version);
- artifactDao.delete(vspId, version);
- enrichArtifactDao.delete(vspId, version);
- ComponentArtifactEntity componentArtifactEntity =
- new ComponentArtifactEntity(vspId, version, null, null);
- ProcessEntity processEntity = new ProcessEntity(vspId, version, null, null);
- componentArtifactDao.deleteAll(componentArtifactEntity);
- processDao.deleteAll(processEntity);
+ //nicDao.deleteByVspId(vspId, version);
+ //artifactDao.delete(vspId, version);
+ //templateDao.deleteAll(vspId, version);
+ enrichedServiceModelDao.deleteAll(vspId, version);
+ serviceModelDao.deleteAll(vspId, version);
+ //processDao.deleteVspAll(vspId,version);
componentDao.deleteAll(vspId, version);
- uploadDataDao.deleteContentDataAndValidationData(vspId, version);
+ vspInfoDao.deleteAll(vspId, version);
+
+// uploadDataDao.deleteContentDataAndValidationData(vspId, version);
+
+// enrichArtifactDao.deleteAll(vspId, version);
+// artifactDao.deleteAll(vspId, version);
}
- @Override
- public void updateVspLatestModificationTime(String vspId, Version version) {
- if (Objects.isNull(vspId) || Objects.isNull(version)) {
+ /* @Override
+ public void updateVspLatestModificationTime(String vspId, Version version) {
+ *//* if (Objects.isNull(vspId) || Objects.isNull(version)) {
return;
}
VspDetails retrieved = getVendorSoftwareProductInfo(new VspDetails(vspId, version));
- updateVendorSoftwareProductInfo(retrieved);
+ updateVendorSoftwareProductInfo(retrieved);*//*
+ }
+*/
+ @Override
+ public void createComponentDependencyModel(List<ComponentDependencyModelEntity>
+ componentDependencyModel, String vspId,
+ Version version) {
+ componentDependencyModelDao.deleteAll(vspId, version);
+ for (ComponentDependencyModelEntity entity : componentDependencyModel) {
+ entity.setId(CommonMethods.nextUuId());
+ componentDependencyModelDao.create(entity);
+ }
+ }
+
+ @Override
+ public Collection<ComponentDependencyModelEntity> listComponentDependencies(String vspId,
+ Version version) {
+ return componentDependencyModelDao.list(new ComponentDependencyModelEntity(vspId, version,
+ null));
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoFactoryImpl.java
index 1dcb3f4c66..a5f9d17431 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoFactoryImpl.java
@@ -20,12 +20,15 @@
package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen.VendorSoftwareProductInfoDaoZusammenImpl;
public class VendorSoftwareProductInfoDaoFactoryImpl extends VendorSoftwareProductInfoDaoFactory {
private static final VendorSoftwareProductInfoDao INSTANCE =
- new VendorSoftwareProductInfoDaoImpl();
+ new VendorSoftwareProductInfoDaoZusammenImpl(
+ ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public VendorSoftwareProductInfoDao createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoImpl.java
index c3096dab29..5a8635cf98 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VendorSoftwareProductInfoDaoImpl.java
@@ -30,6 +30,7 @@ import org.openecomp.core.nosqldb.api.NoSqlDb;
import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
import org.openecomp.sdc.versioning.VersioningManagerFactory;
import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
@@ -71,13 +72,39 @@ public class VendorSoftwareProductInfoDaoImpl extends CassandraBaseDao<VspDetail
return accessor.listAll().all();
}
+ @Override
+ public void updateOldVersionIndication(VspDetails vspDetails) {
+
+ }
+
+ @Override
+ public void updateQuestionnaireData(String vspId, Version version,
+ String questionnaireData) {
+
+ }
+
+ @Override
+ public String getQuestionnaireData(String vspId, Version version) {
+ return null;
+ }
+
+ @Override
+ public VspQuestionnaireEntity getQuestionnaire(String vspId, Version version) {
+ return null;
+ }
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+
+ }
+
+
@Accessor
interface VendorSoftwareProductInfoAccessor {
@Query(
- "SELECT vsp_id,version,name,description,icon,category,sub_category,vendor_id,"
- + "vlm_version,license_agreement,feature_groups FROM vsp_information")
+ "SELECT vsp_id,version,name,description,icon,category,sub_category,vendor_id,vlm_version,"
+ + "license_agreement,feature_groups, is_old_version FROM vsp_information")
Result<VspDetails> listAll();
-
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VspQuestionnaireDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VspQuestionnaireDaoCassandraImpl.java
deleted file mode 100644
index ef4dd0de74..0000000000
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/VspQuestionnaireDaoCassandraImpl.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
-
-import com.datastax.driver.core.ResultSet;
-import com.datastax.driver.core.UDTValue;
-import com.datastax.driver.mapping.Mapper;
-import com.datastax.driver.mapping.UDTMapper;
-import com.datastax.driver.mapping.annotations.Accessor;
-import com.datastax.driver.mapping.annotations.Query;
-import org.openecomp.core.nosqldb.api.NoSqlDb;
-import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.VspQuestionnaireDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
-import org.openecomp.sdc.versioning.VersioningManagerFactory;
-import org.openecomp.sdc.versioning.dao.types.Version;
-import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
-
-public class VspQuestionnaireDaoCassandraImpl implements VspQuestionnaireDao {
-
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final Mapper<VspQuestionnaireEntity> mapper =
- noSqlDb.getMappingManager().mapper(VspQuestionnaireEntity.class);
- private static final VspQuestionnaireAccessor accessor =
- noSqlDb.getMappingManager().createAccessor(VspQuestionnaireAccessor.class);
- private static final UDTMapper<Version> versionMapper =
- noSqlDb.getMappingManager().udtMapper(Version.class);
-
- @Override
- public void registerVersioning(String versionableEntityType) {
- VersioningManagerFactory.getInstance().createInterface()
- .register(versionableEntityType, new VersionableEntityMetadata(
- mapper.getTableMetadata().getName(),
- mapper.getTableMetadata().getPartitionKey().get(0).getName(),
- mapper.getTableMetadata().getPartitionKey().get(1).getName()));
- }
-
- @Override
- public VspQuestionnaireEntity get(VspQuestionnaireEntity entity) {
- return mapper.get(entity.getId(), versionMapper.toUDT(entity.getVersion()));
- }
-
- @Override
- public void updateQuestionnaireData(String id, Version version, String questionnaireData) {
- accessor.updateQuestionnaireData(questionnaireData, id, versionMapper.toUDT(version));
- }
-
- @Accessor
- interface VspQuestionnaireAccessor {
-
- @Query("update vsp_information set questionnaire_data=? where vsp_id=? and version=?")
- ResultSet updateQuestionnaireData(String questionnaireData, String id, UDTValue version);
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDaoZusammenImpl.java
new file mode 100644
index 0000000000..8ef09ada7b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDaoZusammenImpl.java
@@ -0,0 +1,244 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.ByteArrayInputStream;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+public class ComponentDaoZusammenImpl implements ComponentDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public ComponentDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ }
+
+ @Override
+ public Collection<ComponentEntity> list(ComponentEntity component) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(component.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(component.getVersion()));
+
+ return listComponents(zusammenAdaptor, context, elementContext, component.getVspId(),
+ component.getVersion());
+ }
+
+ static Collection<ComponentEntity> listComponents(ZusammenAdaptor zusammenAdaptor,
+ SessionContext context,
+ ElementContext elementContext,
+ String vspId, Version version) {
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.Components.name())
+ .stream().map(elementInfo -> mapElementInfoToComponent(vspId, version, elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ private static ComponentEntity mapElementInfoToComponent(String vspId, Version version,
+ ElementInfo elementInfo) {
+ ComponentEntity componentEntity =
+ new ComponentEntity(vspId, version, elementInfo.getId().getValue());
+ componentEntity.setCompositionData(
+ elementInfo.getInfo().getProperty(ElementPropertyName.compositionData.name()));
+ return componentEntity;
+ }
+
+ @Override
+ public void create(ComponentEntity component) {
+ ZusammenElement componentElement = componentToZusammen(component, Action.CREATE);
+ ZusammenElement componentsElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Components, null);
+ componentsElement.getSubElements().add(componentElement);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(component.getVspId());
+ Optional<Element> savedElement = zusammenAdaptor.saveElement(context,
+ new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ componentsElement, "Create component");
+ savedElement.ifPresent(element ->
+ component.setId(element.getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(ComponentEntity component) {
+ ZusammenElement componentElement = componentToZusammen(component, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(component.getVspId());
+ zusammenAdaptor.saveElement(context,
+ new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ componentElement, String.format("Update component with id %s", component.getId()));
+ }
+
+ @Override
+ public ComponentEntity get(ComponentEntity component) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(component.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(component.getVersion()));
+
+ Optional<Element> element =
+ zusammenAdaptor.getElement(context, elementContext, component.getId());
+
+ if (element.isPresent()) {
+ component.setCompositionData(new String(FileUtils.toByteArray(element.get().getData())));
+ return component;
+ }
+ return null;
+ }
+
+ @Override
+ public void delete(ComponentEntity component) {
+ ZusammenElement componentElement = new ZusammenElement();
+ componentElement.setElementId(new Id(component.getId()));
+ componentElement.setAction(Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(component.getVspId());
+ zusammenAdaptor.saveElement(context,
+ new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ componentElement, String.format("Delete component with id %s", component.getId()));
+ }
+
+ @Override
+ public ComponentEntity getQuestionnaireData(String vspId, Version version, String componentId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(version));
+
+ return getQuestionnaire(context, elementContext,
+ new ComponentEntity(vspId, version, componentId));
+ }
+
+ private ComponentEntity getQuestionnaire(SessionContext context, ElementContext elementContext,
+ ComponentEntity component) {
+ Optional<Element> questionnaireElement = zusammenAdaptor
+ .getElementByName(context, elementContext, new Id(component.getId()),
+ StructureElement.Questionnaire.name());
+ return questionnaireElement.map(
+ element -> element.getData() == null
+ ? null
+ : new String(FileUtils.toByteArray(element.getData())))
+ .map(questionnaireData -> {
+ component.setQuestionnaireData(questionnaireData);
+ return component;
+ })
+ .orElse(null);
+ }
+
+ @Override
+ public void updateQuestionnaireData(String vspId, Version version, String componentId,
+ String questionnaireData) {
+ ZusammenElement questionnaireElement =
+ componentQuestionnaireToZusammen(questionnaireData, Action.UPDATE);
+
+ ZusammenElement componentElement = new ZusammenElement();
+ componentElement.setAction(Action.IGNORE);
+ componentElement.setElementId(new Id(componentId));
+ componentElement.setSubElements(Collections.singletonList(questionnaireElement));
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ zusammenAdaptor.saveElement(context,
+ new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ componentElement, "Update component questionnaire");
+ }
+
+ @Override
+ public Collection<ComponentEntity> listQuestionnaires(String vspId, Version version) {
+ return listCompositionAndQuestionnaire(vspId, version);
+ }
+
+ @Override
+ public Collection<ComponentEntity> listCompositionAndQuestionnaire(String vspId,
+ Version version) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(version));
+
+ Collection<ComponentEntity> components =
+ listComponents(zusammenAdaptor, context, elementContext, vspId, version);
+
+ components.forEach(component -> getQuestionnaire(context, elementContext, component));
+ return components;
+ }
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ ZusammenElement componentsElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Components, Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ zusammenAdaptor.saveElement(context,
+ new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ componentsElement, "Delete all components");
+ }
+
+ private ZusammenElement componentToZusammen(ComponentEntity component, Action action) {
+ ZusammenElement componentElement = buildComponentElement(component, action);
+ if (action == Action.CREATE) {
+ componentElement
+ .setSubElements(Arrays.asList(
+ componentQuestionnaireToZusammen(component.getQuestionnaireData(), Action.CREATE),
+ VspZusammenUtil.buildStructuralElement(StructureElement.Nics, Action.CREATE),
+ VspZusammenUtil.buildStructuralElement(StructureElement.Processes, Action.CREATE),
+ VspZusammenUtil.buildStructuralElement(StructureElement.Mibs, Action.CREATE)));
+ }
+ return componentElement;
+ }
+
+ private ZusammenElement componentQuestionnaireToZusammen(String questionnaireData,
+ Action action) {
+ ZusammenElement questionnaireElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Questionnaire, action);
+ questionnaireElement.setData(new ByteArrayInputStream(questionnaireData.getBytes()));
+ return questionnaireElement;
+ }
+
+ private ZusammenElement buildComponentElement(ComponentEntity component, Action action) {
+ ZusammenElement componentElement = new ZusammenElement();
+ componentElement.setAction(action);
+ if (component.getId() != null) {
+ componentElement.setElementId(new Id(component.getId()));
+ }
+ Info info = new Info();
+ info.addProperty(ElementPropertyName.type.name(), ElementType.Component);
+ info.addProperty(ElementPropertyName.compositionData.name(), component.getCompositionData());
+ componentElement.setInfo(info);
+ componentElement.setData(new ByteArrayInputStream(component.getCompositionData().getBytes()));
+ return componentElement;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDependencyModelDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDependencyModelDaoZusammenImpl.java
new file mode 100644
index 0000000000..e36b6c7743
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ComponentDependencyModelDaoZusammenImpl.java
@@ -0,0 +1,201 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDependencyModelDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentDependencyModelEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.Collection;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+/**
+ * Created by ayalaben on 5/16/2017.
+ */
+public class ComponentDependencyModelDaoZusammenImpl implements ComponentDependencyModelDao {
+
+ private static final Logger logger =
+ LoggerFactory.getLogger(OrchestrationTemplateCandidateDaoZusammenImpl.class);
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public ComponentDependencyModelDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public ComponentDependencyModelEntity get(ComponentDependencyModelEntity entity) {
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entity.getVspId()); // entity.getId()?
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(entity.getVersion()));
+
+ Optional<ElementInfo> componentDependencyElement =
+ zusammenAdaptor.getElementInfo(context, elementContext, new Id(entity.getId()));
+
+ if (componentDependencyElement.isPresent()) {
+ addComponentDependencyData(entity, componentDependencyElement.get());
+ return entity;
+ }
+
+ return null;
+ }
+
+ @Override
+ public void create(ComponentDependencyModelEntity entity) {
+
+ ZusammenElement componentDependencies =
+ VspZusammenUtil.buildStructuralElement(StructureElement.ComponentDependencies, null);
+
+ ZusammenElement componentDependency = buildComponentDependencyElement(entity);
+ componentDependency.setAction(Action.CREATE);
+
+ Id itemId = new Id(entity.getVspId());
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<Element> savedElement = zusammenAdaptor.saveElement(context, elementContext,
+ VspZusammenUtil.aggregateElements(componentDependencies, componentDependency),
+ "Create component dependency model");
+
+ savedElement.ifPresent(element ->
+ entity.setId(element.getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(ComponentDependencyModelEntity entity) {
+ ZusammenElement componentDependencyElement = buildComponentDependencyElement(entity);
+ componentDependencyElement.setAction(Action.UPDATE);
+
+ Id itemId = new Id(entity.getVspId());
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ zusammenAdaptor.saveElement(context, elementContext,
+ componentDependencyElement,
+ String.format("Update component dependency model with id %s", entity.getId()));
+ }
+
+ @Override
+ public void delete(ComponentDependencyModelEntity entity) {
+ ZusammenElement componentDependencyElement = new ZusammenElement();
+ componentDependencyElement.setElementId(new Id(entity.getId()));
+ componentDependencyElement.setAction(Action.DELETE);
+
+ Id itemId = new Id(entity.getVspId());
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+
+ zusammenAdaptor.saveElement(context, elementContext,
+ componentDependencyElement,
+ String.format("Delete component dependency model with id %s", entity.getId()));
+ }
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ ZusammenElement componentDependenciesElement =
+ VspZusammenUtil
+ .buildStructuralElement(StructureElement.ComponentDependencies, Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor)),
+ componentDependenciesElement, "Delete all component dependencies");
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ //not implemented?
+ }
+
+ @Override
+ public Collection<ComponentDependencyModelEntity> list(ComponentDependencyModelEntity entity) {
+
+ Id itemId = new Id(entity.getVspId());
+ SessionContext context = ZusammenUtil.createSessionContext();
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(entity.getVersion()));
+
+ return zusammenAdaptor.listElementsByName(context, elementContext,
+ null, StructureElement.ComponentDependencies.name())
+ .stream().map(elementInfo -> mapElementInfoToComponentDependencyModel(entity.getVspId(),
+ entity.getVersion(), elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ private static ComponentDependencyModelEntity mapElementInfoToComponentDependencyModel(
+ String vspId, Version version,
+ ElementInfo elementInfo) {
+ ComponentDependencyModelEntity componentDependencyModelEntity =
+ new ComponentDependencyModelEntity(vspId, version, elementInfo.getId().getValue());
+ componentDependencyModelEntity.setSourceComponentId(elementInfo.getInfo()
+ .getProperty(ComponentDependencyModelPropertyName.sourcecomponent_id.name()));
+ componentDependencyModelEntity.setTargetComponentId(elementInfo.getInfo()
+ .getProperty(ComponentDependencyModelPropertyName.targetcomponent_id.name()));
+ componentDependencyModelEntity.setRelation(elementInfo.getInfo()
+ .getProperty(ComponentDependencyModelPropertyName.relation.name()));
+
+ return componentDependencyModelEntity;
+ }
+
+
+ private ZusammenElement buildComponentDependencyElement(ComponentDependencyModelEntity entity) {
+ ZusammenElement componentDependencyElement = new ZusammenElement();
+
+ if (entity.getId() != null) {
+ componentDependencyElement.setElementId(new Id(entity.getId()));
+ }
+
+ Info info = new Info();
+ info.addProperty(ComponentDependencyModelPropertyName.id.name(), entity.getId());
+ info.addProperty(ComponentDependencyModelPropertyName.relation.name(), entity.getRelation());
+ info.addProperty(ComponentDependencyModelPropertyName.sourcecomponent_id.name(),
+ entity.getSourceComponentId());
+ info.addProperty(ComponentDependencyModelPropertyName.targetcomponent_id.name(),
+ entity.getTargetComponentId());
+
+ componentDependencyElement.setInfo(info);
+
+ return componentDependencyElement;
+ }
+
+ private void addComponentDependencyData(ComponentDependencyModelEntity componentDependency,
+ ElementInfo componentDependencyElement) {
+ componentDependency.setId(componentDependencyElement.getInfo()
+ .getProperty(ComponentDependencyModelPropertyName.id.name()));
+ componentDependency.setRelation(componentDependencyElement.getInfo()
+ .getProperty(ComponentDependencyModelPropertyName.id.name()));
+ componentDependency.setSourceComponentId(componentDependencyElement.getInfo()
+ .getProperty(ComponentDependencyModelPropertyName.sourcecomponent_id.name()));
+ componentDependency.setTargetComponentId(componentDependencyElement.getInfo()
+ .getProperty(ComponentDependencyModelPropertyName.targetcomponent_id.name()));
+ }
+
+
+ private enum ComponentDependencyModelPropertyName {
+ id,
+ relation,
+ sourcecomponent_id,
+ targetcomponent_id,
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementPropertyName.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementPropertyName.java
new file mode 100644
index 0000000000..9ca0bf721a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementPropertyName.java
@@ -0,0 +1,6 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+public enum ElementPropertyName {
+ type,
+ compositionData
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementType.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementType.java
new file mode 100644
index 0000000000..b0313f5b14
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ElementType.java
@@ -0,0 +1,9 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+public enum ElementType {
+ Network,
+ Component,
+ Nic,
+ Process,
+ LKG
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/MibDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/MibDaoZusammenImpl.java
new file mode 100644
index 0000000000..10cdfbd9da
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/MibDaoZusammenImpl.java
@@ -0,0 +1,171 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import org.openecomp.core.enrichment.types.ArtifactType;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.MibDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.MibEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.ByteArrayInputStream;
+import java.nio.ByteBuffer;
+import java.util.Collection;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+/**
+ * @author Avrahamg.
+ * @since March 21, 2017
+ */
+public class MibDaoZusammenImpl implements MibDao {
+
+ private static final String ARTIFACT_NAME = "name";
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public MibDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+
+ }
+
+ @Override
+ public Optional<MibEntity> getByType(MibEntity mibEntity) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(mibEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(mibEntity.getVersion()));
+
+ Optional<Element> mibsElement =
+ zusammenAdaptor.getElementByName(context, elementContext, new Id(mibEntity
+ .getComponentId()), StructureElement.Mibs.toString());
+ if (mibsElement.isPresent()) {
+ Optional<Element> mibElement = zusammenAdaptor
+ .getElementByName(context, elementContext, mibsElement.get().getElementId(),
+ getMibStructuralElement(mibEntity.getType()).toString());
+ if (mibElement.isPresent()) {
+ mibEntity.setId(mibElement.get().getElementId().getValue());
+ mibEntity.setArtifactName((String) mibElement.get().getInfo().getProperties().get(ARTIFACT_NAME));
+ mibEntity.setArtifact(ByteBuffer.wrap(FileUtils.toByteArray(mibElement.get().getData())));
+ return Optional.of(mibEntity);
+ }
+ }
+
+ return Optional.empty();
+ }
+
+ @Override
+ public void create(MibEntity mibEntity) {
+ ZusammenElement mibElement = buildMibElement(mibEntity);
+
+ ZusammenElement mibsElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Mibs, null);
+
+ ZusammenElement componentElement = buildComponentElement(mibEntity);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(mibEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<Element> savedElement = zusammenAdaptor.saveElement(context, elementContext,
+ VspZusammenUtil.aggregateElements(componentElement, mibsElement, mibElement),
+ "Create mib");
+ savedElement.ifPresent(element ->
+ mibEntity.setId(element.getSubElements().iterator().next()
+ .getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void delete(MibEntity mibEntity) {
+ ZusammenElement mibElement = new ZusammenElement();
+ mibElement.setElementId(new Id(mibEntity.getId()));
+ mibElement.setAction(Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(mibEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ zusammenAdaptor.saveElement(context, elementContext, mibElement,
+ String.format("Delete mib with id %s", mibEntity.getId()));
+ }
+
+ @Override
+ public Collection<MibEntity> list(MibEntity mib) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(mib.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(mib.getVersion()));
+
+ return zusammenAdaptor.listElementsByName(context, elementContext, new Id(mib.getComponentId()),
+ StructureElement.Mibs.toString()).stream()
+ .map(elementInfo ->
+ mapElementInfoToMib(mib.getVspId(), mib.getVersion(), mib.getComponentId(),
+ elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public void deleteAll(MibEntity mibEntity) {
+ ZusammenElement mibsElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Mibs, Action.DELETE);
+
+ ZusammenElement componentElement = buildComponentElement(mibEntity);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(mibEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ zusammenAdaptor.saveElement(context, elementContext,
+ VspZusammenUtil.aggregateElements(componentElement, mibsElement), "Delete mibs");
+ }
+
+ private ZusammenElement buildComponentElement(MibEntity mibEntity) {
+ ZusammenElement componentElement = new ZusammenElement();
+ componentElement.setElementId(new Id(mibEntity.getComponentId()));
+ componentElement.setAction(Action.IGNORE);
+ return componentElement;
+ }
+
+ private ZusammenElement buildMibElement(MibEntity mib) {
+ ZusammenElement mibElement = VspZusammenUtil
+ .buildStructuralElement(getMibStructuralElement(mib.getType()), Action.UPDATE);
+ mibElement.getInfo().getProperties().put(ARTIFACT_NAME, mib.getArtifactName());
+ mibElement.setData(new ByteArrayInputStream(mib.getArtifact().array()));
+ return mibElement;
+ }
+
+ private MibEntity mapElementInfoToMib(String vspId, Version version, String componentId,
+ ElementInfo elementInfo) {
+ MibEntity mib = new MibEntity(vspId, version, componentId, elementInfo.getId().getValue());
+ mib.setArtifactName((String) elementInfo.getInfo().getProperties().get(ARTIFACT_NAME));
+ mib.setType(ArtifactType.valueOf(elementInfo.getInfo().getName()));
+ return mib;
+ }
+
+ private StructureElement getMibStructuralElement(ArtifactType type) {
+ switch (type) {
+ case SNMP_POLL:
+ return StructureElement.SNMP_POLL;
+ case SNMP_TRAP:
+ return StructureElement.SNMP_TRAP;
+ default:
+ throw new IllegalArgumentException();
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NetworkDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NetworkDaoZusammenImpl.java
new file mode 100644
index 0000000000..898ee434e8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NetworkDaoZusammenImpl.java
@@ -0,0 +1,150 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
+
+import java.io.ByteArrayInputStream;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+public class NetworkDaoZusammenImpl implements NetworkDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public NetworkDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+
+ }
+
+ @Override
+ public Collection<NetworkEntity> list(NetworkEntity network) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(network.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(network.getVersion()));
+
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, null, StructureElement.Networks.name())
+ .stream().map(elementInfo ->
+ mapElementInfoToNetwork(network.getVspId(), network.getVersion(), elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ private NetworkEntity mapElementInfoToNetwork(String vspId, Version version,
+ ElementInfo elementInfo) {
+ NetworkEntity networkEntity =
+ new NetworkEntity(vspId, version, elementInfo.getId().getValue());
+ networkEntity.setCompositionData(
+ elementInfo.getInfo().getProperty(ElementPropertyName.compositionData.name()));
+ return networkEntity;
+ }
+
+ @Override
+ public void create(NetworkEntity network) {
+ ZusammenElement networkElement = buildNetworkElement(network, Action.CREATE);
+ ZusammenElement networksElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Networks, null);
+ networksElement.setSubElements(Collections.singletonList(networkElement));
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(network.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ Optional<Element> savedElement =
+ zusammenAdaptor.saveElement(context, elementContext, networksElement, "Create network");
+ savedElement.ifPresent(element ->
+ network.setId(element.getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(NetworkEntity network) {
+ ZusammenElement networkElement = buildNetworkElement(network, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(network.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, networkElement,
+ String.format("Update network with id %s", network.getId()));
+ }
+
+ @Override
+ public NetworkEntity get(NetworkEntity network) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(network.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(network.getVersion()));
+
+ Optional<Element> element =
+ zusammenAdaptor.getElement(context, elementContext, network.getId());
+
+ if (element.isPresent()) {
+ network.setCompositionData(new String(FileUtils.toByteArray(element.get().getData())));
+ return network;
+ } else {
+ return null;
+ }
+ }
+
+ @Override
+ public void delete(NetworkEntity network) {
+ ZusammenElement networkElement = new ZusammenElement();
+ networkElement.setElementId(new Id(network.getId()));
+ networkElement.setAction(Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(network.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext,
+ networkElement, String.format("Delete network with id %s", network.getId()));
+ }
+
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+ ZusammenElement networksElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Networks, Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, networksElement, "Delete all networks");
+ }
+
+ private ZusammenElement buildNetworkElement(NetworkEntity network, Action action) {
+ ZusammenElement networkElement = new ZusammenElement();
+ networkElement.setAction(action);
+ if (network.getId() != null) {
+ networkElement.setElementId(new Id(network.getId()));
+ }
+ Info info = new Info();
+ info.addProperty(ElementPropertyName.type.name(), ElementType.Network);
+ info.addProperty(ElementPropertyName.compositionData.name(), network.getCompositionData());
+ networkElement.setInfo(info);
+ networkElement.setData(new ByteArrayInputStream(network.getCompositionData().getBytes()));
+ return networkElement;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NicDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NicDaoZusammenImpl.java
new file mode 100644
index 0000000000..e597068d87
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/NicDaoZusammenImpl.java
@@ -0,0 +1,257 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NicEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.ByteArrayInputStream;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+public class NicDaoZusammenImpl implements NicDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public NicDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+
+ }
+
+ @Override
+ public Collection<NicEntity> list(NicEntity nic) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(nic.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(nic.getVersion()));
+
+ return listNics(context, elementContext, nic);
+ }
+
+ private Collection<NicEntity> listNics(SessionContext context, ElementContext elementContext,
+ NicEntity nic) {
+ return zusammenAdaptor
+ .listElementsByName(context, elementContext, new Id(nic.getComponentId()),
+ StructureElement.Nics.name())
+ .stream().map(elementInfo -> mapElementInfoToNic(
+ nic.getVspId(), nic.getVersion(), nic.getComponentId(), elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ private NicEntity mapElementInfoToNic(String vspId, Version version,
+ String componentId, ElementInfo elementInfo) {
+ NicEntity nicEntity =
+ new NicEntity(vspId, version, componentId, elementInfo.getId().getValue());
+ nicEntity.setCompositionData(
+ elementInfo.getInfo().getProperty(ElementPropertyName.compositionData.name()));
+ return nicEntity;
+ }
+
+ @Override
+ public void create(NicEntity nic) {
+ ZusammenElement nicElement = nicToZusammen(nic, Action.CREATE);
+
+ ZusammenElement nicsElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Nics, null);
+ nicsElement.setSubElements(Collections.singletonList(nicElement));
+
+ ZusammenElement componentElement =
+ buildZusammenElement(new Id(nic.getComponentId()), Action.IGNORE);
+ componentElement.setSubElements(Collections.singletonList(nicsElement));
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(nic.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<Element> savedElement =
+ zusammenAdaptor.saveElement(context, elementContext, componentElement, "Create nic");
+ savedElement.ifPresent(element ->
+ nic.setId(element.getSubElements().iterator().next()
+ .getSubElements().iterator().next().getElementId().getValue()));
+ }
+
+ @Override
+ public void update(NicEntity nic) {
+ ZusammenElement nicElement = nicToZusammen(nic, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(nic.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, nicElement,
+ String.format("Update nic with id %s", nic.getId()));
+ }
+
+ @Override
+ public NicEntity get(NicEntity nic) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(nic.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(nic.getVersion()));
+ Optional<Element> element = zusammenAdaptor.getElement(context, elementContext, nic.getId());
+
+ if (element.isPresent()) {
+ nic.setCompositionData(new String(FileUtils.toByteArray(element.get().getData())));
+ return nic;
+ } else {
+ return null;
+ }
+ }
+
+ @Override
+ public void delete(NicEntity nic) {
+ ZusammenElement nicElement = buildZusammenElement(new Id(nic.getId()), Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(nic.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, nicElement,
+ String.format("Delete nic with id %s", nic.getId()));
+ }
+
+ @Override
+ public NicEntity getQuestionnaireData(String vspId, Version version, String componentId,
+ String nicId) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(version));
+
+ return getQuestionnaire(context, elementContext,
+ new NicEntity(vspId, version, componentId, nicId));
+ }
+
+ private NicEntity getQuestionnaire(SessionContext context, ElementContext elementContext,
+ NicEntity nic) {
+ Optional<Element> questionnaireElement = zusammenAdaptor
+ .getElementByName(context, elementContext, new Id(nic.getId()),
+ StructureElement.Questionnaire.name());
+ return questionnaireElement.map(
+ element -> element.getData() == null
+ ? null
+ : new String(FileUtils.toByteArray(element.getData())))
+ .map(questionnaireData -> {
+ nic.setQuestionnaireData(questionnaireData);
+ return nic;
+ })
+ .orElse(null);
+ }
+
+ @Override
+ public void updateQuestionnaireData(String vspId, Version version, String componentId,
+ String nicId, String questionnaireData) {
+ ZusammenElement questionnaireElement =
+ nicQuestionnaireToZusammen(questionnaireData, Action.UPDATE);
+
+ ZusammenElement nicElement = new ZusammenElement();
+ nicElement.setAction(Action.IGNORE);
+ nicElement.setElementId(new Id(nicId));
+ nicElement.setSubElements(Collections.singletonList(questionnaireElement));
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, nicElement, "Update nic questionnaire");
+ }
+
+ @Override
+ public Collection<NicEntity> listByVsp(String vspId, Version version) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(version));
+
+ Collection<ComponentEntity> components = ComponentDaoZusammenImpl
+ .listComponents(zusammenAdaptor, context, elementContext, vspId, version);
+
+ return components.stream()
+ .map(component ->
+ listNics(context, elementContext,
+ new NicEntity(vspId, version, component.getId(), null)).stream()
+ .map(nic -> getQuestionnaire(context, elementContext, nic))
+ .collect(Collectors.toList()))
+ .flatMap(Collection::stream)
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public void deleteByComponentId(String vspId, Version version, String componentId) {
+ ZusammenElement componentElement = buildZusammenElement(new Id(componentId), Action.IGNORE);
+ componentElement.setSubElements(Collections.singletonList(
+ VspZusammenUtil.buildStructuralElement(StructureElement.Nics, Action.DELETE)));
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, componentElement,
+ String.format("Delete all nics of component %s", componentId));
+ }
+
+ @Override
+ public void deleteByVspId(String vspId, Version version) {
+
+ }
+
+ private ZusammenElement nicToZusammen(NicEntity nic, Action action) {
+ ZusammenElement nicElement = buildNicElement(nic, action);
+ if (action == Action.CREATE) {
+ nicElement.setSubElements(Collections.singletonList(
+ nicQuestionnaireToZusammen(nic.getQuestionnaireData(), Action.CREATE)));
+ }
+ return nicElement;
+ }
+
+ private ZusammenElement nicQuestionnaireToZusammen(String questionnaireData,
+ Action action) {
+ ZusammenElement questionnaireElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Questionnaire, action);
+ questionnaireElement.setData(new ByteArrayInputStream(questionnaireData.getBytes()));
+ return questionnaireElement;
+ }
+
+ private ZusammenElement buildZusammenElement(Id elementId, Action action) {
+ ZusammenElement element = new ZusammenElement();
+ element.setElementId(elementId);
+ element.setAction(action);
+ return element;
+ }
+
+ private ZusammenElement buildNicElement(NicEntity nic, Action action) {
+ ZusammenElement nicElement = new ZusammenElement();
+ nicElement.setAction(action);
+ if (nic.getId() != null) {
+ nicElement.setElementId(new Id(nic.getId()));
+ }
+ Info info = new Info();
+ info.addProperty(ElementPropertyName.type.name(), ElementType.Nic);
+ info.addProperty(ElementPropertyName.compositionData.name(), nic.getCompositionData());
+ nicElement.setInfo(info);
+ nicElement.setData(new ByteArrayInputStream(nic.getCompositionData().getBytes()));
+ return nicElement;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateCandidateDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateCandidateDaoZusammenImpl.java
new file mode 100644
index 0000000000..c101955292
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateCandidateDaoZusammenImpl.java
@@ -0,0 +1,134 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.utils.fileutils.FileUtils;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
+
+import java.io.ByteArrayInputStream;
+import java.nio.ByteBuffer;
+import java.util.Optional;
+
+public class OrchestrationTemplateCandidateDaoZusammenImpl
+ implements OrchestrationTemplateCandidateDao {
+ private static final Logger logger =
+ LoggerFactory.getLogger(OrchestrationTemplateCandidateDaoZusammenImpl.class);
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public OrchestrationTemplateCandidateDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+
+ }
+
+ @Override
+ public OrchestrationTemplateCandidateData get(String vspId, Version version) {
+ logger.info("Getting orchestration template for vsp id -> " + vspId);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ Id versionId = VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+ ElementContext elementContext = new ElementContext(itemId, versionId,
+ VspZusammenUtil.getVersionTag(version));
+
+ Optional<Element> candidateElement =
+ zusammenAdaptor.getElementByName(context, elementContext, null,
+ StructureElement.OrchestrationTemplateCandidate.name());
+ if (candidateElement.isPresent()) {
+ OrchestrationTemplateCandidateData candidateData = new OrchestrationTemplateCandidateData();
+ candidateData.setFilesDataStructure(
+ new String(FileUtils.toByteArray(candidateElement.get().getData())));
+
+ zusammenAdaptor
+ .getElementByName(context, elementContext, candidateElement.get().getElementId(),
+ StructureElement.OrchestrationTemplateCandidateContent.name())
+ .ifPresent(candidateContentElement -> candidateData.setContentData(
+ ByteBuffer.wrap(FileUtils.toByteArray(candidateContentElement.getData()))));
+ logger.info("Finished getting orchestration template for vsp id -> " + vspId);
+ return candidateData;
+ }
+ logger.info(String.format("Orchestration template for vsp id %s does not exist", vspId));
+ return null;
+ }
+
+ @Override
+ public void update(String vspId, OrchestrationTemplateCandidateData candidateData) {
+ logger.info("Uploading candidate data entity for vsp id -> " + vspId);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ Id versionId = VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+ ElementContext elementContext = new ElementContext(itemId, versionId);
+
+ ZusammenElement candidateElement = VspZusammenUtil
+ .buildStructuralElement(StructureElement.OrchestrationTemplateCandidate, Action.UPDATE);
+ candidateElement
+ .setData(new ByteArrayInputStream(candidateData.getFilesDataStructure().getBytes()));
+ ZusammenElement candidateContentElement = VspZusammenUtil
+ .buildStructuralElement(StructureElement.OrchestrationTemplateCandidateContent, Action.UPDATE);
+ candidateContentElement
+ .setData(new ByteArrayInputStream(candidateData.getContentData().array()));
+ candidateElement.addSubElement(candidateContentElement);
+
+ zusammenAdaptor.saveElement(context, elementContext, candidateElement,
+ "Update Orchestration Template Candidate");
+ logger.info("Finished uploading candidate data entity for vsp id -> " + vspId);
+ }
+
+ @Override
+ public void updateStructure(String vspId, Version version, FilesDataStructure fileDataStructure) {
+ logger.info("Updating orchestration template for VSP id -> " + vspId);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ Id versionId = VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+ ElementContext elementContext = new ElementContext(itemId, versionId);
+
+ ZusammenElement candidateElement = VspZusammenUtil
+ .buildStructuralElement(StructureElement.OrchestrationTemplateCandidate, Action.UPDATE);
+ candidateElement
+ .setData(new ByteArrayInputStream(JsonUtil.object2Json(fileDataStructure).getBytes()));
+ zusammenAdaptor.saveElement(context, elementContext, candidateElement,
+ "Update Orchestration Template Candidate structure");
+ logger.info("Finished uploading candidate data entity for vsp id -> " + vspId);
+ }
+
+
+ @Override
+ public Optional<String> getStructure(String vspId, Version version) {
+ logger.info("Getting orchestration template structure for vsp id -> " + vspId);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ Id versionId = VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+ ElementContext elementContext = new ElementContext(itemId, versionId,
+ VspZusammenUtil.getVersionTag(version));
+
+ logger.info("Finished getting orchestration template structure for vsp id -> " + vspId);
+ Optional<Element> element = zusammenAdaptor.getElementByName(context, elementContext, null,
+ StructureElement.OrchestrationTemplateCandidate.name());
+ if (element.isPresent()) {
+ return Optional.of(new String(FileUtils.toByteArray(element.get().getData())));
+ } else {
+ return Optional.empty();
+ }
+
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateDaoZusammenImpl.java
new file mode 100644
index 0000000000..83a78bc705
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/OrchestrationTemplateDaoZusammenImpl.java
@@ -0,0 +1,111 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.utils.fileutils.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadData;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.UploadDataEntity;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
+
+import java.io.ByteArrayInputStream;
+import java.nio.ByteBuffer;
+import java.util.Optional;
+
+public class OrchestrationTemplateDaoZusammenImpl implements OrchestrationTemplateDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public OrchestrationTemplateDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+
+ }
+
+ @Override
+ public String getValidationData(String vspId, Version version) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(version));
+
+ Optional<ElementInfo> elementInfo = zusammenAdaptor
+ .getElementInfoByName(context, elementContext, null,
+ StructureElement.OrchestrationTemplate.name());
+ if (elementInfo.isPresent()) {
+ Optional<Element> element =
+ zusammenAdaptor.getElementByName(context, elementContext, elementInfo.get().getId(),
+ StructureElement.OrchestrationTemplateValidationData.name());
+ if (element.isPresent()) {
+ return new String(FileUtils.toByteArray(element.get().getData()));
+ }
+ }
+
+ return null;
+ }
+
+ @Override
+ public UploadDataEntity getOrchestrationTemplate(String vspId, Version version) {
+
+ UploadDataEntity uploadData = new UploadDataEntity();
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(version));
+
+ Optional<ElementInfo> elementInfo = zusammenAdaptor
+ .getElementInfoByName(context, elementContext, null,
+ StructureElement.OrchestrationTemplate.name());
+ if (elementInfo.isPresent()) {
+ Optional<Element> element =
+ zusammenAdaptor.getElementByName(context, elementContext, elementInfo.get().getId(),
+ StructureElement.OrchestrationTemplateValidationData.name());
+ element.ifPresent(element1 -> uploadData
+ .setValidationData(new String(FileUtils.toByteArray(element1.getData()))));
+ element =
+ zusammenAdaptor.getElementByName(context, elementContext, elementInfo.get().getId(),
+ StructureElement.OrchestrationTemplateContent.name());
+ element.ifPresent(element1 -> uploadData
+ .setContentData(ByteBuffer.wrap(FileUtils.toByteArray(element1.getData()))));
+ }
+ return uploadData;
+ }
+
+ @Override
+ public void updateOrchestrationTemplateData(String vspId, UploadData uploadData) {
+ ZusammenElement orchestrationTemplateElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.OrchestrationTemplate, null);
+ ZusammenElement orchestrationTemplateValidationDataElement =
+ VspZusammenUtil
+ .buildStructuralElement(StructureElement.OrchestrationTemplateValidationData, null);
+ orchestrationTemplateValidationDataElement.setData(new ByteArrayInputStream(uploadData
+ .getValidationData().getBytes()));
+ ZusammenElement orchestrationTemplateContent =
+ VspZusammenUtil.buildStructuralElement(StructureElement.OrchestrationTemplateContent, null);
+ orchestrationTemplateContent
+ .setData(new ByteArrayInputStream(uploadData.getContentData().array()));
+ orchestrationTemplateElement.addSubElement(orchestrationTemplateValidationDataElement);
+ orchestrationTemplateElement.addSubElement(orchestrationTemplateContent);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ zusammenAdaptor.saveElement(context, elementContext, orchestrationTemplateElement, "Update " +
+ "Orchestration Template");
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ProcessDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ProcessDaoZusammenImpl.java
new file mode 100644
index 0000000000..ffc9cb2901
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/ProcessDaoZusammenImpl.java
@@ -0,0 +1,229 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.openecomp.core.utilities.file.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ProcessType;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.io.ByteArrayInputStream;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+/**
+ * @author Avrahamg.
+ * @since March 23, 2017
+ */
+public class ProcessDaoZusammenImpl implements ProcessDao {
+
+ private static final String NAME = "name";
+ private static final String ELEMENT_TYPE = "type";
+ private static final String ARTIFACT_NAME = "artifactName";
+ private static final String DESCRIPTION = "description";
+ private static final String PROCESS_TYPE = "processType";
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public ProcessDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+
+ }
+
+ @Override
+ public void create(ProcessEntity processEntity) {
+ ZusammenElement processElement = buildProcessElement(processEntity, Action.CREATE);
+
+ ZusammenElement processesElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Processes, null);
+ ZusammenElement aggregatedElement = VspZusammenUtil.aggregateElements(processesElement,
+ processElement);
+ ZusammenElement componentElement;
+ if (processEntity.getComponentId() != null) {
+ componentElement = createParentElement(processEntity);
+ aggregatedElement =
+ VspZusammenUtil.aggregateElements(componentElement, aggregatedElement);
+ }
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(processEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<Element> savedElement =
+ zusammenAdaptor.saveElement(context, elementContext, aggregatedElement, "Create process");
+ savedElement.ifPresent(element -> {
+ if (processEntity.getComponentId() == null) {
+ processEntity.setId(element.getSubElements().iterator().next()
+ .getElementId().getValue());
+ } else {
+ processEntity.setId(element.getSubElements().iterator().next()
+ .getSubElements().iterator().next().getElementId().getValue());
+ }
+ });
+ }
+
+ @Override
+ public ProcessEntity get(ProcessEntity process) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(process.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(process.getVersion()));
+
+ Optional<Element> elementOptional =
+ zusammenAdaptor.getElement(context, elementContext, process.getId());
+
+ if (elementOptional.isPresent()) {
+ Element element = elementOptional.get();
+ process.setName(element.getInfo().getProperty(NAME));
+ process.setArtifactName(element.getInfo().getProperty(ARTIFACT_NAME));
+ process.setDescription(element.getInfo().getProperty(DESCRIPTION));
+ process.setType(element.getInfo().getProperty
+ (PROCESS_TYPE) != null ? ProcessType.valueOf(element.getInfo().getProperty
+ (PROCESS_TYPE)) : null);
+
+ process.setArtifact(ByteBuffer.wrap(FileUtils.toByteArray(element.getData())));
+ return process;
+ } else {
+ return null;
+ }
+ }
+
+ @Override
+ public void update(ProcessEntity processEntity) {
+ ZusammenElement processElement = buildProcessElement(processEntity, Action.UPDATE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(processEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ Optional<Element> element =
+ zusammenAdaptor.saveElement(context, elementContext, processElement, "Create process");
+ System.out.println(element.get().getElementId());
+ }
+
+ @Override
+ public void delete(ProcessEntity processEntity) {
+ ZusammenElement processElement = new ZusammenElement();
+ processElement.setElementId(new Id(processEntity.getId()));
+ processElement.setAction(Action.DELETE);
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(processEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+
+ zusammenAdaptor.saveElement(context, elementContext, processElement,
+ String.format("Delete process with id %s", processEntity.getId()));
+ }
+
+ @Override
+ public void deleteAll(ProcessEntity processEntity) {
+ ZusammenElement aggregatedElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Processes, Action.DELETE);
+
+ if (processEntity.getComponentId() != null) {
+ ZusammenElement componentElement = createParentElement(processEntity);
+ aggregatedElement = VspZusammenUtil.aggregateElements(componentElement,
+ aggregatedElement);
+ }
+
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(processEntity.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor));
+ zusammenAdaptor.saveElement(context, elementContext, aggregatedElement, "Delete All processes");
+ }
+
+ @Override
+ public void deleteVspAll(String vspId, Version version) {
+ ProcessEntity processEntity = new ProcessEntity();
+ processEntity.setVersion(version);
+ processEntity.setVspId(vspId);
+ deleteAll(processEntity);
+ }
+
+ @Override
+ public Collection<ProcessEntity> list(ProcessEntity process) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(process.getVspId());
+ ElementContext elementContext = new ElementContext(itemId,
+ VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor),
+ VspZusammenUtil.getVersionTag(process.getVersion()));
+
+ Optional<ElementInfo> processesOptional =
+ zusammenAdaptor.getElementInfoByName(context, elementContext,
+ extractParentElementId(process), StructureElement.Processes.name());
+ if (!processesOptional.isPresent()) {
+ return new ArrayList<>();
+ }
+ return zusammenAdaptor.listElements(context, elementContext, processesOptional.get().getId())
+ .stream()
+ .map(elementInfo -> mapElementInfoToProcess(
+ process.getVspId(), process.getVersion(), process.getComponentId(),
+ elementInfo))
+ .collect(Collectors.toList());
+ }
+
+ private Id extractParentElementId(ProcessEntity processEntity) {
+ return processEntity.getComponentId() == null ? null : new Id(processEntity.getComponentId());
+ }
+
+ private ProcessEntity mapElementInfoToProcess(String vspId, Version version,
+ String componentId,
+ ElementInfo elementInfo) {
+ ProcessEntity processEntity = new ProcessEntity(vspId, version, componentId, elementInfo
+ .getId().getValue());
+ processEntity.setName((String) elementInfo.getInfo().getProperties().get(NAME));
+ processEntity
+ .setArtifactName((String) elementInfo.getInfo().getProperties().get(ARTIFACT_NAME));
+ processEntity.setDescription((String) elementInfo.getInfo().getProperties().get(DESCRIPTION));
+ return processEntity;
+ }
+
+ private ZusammenElement buildProcessElement(ProcessEntity process, Action action) {
+
+ Info info = new Info();
+ info.setName(process.getName());
+ info.addProperty(NAME, process.getName());
+ info.addProperty(ELEMENT_TYPE, ElementType.Process);
+ info.addProperty(ARTIFACT_NAME, process.getArtifactName());
+ info.addProperty(DESCRIPTION, process.getDescription());
+ info.addProperty(PROCESS_TYPE, process.getType() != null ? process.getType().name() : null);
+
+ ZusammenElement processElement = new ZusammenElement();
+ processElement.setElementId(new Id(process.getId()));
+ processElement.setAction(action);
+ processElement.setInfo(info);
+ if (Objects.nonNull(process.getArtifact())) {
+ processElement.setData(new ByteArrayInputStream(process.getArtifact().array()));
+ }
+ return processElement;
+ }
+
+ private ZusammenElement createParentElement(ProcessEntity entity) {
+ ZusammenElement componentElement = new ZusammenElement();
+ componentElement.setElementId(new Id(entity.getComponentId()));
+ componentElement.setAction(Action.IGNORE);
+ return componentElement;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/StructureElement.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/StructureElement.java
new file mode 100644
index 0000000000..5d53741ebf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/StructureElement.java
@@ -0,0 +1,20 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+public enum StructureElement {
+ General,
+ OrchestrationTemplateCandidate,
+ OrchestrationTemplate,
+ OrchestrationTemplateValidationData,
+ OrchestrationTemplateContent,
+ OrchestrationTemplateCandidateValidationData,
+ OrchestrationTemplateCandidateContent,
+ Networks,
+ Components,
+ Nics,
+ Processes,
+ Mibs,
+ SNMP_TRAP,
+ SNMP_POLL,
+ Questionnaire,
+ ComponentDependencies,
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VendorSoftwareProductInfoDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VendorSoftwareProductInfoDaoZusammenImpl.java
new file mode 100644
index 0000000000..65a41330a7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VendorSoftwareProductInfoDaoZusammenImpl.java
@@ -0,0 +1,228 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.utils.fileutils.FileUtils;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
+import org.openecomp.sdc.versioning.VersioningManagerFactory;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
+import org.openecomp.sdc.versioning.types.VersionableEntityStoreType;
+
+import java.io.ByteArrayInputStream;
+import java.util.Collection;
+import java.util.Date;
+import java.util.stream.Collectors;
+
+public class VendorSoftwareProductInfoDaoZusammenImpl implements VendorSoftwareProductInfoDao {
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public VendorSoftwareProductInfoDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void registerVersioning(String versionableEntityType) {
+ VersionableEntityMetadata metadata =
+ new VersionableEntityMetadata(VersionableEntityStoreType.Zusammen, "vsp", null, null);
+
+ VersioningManagerFactory.getInstance().createInterface()
+ .register(versionableEntityType, metadata);
+ }
+
+ @Override
+ public Collection<VspDetails> list(VspDetails entity) {
+ return zusammenAdaptor.listItems(ZusammenUtil.createSessionContext()).stream().filter
+ (vspEntity-> "vsp".equals(vspEntity.getInfo().getProperty("type")))
+ .map(item -> mapInfoToVspDetails(
+ item.getId().getValue(), null, item.getInfo(),
+ item.getModificationTime(), item.getCreationTime()))
+ .collect(Collectors.toList());
+ }
+
+ @Override
+ public void create(VspDetails vspDetails) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+
+ Id itemId = zusammenAdaptor.createItem(context, mapVspDetailsToZusammenItemInfo(vspDetails));
+ Id versionId =
+ zusammenAdaptor.createVersion(context, itemId, null, ZusammenUtil.createFirstVersionData());
+
+ ZusammenElement generalElement = mapVspDetailsToZusammenElement(vspDetails, Action.CREATE);
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId, versionId),
+ generalElement, "Create VSP General Info Element");
+
+ vspDetails.setId(itemId.getValue());//set id for caller
+ }
+
+ @Override
+ public void update(VspDetails vspDetails) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspDetails.getId());
+ Id versionId = VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+
+ zusammenAdaptor.updateItem(context, itemId, mapVspDetailsToZusammenItemInfo(vspDetails));
+
+ ZusammenElement generalElement = mapVspDetailsToZusammenElement(vspDetails, Action.UPDATE);
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId, versionId),
+ generalElement, "Update VSP General Info Element");
+ }
+
+ @Override
+ public VspDetails get(VspDetails vspDetails) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspDetails.getId());
+ ItemVersion itemVersion = VspZusammenUtil.getFirstVersion(context, itemId, zusammenAdaptor);
+ ElementContext elementContext = new ElementContext(itemId, itemVersion.getId(),
+ VspZusammenUtil.getVersionTag(vspDetails.getVersion()));
+
+ return zusammenAdaptor
+ .getElementInfoByName(context, elementContext, null, StructureElement.General.name())
+ .map(generalElementInfo -> mapInfoToVspDetails(
+ vspDetails.getId(), vspDetails.getVersion(), generalElementInfo.getInfo(),
+ itemVersion.getModificationTime(), itemVersion.getCreationTime()))
+ .orElse(null);
+ }
+
+
+ @Override
+ public void delete(VspDetails entity) {
+
+ }
+
+ @Override
+ public void updateOldVersionIndication(VspDetails vspDetails) {
+ VspDetails retrieved = get(vspDetails);
+ if (retrieved != null) {
+ retrieved.setOldVersion(vspDetails.getOldVersion());
+ update(retrieved);
+ }
+ }
+
+ @Override
+ public void updateQuestionnaireData(String vspId, Version version, String questionnaireData) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ Id versionId = VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+
+ ZusammenElement questionnaireElement = mapQuestionnaireToZusammenElement(questionnaireData);
+ zusammenAdaptor.saveElement(context, new ElementContext(itemId, versionId),
+ questionnaireElement, "Update VSP Questionnaire");
+ }
+
+
+ @Override
+ public String getQuestionnaireData(String vspId, Version version) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(vspId);
+ Id versionId = VspZusammenUtil.getFirstVersionId(context, itemId, zusammenAdaptor);
+
+ return zusammenAdaptor.getElementByName(context,
+ new ElementContext(itemId, versionId, VspZusammenUtil.getVersionTag(version)), null,
+ StructureElement.Questionnaire.name())
+ .map(questionnaireElement ->
+ new String(FileUtils.toByteArray(questionnaireElement.getData())))
+ .orElse(null);
+ }
+
+ @Override
+ public VspQuestionnaireEntity getQuestionnaire(String vspId, Version version) {
+ VspQuestionnaireEntity entity = new VspQuestionnaireEntity();
+ entity.setId(vspId);
+ entity.setVersion(version);
+ entity.setQuestionnaireData(getQuestionnaireData(vspId, version));
+ return entity;
+ }
+
+ @Override
+ public void deleteAll(String vspId, Version version) {
+
+ }
+
+ private Info mapVspDetailsToZusammenItemInfo(VspDetails vspDetails) {
+ Info info = new Info();
+ info.setName(vspDetails.getName());
+ info.setDescription(vspDetails.getDescription());
+ info.addProperty("type", "vsp");
+ addVspDetailsToInfo(info, vspDetails);
+ return info;
+ }
+
+ private ZusammenElement mapVspDetailsToZusammenElement(VspDetails vspDetails, Action action) {
+ ZusammenElement generalElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.General, action);
+ addVspDetailsToInfo(generalElement.getInfo(), vspDetails);
+ return generalElement;
+ }
+
+ private ZusammenElement mapQuestionnaireToZusammenElement(String questionnaireData) {
+ ZusammenElement questionnaireElement =
+ VspZusammenUtil.buildStructuralElement(StructureElement.Questionnaire, Action.UPDATE);
+ questionnaireElement.setData(new ByteArrayInputStream(questionnaireData.getBytes()));
+ return questionnaireElement;
+ }
+
+ private void addVspDetailsToInfo(Info info, VspDetails vspDetails) {
+ info.addProperty(InfoPropertyName.name.name(), vspDetails.getName());
+ info.addProperty(InfoPropertyName.description.name(), vspDetails.getDescription());
+ info.addProperty(InfoPropertyName.icon.name(), vspDetails.getIcon());
+ info.addProperty(InfoPropertyName.category.name(), vspDetails.getCategory());
+ info.addProperty(InfoPropertyName.subCategory.name(), vspDetails.getSubCategory());
+ info.addProperty(InfoPropertyName.vendorId.name(), vspDetails.getVendorId());
+ info.addProperty(InfoPropertyName.vendorName.name(), vspDetails.getVendorName());
+ if (vspDetails.getVlmVersion() != null) {
+ info.addProperty(
+ InfoPropertyName.vendorVersion.name(), vspDetails.getVlmVersion().toString());
+ }
+ info.addProperty(InfoPropertyName.licenseAgreement.name(), vspDetails.getLicenseAgreement());
+ info.addProperty(InfoPropertyName.featureGroups.name(), vspDetails.getFeatureGroups());
+ info.addProperty(InfoPropertyName.oldVersion.name(), vspDetails.getOldVersion());
+ }
+
+ private VspDetails mapInfoToVspDetails(String vspId, Version version, Info info,
+ Date modificationTime, Date creationTime) {
+ VspDetails vspDetails = new VspDetails(vspId, version);
+ vspDetails.setName(info.getProperty(InfoPropertyName.name.name()));
+ vspDetails.setDescription(info.getProperty(InfoPropertyName.description.name()));
+ vspDetails.setCategory(info.getProperty(InfoPropertyName.category.name()));
+ vspDetails.setSubCategory(info.getProperty(InfoPropertyName.subCategory.name()));
+ vspDetails.setVendorId(info.getProperty(InfoPropertyName.vendorId.name()));
+ vspDetails.setVendorName(info.getProperty(InfoPropertyName.vendorName.name()));
+ vspDetails.setVlmVersion(
+ Version.valueOf(info.getProperty(InfoPropertyName.vendorVersion.name())));
+ vspDetails.setLicenseAgreement(info.getProperty(InfoPropertyName.licenseAgreement.name()));
+ vspDetails.setFeatureGroups(info.getProperty(InfoPropertyName.featureGroups.name()));
+ vspDetails.setWritetimeMicroSeconds(
+ modificationTime == null ? creationTime.getTime() : modificationTime.getTime());
+ vspDetails.setVersion(version);
+ String oldVersion = info.getProperty(InfoPropertyName.oldVersion.name());
+
+ //Boolean oldVersion = ind == null || "true".equals( ind.toLowerCase());
+ vspDetails.setOldVersion(oldVersion);
+ return vspDetails;
+ }
+
+ private enum InfoPropertyName {
+ name,
+ description,
+ icon,
+ category,
+ subCategory,
+ vendorId,
+ vendorName,
+ vendorVersion,
+ licenseAgreement,
+ featureGroups,
+ oldVersion
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VspZusammenUtil.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VspZusammenUtil.java
new file mode 100644
index 0000000000..dde3603896
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/zusammen/VspZusammenUtil.java
@@ -0,0 +1,61 @@
+package org.openecomp.sdc.vendorsoftwareproduct.dao.impl.zusammen;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.Action;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.errors.VendorSoftwareProductNotFoundErrorBuilder;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
+
+import java.util.Objects;
+import java.util.Optional;
+
+class VspZusammenUtil {
+
+ static ItemVersion getFirstVersion(SessionContext context, Id itemId, ZusammenAdaptor
+ zusammenAdaptor) {
+
+ Optional<ItemVersion> itemVersion = zusammenAdaptor.getFirstVersion(context, itemId);
+
+ if (!itemVersion.isPresent()) {
+ throw new CoreException(
+ new VendorSoftwareProductNotFoundErrorBuilder(itemId.getValue()).build());
+ }
+ return itemVersion.get();
+ }
+
+ static Id getFirstVersionId(SessionContext context, Id itemId, ZusammenAdaptor zusammenAdaptor) {
+ return getFirstVersion(context, itemId, zusammenAdaptor).getId();
+ }
+
+ // TODO: 4/25/2017 remove upon working with more than one single version
+ static String getVersionTag(Version version) {
+ return version.getStatus() == VersionStatus.Locked
+ ? null
+ : version.toString();
+ }
+
+ static ZusammenElement buildStructuralElement(StructureElement structureElement, Action action) {
+ return ZusammenUtil.buildStructuralElement(structureElement.name(), action);
+ }
+
+ static ZusammenElement aggregateElements(ZusammenElement... elements) {
+ ZusammenElement head = null;
+ ZusammenElement father = null;
+ for (ZusammenElement element : elements) {
+ if (Objects.isNull(head)) {
+ head = father = element;
+ } else {
+ father.getSubElements().add(element);
+ father = element;
+ }
+ }
+
+ return head;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/errors/VendorSoftwareProductErrorCodes.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/errors/VendorSoftwareProductErrorCodes.java
new file mode 100644
index 0000000000..2a50f33349
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/errors/VendorSoftwareProductErrorCodes.java
@@ -0,0 +1,62 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.errors;
+
+/**
+ * Created by TALIO on 4/24/2016.
+ */
+public class VendorSoftwareProductErrorCodes {
+
+ public static final String VSP_NOT_FOUND = "VSP_NOT_FOUND";
+ public static final String VSP_INVALID = "VSP_INVALID";
+ public static final String FAILED_TO_CREATE_VSP = "FAILED_TO_CREATE_VSP";
+
+ public static final String UPLOAD_INVALID = "UPLOAD_INVALID";
+
+ public static final String PACKAGE_NOT_FOUND = "PACKAGE_NOT_FOUND";
+
+ public static final String PACKAGE_INVALID = "PACKAGE_INVALID";
+ public static final String VSP_COMPOSITION_EDIT_NOT_ALLOWED = "VSP_COMPOSITION_EDIT_NOT_ALLOWED";
+
+ public static final String CREATE_PACKAGE_FOR_NON_FINAL_VSP = "CREATE_PACKAGE_FOR_NON_FINAL_VSP";
+
+ public static final String TRANSLATION_FILE_CREATION = "TRANSLATION_FILE_CREATION";
+
+ public static final String HEAT_PACKAGE_FILE_CREATION = "HEAT_PACKAGE_FILE_CREATION";
+
+ public static final String TOSCA_ENTRY_NOT_FOUND = "TOSCA_ENTRY_NOT_FOUND";
+ public static final String TOSCA_INVALID_SUBSTITUTE_NODE_TEMPLATE =
+ "TOSCA_INVALID_SUBSTITUTE_NODE_TEMPLATE";
+
+ public static final String MIB_UPLOAD_INVALID = "MIB_UPLOAD_INVALID";
+
+ public static final String ORCHESTRATION_NOT_FOUND = "ORCHESTRATION_NOT_FOUND";
+
+
+ public static final String CYCLIC_DEPENDENCY_IN_COMPONENTS = "CYCLIC_DEPENDENCY_IN_COMPONENTS";
+
+ public static final String INVALID_COMPONENT_RELATION_TYPE = "INVALID_COMPONENT_RELATION_TYPE";
+
+ public static final String NO_SOURCE_COMPONENT = "NO_SOURCE_COMPONENT";
+
+ public static final String SAME_SOURCE_TARGET_COMPONENT = "SAME_SOURCE_TARGET_COMPONENT";
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessArtifactDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/InformationArtifactGeneratorFactoryImpl.java
index 2a5d9013bd..df5e44122d 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/dao/impl/ProcessArtifactDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/InformationArtifactGeneratorFactoryImpl.java
@@ -18,16 +18,17 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.vendorsoftwareproduct.dao.impl;
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessArtifactDao;
-import org.openecomp.sdc.vendorsoftwareproduct.dao.ProcessArtifactDaoFactory;
-public class ProcessArtifactDaoFactoryImpl extends ProcessArtifactDaoFactory {
- private static final ProcessArtifactDao INSTANCE = new ProcessArtifactDaoCassandraImpl();
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactGenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.impl.TxtInformationArtifactGeneratorImpl;
+
+
+public class InformationArtifactGeneratorFactoryImpl extends InformationArtifactGeneratorFactory {
@Override
- public ProcessArtifactDao createInterface() {
- return INSTANCE;
+ public InformationArtifactGenerator createInterface() {
+ return new TxtInformationArtifactGeneratorImpl();
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnaireDataServiceFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnaireDataServiceFactoryImpl.java
new file mode 100644
index 0000000000..5c569dbf08
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/QuestionnaireDataServiceFactoryImpl.java
@@ -0,0 +1,35 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory;
+
+
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactGenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.questionnaire.QuestionnaireDataService;
+import org.openecomp.sdc.vendorsoftwareproduct.quiestionnaire.QuestionnaireDataServiceImpl;
+
+
+public class QuestionnaireDataServiceFactoryImpl extends QuestionnnaireDataServiceFactory {
+
+ @Override
+ public QuestionnaireDataService createInterface() {
+ return new QuestionnaireDataServiceImpl();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CandidateServiceFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CandidateServiceFactoryImpl.java
new file mode 100644
index 0000000000..b98605a53d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CandidateServiceFactoryImpl.java
@@ -0,0 +1,37 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory.impl;
+
+import org.openecomp.sdc.vendorsoftwareproduct.dao.impl.OrchestrationTemplateCandidateDaoFactoryImpl;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.CandidateServiceFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.ManifestCreatorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.CandidateService;
+import org.openecomp.sdc.vendorsoftwareproduct.services.impl.filedatastructuremodule.CandidateServiceImpl;
+
+
+public class CandidateServiceFactoryImpl extends CandidateServiceFactory {
+
+ @Override
+ public CandidateService createInterface() {
+ return new CandidateServiceImpl(ManifestCreatorFactory.getInstance().createInterface(),
+ OrchestrationTemplateCandidateDaoFactoryImpl.getInstance().createInterface());
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionDataExtractorFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionDataExtractorFactoryImpl.java
new file mode 100644
index 0000000000..21b0d9c0a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionDataExtractorFactoryImpl.java
@@ -0,0 +1,33 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory.impl;
+
+import org.openecomp.sdc.vendorsoftwareproduct.factory.CompositionDataExtractorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionDataExtractor;
+import org.openecomp.sdc.vendorsoftwareproduct.services.impl.composition.CompositionDataExtractorImpl;
+
+public class CompositionDataExtractorFactoryImpl extends CompositionDataExtractorFactory {
+
+ @Override
+ public CompositionDataExtractor createInterface() {
+ return new CompositionDataExtractorImpl();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionEntityDataManagerFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionEntityDataManagerFactoryImpl.java
new file mode 100644
index 0000000000..54d67e60fe
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/CompositionEntityDataManagerFactoryImpl.java
@@ -0,0 +1,41 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.factory.impl;
+
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.CompositionEntityDataManagerFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionEntityDataManager;
+import org.openecomp.sdc.vendorsoftwareproduct.services.impl.composition.CompositionEntityDataManagerImpl;
+
+public class CompositionEntityDataManagerFactoryImpl extends CompositionEntityDataManagerFactory {
+
+ @Override
+ public CompositionEntityDataManager createInterface() {
+ return new CompositionEntityDataManagerImpl(
+ VendorSoftwareProductInfoDaoFactory.getInstance().createInterface(),
+ ComponentDaoFactory.getInstance().createInterface(),
+ NicDaoFactory.getInstance().createInterface(),
+ NetworkDaoFactory.getInstance().createInterface());
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/EnrichmentArtifactsServiceFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/ManifestCreatorFactoryImpl.java
index 1075b07a49..c7d088408e 100644
--- a/openecomp-be/lib/openecomp-sdc-enrichment-lib/openecomp-sdc-enrichment-core/src/main/java/org/openecomp/sdc/enrichment/EnrichmentArtifactsServiceFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/factory/impl/ManifestCreatorFactoryImpl.java
@@ -18,17 +18,19 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.enrichment;
+package org.openecomp.sdc.vendorsoftwareproduct.factory.impl;
-import org.openecomp.core.enrichment.EnrichmentArtifactsServiceFactory;
-import org.openecomp.core.enrichment.enrichmentartifacts.EnrichmentArtifactsService;
-import org.openecomp.sdc.enrichment.enrichmentartifacts.EnrichmentArtifactsServiceImpl;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.ManifestCreatorFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.ManifestCreator;
+import org.openecomp.sdc.vendorsoftwareproduct.services.impl.filedatastructuremodule.ManifestCreatorNamingConventionImpl;
-public class EnrichmentArtifactsServiceFactoryImpl extends EnrichmentArtifactsServiceFactory {
- private static EnrichmentArtifactsService INSTANCE = new EnrichmentArtifactsServiceImpl();
+/**
+ * Created by Talio on 12/15/2016.
+ */
+public class ManifestCreatorFactoryImpl extends ManifestCreatorFactory {
@Override
- public EnrichmentArtifactsService createInterface() {
- return INSTANCE;
+ public ManifestCreator createInterface(){
+ return new ManifestCreatorNamingConventionImpl();
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactConstants.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactConstants.java
new file mode 100644
index 0000000000..f99d3814e6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactConstants.java
@@ -0,0 +1,105 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.impl;
+
+/**
+ * @author KATYR
+ * @since December 07, 2016
+ */
+
+public class TxtInformationArtifactConstants {
+ public static final String QUOTEMARK = "\"";
+ public static final String SPACE = " ";
+ public static final String TAB = SPACE + SPACE + SPACE + SPACE;
+ public static final String NL = System.lineSeparator();
+ public static final String DELIMITER = ":";
+ public static final String FOUR_TABS = TAB + TAB + TAB + TAB;
+
+ public static final String HEADER = "AT&T Proprietary (Restricted)\n"
+ + "Only for use by authorized individuals or any above-designated team(s)\n"
+ + "within the AT&T companies and not for general distribution" + NL + NL + NL;
+
+ public static final String FOOTER = NL + NL + NL + "AT&T Proprietary (Restricted)\n"
+ + "Only for use by authorized individuals or any above-designated team(s)\n"
+ + "within the AT&T companies and not for general distribution";
+
+
+ public static final String TITLE = "1." + TAB + "VSP Details" + DELIMITER;
+ public static final String VSP_NAME = "a." + TAB + "Name" + DELIMITER;
+ public static final String VSP_DESC = "b." + TAB + "Description";
+ public static final String VSP_VENDOR = "d." + TAB + "Vendor" + DELIMITER;
+ public static final String VSP_VERSION = "c." + TAB + "Version" + DELIMITER;
+ public static final String VSP_CATEGORY = "e." + TAB + "Category" + DELIMITER;
+ public static final String LICENSE_DETAILS = "f." + TAB + "License Details" + DELIMITER;
+ public static final String LICENSE_MODEL_VERSION =
+ "i." + TAB + "License Model Version" + DELIMITER;
+ public static final String LICENSE_AGREEMENT_NAME =
+ "ii." + TAB + "License Agreement Name" + DELIMITER;
+ public static final String LIST_OF_FEATURE_GROUPS = "iii" + TAB + "List of Feature Groups"+DELIMITER;
+ public static final String HIGH_AVAILABILITY = "g." + TAB + "High Availability";
+ public static final String USING_AVAILABILITY_ZONES = "i." + TAB + "Using Availability "
+ + "Zones" + DELIMITER;
+ public static final String STORAGE_BACKUP_DETAILS = "h." + TAB + "Storage Data Back-up "
+ + "Details" + DELIMITER;
+ public static final String IS_DATA_REPLICATION =
+ "i." + TAB + "Data Replication Required?" + DELIMITER;
+ public static final String DATA_SIZE_TO_REP =
+ "ii." + TAB + " Data Size to replicate in GB" + DELIMITER;
+ public static final String DATA_REP_FREQUENCY =
+ "iii." + TAB + "Data replication frequency" + DELIMITER;
+ public static final String DATA_REP_SOURCE = "iv." + TAB + "Replication Source" + DELIMITER;
+ public static final String DATA_REP_DEST = "v." + TAB + "Replication Destination" + DELIMITER;
+ public static final String LIST_OF_NETWORKS = "List of Internal Networks";//currently not used
+ public static final String LIST_OF_VFCS = "3." + TAB + "List of VFCs";
+ public static final String FOR_EACH_VFC = "a." + TAB + "For each VFC" + DELIMITER;
+ public static final String VFC_NAME = "i." + TAB + "VFC Name" + DELIMITER;
+ public static final String VFC_DESC = "ii." + TAB + "Description" + DELIMITER;
+ public static final String VFC_IMAGES = "iii." + TAB + "Images" + DELIMITER;
+ public static final String VFC_COMPUTE = "iv." + TAB + "Compute/VM Characteristics";
+ public static final String VFC_COMPUTE_VCPU = "1." + TAB + "vCPU" + DELIMITER;
+ public static final String VFC_COMPUTE_CPU_OVER_SUBSCRIPTION = "2." + TAB + "CPU "
+ + "over-subscription" + DELIMITER;
+ public static final String VFC_COMPUTE_MEMORY = "3." + TAB + "Memory" + DELIMITER;
+ public static final String VFC_COMPUTE_DISK = "4." + TAB + "Disk" + DELIMITER;
+ public static final String HYPERVISOR_DETAILS = "v." + TAB + "Hypervisor Details";
+ public static final String HYPERVISOR_DETAILS_NAME = "1." + TAB + "Name" + DELIMITER;
+ public static final String HYPERVISOR_DETAILS_DRIVERS = "2." + TAB + "Drivers" + DELIMITER;
+ public static final String GUEST_OS_DETAILS = "vi." + TAB + "Guest OS Details";
+ public static final String GUEST_OS_NAME = "1." + TAB + "Name" + DELIMITER;
+ public static final String GUEST_OS_BIT_SIZE = "2." + TAB + "Bit Size" + DELIMITER;
+ public static final String GUEST_OS_TOOLS = "3." + TAB + "Tools" + DELIMITER;
+ public static final String VFC_INSTANCE_NUMBER = "vii." + TAB + "Number of VFC Instances";
+ public static final String VFC_INSTANCE_NUMBER_MIN = "1." + TAB + "Minimum" + DELIMITER;
+ public static final String VFC_INSTANCE_NUMBER_MAX = "2." + TAB + "Maximum" + DELIMITER;
+ public static final String VNICS = "viii." + TAB + "vNICs";
+ public static final String VNICS_NAME = "1." + TAB + "Name" + DELIMITER;
+ public static final String VNICS_PURPOSE = "2." + TAB + "Purpose" + DELIMITER;
+ public static final String VNICS_INT_EXT = "3." + TAB + "Internal/External" + DELIMITER;
+ public static final String VNICS_NETWORK = "4." + TAB + "Network" + DELIMITER;
+ public static final String VNICS_PROTOCOLS = "5." + TAB + "Protocols" + DELIMITER;
+ public static final String VNICS_IPV4 = "6." + TAB + "IP v4 Required" + DELIMITER;
+ public static final String VNICS_IPV6 = "7." + TAB + "IP v6 Required" + DELIMITER;
+ public static final String RECOVERY_DETAILS = "ix." + TAB + "Recovery Details" + DELIMITER;
+ public static final String RECOVERY_DETAILS_POINT = "1." + TAB + "Recovery Point" + DELIMITER;
+ public static final String RECOVERY_DETAILS_TIME = "2." + TAB + "Recovery Time" + DELIMITER;
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImpl.java
new file mode 100644
index 0000000000..d15014286f
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImpl.java
@@ -0,0 +1,304 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.impl;
+
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.factory.QuestionnnaireDataServiceFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactData;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactGenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.questionnaire.QuestionnaireDataService;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.ComponentQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute.Compute;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute.GuestOS;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute.NumOfVMs;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general.Hypervisor;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general.Recovery;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.IpConfiguration;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.Network;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.NicQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.VspQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general.Availability;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general.General;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general.StorageDataReplication;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.List;
+import java.util.Optional;
+
+import static org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.impl.TxtInformationArtifactConstants.*;
+
+/**
+ * @author katyr
+ * @since November 23, 2016
+ */
+
+public class TxtInformationArtifactGeneratorImpl implements InformationArtifactGenerator {
+ private QuestionnaireDataService questionnaireDataService = QuestionnnaireDataServiceFactory
+ .getInstance().createInterface();
+ private StringBuilder textArtifact;
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ @Override
+ public String generate(String vspId, Version version) {
+ InformationArtifactData informationArtifactData =
+ questionnaireDataService.generateQuestionnaireDataForInformationArtifact(vspId, version);
+ return createTxtArtifact(informationArtifactData);
+ }
+
+ private String createTxtArtifact(InformationArtifactData informationArtifactData) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ textArtifact = new StringBuilder(TxtInformationArtifactConstants.HEADER);
+ addVspVlmEntries(informationArtifactData);
+ addAvailabilityEntries();
+ addDataEntries(informationArtifactData);
+ addEntryWithIndent(LIST_OF_VFCS, "", TAB);
+ addEntryWithIndent(FOR_EACH_VFC, "", TAB + TAB);
+ List<ComponentQuestionnaire> componentQuestionnaires =
+ informationArtifactData.getComponentQuestionnaires();
+
+ for (ComponentQuestionnaire componentQuestionnaire : componentQuestionnaires) {
+ addEntriesPerComponent(componentQuestionnaire);
+
+ }
+
+ List<NicQuestionnaire> nicQuestionnaires = informationArtifactData.getNicQuestionnaires();
+ for (NicQuestionnaire nicQuestionnaire : nicQuestionnaires) {
+ addEntriesPerNic(nicQuestionnaire);
+
+ }
+ for (ComponentQuestionnaire componentQuestionnaire : componentQuestionnaires) {
+ addRecoveryEntriesPerComponent(componentQuestionnaire);
+ }
+ textArtifact.append(TxtInformationArtifactConstants.FOOTER);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return textArtifact.toString();
+
+ }
+
+ private void addDataEntries(InformationArtifactData informationArtifactData) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ addEntryWithIndent(STORAGE_BACKUP_DETAILS, "", TAB);
+
+ Optional<StorageDataReplication> storageDataReplication =
+ Optional.of(informationArtifactData).map(InformationArtifactData::getVspQuestionnaire)
+ .map(VspQuestionnaire::getGeneral).map(General::getStorageDataReplication);
+ storageDataReplication
+ .ifPresent(replication -> addEntryWithIndent(IS_DATA_REPLICATION,
+ String.valueOf(replication.isStorageReplicationAcrossRegion()), TAB + TAB));
+
+
+ storageDataReplication.ifPresent(rep -> addEntryWithIndent(DATA_SIZE_TO_REP,
+ String.valueOf(rep.getStorageReplicationSize()), TAB + TAB));
+
+ storageDataReplication.ifPresent(rep -> addEntryWithIndent(DATA_REP_FREQUENCY,
+ String.valueOf(rep.getStorageReplicationFrequency()), TAB + TAB));
+
+ storageDataReplication.ifPresent(rep -> addEntryWithIndent(DATA_REP_SOURCE,
+ String.valueOf(rep.getStorageReplicationSource()), TAB + TAB));
+
+ storageDataReplication.ifPresent(rep -> addEntryWithIndent(DATA_REP_DEST,
+ String.valueOf(rep.getStorageReplicationDestination()), TAB + TAB));
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void addAvailabilityEntries() {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ addEntryWithIndent(HIGH_AVAILABILITY, "", TAB);
+
+ Optional<Availability> availability =
+ Optional.of(new InformationArtifactData()).map(InformationArtifactData::getVspQuestionnaire)
+ .map(VspQuestionnaire::getGeneral).map(General::getAvailability);
+ availability
+ .ifPresent(availabilityVal -> addEntryWithIndent(USING_AVAILABILITY_ZONES, String.valueOf(
+ availabilityVal.isUseAvailabilityZonesForHighAvailability()), TAB + TAB));
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void addVspVlmEntries(InformationArtifactData informationArtifactData) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ addEntryWithIndent(TITLE, "", "");
+ Optional<VspDetails> vspDetails = Optional.of(informationArtifactData).map
+ (InformationArtifactData::getVspDetails);
+ addEntryWithIndent(VSP_NAME, informationArtifactData.getVspDetails().getName(), TAB);
+ addEntryWithIndent(VSP_DESC, informationArtifactData.getVspDetails().getDescription(), TAB);
+ addEntryWithIndent(VSP_VERSION,
+ roundVersionAsNeeded(informationArtifactData.getVspDetails().getVersion()), TAB);
+ addEntryWithIndent(VSP_VENDOR, informationArtifactData.getVspDetails().getVendorName(), TAB);
+ addEntryWithIndent(VSP_CATEGORY, informationArtifactData.getVspDetails().getCategory(), TAB);
+ addEntryWithIndent(LICENSE_DETAILS, "", TAB);
+ addEntryWithIndent(LICENSE_MODEL_VERSION,
+ informationArtifactData.getVspDetails().getVlmVersion() == null
+ ? ""
+ : informationArtifactData.getVspDetails().getVlmVersion().toString(),
+ TAB + TAB);
+ addEntryWithIndent(LICENSE_AGREEMENT_NAME, informationArtifactData.getVspDetails()
+ .getLicenseAgreement(), TAB + TAB);
+ addEntryWithIndent(LIST_OF_FEATURE_GROUPS, "", TAB + TAB);
+ vspDetails.ifPresent(vspDets -> addListEntriesWithIndent(vspDets
+ .getFeatureGroups(), TAB + TAB + TAB));
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ static String roundVersionAsNeeded(Version version) {
+ if (version.isFinal()) {
+ return version.toString();
+ } else {
+ return String.valueOf(Math.ceil(Double.valueOf(version.toString())));
+ }
+ }
+
+ private void addRecoveryEntriesPerComponent(ComponentQuestionnaire componentQuestionnaire) {
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ addEntryWithIndent(RECOVERY_DETAILS, "", TAB + TAB + TAB);
+ Optional<Recovery> recovery = Optional.of(componentQuestionnaire).map(
+ ComponentQuestionnaire::getGeneral).map(
+ org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general
+ .General::getRecovery);
+ recovery.ifPresent(recoveryVal -> addEntryWithIndent(RECOVERY_DETAILS_POINT, String.valueOf(
+ recoveryVal.getPointObjective()), TAB + TAB + TAB + TAB));
+
+ recovery.ifPresent(recoveryVal -> addEntryWithIndent(RECOVERY_DETAILS_TIME, String.valueOf(
+ recoveryVal.getTimeObjective()), TAB + TAB + TAB + TAB));
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void addEntriesPerNic(NicQuestionnaire nicQuestionnaire) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ addEntryWithIndent(VNICS, "", TAB + TAB + TAB);
+ Optional<Network> networkOpt = Optional.of(nicQuestionnaire).map(
+ NicQuestionnaire::getNetwork);
+
+ networkOpt.ifPresent(network -> addEntryWithIndent(VNICS_NAME, network
+ .getNetworkDescription(),
+ TAB + TAB + TAB + TAB));
+ networkOpt.ifPresent(network -> addEntryWithIndent(VNICS_PURPOSE, network
+ .getNetworkDescription(), TAB + TAB + TAB + TAB));
+ networkOpt.ifPresent(network -> addEntryWithIndent(VNICS_INT_EXT, network
+ .getNetworkDescription(), TAB + TAB + TAB + TAB));
+ networkOpt.ifPresent(network -> addEntryWithIndent(VNICS_NETWORK, network.toString(),
+ TAB + TAB + TAB + TAB));
+ addEntryWithIndent(VNICS_PROTOCOLS, nicQuestionnaire.getProtocols().toString(),
+ TAB + TAB + TAB + TAB);
+
+ Optional<IpConfiguration> ipconfigOpt = Optional.of(nicQuestionnaire).map
+ (NicQuestionnaire::getIpConfiguration);
+ ipconfigOpt.ifPresent(ipconfig -> addEntryWithIndent(VNICS_IPV4, String.valueOf(ipconfig
+ .isIpv4Required()), TAB + TAB + TAB + TAB));
+ ipconfigOpt.ifPresent(ipconfig -> addEntryWithIndent(VNICS_IPV6, String.valueOf(ipconfig
+ .isIpv6Required()), TAB + TAB + TAB + TAB));
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void addEntriesPerComponent(ComponentQuestionnaire componentQuestionnaire) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ addEntryWithIndent(VFC_NAME, "", TAB + TAB + TAB);
+ addEntryWithIndent(VFC_DESC, "", TAB + TAB + TAB);
+ addEntryWithIndent(VFC_IMAGES, "", TAB + TAB + TAB);
+ //todo component name +desc +img+vcpu
+ addEntryWithIndent(VFC_COMPUTE, "", TAB + TAB + TAB);
+ addEntryWithIndent(VFC_COMPUTE_VCPU, "", TAB + TAB + TAB + TAB);
+ addEntryWithIndent(VFC_COMPUTE_CPU_OVER_SUBSCRIPTION, "",
+ TAB + TAB + TAB + TAB);
+ addEntryWithIndent(VFC_COMPUTE_MEMORY, "", TAB + TAB + TAB + TAB);
+ addEntryWithIndent(VFC_COMPUTE_DISK, "", TAB + TAB + TAB + TAB);
+
+ addEntryWithIndent(HYPERVISOR_DETAILS, "", TAB + TAB + TAB);
+
+ Optional<Hypervisor> hypervisorOpt = Optional.of(componentQuestionnaire).map(
+ ComponentQuestionnaire::getGeneral).map(
+ org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general
+ .General::getHypervisor);
+ hypervisorOpt.ifPresent(hypervisor -> addEntryWithIndent(HYPERVISOR_DETAILS_NAME, hypervisor
+ .getHypervisor(), TAB
+ + TAB + TAB + TAB));
+
+ hypervisorOpt.ifPresent(hypervisor -> addEntryWithIndent(HYPERVISOR_DETAILS_DRIVERS, hypervisor
+ .getDrivers(), TAB + TAB + TAB + TAB));
+
+ addEntryWithIndent(GUEST_OS_DETAILS, "", TAB + TAB + TAB);
+ Optional<GuestOS> guestOSOptional = Optional.of(componentQuestionnaire).map
+ (ComponentQuestionnaire::getCompute).map(Compute::getGuestOS);
+ guestOSOptional.ifPresent(guestOs -> addEntryWithIndent(GUEST_OS_NAME, guestOs.getName(),
+ TAB + TAB + TAB + TAB));
+
+
+ guestOSOptional
+ .ifPresent(guestOs -> addEntryWithIndent(GUEST_OS_BIT_SIZE, String.valueOf(guestOs
+ .getBitSize()), TAB + TAB + TAB + TAB));
+ guestOSOptional.ifPresent(guestOs -> addEntryWithIndent(GUEST_OS_TOOLS, guestOs.getTools
+ (), TAB + TAB + TAB + TAB));
+
+ addEntryWithIndent(VFC_INSTANCE_NUMBER, "",
+ TAB + TAB + TAB);
+
+ Optional<NumOfVMs> numVmsOpt = Optional.of(componentQuestionnaire).map
+ (ComponentQuestionnaire::getCompute).map(Compute::getNumOfVMs);
+ numVmsOpt.ifPresent(numVms -> addEntryWithIndent(VFC_INSTANCE_NUMBER_MIN, String.valueOf
+ (numVms.getMinimum()), TAB + TAB + TAB + TAB));
+
+ numVmsOpt.ifPresent(numVms -> addEntryWithIndent(VFC_INSTANCE_NUMBER_MAX, String.valueOf
+ (numVms.getMaximum()), TAB + TAB + TAB + TAB));
+
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void addListEntriesWithIndent(List<String> fieldValues, String indent) {
+ int counter = 1;
+ if (fieldValues == null) {
+ return;
+ }
+ for (String fieldValue : fieldValues) {
+ textArtifact.append(indent).append(counter++).append(".").append(TAB).append(fieldValue)
+ .append
+ (NL);
+ }
+
+ }
+
+
+ private void addEntryWithIndent(String fieldName, String fieldValue, String indent) {
+ textArtifact.append(indent).append(fieldName).append(SPACE).append(fieldValue).append(NL);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/quiestionnaire/QuestionnaireDataServiceImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/quiestionnaire/QuestionnaireDataServiceImpl.java
new file mode 100644
index 0000000000..76d8210ca5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/quiestionnaire/QuestionnaireDataServiceImpl.java
@@ -0,0 +1,113 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.quiestionnaire;
+
+
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.common.utils.CommonUtil;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.*;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactData;
+import org.openecomp.sdc.vendorsoftwareproduct.questionnaire.QuestionnaireDataService;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.ComponentQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.NicQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.VspQuestionnaire;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * Created by TALIO on 11/22/2016
+ */
+public class QuestionnaireDataServiceImpl implements QuestionnaireDataService {
+ private static final VendorSoftwareProductDao vendorSoftwareProductDao =
+ VendorSoftwareProductDaoFactory.getInstance().createInterface();
+ private static final VendorSoftwareProductInfoDao vspInfoDao =
+ VendorSoftwareProductInfoDaoFactory.getInstance().createInterface();
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+
+ public InformationArtifactData generateQuestionnaireDataForInformationArtifact(String vspId,
+ Version version) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("VSP Id", vspId);
+
+ VspDetails vspDetails =
+ vspInfoDao.get(new VspDetails(vspId, version));
+ Collection<ComponentEntity> componentEntities =
+ vendorSoftwareProductDao.listComponentsQuestionnaire(vspId, version);
+ Collection<NicEntity> nicEntities = vendorSoftwareProductDao.listNicsByVsp(vspId, version);
+
+ VspQuestionnaire vspQuestionnaire = getVspQuestionnaireFromJson(vspId, version);
+ List<ComponentQuestionnaire> componentQuestionnaireList =
+ getListOfComponentQuestionnaireFromJson(componentEntities);
+ List<NicQuestionnaire> nicQuestionnaireList = getListOfNicQuestionnaireFromJson(nicEntities);
+
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspId);
+ return new InformationArtifactData(vspDetails, vspQuestionnaire, componentQuestionnaireList,
+ nicQuestionnaireList);
+ }
+
+ private VspQuestionnaire getVspQuestionnaireFromJson(String vspId, Version version) {
+ VspQuestionnaireEntity vspQuestionnaireEntity =
+ vspInfoDao.getQuestionnaire(vspId, version);
+
+ if (vspQuestionnaireEntity == null) {
+ return null;
+ }
+
+ return JsonUtil
+ .json2Object(vspQuestionnaireEntity.getQuestionnaireData(), VspQuestionnaire.class);
+ }
+
+ private List<ComponentQuestionnaire> getListOfComponentQuestionnaireFromJson(
+ Collection<ComponentEntity> entities) {
+ List<ComponentQuestionnaire> componentQuestionnaireList = new ArrayList<>();
+
+ for (CompositionEntity componentEntity : entities) {
+ componentQuestionnaireList.add(JsonUtil
+ .json2Object(componentEntity.getQuestionnaireData(), ComponentQuestionnaire.class));
+ }
+
+ return componentQuestionnaireList;
+ }
+
+
+ private List<NicQuestionnaire> getListOfNicQuestionnaireFromJson(Collection<NicEntity> entities) {
+ List<NicQuestionnaire> nicQuestionnaireList = new ArrayList<>();
+
+ for (NicEntity nicEntity : entities) {
+ nicQuestionnaireList
+ .add(JsonUtil.json2Object(nicEntity.getQuestionnaireData(), NicQuestionnaire.class));
+ }
+
+ return nicQuestionnaireList;
+ }
+
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java
new file mode 100644
index 0000000000..d72a0dbe23
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionDataExtractorImpl.java
@@ -0,0 +1,470 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.impl.composition;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
+import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.errors.ToscaInvalidEntryNotFoundErrorBuilder;
+import org.openecomp.sdc.tosca.errors.ToscaInvalidSubstituteNodeTemplateErrorBuilder;
+import org.openecomp.sdc.tosca.errors.ToscaMissingSubstitutionMappingForReqCapErrorBuilder;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionDataExtractor;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Component;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.ComponentData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.ExtractCompositionDataContext;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Network;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Nic;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+public class CompositionDataExtractorImpl implements CompositionDataExtractor {
+
+ protected static Logger logger;
+ private static ToscaAnalyzerService toscaAnalyzerService;
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ static {
+ logger = LoggerFactory.getLogger(CompositionDataExtractorImpl.class);
+ toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ }
+
+ /**
+ * Extract service composition data composition data.
+ *
+ * @param toscaServiceModel the tosca service model
+ * @return the composition data
+ */
+ public CompositionData extractServiceCompositionData(ToscaServiceModel toscaServiceModel) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ ExtractCompositionDataContext context = new ExtractCompositionDataContext();
+ String entryDefinitionServiceTemplateFileName =
+ toscaServiceModel.getEntryDefinitionServiceTemplate();
+ ServiceTemplate entryDefinitionServiceTemplate =
+ toscaServiceModel.getServiceTemplates().get(entryDefinitionServiceTemplateFileName);
+ extractServiceCompositionData(entryDefinitionServiceTemplateFileName,
+ entryDefinitionServiceTemplate, toscaServiceModel, context);
+
+ CompositionData compositionData = new CompositionData();
+ compositionData.setNetworks(context.getNetworks());
+ compositionData.setComponents(context.getComponents());
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return compositionData;
+ }
+
+ private void extractServiceCompositionData(String serviceTemplateFileName,
+ ServiceTemplate serviceTemplate,
+ ToscaServiceModel toscaServiceModel,
+ ExtractCompositionDataContext context) {
+ if (context.getHandledServiceTemplates().contains(serviceTemplateFileName)) {
+ return;
+ }
+ context.addNetworks(extractNetworks(serviceTemplate, toscaServiceModel));
+ extractComponents(serviceTemplate, toscaServiceModel, context);
+ handleSubstitution(serviceTemplate, toscaServiceModel, context);
+ context.addHandledServiceTemplates(serviceTemplateFileName);
+ }
+
+ private void handleSubstitution(ServiceTemplate serviceTemplate,
+ ToscaServiceModel toscaServiceModel,
+ ExtractCompositionDataContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Map<String, NodeTemplate> substitutableNodeTemplates =
+ toscaAnalyzerService.getSubstitutableNodeTemplates(serviceTemplate);
+
+ if (substitutableNodeTemplates != null) {
+ for (String substitutableNodeTemplateId : substitutableNodeTemplates.keySet()) {
+ handleSubstitutableNodeTemplate(serviceTemplate, toscaServiceModel,
+ substitutableNodeTemplateId,
+ substitutableNodeTemplates.get(substitutableNodeTemplateId), context);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void handleSubstitutableNodeTemplate(ServiceTemplate serviceTemplate,
+ ToscaServiceModel toscaServiceModel,
+ String substitutableNodeTemplateId,
+ NodeTemplate substitutableNodeTemplate,
+ ExtractCompositionDataContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ Optional<String> substituteServiceTemplateFileName = toscaAnalyzerService
+ .getSubstituteServiceTemplateName(substitutableNodeTemplateId, substitutableNodeTemplate);
+ if (!substituteServiceTemplateFileName.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.EXTRACT_COMPOSITION_DATA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EXTRACT_COMPOSITION_DATA);
+ throw new CoreException(
+ new ToscaInvalidSubstituteNodeTemplateErrorBuilder(substitutableNodeTemplateId).build());
+ }
+ if (context.getHandledServiceTemplates().contains(substituteServiceTemplateFileName.get())) {
+ //each substitution is should be handled once, and will get the connection to the upper
+ // service level according to the first one which was processed
+ mdcDataDebugMessage.debugExitMessage(null);
+ return;
+ }
+
+ ServiceTemplate substituteServiceTemplate =
+ toscaServiceModel.getServiceTemplates().get(substituteServiceTemplateFileName.get());
+ extractServiceCompositionData(substituteServiceTemplateFileName.get(),
+ substituteServiceTemplate, toscaServiceModel, context);
+
+ List<Map<String, RequirementAssignment>> substitutableRequirements =
+ substitutableNodeTemplate.getRequirements();
+
+ if (CollectionUtils.isEmpty(substitutableRequirements)) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return;
+ }
+
+ for (Map<String, RequirementAssignment> substitutableReq : substitutableRequirements) {
+ substitutableReq.keySet().stream().filter(reqId -> {
+ RequirementAssignment reqAssignment = toscaExtensionYamlUtil
+ .yamlToObject(toscaExtensionYamlUtil.objectToYaml(substitutableReq.get(reqId)),
+ RequirementAssignment.class);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return isLinkToNetworkRequirementAssignment(reqAssignment);
+ }).forEach(reqId -> {
+ RequirementAssignment linkToNetworkRequirement = toscaExtensionYamlUtil
+ .yamlToObject(toscaExtensionYamlUtil.objectToYaml(substitutableReq.get(reqId)),
+ RequirementAssignment.class);
+ String connectedNodeId = linkToNetworkRequirement.getNode();
+ Optional<NodeTemplate> connectedNodeTemplate =
+ toscaAnalyzerService.getNodeTemplateById(serviceTemplate, connectedNodeId);
+
+ if (connectedNodeTemplate.isPresent() && toscaAnalyzerService
+ .isTypeOf(connectedNodeTemplate.get(), ToscaNodeType.NATIVE_NETWORK,
+ serviceTemplate, toscaServiceModel)) {
+ Optional<Map.Entry<String, NodeTemplate>> mappedNodeTemplate = toscaAnalyzerService
+ .getSubstitutionMappedNodeTemplateByExposedReq(
+ substituteServiceTemplateFileName.get(), substituteServiceTemplate, reqId);
+ if (!mappedNodeTemplate.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.EXTRACT_COMPOSITION_DATA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EXTRACT_COMPOSITION_DATA);
+ throw new CoreException(new ToscaMissingSubstitutionMappingForReqCapErrorBuilder(
+ ToscaMissingSubstitutionMappingForReqCapErrorBuilder.MappingExposedEntry
+ .REQUIREMENT, connectedNodeId).build());
+ }
+
+ if (toscaAnalyzerService.isTypeOf(mappedNodeTemplate.get().getValue(),
+ ToscaNodeType.NATIVE_NETWORK_PORT, serviceTemplate,
+ toscaServiceModel)) {
+ Nic port = context.getNics().get(mappedNodeTemplate.get().getKey());
+ if (port != null) {
+ port.setNetworkName(connectedNodeId);
+ } else {
+ logger.warn(
+ "Different ports define for the same component which is used in different "
+ + "substitution service templates.");
+ }
+ }
+ } else if (!connectedNodeTemplate.isPresent()) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.EXTRACT_COMPOSITION_DATA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EXTRACT_COMPOSITION_DATA);
+ throw new CoreException(
+ new ToscaInvalidEntryNotFoundErrorBuilder("Node Template", connectedNodeId).build());
+ }
+ });
+ }
+ }
+
+ private boolean isLinkToNetworkRequirementAssignment(RequirementAssignment requirement) {
+ return toscaAnalyzerService.isDesiredRequirementAssignment(requirement,
+ ToscaCapabilityType.NATIVE_NETWORK_LINKABLE, null,
+ ToscaRelationshipType.NATIVE_NETWORK_LINK_TO);
+ }
+
+
+ private void connectPortToNetwork(Nic port, NodeTemplate portNodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ List<RequirementAssignment> linkRequirementsToNetwork =
+ toscaAnalyzerService.getRequirements(portNodeTemplate, ToscaConstants.LINK_REQUIREMENT_ID);
+
+ //port is connected to one network
+ for (RequirementAssignment linkRequirementToNetwork : linkRequirementsToNetwork) {
+ port.setNetworkName(linkRequirementToNetwork.getNode());
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ /*
+ return Map with key - compute node template id, value - list of connected port node template id
+ */
+ private Map<String, List<String>> getComputeToPortsConnection(
+ Map<String, NodeTemplate> portNodeTemplates) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Map<String, List<String>> computeToPortConnection = new HashMap<>();
+ if (MapUtils.isEmpty(portNodeTemplates)) {
+ return computeToPortConnection;
+ }
+ for (String portId : portNodeTemplates.keySet()) {
+ List<RequirementAssignment> bindingRequirementsToCompute = toscaAnalyzerService
+ .getRequirements(portNodeTemplates.get(portId), ToscaConstants.BINDING_REQUIREMENT_ID);
+ for (RequirementAssignment bindingRequirementToCompute : bindingRequirementsToCompute) {
+ computeToPortConnection
+ .putIfAbsent(bindingRequirementToCompute.getNode(), new ArrayList<>());
+ computeToPortConnection.get(bindingRequirementToCompute.getNode()).add(portId);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return computeToPortConnection;
+ }
+
+ private void extractComponents(ServiceTemplate serviceTemplate,
+ ToscaServiceModel toscaServiceModel,
+ ExtractCompositionDataContext context) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Map<String, NodeTemplate> computeNodeTemplates = toscaAnalyzerService
+ .getNodeTemplatesByType(serviceTemplate, ToscaNodeType.NATIVE_COMPUTE,
+ toscaServiceModel);
+ if (MapUtils.isEmpty(computeNodeTemplates)) {
+ return;
+ }
+ Map<String, NodeTemplate> portNodeTemplates = toscaAnalyzerService
+ .getNodeTemplatesByType(serviceTemplate, ToscaNodeType.NATIVE_NETWORK_PORT,
+ toscaServiceModel);
+ Map<String, List<String>> computeToPortsConnection =
+ getComputeToPortsConnection(portNodeTemplates);
+ Map<String, List<String>> computesGroupedByType =
+ getNodeTemplatesGroupedByType(computeNodeTemplates);
+
+ computesGroupedByType.keySet()
+ .stream()
+ .filter(nodeType ->
+ !context.getCreatedComponents().contains(nodeType))
+ .forEach(nodeType -> extractComponent(serviceTemplate, computeToPortsConnection,
+ computesGroupedByType, nodeType, context));
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void extractComponent(ServiceTemplate serviceTemplate,
+ Map<String, List<String>> computeToPortsConnection,
+ Map<String, List<String>> computesGroupedByType,
+ String computeNodeType,
+ ExtractCompositionDataContext context) {
+ ComponentData component = new ComponentData();
+ component.setName(computeNodeType);
+ component.setDisplayName(getComponentDisplayName(component.getName()));
+ component.setVfcCode(component.getDisplayName());
+ Component componentModel = new Component();
+ componentModel.setData(component);
+
+ String computeId = computesGroupedByType.get(computeNodeType).get(0);
+ List<String> connectedPortIds = computeToPortsConnection.get(computeId);
+
+ if (connectedPortIds != null) {
+ componentModel.setNics(new ArrayList<>());
+ for (String portId : connectedPortIds) {
+ Nic port = extractPort(serviceTemplate, portId);
+ componentModel.getNics().add(port);
+ context.addNic(portId, port);
+ }
+ }
+ context.addComponent(componentModel);
+ context.getCreatedComponents().add(computeNodeType);
+ }
+
+ private Nic extractPort(ServiceTemplate serviceTemplate, String portNodeTemplateId) {
+ Optional<NodeTemplate> portNodeTemplate =
+ toscaAnalyzerService.getNodeTemplateById(serviceTemplate, portNodeTemplateId);
+ if (portNodeTemplate.isPresent()) {
+ Nic port = new Nic();
+ port.setName(portNodeTemplateId);
+ connectPortToNetwork(port, portNodeTemplate.get());
+ return port;
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.EXTRACT_COMPOSITION_DATA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EXTRACT_COMPOSITION_DATA);
+ throw new CoreException(
+ new ToscaInvalidEntryNotFoundErrorBuilder("Node Template", portNodeTemplateId).build());
+ }
+ }
+
+
+ private Map<String, List<String>> getNodeTemplatesGroupedByType(
+ Map<String, NodeTemplate> nodeTemplates) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Map<String, List<String>> nodeTemplatesGrouped =
+ new HashMap<>(); //key - node type, value - list of node ids with this type
+ for (String nodeId : nodeTemplates.keySet()) {
+ String nodeType = nodeTemplates.get(nodeId).getType();
+ nodeTemplatesGrouped.putIfAbsent(nodeType, new ArrayList<>());
+ nodeTemplatesGrouped.get(nodeType).add(nodeId);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return nodeTemplatesGrouped;
+ }
+
+ private List<Network> extractNetworks(ServiceTemplate serviceTemplate,
+ ToscaServiceModel toscaServiceModel) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ List<Network> networks = new ArrayList<>();
+ Map<String, NodeTemplate> networkNodeTemplates = toscaAnalyzerService
+ .getNodeTemplatesByType(serviceTemplate, ToscaNodeType.NATIVE_NETWORK,
+ toscaServiceModel);
+ if (MapUtils.isEmpty(networkNodeTemplates)) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return networks;
+ }
+ for (String networkId : networkNodeTemplates.keySet()) {
+ Network network = new Network();
+ network.setName(networkId);
+ Optional<Boolean> networkDhcpValue =
+ getNetworkDhcpValue(serviceTemplate, networkNodeTemplates.get(networkId));
+ network.setDhcp(networkDhcpValue.isPresent() ? networkDhcpValue.get() : true);
+ networks.add(network);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return networks;
+ }
+
+ //dhcp default value is true
+ private Optional<Boolean> getNetworkDhcpValue(ServiceTemplate serviceTemplate,
+ NodeTemplate networkNodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ if (networkNodeTemplate == null) {
+ return Optional.empty();
+ }
+ if (networkNodeTemplate.getProperties() == null
+ || networkNodeTemplate.getProperties().get(ToscaConstants.DHCP_ENABLED_PROPERTY_NAME)
+ == null) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of(true);
+ }
+
+ Object dhcp =
+ networkNodeTemplate.getProperties().get(ToscaConstants.DHCP_ENABLED_PROPERTY_NAME);
+ if (dhcp instanceof String) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of(Boolean.valueOf((String) dhcp));
+ } else if (dhcp instanceof Boolean) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of((Boolean) dhcp);
+ } else if (dhcp instanceof Map) {
+ String inputParameterName =
+ (String) ((Map) dhcp).get(ToscaFunctions.GET_INPUT.getDisplayName());
+ if (inputParameterName != null) {
+ ParameterDefinition inputParameterDefinition =
+ serviceTemplate.getTopology_template().getInputs().get(inputParameterName);
+ if (inputParameterDefinition != null) {
+ if (inputParameterDefinition.get_default() != null) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of(Boolean.valueOf(inputParameterDefinition.get_default().toString()));
+ }
+ } else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_API,
+ LoggerTragetServiceName.EXTRACT_COMPOSITION_DATA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(),
+ LoggerErrorDescription.EXTRACT_COMPOSITION_DATA);
+ throw new CoreException(
+ new ToscaInvalidEntryNotFoundErrorBuilder("Input Parameter", inputParameterName)
+ .build());
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of(true);
+ }
+
+ @Override
+ public String getComponentDisplayName(String componentName) {
+ if (componentName == null) {
+ return null;
+ }
+ String delimiterChar = ".";
+ if (componentName.contains(delimiterChar)) {
+ return componentName.substring(componentName.lastIndexOf(delimiterChar) + 1);
+ }
+ return componentName;
+
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionEntityDataManagerImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionEntityDataManagerImpl.java
new file mode 100644
index 0000000000..81cacf75ac
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/composition/CompositionEntityDataManagerImpl.java
@@ -0,0 +1,585 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.impl.composition;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.utilities.json.JsonSchemaDataGenerator;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.ComponentDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NetworkDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.NicDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.ComponentEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.CompositionEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NetworkEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.NicEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspQuestionnaireEntity;
+import org.openecomp.sdc.vendorsoftwareproduct.services.composition.CompositionEntityDataManager;
+import org.openecomp.sdc.vendorsoftwareproduct.services.schemagenerator.SchemaGenerator;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Component;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.ComponentData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityId;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityValidationData;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Network;
+import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Nic;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateContext;
+import org.openecomp.sdc.vendorsoftwareproduct.types.schemagenerator.SchemaTemplateInput;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+
+public class CompositionEntityDataManagerImpl implements CompositionEntityDataManager {
+
+ private static final String COMPOSITION_ENTITY_DATA_MANAGER_ERR =
+ "COMPOSITION_ENTITY_DATA_MANAGER_ERR";
+ private static final String COMPOSITION_ENTITY_DATA_MANAGER_ERR_MSG =
+ "Invalid input: %s may not be null";
+
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ private Map<CompositionEntityId, CompositionEntityData> entities = new HashMap<>();
+ private Map<CompositionEntityType, String> nonDynamicSchemas = new HashMap<>();
+ private List<CompositionEntityValidationData> roots = new ArrayList<>();
+
+ private VendorSoftwareProductInfoDao vspInfoDao;
+ private ComponentDao componentDao;
+ private NicDao nicDao;
+ private NetworkDao networkDao;
+
+ public CompositionEntityDataManagerImpl(VendorSoftwareProductInfoDao vspInfoDao,
+ ComponentDao componentDao,
+ NicDao nicDao, NetworkDao networkDao) {
+ this.vspInfoDao = vspInfoDao;
+ this.componentDao = componentDao;
+ this.nicDao = nicDao;
+ this.networkDao = networkDao;
+ }
+
+ /**
+ * Validate entity composition entity validation data.
+ *
+ * @param entity the entity
+ * @param schemaTemplateContext the schema template context
+ * @param schemaTemplateInput the schema template input
+ * @return the composition entity validation data
+ */
+ @Override
+ public CompositionEntityValidationData validateEntity(CompositionEntity entity,
+ SchemaTemplateContext schemaTemplateContext,
+ SchemaTemplateInput schemaTemplateInput) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ if (entity == null) {
+ throw new CoreException(
+ new ErrorCode.ErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION)
+ .withId(COMPOSITION_ENTITY_DATA_MANAGER_ERR).withMessage(
+ String.format(COMPOSITION_ENTITY_DATA_MANAGER_ERR_MSG, "composition entity"))
+ .build());
+ }
+ if (schemaTemplateContext == null) {
+ throw new CoreException(
+ new ErrorCode.ErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION)
+ .withId(COMPOSITION_ENTITY_DATA_MANAGER_ERR).withMessage(
+ String.format(COMPOSITION_ENTITY_DATA_MANAGER_ERR_MSG, "schema template context"))
+ .build());
+ }
+
+ CompositionEntityValidationData validationData =
+ new CompositionEntityValidationData(entity.getType(), entity.getId());
+ String json =
+ schemaTemplateContext == SchemaTemplateContext.composition ? entity.getCompositionData()
+ : entity.getQuestionnaireData();
+ validationData.setErrors(JsonUtil.validate(
+ json == null ? JsonUtil.object2Json(new Object()) : json,
+ generateSchema(schemaTemplateContext, entity.getType(), schemaTemplateInput)));
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return validationData;
+ }
+
+ /**
+ * Add entity.
+ *
+ * @param entity the entity
+ * @param schemaTemplateInput the schema template input
+ */
+ @Override
+ public void addEntity(CompositionEntity entity, SchemaTemplateInput schemaTemplateInput) {
+ if (entity == null) {
+ throw new CoreException(
+ new ErrorCode.ErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION)
+ .withId(COMPOSITION_ENTITY_DATA_MANAGER_ERR).withMessage(
+ String.format(COMPOSITION_ENTITY_DATA_MANAGER_ERR_MSG, "composition entity"))
+ .build());
+ }
+ entities.put(entity.getCompositionEntityId(),
+ new CompositionEntityData(entity, schemaTemplateInput));
+ }
+
+ /**
+ * Validate entities questionnaire map.
+ *
+ * @return the map
+ */
+ @Override
+ public Map<CompositionEntityId, Collection<String>> validateEntitiesQuestionnaire() {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Map<CompositionEntityId, Collection<String>> errorsByEntityId = new HashMap<>();
+ entities.entrySet().forEach(entry -> {
+ Collection<String> errors = validateQuestionnaire(entry.getValue());
+ if (errors != null) {
+ errorsByEntityId.put(entry.getKey(), errors);
+ }
+ });
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return errorsByEntityId;
+ }
+
+ /**
+ * Build trees.
+ */
+ @Override
+ public void buildTrees() {
+ Map<CompositionEntityId, CompositionEntityValidationData> entitiesValidationData =
+ new HashMap<>();
+ entities.entrySet().forEach(
+ entry -> addValidationDataEntity(entitiesValidationData, entry.getKey(),
+ entry.getValue().entity));
+ }
+
+ public Collection<CompositionEntityValidationData> getTrees() {
+ return roots;
+ }
+
+ @Override
+ public void saveCompositionData(String vspId, Version version, CompositionData compositionData) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ if (Objects.isNull(compositionData)) {
+ return;
+ }
+
+ Map<String, String> networkIdByName = saveNetworks(vspId, version, compositionData);
+ saveComponents(vspId, version, compositionData, networkIdByName);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ @Override
+ public Set<CompositionEntityValidationData> getAllErrorsByVsp(String vspId) {
+ CompositionEntityValidationData matchVsp = null;
+ Set<CompositionEntityValidationData> entitiesWithErrors = new HashSet<>();
+ for (CompositionEntityValidationData root : roots) {
+ if (root.getEntityId().equals(vspId)) {
+ matchVsp = root;
+ break;
+ }
+ }
+
+ getEntityListWithErrors(matchVsp, entitiesWithErrors);
+ if (CollectionUtils.isNotEmpty(entitiesWithErrors)) {
+ updateValidationCompositionEntityName(entitiesWithErrors);
+ return entitiesWithErrors;
+ }
+
+ return null;
+ }
+
+ private boolean isThereErrorsInSubTree(CompositionEntityValidationData entity) {
+ if (Objects.isNull(entity)) {
+ return false;
+ }
+
+ if (CollectionUtils.isNotEmpty(entity.getErrors())) {
+ return true;
+ }
+
+ Collection<CompositionEntityValidationData> subEntitiesValidationData =
+ entity.getSubEntitiesValidationData();
+ return !CollectionUtils.isEmpty(subEntitiesValidationData) &&
+ checkForErrorsInChildren(subEntitiesValidationData);
+
+ }
+
+ private boolean checkForErrorsInChildren(
+ Collection<CompositionEntityValidationData> subEntitiesValidationData) {
+ boolean result = false;
+ for (CompositionEntityValidationData subEntity : subEntitiesValidationData) {
+ if (CollectionUtils.isNotEmpty(subEntity.getErrors())) {
+ return true;
+ }
+
+ result = result || isThereErrorsInSubTree(subEntity);
+ if (result) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ public void saveComponents(String vspId, Version version, CompositionData compositionData,
+ Map<String, String> networkIdByName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ if (CollectionUtils.isNotEmpty(compositionData.getComponents())) {
+ for (Component component : compositionData.getComponents()) {
+ ComponentEntity componentEntity = new ComponentEntity(vspId, version, null);
+ componentEntity.setComponentCompositionData(component.getData());
+
+ String componentId = createComponent(componentEntity).getId();
+
+ saveNicsByComponent(vspId, version, networkIdByName, component, componentId);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ public void saveNicsByComponent(String vspId, Version version,
+ Map<String, String> networkIdByName, Component component,
+ String componentId) {
+ if (CollectionUtils.isNotEmpty(component.getNics())) {
+ for (Nic nic : component.getNics()) {
+ if (nic.getNetworkName() != null && MapUtils.isNotEmpty(networkIdByName)) {
+ nic.setNetworkId(networkIdByName.get(nic.getNetworkName()));
+ }
+ nic.setNetworkName(null);
+
+ NicEntity nicEntity = new NicEntity(vspId, version, componentId, null);
+ nicEntity.setNicCompositionData(nic);
+ createNic(nicEntity);
+ }
+ }
+ }
+
+ public Map<String, String> saveNetworks(String vspId, Version version,
+ CompositionData compositionData) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Map<String, String> networkIdByName = new HashMap<>();
+ if (CollectionUtils.isNotEmpty(compositionData.getNetworks())) {
+ for (Network network : compositionData.getNetworks()) {
+
+ NetworkEntity networkEntity = new NetworkEntity(vspId, version, null);
+ networkEntity.setNetworkCompositionData(network);
+
+ if (network.getName() != null) {
+ networkIdByName.put(network.getName(), createNetwork(networkEntity).getId());
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return networkIdByName;
+ }
+
+ @Override
+ public NetworkEntity createNetwork(NetworkEntity network) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ //network.setId(CommonMethods.nextUuId()); will be set by the dao
+ networkDao.create(network);
+ mdcDataDebugMessage.debugExitMessage(null);
+ return network;
+ }
+
+ @Override
+ public ComponentEntity createComponent(ComponentEntity component) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ //component.setId(CommonMethods.nextUuId()); will be set by the dao
+ component.setQuestionnaireData(
+ new JsonSchemaDataGenerator(
+ generateSchema(SchemaTemplateContext.questionnaire, CompositionEntityType.component,
+ null))
+ .generateData());
+
+ componentDao.create(component);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return component;
+ }
+
+ @Override
+ public NicEntity createNic(NicEntity nic) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ //nic.setId(CommonMethods.nextUuId()); will be set by the dao
+ nic.setQuestionnaireData(
+ new JsonSchemaDataGenerator(
+ generateSchema(SchemaTemplateContext.questionnaire, CompositionEntityType.nic, null))
+ .generateData());
+
+ nicDao.create(nic);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return nic;
+ }
+
+
+ public void addErrorsToTrees(Map<CompositionEntityId, Collection<String>> errors) {
+ roots.forEach(root -> addErrorsToTree(root, null, errors));
+ }
+
+ /* *
+ * get a flat list of all questionnaire entities that have validation errors
+ * */
+ public Set<CompositionEntityValidationData> getEntityListWithErrors() {
+ mdcDataDebugMessage.debugEntryMessage(null);
+ Set<CompositionEntityValidationData> treeAsList = new HashSet<>();
+
+ for (CompositionEntityValidationData entity : roots) {
+ if (CollectionUtils.isNotEmpty(entity.getErrors())) {
+ addNodeWithErrors(entity, treeAsList);
+ }
+ getEntityListWithErrors(entity, treeAsList);
+ }
+
+ updateValidationCompositionEntityName(treeAsList);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return treeAsList;
+ }
+
+ public void getEntityListWithErrors(CompositionEntityValidationData entity,
+ Set<CompositionEntityValidationData> compositionSet) {
+ Collection<CompositionEntityValidationData> childNodes =
+ entity.getSubEntitiesValidationData();
+
+ if (CollectionUtils.isEmpty(childNodes)) {
+ return;
+ }
+
+ for (CompositionEntityValidationData child : childNodes) {
+ if (CollectionUtils.isNotEmpty(child.getErrors())) {
+ addNodeWithErrors(child, compositionSet);
+ }
+ getEntityListWithErrors(child, compositionSet);
+ }
+ }
+
+
+ public void addNodeWithErrors(CompositionEntityValidationData node,
+ Set<CompositionEntityValidationData> entitiesWithErrors) {
+ CompositionEntityValidationData compositionNodeToAdd = new CompositionEntityValidationData(node
+ .getEntityType(), node.getEntityId());
+ compositionNodeToAdd.setErrors(node.getErrors());
+ compositionNodeToAdd.setSubEntitiesValidationData(null);
+
+ entitiesWithErrors.add(compositionNodeToAdd);
+ }
+
+ public void removeNodesWithoutErrors() {
+ roots.forEach(root -> removeNodesWithoutErrors(root, null));
+ }
+
+
+ private CompositionEntityData getCompositionEntityDataById(CompositionEntityValidationData
+ entity) {
+ for (Map.Entry<CompositionEntityId, CompositionEntityData> entityEntry : entities
+ .entrySet()) {
+ if (entityEntry.getKey().getId().equals(entity.getEntityId())) {
+ return entityEntry.getValue();
+ }
+ }
+ return null;
+ }
+
+
+ private void updateValidationCompositionEntityName(Set<CompositionEntityValidationData>
+ compositionSet) {
+ for (CompositionEntityValidationData entity : compositionSet) {
+ String compositionData = getCompositionDataAsString(entity);
+ if (entity.getEntityType().equals(CompositionEntityType.vsp) ||
+ Objects.nonNull(compositionData)) {
+ entity.setEntityName(getEntityNameByEntityType(compositionData, entity));
+ }
+ }
+ }
+
+ private String getCompositionDataAsString(CompositionEntityValidationData entity) {
+ CompositionEntityData compositionEntityData = getCompositionEntityDataById(entity);
+ return compositionEntityData == null ? null : compositionEntityData.entity.getCompositionData();
+ }
+
+
+ private String getEntityNameByEntityType(String compositionData,
+ CompositionEntityValidationData entity) {
+ switch (entity.getEntityType()) {
+ case component:
+ ComponentData component = JsonUtil.json2Object(compositionData, ComponentData.class);
+ return component.getDisplayName();
+
+ case nic:
+ Nic nic = JsonUtil.json2Object(compositionData, Nic.class);
+ return nic.getName();
+
+ case network:
+ Network network = JsonUtil.json2Object(compositionData, Network.class);
+ return network.getName();
+
+ case vsp:
+ CompositionEntityData vspEntity = getCompositionEntityDataById(entity);
+ VspQuestionnaireEntity vspQuestionnaireEntity = (VspQuestionnaireEntity) vspEntity.entity;
+ VspDetails vspDetails =
+ vspInfoDao.get(new VspDetails(vspQuestionnaireEntity.getId(),
+ vspQuestionnaireEntity.getVersion()));
+ return vspDetails.getName();
+ }
+
+ return null;
+ }
+
+ private void removeNodesWithoutErrors(CompositionEntityValidationData node,
+ CompositionEntityValidationData parent) {
+
+ if (Objects.isNull(node)) {
+ return;
+ }
+
+ if (hasChildren(node)) {
+ Collection<CompositionEntityValidationData> subNodes =
+ new ArrayList<>(node.getSubEntitiesValidationData());
+ subNodes.forEach(subNode -> removeNodesWithoutErrors(subNode, node));
+ node.setSubEntitiesValidationData(subNodes);
+
+ if (canNodeGetRemovedFromValidationDataTree(node)) {
+ removeNodeFromChildren(parent, node);
+ }
+ } else if (canNodeGetRemovedFromValidationDataTree(node)) {
+ removeNodeFromChildren(parent, node);
+ }
+ }
+
+ private void removeNodeFromChildren(CompositionEntityValidationData parent,
+ CompositionEntityValidationData childToRemove) {
+ if (!Objects.isNull(parent)) {
+ parent.getSubEntitiesValidationData().remove(childToRemove);
+ }
+ }
+
+ private boolean hasChildren(CompositionEntityValidationData node) {
+ return !CollectionUtils.isEmpty(node.getSubEntitiesValidationData());
+ }
+
+ private boolean canNodeGetRemovedFromValidationDataTree(CompositionEntityValidationData node) {
+ return !hasChildren(node) && CollectionUtils.isEmpty(node.getErrors());
+ }
+
+
+ private void addValidationDataEntity(
+ Map<CompositionEntityId, CompositionEntityValidationData> entitiesValidationData,
+ CompositionEntityId entityId, CompositionEntity entity) {
+ if (entitiesValidationData.containsKey(entityId)) {
+ return;
+ }
+
+ CompositionEntityValidationData validationData =
+ new CompositionEntityValidationData(entity.getType(), entity.getId());
+ entitiesValidationData.put(entityId, validationData);
+
+ CompositionEntityId parentEntityId = entityId.getParentId();
+ if (parentEntityId == null) {
+ roots.add(validationData);
+ } else {
+ CompositionEntityData parentEntity = entities.get(parentEntityId);
+ if (parentEntity == null) {
+ roots.add(validationData);
+ } else {
+ addValidationDataEntity(entitiesValidationData, parentEntityId, parentEntity.entity);
+ entitiesValidationData.get(parentEntityId).addSubEntityValidationData(validationData);
+ }
+ }
+ }
+
+ private void addErrorsToTree(CompositionEntityValidationData node,
+ CompositionEntityId parentNodeId,
+ Map<CompositionEntityId, Collection<String>> errors) {
+ if (node == null) {
+ return;
+ }
+ CompositionEntityId nodeId = new CompositionEntityId(node.getEntityId(), parentNodeId);
+ node.setErrors(errors.get(nodeId));
+
+ if (node.getSubEntitiesValidationData() != null) {
+ node.getSubEntitiesValidationData()
+ .forEach(subNode -> addErrorsToTree(subNode, nodeId, errors));
+ }
+ }
+
+ private Collection<String> validateQuestionnaire(CompositionEntityData compositionEntityData) {
+ return JsonUtil.validate(
+ compositionEntityData.entity.getQuestionnaireData() == null
+ ? JsonUtil.object2Json(new Object())
+ : compositionEntityData.entity.getQuestionnaireData(),
+ getSchema(compositionEntityData.entity.getType(), SchemaTemplateContext.questionnaire,
+ compositionEntityData.schemaTemplateInput));
+ }
+
+ private String getSchema(CompositionEntityType compositionEntityType,
+ SchemaTemplateContext schemaTemplateContext,
+ SchemaTemplateInput schemaTemplateInput) {
+ return schemaTemplateInput == null
+ ? nonDynamicSchemas.computeIfAbsent(compositionEntityType,
+ k -> generateSchema(schemaTemplateContext, compositionEntityType, null))
+ : generateSchema(schemaTemplateContext, compositionEntityType, schemaTemplateInput);
+ }
+
+ private static class CompositionEntityData {
+ private CompositionEntity entity;
+ private SchemaTemplateInput schemaTemplateInput;
+
+ CompositionEntityData(CompositionEntity entity, SchemaTemplateInput schemaTemplateInput) {
+ this.entity = entity;
+ this.schemaTemplateInput = schemaTemplateInput;
+ }
+
+ }
+
+ // todo - make SchemaGenerator non static and mock it in UT instead of mocking this method (and
+ // make the method private
+
+ protected String generateSchema(SchemaTemplateContext schemaTemplateContext,
+ CompositionEntityType compositionEntityType,
+ SchemaTemplateInput schemaTemplateInput) {
+ return SchemaGenerator
+ .generate(schemaTemplateContext, compositionEntityType, schemaTemplateInput);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/CandidateServiceImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/CandidateServiceImpl.java
new file mode 100644
index 0000000000..2822d958d0
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/CandidateServiceImpl.java
@@ -0,0 +1,621 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.impl.filedatastructuremodule;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.json.JsonUtil;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.common.errors.ErrorCategory;
+import org.openecomp.sdc.common.errors.ErrorCode;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.common.utils.SdcCommon;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.heat.datatypes.structure.Artifact;
+import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDaoFactory;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.errors.utils.ErrorsUtil;
+import org.openecomp.sdc.vendorsoftwareproduct.services.HeatFileAnalyzer;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.CandidateService;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.ManifestCreator;
+import org.openecomp.sdc.vendorsoftwareproduct.services.utils.CandidateServiceValidator;
+import org.openecomp.sdc.vendorsoftwareproduct.types.CandidateDataEntityTo;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.AnalyzedZipHeatFiles;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.Module;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.nio.ByteBuffer;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipInputStream;
+import java.util.zip.ZipOutputStream;
+
+public class CandidateServiceImpl implements CandidateService {
+ protected static final Logger logger = LoggerFactory.getLogger(CandidateServiceImpl.class);
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ private CandidateServiceValidator candidateServiceValidator = new CandidateServiceValidator();
+ private ManifestCreator manifestCreator;
+ private OrchestrationTemplateCandidateDao orchestrationTemplateCandidateDataDao;
+
+ public CandidateServiceImpl(ManifestCreator manifestCreator,
+ OrchestrationTemplateCandidateDao orchestrationTemplateCandidateDataDao) {
+ this.manifestCreator = manifestCreator;
+ this.orchestrationTemplateCandidateDataDao = orchestrationTemplateCandidateDataDao;
+
+ }
+
+ public CandidateServiceImpl() {
+ }
+
+ @Override
+ public Optional<ErrorMessage> validateNonEmptyFileToUpload(InputStream heatFileToUpload) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ if (Objects.isNull(heatFileToUpload)) {
+ return Optional.of(new ErrorMessage(ErrorLevel.ERROR,
+ Messages.NO_ZIP_FILE_WAS_UPLOADED_OR_ZIP_NOT_EXIST.getErrorMessage()));
+ } else {
+ try {
+ int available = heatFileToUpload.available();
+ if (available == 0) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of(new ErrorMessage(ErrorLevel.ERROR,
+ Messages.NO_ZIP_FILE_WAS_UPLOADED_OR_ZIP_NOT_EXIST.getErrorMessage()));
+ }
+ } catch (IOException e) {
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.of(new ErrorMessage(ErrorLevel.ERROR,
+ Messages.NO_ZIP_FILE_WAS_UPLOADED_OR_ZIP_NOT_EXIST.getErrorMessage()));
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return Optional.empty();
+ }
+
+ @Override
+ public Optional<ErrorMessage> validateRawZipData(byte[] uploadedFileData) {
+ if (Objects.isNull(uploadedFileData)) {
+ return Optional.of(new ErrorMessage(ErrorLevel.ERROR,
+ Messages.NO_ZIP_FILE_WAS_UPLOADED_OR_ZIP_NOT_EXIST.getErrorMessage()));
+ }
+ return Optional.empty();
+ }
+
+ private String heatStructureTreeToFileDataStructure(HeatStructureTree tree,
+ FileContentHandler zipContentMap,
+ Map<String, List<ErrorMessage>> uploadErrors,
+ AnalyzedZipHeatFiles analyzedZipHeatFiles)
+ throws Exception {
+ FilesDataStructure structure = new FilesDataStructure();
+ Set<String> usedEnvFiles = new HashSet<>();
+ addHeatsToFileDataStructure(tree, usedEnvFiles, structure, uploadErrors,
+ analyzedZipHeatFiles);
+ handleOtherResources(tree, usedEnvFiles, structure);
+ FilesDataStructure fileDataStructureFromManifest =
+ createFileDataStructureFromManifest(zipContentMap.getFileContent
+ (SdcCommon.MANIFEST_NAME));
+ structure.getArtifacts().addAll(fileDataStructureFromManifest.getArtifacts());
+ handleArtifactsFromTree(tree, structure);
+
+ return JsonUtil.object2Json(structure);
+ }
+
+ @Override
+ public OrchestrationTemplateCandidateData createCandidateDataEntity(
+ CandidateDataEntityTo candidateDataEntityTo, InputStream zipFileManifest,
+ AnalyzedZipHeatFiles analyzedZipHeatFiles) throws Exception {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ FileContentHandler zipContentMap = candidateDataEntityTo.getContentMap();
+ FilesDataStructure filesDataStructure;
+ String dataStructureJson;
+
+ if (zipFileManifest != null) {
+ // create data structure from manifest
+ filesDataStructure = createFileDataStructureFromManifest(zipFileManifest);
+ Set<String> zipFileList = zipContentMap.getFileList();
+ balanceManifestFilesWithZipFiles(filesDataStructure,
+ zipContentMap, analyzedZipHeatFiles);
+ Set<String> filesDataStructureFiles = getFlatFileNames(filesDataStructure);
+ filesDataStructure.getUnassigned().addAll(zipFileList.stream()
+ .filter(fileName -> (!filesDataStructureFiles.contains(fileName) &&
+ !filesDataStructure.getNested().contains(fileName) &&
+ !fileName.equals(SdcCommon.MANIFEST_NAME)))
+ .collect(Collectors.toList()));
+ dataStructureJson = JsonUtil.object2Json(filesDataStructure);
+ } else {
+ // create data structure from based on naming convention
+ dataStructureJson =
+ heatStructureTreeToFileDataStructure(candidateDataEntityTo.getTree(), zipContentMap,
+ candidateDataEntityTo.getErrors(), analyzedZipHeatFiles);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return new OrchestrationTemplateCandidateData(
+ ByteBuffer.wrap(candidateDataEntityTo.getUploadedFileData()), dataStructureJson);
+ }
+
+ private void balanceManifestFilesWithZipFiles(
+ FilesDataStructure filesDataStructure,
+ FileContentHandler fileContentHandler, AnalyzedZipHeatFiles analyzedZipHeatFiles)
+ throws Exception {
+ Set<String> zipFileList = fileContentHandler.getFileList();
+ filesDataStructure.getNested().addAll(analyzedZipHeatFiles.getNestedFiles());
+ List<Module> modules = filesDataStructure.getModules();
+ if (CollectionUtils.isEmpty(modules)) {
+ return;
+ }
+
+ for (int i = 0; i < modules.size(); i++) {
+ Module module = modules.get(i);
+ if (!isFileExistInZipContains(zipFileList, module.getYaml())) {
+ addFileToUnassigned(filesDataStructure, zipFileList, module.getEnv());
+ addFileToUnassigned(filesDataStructure, zipFileList, module.getVol());
+ addFileToUnassigned(filesDataStructure, zipFileList, module.getVolEnv());
+ modules.remove(i--);
+ } else if (Objects.nonNull(module.getVol()) && !zipFileList.contains(module.getVol())) {
+ module.setVol(null);
+ CollectionUtils.addIgnoreNull(filesDataStructure.getUnassigned(), module.getVolEnv());
+ } else {
+ if (filesDataStructure.getNested().contains(module.getYaml())) {
+ moveModuleFileToNested(filesDataStructure, i--, module);
+ }
+ }
+ }
+ }
+
+ private void addFileToUnassigned(FilesDataStructure filesDataStructure, Set<String> zipFileList,
+ String fileName) {
+ if (isFileExistInZipContains(zipFileList, fileName)) {
+ filesDataStructure.getUnassigned().add(fileName);
+ }
+ }
+
+ private boolean isFileExistInZipContains(Set<String> zipFileList, String fileName) {
+ return Objects.nonNull(fileName) && zipFileList.contains(fileName);
+ }
+
+ private void moveModuleFileToNested(FilesDataStructure filesDataStructure, int i, Module module) {
+ if (!filesDataStructure.getNested().contains(module.getYaml())) {
+ filesDataStructure.getNested().add(module.getYaml());
+ }
+ if (Objects.nonNull(module.getEnv())) {
+ filesDataStructure.getNested().add(module.getEnv());
+ }
+ if (Objects.nonNull(module.getVol())) {
+ filesDataStructure.getNested().add(module.getVol());
+ }
+ if (Objects.nonNull(module.getVolEnv())) {
+ filesDataStructure.getNested().add(module.getVolEnv());
+ }
+ filesDataStructure.getModules().remove(i);
+ }
+
+ private Set<String> getFlatFileNames(FilesDataStructure filesDataStructure) {
+ Set<String> fileNames = new HashSet<>();
+ if (!CollectionUtils.isEmpty(filesDataStructure.getModules())) {
+ for (Module module : filesDataStructure.getModules()) {
+ CollectionUtils.addIgnoreNull(fileNames, module.getEnv());
+ CollectionUtils.addIgnoreNull(fileNames, module.getVol());
+ CollectionUtils.addIgnoreNull(fileNames, module.getVolEnv());
+ CollectionUtils.addIgnoreNull(fileNames, module.getYaml());
+ }
+ }
+ fileNames.addAll(filesDataStructure.getArtifacts().stream().collect(Collectors.toSet()));
+ fileNames.addAll(filesDataStructure.getNested().stream().collect(Collectors.toSet()));
+ fileNames.addAll(filesDataStructure.getUnassigned().stream().collect(Collectors.toSet()));
+
+ return fileNames;
+ }
+
+ private FilesDataStructure createFileDataStructureFromManifest(InputStream isManifestContent) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ ManifestContent manifestContent =
+ JsonUtil.json2Object(isManifestContent, ManifestContent.class);
+ FilesDataStructure structure = new FilesDataStructure();
+ for (FileData fileData : manifestContent.getData()) {
+ if (Objects.nonNull(fileData.getType()) && fileData.getType().equals(FileData.Type.HEAT)) {
+ Module module = new Module();
+ module.setYaml(fileData.getFile());
+ module.setIsBase(fileData.getBase());
+ addHeatDependenciesToModule(module, fileData.getData());
+ structure.getModules().add(module);
+ } else if (HeatFileAnalyzer.isYamlOrEnvFile(fileData.getFile()) &&
+ !FileData.Type.isArtifact(fileData.getType())) {
+ structure.getUnassigned().add(fileData.getFile());
+ } else {
+ structure.getArtifacts().add(fileData.getFile());
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ return structure;
+ }
+
+ private void addHeatDependenciesToModule(Module module, List<FileData> data) {
+ if (CollectionUtils.isEmpty(data)) {
+ return;
+ }
+
+ for (FileData fileData : data) {
+ if (fileData.getType().equals(FileData.Type.HEAT_ENV)) {
+ module.setEnv(fileData.getFile());
+ } else if (fileData.getType().equals(FileData.Type.HEAT_VOL))// must be volume
+ {
+ module.setVol(fileData.getFile());
+ if (!CollectionUtils.isEmpty(fileData.getData())) {
+ FileData volEnv = fileData.getData().get(0);
+ if (volEnv.getType().equals(FileData.Type.HEAT_ENV)) {
+ module.setVolEnv(volEnv.getFile());
+ } else {
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage(Messages.ILLEGAL_MANIFEST.getErrorMessage())
+ .withId(Messages.ILLEGAL_MANIFEST.getErrorMessage())
+ .withCategory(ErrorCategory.APPLICATION).build());
+ }
+ }
+ } else {
+ throw new CoreException((new ErrorCode.ErrorCodeBuilder())
+ .withMessage(Messages.FILE_TYPE_NOT_LEGAL.getErrorMessage())
+ .withId(Messages.FILE_TYPE_NOT_LEGAL.getErrorMessage())
+ .withCategory(ErrorCategory.APPLICATION).build());
+ }
+ }
+ }
+
+ @Override
+ public void updateCandidateUploadData(OrchestrationTemplateCandidateData uploadData,
+ String itemId) {
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ //vendorSoftwareProductDao.updateCandidateUploadData(uploadData);
+ orchestrationTemplateCandidateDataDao.update(itemId, uploadData);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ @Override
+ public Optional<FilesDataStructure> getOrchestrationTemplateCandidateFileDataStructure(
+ String vspId, Version version) {
+
+ mdcDataDebugMessage.debugEntryMessage("VSP Id", vspId);
+
+ Optional<String> jsonFileDataStructure =
+ orchestrationTemplateCandidateDataDao.getStructure(vspId, version);
+
+ if (jsonFileDataStructure.isPresent()) {
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspId);
+ return Optional
+ .of(JsonUtil.json2Object(jsonFileDataStructure.get(), FilesDataStructure.class));
+ } else {
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspId);
+ return Optional.empty();
+ }
+ }
+
+ @Override
+ public void updateOrchestrationTemplateCandidateFileDataStructure(String vspId, Version version,
+ FilesDataStructure fileDataStructure) {
+ OrchestrationTemplateCandidateDaoFactory.getInstance().createInterface()
+ .updateStructure(vspId, version, fileDataStructure);
+ }
+
+ @Override
+ public OrchestrationTemplateCandidateData getOrchestrationTemplateCandidate(String vspId,
+ Version version) {
+ mdcDataDebugMessage.debugEntryMessage("VSP Id", vspId);
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspId);
+
+ return orchestrationTemplateCandidateDataDao.get(vspId, version);
+ }
+
+ @Override
+ public String createManifest(VspDetails vspDetails, FilesDataStructure structure) {
+
+ mdcDataDebugMessage.debugEntryMessage("VSP Id", vspDetails.getId());
+
+ Optional<ManifestContent> manifest = manifestCreator.createManifest(vspDetails, structure);
+ if (!manifest.isPresent()) {
+ throw new RuntimeException(Messages.CREATE_MANIFEST_FROM_ZIP.getErrorMessage());
+ }
+
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspDetails.getId());
+ return JsonUtil.object2Json(manifest.get());
+ }
+
+ @Override
+ public Optional<ManifestContent> createManifest(VspDetails vspDetails,
+ FileContentHandler fileContentHandler,
+ AnalyzedZipHeatFiles analyzedZipHeatFiles) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("VSP Id", vspDetails.getId());
+
+ mdcDataDebugMessage.debugExitMessage("VSP Id", vspDetails.getId());
+ return manifestCreator.createManifest(vspDetails, fileContentHandler, analyzedZipHeatFiles);
+ }
+
+ @Override
+ public Optional<ByteArrayInputStream> fetchZipFileByteArrayInputStream(String vspId,
+ OrchestrationTemplateCandidateData candidateDataEntity,
+ String manifest,
+ Map<String, List<ErrorMessage>> uploadErrors) {
+ byte[] file;
+ ByteArrayInputStream byteArrayInputStream = null;
+ try {
+ file = replaceManifestInZip(candidateDataEntity.getContentData(), manifest, vspId);
+ byteArrayInputStream = new ByteArrayInputStream(
+ Objects.isNull(file) ? candidateDataEntity.getContentData().array()
+ : file);
+ } catch (IOException e) {
+ ErrorMessage errorMessage =
+ new ErrorMessage(ErrorLevel.ERROR, Messages.CANDIDATE_PROCESS_FAILED.getErrorMessage());
+ logger.error(errorMessage.getMessage(), e);
+ ErrorsUtil.addStructureErrorToErrorMap(SdcCommon.UPLOAD_FILE, errorMessage, uploadErrors);
+ }
+ return Optional.ofNullable(byteArrayInputStream);
+ }
+
+ @Override
+ public byte[] replaceManifestInZip(ByteBuffer contentData, String manifest, String vspId)
+ throws IOException {
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+
+ try (final ZipOutputStream zos = new ZipOutputStream(baos);
+ ZipInputStream zipStream = new ZipInputStream(
+ new ByteArrayInputStream(contentData.array()))) {
+ ZipEntry zipEntry;
+ boolean manifestWritten = false;
+ while ((zipEntry = zipStream.getNextEntry()) != null) {
+ if (!zipEntry.getName().equalsIgnoreCase(SdcCommon.MANIFEST_NAME)) {
+ ZipEntry loc_ze = new ZipEntry(zipEntry.getName());
+ zos.putNextEntry(loc_ze);
+ byte[] buf = new byte[1024];
+ int len;
+ while ((len = zipStream.read(buf)) > 0) {
+ zos.write(buf, 0, (len < buf.length) ? len : buf.length);
+ }
+ } else {
+ manifestWritten = true;
+ writeManifest(manifest, zos);
+ }
+ zos.closeEntry();
+ }
+ if (!manifestWritten) {
+ writeManifest(manifest, zos);
+ zos.closeEntry();
+ }
+ }
+ return baos.toByteArray();
+ }
+
+ @Override
+ public Optional<List<ErrorMessage>> validateFileDataStructure(
+ FilesDataStructure filesDataStructure) {
+ return candidateServiceValidator.validateFileDataStructure(filesDataStructure);
+ }
+
+ private void writeManifest(String manifest, ZipOutputStream zos) throws IOException {
+ zos.putNextEntry(new ZipEntry(SdcCommon.MANIFEST_NAME));
+ try (InputStream manifestStream = new ByteArrayInputStream(
+ manifest.getBytes(StandardCharsets.UTF_8))) {
+ byte[] buf = new byte[1024];
+ int len;
+ while ((len = (manifestStream.read(buf))) > 0) {
+ zos.write(buf, 0, (len < buf.length) ? len : buf.length);
+ }
+ }
+ }
+
+ private void handleArtifactsFromTree(HeatStructureTree tree, FilesDataStructure structure) {
+
+ if (Objects.isNull(tree) || Objects.isNull(tree.getArtifacts())) {
+ return;
+ }
+
+ if (CollectionUtils.isNotEmpty(tree.getArtifacts())) {
+ structure.getArtifacts().addAll(
+ tree.getArtifacts()
+ .stream()
+ .map(Artifact::getFileName)
+ .filter(fileName -> !structure.getArtifacts().contains(fileName))
+ .collect(Collectors.toList()));
+ }
+ }
+
+ private void handleOtherResources(HeatStructureTree tree, Set<String> usedEnvFiles,
+ FilesDataStructure structure) {
+ Set<HeatStructureTree> others = tree.getOther();
+ if (Objects.isNull(others)) {
+ return;
+ }
+
+ List<String> artifacts = new ArrayList<>();
+ List<String> unassigned = new ArrayList<>();
+ for (HeatStructureTree other : others) {
+ if (HeatFileAnalyzer.isYamlOrEnvFile(other.getFileName())) {
+ if (isEnvFileUsedByHeatFile(usedEnvFiles, other)) {
+ continue;
+ }
+ unassigned.add(other.getFileName());
+ } else {
+ artifacts.add(other.getFileName());
+ }
+ handleArtifactsFromTree(other, structure);
+ }
+ structure.getArtifacts().addAll(artifacts);
+ structure.getUnassigned().addAll(unassigned);
+ }
+
+ private boolean isEnvFileUsedByHeatFile(Set<String> usedEnvFiles, HeatStructureTree other) {
+ if (HeatFileAnalyzer.isEnvFile(other.getFileName())) {
+ if (usedEnvFiles.contains(other.getFileName())) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private void addHeatsToFileDataStructure(HeatStructureTree tree, Set<String> usedEnvFiles,
+ FilesDataStructure structure,
+ Map<String, List<ErrorMessage>> uploadErrors,
+ AnalyzedZipHeatFiles analyzedZipHeatFiles)
+ throws Exception {
+ List<Module> modules = new ArrayList<>();
+ Set<HeatStructureTree> heatsSet = tree.getHeat();
+ if (Objects.isNull(heatsSet)) {
+ return;
+ }
+ for (HeatStructureTree heat : heatsSet) {
+ if (isFileBaseFile(heat.getFileName())) {
+ handleSingleHeat(structure, modules, heat, uploadErrors);
+ } else if (isFileModuleFile(heat.getFileName(), analyzedZipHeatFiles.getModuleFiles())) {
+ handleSingleHeat(structure, modules, heat, uploadErrors);
+ } else {
+ structure.getUnassigned().add(heat.getFileName());
+ addNestedToFileDataStructure(heat, structure);
+ }
+ if (!Objects.isNull(heat.getEnv())) {
+ usedEnvFiles.add(heat.getEnv() == null ? null : heat.getEnv().getFileName());
+ }
+ }
+ structure.setModules(modules);
+
+ }
+
+ private boolean isFileModuleFile(String fileName, Set<String> modulesFileNames) {
+ return modulesFileNames.contains(fileName);
+ }
+
+ private boolean isFileBaseFile(String fileName) {
+ return manifestCreator.isFileBaseFile(fileName);
+ }
+
+ private void handleSingleHeat(FilesDataStructure structure, List<Module> modules,
+ HeatStructureTree heat,
+ Map<String, List<ErrorMessage>> uploadErrors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ Module module = new Module();
+ module.setYaml(heat.getFileName());
+ module.setIsBase(heat.getBase());
+ addNestedToFileDataStructure(heat, structure);
+ Set<HeatStructureTree> volumeSet = heat.getVolume();
+ int inx = 0;
+ if (Objects.nonNull(volumeSet)) {
+ handleVolumes(module, volumeSet, structure, inx, uploadErrors);
+ }
+ handleEnv(module, heat, false, structure);
+ modules.add(module);
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void handleVolumes(Module module, Set<HeatStructureTree> volumeSet,
+ FilesDataStructure structure, int inx,
+ Map<String, List<ErrorMessage>> uploadErrors) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ for (HeatStructureTree volume : volumeSet) {
+ if (inx++ > 0) {
+ ErrorsUtil.addStructureErrorToErrorMap(SdcCommon.UPLOAD_FILE,
+ new ErrorMessage(ErrorLevel.WARNING,
+ Messages.MORE_THEN_ONE_VOL_FOR_HEAT.getErrorMessage()), uploadErrors);
+ break;
+ }
+ handleArtifactsFromTree(volume, structure);
+ module.setVol(volume.getFileName());
+ handleEnv(module, volume, true, structure);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void handleEnv(Module module, HeatStructureTree tree, boolean isVolEnv,
+ FilesDataStructure structure) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null);
+
+ if (Objects.nonNull(tree.getEnv())) {
+ if (isVolEnv) {
+ module.setVolEnv(tree.getEnv().getFileName());
+ } else {
+ module.setEnv(tree.getEnv().getFileName());
+ }
+ handleArtifactsFromTree(tree.getEnv(), structure);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null);
+ }
+
+ private void addNestedToFileDataStructure(HeatStructureTree heat, FilesDataStructure structure) {
+ Set<HeatStructureTree> nestedSet = heat.getNested();
+ if (Objects.isNull(nestedSet)) {
+ return;
+ }
+ for (HeatStructureTree nested : nestedSet) {
+ if (structure.getNested().contains(nested.getFileName())) {
+ continue;
+ }
+ structure.getNested().add(nested.getFileName());
+ if (CollectionUtils.isNotEmpty(nested.getArtifacts())) {
+ handleArtifactsFromTree(nested, structure);
+ }
+ addNestedToFileDataStructure(nested, structure);
+ }
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/ManifestCreatorNamingConventionImpl.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/ManifestCreatorNamingConventionImpl.java
new file mode 100644
index 0000000000..eed575ff02
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/impl/filedatastructuremodule/ManifestCreatorNamingConventionImpl.java
@@ -0,0 +1,309 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.impl.filedatastructuremodule;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.sdc.heat.datatypes.manifest.FileData;
+import org.openecomp.sdc.heat.datatypes.manifest.ManifestContent;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.services.HeatFileAnalyzer;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.ManifestCreator;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.AnalyzedZipHeatFiles;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.Constants;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.Module;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
+import java.util.regex.Pattern;
+
+public class ManifestCreatorNamingConventionImpl implements ManifestCreator {
+ protected static final Logger logger =
+ LoggerFactory.getLogger(ManifestCreatorNamingConventionImpl.class);
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+
+ @Override
+ public Optional<ManifestContent> createManifest(
+ VspDetails vspDetails, FilesDataStructure filesDataStructure) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (Objects.isNull(filesDataStructure)) {
+ return Optional.empty();
+ }
+
+ List<FileData> fileDataList = new ArrayList<>();
+ addModulesToManifestFileDataList(filesDataStructure, fileDataList);
+ addNestedToManifest(filesDataStructure, fileDataList);
+ addArtifactsToManifestFileDataList(filesDataStructure, fileDataList);
+ ManifestContent manifestContent = createManifest(vspDetails, fileDataList);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(manifestContent);
+ }
+
+ private void addNestedToManifest(
+ FilesDataStructure filesDataStructure, List<FileData> fileDataList) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (CollectionUtils.isNotEmpty(filesDataStructure.getNested())) {
+ for (String nested : filesDataStructure.getNested()) {
+ fileDataList.add(createBaseFileData(FileData.Type.HEAT, nested));
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ @Override
+ public Optional<ManifestContent> createManifest(VspDetails vspDetails,
+ FileContentHandler fileContentHandler,
+ AnalyzedZipHeatFiles analyzedZipHeatFiles) {
+ logger.info("Trying to generate manifest");
+ if (Objects.isNull(fileContentHandler)
+ || CollectionUtils.isEmpty(fileContentHandler.getFileList())) {
+ logger.info("fileContentHandler or filesList is empty. ManifestContent will not be created");
+ return Optional.empty();
+ }
+
+ Map<String, byte[]> files = fileContentHandler.getFiles();
+
+ List<FileData> fileDataList =
+ createFileDataListFromZipFiles(fileContentHandler, files,
+ analyzedZipHeatFiles.getFilesNotEligbleForModules());
+ ManifestContent manifestContent = createManifest(vspDetails, fileDataList);
+
+ return Optional.of(manifestContent);
+ }
+
+ private ManifestContent createManifest(VspDetails vspDetails, List<FileData> fileDataList) {
+ ManifestContent manifestContent = new ManifestContent();
+ manifestContent.setName(vspDetails.getName());
+ manifestContent.setDescription(vspDetails.getDescription());
+ manifestContent
+ .setVersion(vspDetails.getVersion() == null ? null : vspDetails.getVersion().toString());
+ // vsp version, need to check in confluence
+ manifestContent.setData(fileDataList);
+ return manifestContent;
+ }
+
+ private List<FileData> createFileDataListFromZipFiles(FileContentHandler fileContentHandler,
+ Map<String, byte[]> files,
+ Collection<String> filesNotEligibleForModules) {
+
+ Set<String> processedFiles = new HashSet<>();
+ List<FileData> fileDataList = new ArrayList<>();
+ for (String fileName : files.keySet()) {
+ if (processedFiles.contains(fileName)) {
+ continue;
+ }
+ if (isFileBaseFile(fileName)) {
+ fileDataList
+ .add(createModuleFileData(
+ fileName, true, processedFiles, fileContentHandler.getFileList(), fileDataList));
+ } else if (isFileModuleFile(fileName, filesNotEligibleForModules)) {
+ fileDataList
+ .add(createModuleFileData(
+ fileName, false, processedFiles, fileContentHandler.getFileList(), fileDataList));
+ } else {
+ if (HeatFileAnalyzer.isYamlFile(fileName)) {
+ fileDataList.add(createBasicFileData(fileName, FileData.Type.HEAT, null));
+ } else if (HeatFileAnalyzer.isEnvFile(fileName)) {
+ fileDataList.add(createBasicFileData(fileName, FileData.Type.HEAT_ENV, null));
+ } else {
+ fileDataList.add(createBasicFileData(fileName, FileData.Type.OTHER, null));
+ }
+ }
+ }
+ return fileDataList;
+ }
+
+ private boolean doesHeatTemplateVersionExist(byte[] value) {
+ return false;
+ }
+
+ private boolean isFileModuleFile(String fileName, Collection<String> filesCannotBeModule) {
+ return !filesCannotBeModule.contains(fileName);
+ }
+
+ @Override
+ public boolean isFileBaseFile(String fileName) {
+ return Pattern.matches(Constants.BASE_HEAT_REGEX, fileName) && !isVolFile(fileName);
+ }
+
+
+ private void addArtifactsToManifestFileDataList(
+ FilesDataStructure filesDataStructure, List<FileData> fileDataList) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Collection<String> forArtifacts = CollectionUtils
+ .union(filesDataStructure.getArtifacts(), filesDataStructure.getUnassigned());
+ if (CollectionUtils.isNotEmpty(forArtifacts)) {
+ for (String artifact : forArtifacts) {
+ fileDataList.add(createBaseFileData(FileData.Type.OTHER, artifact));
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void addModulesToManifestFileDataList(
+ FilesDataStructure filesDataStructure, List<FileData> fileDataList) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (CollectionUtils.isNotEmpty(filesDataStructure.getModules())) {
+ for (Module module : filesDataStructure.getModules()) {
+ FileData fileData = createBaseFileData(FileData.Type.HEAT, module.getYaml());
+ fileData.setBase(module.getIsBase());
+ addEnv(module, fileData);
+ addVolume(module, fileData);
+ fileDataList.add(fileData);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void addEnv(Module module, FileData fileData) {
+ if (Objects.nonNull(module.getEnv())) {
+ FileData env = createBaseFileData(FileData.Type.HEAT_ENV, module.getEnv());
+ fileData.addFileData(env);
+ }
+ }
+
+ private void addVolume(Module module, FileData fileData) {
+ String volModule = module.getVol();
+ if (Objects.nonNull(volModule)) {
+ FileData vol = createBaseFileData(FileData.Type.HEAT_VOL, volModule);
+ if (Objects.nonNull(module.getVolEnv())) {
+ vol.addFileData(createBaseFileData(FileData.Type.HEAT_ENV, module.getVolEnv()));
+ }
+ fileData.addFileData(vol);
+ }
+ }
+
+ private FileData createBaseFileData(FileData.Type heat, String yaml) {
+ FileData fileData = new FileData();
+ fileData.setType(heat);
+ fileData.setFile(yaml);
+ return fileData;
+ }
+
+ private FileData createModuleFileData(
+ String moduleFileName, boolean isBase, Set<String> processedFiles,
+ Set<String> fileNames, List<FileData> fileDataList) {
+ FileData moduleFileData = createBasicFileData(moduleFileName, FileData.Type.HEAT, isBase);
+ Optional<String> volFile = fetchRelatedVolume(moduleFileName, fileNames);
+ volFile.ifPresent(vol -> {
+ markFileAsProcessed(vol, processedFiles);
+ removeFromFileDataListIfAlreadyProcessed(fileDataList, vol);
+ FileData volFileData = createBasicFileData(vol, FileData.Type.HEAT_VOL, null);
+ Optional<String> envFile = fetchRelatedEnv(vol, fileNames);
+ envFile.ifPresent(env -> {
+ markFileAsProcessed(env, processedFiles);
+ removeFromFileDataListIfAlreadyProcessed(fileDataList, env);
+ FileData envFileData = createBasicFileData(env, FileData.Type.HEAT_ENV, null);
+ volFileData.addFileData(envFileData);
+ });
+ moduleFileData.addFileData(volFileData);
+ });
+ Optional<String> envFile = fetchRelatedEnv(moduleFileName, fileNames);
+ envFile.ifPresent(env -> {
+ markFileAsProcessed(env, processedFiles);
+ FileData envFileData = createBasicFileData(env, FileData.Type.HEAT_ENV, null);
+ moduleFileData.addFileData(envFileData);
+ });
+ return moduleFileData;
+ }
+
+ private void removeFromFileDataListIfAlreadyProcessed(List<FileData> fileDataList, String vol) {
+ fileDataList.removeIf(fileData -> fileData.getFile().equals(vol));
+ }
+
+ private FileData createBasicFileData(String fileName, FileData.Type type, Boolean isBase) {
+ FileData fileData = new FileData();
+ if (isBase != null) {
+ fileData.setBase(isBase);
+ }
+ fileData.setType(type);
+ fileData.setFile(fileName);
+ return fileData;
+ }
+
+ private Optional<String> fetchRelatedEnv(String fileName, Set<String> fileNames) {
+ String envFileName
+ = fileName.substring(0, fileName.lastIndexOf(".")) + Constants.ENV_FILE_EXTENSION;
+ return fileNames.contains(envFileName) ? Optional.of(envFileName) : Optional.empty();
+ }
+
+ private Optional<String> fetchRelatedVolume(String fileName, Set<String> fileNames) {
+
+ String volFile1stExt =
+ extractVolFileName(fileName, ".yaml");
+ String volFile2ndExt =
+ extractVolFileName(fileName, ".yml");
+
+ if (fileNames.contains(volFile1stExt)) {
+ return Optional.of(volFile1stExt);
+ }
+ if (fileNames.contains(volFile2ndExt)) {
+ return Optional.of(volFile2ndExt);
+ }
+ return Optional.empty();
+ }
+
+ private String extractVolFileName(String fileName, String fileExt) {
+ return fileName.substring(
+ 0, fileName.lastIndexOf("."))
+ + Constants.VOL_FILE_NAME_SUFFIX + fileExt;
+ }
+
+
+ private boolean isVolFile(String fileName) {
+ return fileName
+ .endsWith(
+ Constants.VOL_FILE_NAME_SUFFIX + ".yaml")
+ || fileName.endsWith(Constants.VOL_FILE_NAME_SUFFIX + ".yml");
+ }
+
+
+ private void markFileAsProcessed(String fileName, Set<String> processedFiles) {
+ processedFiles.add(fileName);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateServiceValidator.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateServiceValidator.java
new file mode 100644
index 0000000000..05c95a7596
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/main/java/org/openecomp/sdc/vendorsoftwareproduct/services/utils/CandidateServiceValidator.java
@@ -0,0 +1,97 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.services.utils;
+
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.lang.StringUtils;
+import org.openecomp.core.validation.errors.ErrorMessagesFormatBuilder;
+import org.openecomp.sdc.common.errors.Messages;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.datatypes.error.ErrorMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.FilesDataStructure;
+import org.openecomp.sdc.vendorsoftwareproduct.types.candidateheat.Module;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
+
+/**
+ * Created by Talio on 12/6/2016.
+ */
+public class CandidateServiceValidator {
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ public Optional<List<ErrorMessage>> validateFileDataStructure(
+ FilesDataStructure filesDataStructure) {
+ if (Objects.isNull(filesDataStructure)) {
+ return Optional.empty();
+ }
+ if (validateAtLeaseOneModuleExist(filesDataStructure)) {
+ return Optional.of(Arrays.asList(new ErrorMessage(ErrorLevel.ERROR, Messages
+ .NO_MODULES_IN_MANIFEST.getErrorMessage())));
+ }
+
+ List<ErrorMessage> errors = new ArrayList<>();
+ for (Module module : filesDataStructure.getModules()) {
+ validateModuleHaveYaml(errors, module);
+ validateNoVolEnvWithoutVol(errors, module);
+ }
+ return Optional.of(errors);
+ }
+
+
+ private boolean validateAtLeaseOneModuleExist(FilesDataStructure filesDataStructure) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return CollectionUtils.isEmpty(filesDataStructure.getModules());
+ }
+
+ private void validateNoVolEnvWithoutVol(List<ErrorMessage> errors, Module module) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (StringUtils.isEmpty(module.getVol()) && StringUtils.isNotEmpty(module.getVolEnv())) {
+ errors.add(new ErrorMessage(ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MODULE_IN_MANIFEST_VOL_ENV_NO_VOL.getErrorMessage(),
+ module.getName())));
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ private void validateModuleHaveYaml(List<ErrorMessage> errors, Module module) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (StringUtils.isEmpty(module.getYaml())) {
+ errors.add(new ErrorMessage(ErrorLevel.ERROR, ErrorMessagesFormatBuilder
+ .getErrorWithParameters(Messages.MODULE_IN_MANIFEST_NO_YAML.getErrorMessage(),
+ module.getName())));
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ServiceModelDaoFactoryTest.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ServiceModelDaoFactoryTest.java
index 2c8ffb1ded..5cfe33ba90 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ServiceModelDaoFactoryTest.java
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/dao/ServiceModelDaoFactoryTest.java
@@ -1,18 +1,56 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.vendorsoftwareproduct.dao;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.Element;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.UserInfo;
+import com.amdocs.zusammen.datatypes.item.ElementContext;
+import com.amdocs.zusammen.datatypes.item.Info;
+import com.amdocs.zusammen.datatypes.item.Item;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.datatypes.item.ItemVersionData;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.utilities.file.FileContentHandler;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.sdc.model.impl.zusammen.ServiceModelDaoZusammenImpl;
+import org.openecomp.sdc.model.impl.zusammen.StructureElement;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-
import org.openecomp.sdc.versioning.dao.types.Version;
-import org.openecomp.core.model.dao.ServiceModelDaoFactory;
-import org.openecomp.core.model.types.ServiceArtifact;
-import org.openecomp.core.utilities.CommonMethods;
-import org.openecomp.core.utilities.file.FileContentHandler;
import org.testng.Assert;
import org.testng.annotations.Test;
+import java.io.ByteArrayInputStream;
+import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
+import java.util.Optional;
public class ServiceModelDaoFactoryTest {
@@ -22,19 +60,64 @@ public class ServiceModelDaoFactoryTest {
private static String artifact001;
-// @Test
+ @Test
public void storeServiceModelTest() {
+ ItemVersion itemVersionmock = new ItemVersion();
+ itemVersionmock.setId(new Id());
+ ZusammenAdaptorMock zusammenAdaptor = new ZusammenAdaptorMock();
+ ServiceModelDaoZusammenImpl serviceModelDaoZusammen = new ServiceModelDaoZusammenImpl(
+ zusammenAdaptor);
+
+ zusammenAdaptor.setItemVersion(itemVersionmock);
ToscaServiceModel model = getToscaServiceModel();
- ServiceModelDaoFactory.getInstance().createInterface().storeServiceModel(vspId, version, model);
+ serviceModelDaoZusammen.storeServiceModel(vspId, version, model);
+ }
+
+ private SessionContext getSessionContext() {
+ SessionContext context = new SessionContext();
+ context.setUser(new UserInfo("USER_A"));
+ context.setTenant("asdc");
+ return context;
}
-// @Test(dependsOnMethods = "storeServiceModelTest")
+ @Test
public void getServiceModelTest() {
+
+ ItemVersion itemVersionmock = new ItemVersion();
+ itemVersionmock.setId(new Id());
+
+ ElementInfo elementInfo = new ElementInfo();
+ Info info = new Info();
+ info.addProperty("base","baseElement");
+ elementInfo.setInfo(info);
+
+ ElementInfo artifactElementInfo = new ElementInfo();
+ artifactElementInfo.setInfo(info);
+ ElementInfo templateElementInfo = new ElementInfo();
+ artifactElementInfo.setInfo(info);
+
+ ZusammenElement element = new ZusammenElement();
+ ServiceTemplate serviceTemplate = new ServiceTemplate();
+ YamlUtil yamlUtil = new YamlUtil();
+ element.setData(new ByteArrayInputStream(yamlUtil.objectToYaml(serviceTemplate).getBytes()));
+ info = new Info();
+ info.setName("dataFileName");
+ element.setInfo(info);
+ ZusammenAdaptorMock zusammenAdaptor = new ZusammenAdaptorMock();
+ ServiceModelDaoZusammenImpl serviceModelDaoZusammen = new ServiceModelDaoZusammenImpl(
+ zusammenAdaptor);
+
+ zusammenAdaptor.setItemVersion(itemVersionmock);
+ zusammenAdaptor.addElementInfo("null"+StructureElement.ServiceModel.name(),elementInfo);
+ zusammenAdaptor.addElementInfo("null"+StructureElement.Artifacts.name(),artifactElementInfo);
+ zusammenAdaptor.addElementInfo("null"+StructureElement.Templates.name(),templateElementInfo);
+ zusammenAdaptor.addElement(element);
+
Object model =
- ServiceModelDaoFactory.getInstance().createInterface().getServiceModel(vspId, version);
+ serviceModelDaoZusammen.getServiceModel(vspId, version);
Assert.assertNotNull(model);
Assert.assertTrue(model instanceof ToscaServiceModel);
if (model instanceof ToscaServiceModel) {
@@ -44,16 +127,6 @@ public class ServiceModelDaoFactoryTest {
}
}
-// @Test(dependsOnMethods = "getServiceModelTest")
- public void getServiceModelInfoTest() {
- Object info = ServiceModelDaoFactory.getInstance().createInterface()
- .getServiceModelInfo(vspId, version, artifact001);
- Assert.assertNotNull(info);
- Assert.assertTrue(info instanceof ServiceArtifact);
- if (info instanceof ServiceArtifact) {
- Assert.assertEquals(((ServiceArtifact) info).getName(), artifact001);
- }
- }
private ToscaServiceModel getToscaServiceModel() {
@@ -94,4 +167,119 @@ public class ServiceModelDaoFactoryTest {
serviceTemplate.setDescription(CommonMethods.nextUuId());
return serviceTemplate;
}
+
+ private class ZusammenAdaptorMock implements ZusammenAdaptor
+ {
+
+ private ItemVersion itemVersion;
+ private Map<String,ElementInfo> elementInfoMap = new HashMap();
+ private Collection<Element> elements = new ArrayList<>();
+
+ public void setItemVersion(ItemVersion itemVersion){
+ this.itemVersion = itemVersion;
+ }
+
+ public void addElementInfo(String key,ElementInfo elementInfo){
+ elementInfoMap.put(key,elementInfo);
+ }
+ public void addElement(Element element){
+ elements.add(element);
+ }
+ @Override
+ public Optional<ItemVersion> getFirstVersion(SessionContext context, Id itemId) {
+
+ return Optional.ofNullable(itemVersion);
+ }
+
+ @Override
+ public Optional<Element> getElement(SessionContext context, ElementContext elementContext,
+ String elementId) {
+ return null;
+ }
+
+ @Override
+ public Optional<Element> getElementByName(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId, String elementName) {
+ return null;
+ }
+
+ @Override
+ public Collection<ElementInfo> listElements(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId) {
+ return null;
+ }
+
+ @Override
+ public Collection<Element> listElementData(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId) {
+ return elements;
+ }
+
+ @Override
+ public Collection<ElementInfo> listElementsByName(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId, String elementName) {
+ return null;
+ }
+
+ @Override
+ public Optional<ElementInfo> getElementInfoByName(SessionContext context,
+ ElementContext elementContext,
+ Id parentElementId, String elementName) {
+ return Optional.ofNullable(elementInfoMap.get(parentElementId+elementName));
+ }
+
+ @Override
+ public Optional<Element> saveElement(SessionContext context, ElementContext elementContext,
+ ZusammenElement element, String message) {
+ return null;
+ }
+
+ @Override
+ public Id createItem(SessionContext context, Info info) {
+ return null;
+ }
+
+ @Override
+ public void updateItem(SessionContext context, Id itemId, Info info) {
+
+ }
+
+ @Override
+ public Id createVersion(SessionContext context, Id itemId, Id baseVersionId,
+ ItemVersionData itemVersionData) {
+ return null;
+ }
+
+ @Override
+ public void updateVersion(SessionContext context, Id itemId, Id versionId,
+ ItemVersionData itemVersionData) {
+
+ }
+
+ @Override
+ public void tagVersion(SessionContext context, Id itemId, Id versionId, Tag tag) {
+
+ }
+
+ @Override
+ public void resetVersionHistory(SessionContext context, Id itemId, Id versionId, String changeRef) {
+
+ }
+
+ @Override
+ public Optional<ElementInfo> getElementInfo(SessionContext context,
+ ElementContext elementContext,
+ Id elementId) {
+ return null;
+ }
+
+ @Override
+ public Collection<Item> listItems(SessionContext context) {
+ return null;
+ }
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImplTest.java b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImplTest.java
new file mode 100644
index 0000000000..6652c271ac
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/java/org/openecomp/sdc/vendorsoftwareproduct/informationArtifact/impl/TxtInformationArtifactGeneratorImplTest.java
@@ -0,0 +1,252 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.impl;
+
+
+import org.junit.Assert;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.InformationArtifactData;
+import org.openecomp.sdc.vendorsoftwareproduct.questionnaire.QuestionnaireDataService;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.ComponentQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute.Compute;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute.GuestOS;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.compute.NumOfVMs;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general.Hypervisor;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general.Recovery;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.network.NetworkCapacity;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.storage.Backup;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.storage.Storage;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.IpConfiguration;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.Network;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.NicQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.nic.Protocols;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.VspQuestionnaire;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general.Availability;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general.General;
+import org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.vsp.general.StorageDataReplication;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import javax.annotation.processing.SupportedAnnotationTypes;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.mockito.Matchers.anyObject;
+import static org.mockito.Matchers.anyString;
+import static org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.impl.TxtInformationArtifactConstants.HEADER;
+import static org.openecomp.sdc.vendorsoftwareproduct.informationArtifact.impl.TxtInformationArtifactConstants.VFC_COMPUTE_CPU_OVER_SUBSCRIPTION;
+
+
+/**
+ * @author KATYR
+ * @since December 07, 2016
+ */
+
+public class TxtInformationArtifactGeneratorImplTest {
+
+ private static final String NETWORK_DESC = "\"network desc\"";
+ private static final String HYPERVIZOR_NAME = "\"hyper hyper hypervizor\"";
+ private static final String TOOLS ="all tools possible" ;
+ @Mock
+ QuestionnaireDataService questionnaireDataServiceMock;
+ @InjectMocks
+ TxtInformationArtifactGeneratorImpl informationArtifactGenerator;
+
+ @BeforeMethod(alwaysRun = true)
+ public void injectDoubles() {
+ MockitoAnnotations.initMocks(this);
+
+// InformationArtifactData returnedQuestionnaire = new InformationArtifactData();
+// Mockito.when(questionnaireDataServiceMock.generateQuestionnaireDataForInformationArtifact
+// (anyString(), anyObject()))
+// .thenReturn(returnedQuestionnaire);
+//
+
+ }
+
+ @Test
+ public void testRoundVersion(){
+ Version version = new Version(2,1);
+ String rounded = TxtInformationArtifactGeneratorImpl.roundVersionAsNeeded(version);
+ Assert.assertEquals("3.0",rounded);
+
+ version = Version.valueOf("2.0");
+ rounded = TxtInformationArtifactGeneratorImpl.roundVersionAsNeeded(version);
+ Assert.assertEquals("2.0",rounded);
+
+ }
+
+ @Test
+ public void testArtifactCreation() throws IOException {
+ InformationArtifactData informationArtifactData = initArtifactData();
+ Mockito.when(questionnaireDataServiceMock.generateQuestionnaireDataForInformationArtifact
+ (anyString(), anyObject()))
+ .thenReturn(informationArtifactData);
+
+
+ String result = informationArtifactGenerator.generate("vsp", new Version(0, 1));
+ System.out.println("result = \n" + result);
+
+ Assert.assertTrue(result.contains(HYPERVIZOR_NAME));
+ Assert.assertTrue(result.contains(HEADER));
+ Assert.assertTrue(result.contains(VFC_COMPUTE_CPU_OVER_SUBSCRIPTION));
+ Assert.assertTrue(result.contains(TOOLS));
+ Assert.assertTrue(result.contains(TxtInformationArtifactConstants.LICENSE_AGREEMENT_NAME));
+ Assert.assertTrue(result.contains(TxtInformationArtifactConstants.LIST_OF_FEATURE_GROUPS));
+
+ }
+
+ private InformationArtifactData initArtifactData() {
+ InformationArtifactData informationArtifactData = new InformationArtifactData();
+
+ informationArtifactData.setVspDetails(initVspDetails());
+
+ informationArtifactData.setVspQuestionnaire(initVspQuestionnaire());
+ informationArtifactData.setComponentQuestionnaires(initComponentQuestionnaires());
+ informationArtifactData.setNicQuestionnaires(initNicQuestionnaires());
+ return informationArtifactData;
+ }
+
+ private List<NicQuestionnaire> initNicQuestionnaires() {
+ List<NicQuestionnaire> nicQuestionnaires = new ArrayList<>();
+ NicQuestionnaire nic1 = new NicQuestionnaire();
+ NicQuestionnaire nic2 = new NicQuestionnaire();
+ nic1 = initNicQuestionnaire();
+ nic2 = initNicQuestionnaire();
+ nicQuestionnaires.add(nic1);
+ nicQuestionnaires.add(nic2);
+ return nicQuestionnaires;
+
+ }
+
+ private NicQuestionnaire initNicQuestionnaire() {
+ NicQuestionnaire nic = new NicQuestionnaire();
+ Network network = new Network();
+ network.setNetworkDescription(NETWORK_DESC);
+ nic.setNetwork(network);
+
+ IpConfiguration ipconfig = new IpConfiguration();
+ ipconfig.setIpv4Required(true);
+ ipconfig.setIpv6Required(false);
+
+ nic.setIpConfiguration(ipconfig);
+
+ Protocols protocols = new Protocols();
+ List<String> protocolsList = new ArrayList<>();
+ protocolsList.add("45");
+ protocolsList.add("55");
+ protocolsList.add("HTTP");
+ protocols.setProtocols(protocolsList);
+
+ nic.setProtocols(protocols);
+
+ return nic;
+ }
+
+ private List<ComponentQuestionnaire> initComponentQuestionnaires() {
+ List<ComponentQuestionnaire> componentQuestionnaires = new ArrayList<>();
+ ComponentQuestionnaire componentQuestionnaire1 = new ComponentQuestionnaire();
+ ComponentQuestionnaire componentQuestionnaire2 = new ComponentQuestionnaire();
+
+ componentQuestionnaire1 = initComponent();
+ componentQuestionnaire2 = initComponent();
+
+ componentQuestionnaires.add(componentQuestionnaire1);
+ componentQuestionnaires.add(componentQuestionnaire2);
+
+ return componentQuestionnaires;
+ }
+
+ private ComponentQuestionnaire initComponent() {
+ ComponentQuestionnaire componentQuestionnaire = new ComponentQuestionnaire();
+ org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general.General general =
+ new org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.general.General();
+ Hypervisor hypervisor = new Hypervisor();
+ hypervisor.setDrivers("driving drivers");
+ hypervisor.setHypervisor(HYPERVIZOR_NAME);
+ general.setHypervisor(hypervisor);
+ Recovery recovery = new Recovery();
+ recovery.setPointObjective(22);
+ recovery.setTimeObjective(33);
+ general.setRecovery(recovery);
+ componentQuestionnaire.setGeneral(
+ general);
+ org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.network.Network net =
+ new org.openecomp.sdc.vendorsoftwareproduct.types.questionnaire.component.network.Network();
+ net.setNetworkCapacity(new NetworkCapacity());
+ componentQuestionnaire.setNetwork(net);
+ Compute compute = new Compute();
+ GuestOS guestOS = new GuestOS();
+ guestOS.setBitSize(32);
+ guestOS.setTools(TOOLS);
+ guestOS.setName("Ubuntu");
+ compute.setGuestOS(guestOS);
+ NumOfVMs numOfVMs = new NumOfVMs();
+ numOfVMs.setMaximum(256);
+ numOfVMs.setMinimum(2);
+ compute.setNumOfVMs(numOfVMs);
+ componentQuestionnaire.setCompute(compute);
+
+ return componentQuestionnaire;
+ }
+
+ private VspQuestionnaire initVspQuestionnaire() {
+ VspQuestionnaire vspQuestionnaire = new VspQuestionnaire();
+ Availability availability = new Availability();
+ availability.setUseAvailabilityZonesForHighAvailability(true);
+ General general = new General();
+ general.setAvailability(availability);
+
+ StorageDataReplication storageDataReplication = new StorageDataReplication();
+ storageDataReplication.setStorageReplicationAcrossRegion(true);
+ storageDataReplication.setStorageReplicationDestination("in a galaxy far, far away");
+ storageDataReplication.setStorageReplicationFrequency(6);
+ storageDataReplication.setStorageReplicationSize(128);
+ storageDataReplication.setStorageReplicationSource("here below");
+ general.setStorageDataReplication(storageDataReplication);
+ vspQuestionnaire.setGeneral(general);
+ return vspQuestionnaire;
+ }
+
+ private VspDetails initVspDetails() {
+ VspDetails vspDetails = new VspDetails();
+ vspDetails.setCategory("vspCategory");
+ vspDetails.setDescription("described");
+ vspDetails.setName("vsp named Alice");
+ vspDetails.setVendorName("Fortigate");
+ vspDetails.setVersion(new Version(0, 79));
+ vspDetails.setVlmVersion(new Version(0, 1));
+ vspDetails.setLicenseAgreement("the usual license agreement");
+ List<String> featureGroups = new ArrayList<>();
+ featureGroups.add("first feature group");
+ featureGroups.add("one too many feature group");
+ featureGroups.add("the very last feature group");
+ vspDetails.setFeatureGroups(featureGroups);
+ return vspDetails;
+ }
+
+}
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/resources/logback.xml b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/resources/logback.xml
new file mode 100644
index 0000000000..03ce9d1243
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/openecomp-sdc-vendor-software-product-core/src/test/resources/logback.xml
@@ -0,0 +1,13 @@
+<!-- only one line, shut up logback ! -->
+<configuration>
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <encoder>
+ <Pattern>
+ %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
+ </Pattern>
+ </encoder>
+ </appender>
+ <root level="off">
+ <appender-ref ref="STDOUT" />
+ </root>
+</configuration> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml
index 9792a22e0c..9a9abeca29 100644
--- a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml
@@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <artifactId>openecomp-sdc-vendor-software-product-lib</artifactId>
+ <packaging>pom</packaging>
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <artifactId>openecomp-sdc-vendor-software-product-lib</artifactId>
- <packaging>pom</packaging>
-
<modules>
<module>openecomp-sdc-vendor-software-product-api</module>
<module>openecomp-sdc-vendor-software-product-core</module>
</modules>
-
-</project> \ No newline at end of file
+
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..a1ee8d3985
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-vendor-software-product-lib/pom.xml.versionsBackup
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>openecomp-sdc-vendor-software-product-lib</artifactId>
+ <packaging>pom</packaging>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+ <modules>
+ <module>openecomp-sdc-vendor-software-product-api</module>
+ <module>openecomp-sdc-vendor-software-product-core</module>
+ </modules>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml
index 130cc69b87..978adf4eb5 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml
@@ -1,7 +1,10 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-versioning-api</name>
+ <artifactId>openecomp-sdc-versioning-api</artifactId>
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,22 +12,19 @@
<relativePath>../..</relativePath>
</parent>
- <artifactId>openecomp-sdc-versioning-api</artifactId>
- <name>openecomp-sdc-versioning-api</name>
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-facade-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-nosqldb-core</artifactId>
<version>${project.version}</version>
</dependency>
@@ -41,13 +41,13 @@
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>javax.el</artifactId>
- <version>2.2.4</version>
+ <version>${javax.el.version}</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
+ <version>${mockito.all.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
@@ -65,7 +65,12 @@
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
- <version>RELEASE</version>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml.versionsBackup
new file mode 100644
index 0000000000..3c9a34a189
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/pom.xml.versionsBackup
@@ -0,0 +1,75 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-versioning-api</name>
+ <artifactId>openecomp-sdc-versioning-api</artifactId>
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-facade-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-nosqldb-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-validator</artifactId>
+ <version>${hibernate.validator.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.el</groupId>
+ <artifactId>javax.el-api</artifactId>
+ <version>${javax.el-api.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.glassfish.web</groupId>
+ <artifactId>javax.el</artifactId>
+ <version>2.2.4</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/VersioningUtil.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/VersioningUtil.java
index d51f8c0a2b..c4479d7105 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/VersioningUtil.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/VersioningUtil.java
@@ -23,6 +23,7 @@ package org.openecomp.sdc.versioning;
import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
import org.openecomp.sdc.versioning.dao.types.VersionableEntity;
import org.openecomp.sdc.versioning.errors.RequestedVersionInvalidErrorBuilder;
import org.openecomp.sdc.versioning.errors.VersionableSubEntityNotFoundErrorBuilder;
@@ -47,9 +48,13 @@ public class VersioningUtil {
* @param firstClassCitizenType the first class citizen type
*/
public static <T extends VersionableEntity> void validateEntityExistence(Object retrievedEntity,
- T inputEntity,
- String firstClassCitizenType) {
+ T inputEntity,
+ String firstClassCitizenType) {
if (retrievedEntity == null) {
+ //MdcDataErrorMessage.createErrorMessageAndUpdateMDC(LoggerServiceName
+ // .getServiceName(LoggerServiceName.Submit_Entity),
+ // LoggerConstants.TARGET_ENTITY_DB, LoggerTragetServiceName.SUBMIT_ENTITY,
+ // ErrorLevel.ERROR.name(), null, LoggerErrorDescription.SUBMIT_ENTITY);
throw new CoreException(new VersionableSubEntityNotFoundErrorBuilder(
inputEntity.getEntityType(),
inputEntity.getId(),
@@ -84,6 +89,10 @@ public class VersioningUtil {
}
if (nonExistingIds.size() > 0) {
+ //MdcDataErrorMessage.createErrorMessageAndUpdateMDC
+ // (LoggerServiceName.getServiceName(LoggerServiceName.Submit_Entity),
+ // LoggerConstants.TARGET_ENTITY_DB, LoggerTragetServiceName.SUBMIT_ENTITY,
+ // ErrorLevel.ERROR.name(), null, LoggerErrorDescription.SUBMIT_ENTITY);
if (nonExistingIds.size() == 1) {
throw new CoreException(new VersionableSubEntityNotFoundErrorBuilder(
entity.getEntityType(),
@@ -123,6 +132,10 @@ public class VersioningUtil {
if (nonExistingIds.size() > 0) {
if (nonExistingIds.size() == 1) {
+ //MdcDataErrorMessage.createErrorMessageAndUpdateMDC(LoggerServiceName
+ // .getServiceName(LoggerServiceName.Submit_Entity), LoggerConstants.TARGET_ENTITY_DB,
+ // LoggerTragetServiceName.ENTIT, ErrorLevel.ERROR.name(),
+ // null, LoggerErrorDescription.SUBMIT_ENTITY);
throw new CoreException(new VersionableSubEntityNotFoundErrorBuilder(
containedEntityType,
nonExistingIds.get(0),
@@ -130,6 +143,10 @@ public class VersioningUtil {
containingEntity.getId(),
containingEntity.getVersion()).build());
}
+ //MdcDataErrorMessage.createErrorMessageAndUpdateMDC(LoggerServiceName
+ // .getServiceName(LoggerServiceName.Submit_Entity),
+ // LoggerConstants.TARGET_ENTITY_DB, LoggerTragetServiceName.SUBMIT_ENTITY,
+ // ErrorLevel.ERROR.name(), null, LoggerErrorDescription.SUBMIT_ENTITY);
throw new CoreException(new VersionableSubEntityNotFoundErrorBuilder(
containedEntityType,
nonExistingIds,
@@ -168,19 +185,23 @@ public class VersioningUtil {
}
/**
- * Resolve version version.
+ * Resolve version.
*
* @param requestedVersion the requested version
* @param versionInfo the version info
* @return the version
*/
- public static Version resolveVersion(Version requestedVersion, VersionInfo versionInfo) {
+ public static Version resolveVersion(Version requestedVersion, VersionInfo versionInfo,
+ String user) {
if (requestedVersion == null) {
requestedVersion = versionInfo.getActiveVersion();
- } else {
- if (!versionInfo.getViewableVersions().contains(requestedVersion)) {
- throw new CoreException(new RequestedVersionInvalidErrorBuilder().build());
- }
+ }
+ if (versionInfo.getActiveVersion().equals(requestedVersion)
+ && user.equals(versionInfo.getLockingUser())) {
+ requestedVersion.setStatus(VersionStatus.Locked);
+ }
+ if (!versionInfo.getViewableVersions().contains(requestedVersion)) {
+ throw new CoreException(new RequestedVersionInvalidErrorBuilder().build());
}
return requestedVersion;
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionInfoDeletedDao.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionInfoDeletedDao.java
index cb6c050520..ca09cdb532 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionInfoDeletedDao.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionInfoDeletedDao.java
@@ -20,7 +20,6 @@
package org.openecomp.sdc.versioning.dao;
-
import org.openecomp.core.dao.BaseDao;
import org.openecomp.sdc.versioning.dao.types.VersionInfoDeletedEntity;
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDao.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDao.java
index 8709a983a3..9ba042ba27 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDao.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDao.java
@@ -29,6 +29,8 @@ public interface VersionableEntityDao {
Version baseVersion, Version newVersion);
void deleteVersion(VersionableEntityMetadata versionableTableMetadata, String entityId,
- Version versionToDelete);
+ Version versionToDelete, Version backToVersion);
+ void closeVersion(VersionableEntityMetadata versionableTableMetadata, String entityId,
+ Version versionToClose);
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDaoFactory.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDaoFactory.java
index be3c635be2..870a7892ac 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDaoFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/VersionableEntityDaoFactory.java
@@ -22,10 +22,13 @@ package org.openecomp.sdc.versioning.dao;
import org.openecomp.core.factory.api.AbstractComponentFactory;
import org.openecomp.core.factory.api.AbstractFactory;
+import org.openecomp.sdc.versioning.types.VersionableEntityStoreType;
public abstract class VersionableEntityDaoFactory
extends AbstractComponentFactory<VersionableEntityDao> {
public static VersionableEntityDaoFactory getInstance() {
return AbstractFactory.getInstance(VersionableEntityDaoFactory.class);
}
+
+ public abstract VersionableEntityDao createInterface(VersionableEntityStoreType storeType);
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java
index e6ac799fd4..f0f67cf064 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java
@@ -20,16 +20,18 @@
package org.openecomp.sdc.versioning.dao.types;
+import com.datastax.driver.mapping.annotations.Transient;
import com.datastax.driver.mapping.annotations.UDT;
@UDT(name = "version", keyspace = "dox")
public class Version {
- public static final String VERSION_REGEX = "^\\d+\\.\\d+$";
public static final String VERSION_STRING_VIOLATION_MSG =
"Version string must be in the format of: {integer}.{integer}";
private int major;
private int minor;
+ @Transient
+ private VersionStatus status = VersionStatus.Available;
public Version() {
}
@@ -56,7 +58,7 @@ public class Version {
}
try {
version = new Version(Integer.parseInt(versionLevels[0]), Integer.parseInt(versionLevels[1]));
- } catch (Exception exception) {
+ } catch (Exception ex) {
throw new IllegalArgumentException(VERSION_STRING_VIOLATION_MSG);
}
@@ -79,6 +81,14 @@ public class Version {
this.minor = minor;
}
+ public VersionStatus getStatus() {
+ return status;
+ }
+
+ public void setStatus(VersionStatus status) {
+ this.status = status;
+ }
+
public Version calculateNextCandidate() {
return new Version(major, minor + 1);
}
@@ -92,6 +102,13 @@ public class Version {
}
@Override
+ public int hashCode() {
+ int result = major;
+ result = 31 * result + minor;
+ return result;
+ }
+
+ @Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
@@ -101,18 +118,10 @@ public class Version {
}
Version version = (Version) obj;
-
return major == version.major && minor == version.minor;
}
@Override
- public int hashCode() {
- int result = major;
- result = 31 * result + minor;
- return result;
- }
-
- @Override
public String toString() {
return major + "." + minor;
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionStatus.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionStatus.java
index 1fb68540d6..cf980d6b51 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionStatus.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionStatus.java
@@ -24,5 +24,4 @@ public enum VersionStatus {
Available,
Locked,
Final
-
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionType.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionType.java
index 5a395c6172..befbae6631 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionType.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/VersionType.java
@@ -22,5 +22,5 @@ package org.openecomp.sdc.versioning.dao.types;
public enum VersionType {
Draft,
- Finalized
+ Finalized;
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckinOnEntityLockedByOtherErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckinOnEntityLockedByOtherErrorBuilder.java
index 829ce2691b..f0d80513f6 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckinOnEntityLockedByOtherErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckinOnEntityLockedByOtherErrorBuilder.java
@@ -20,9 +20,6 @@
package org.openecomp.sdc.versioning.errors;
-import static org.openecomp.sdc.versioning.errors.VersioningErrorCodes
- .CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER;
-
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
@@ -32,8 +29,8 @@ import org.openecomp.sdc.common.errors.ErrorCategory;
public class CheckinOnEntityLockedByOtherErrorBuilder extends BaseErrorBuilder {
private static final String CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER_MSG =
- "Can not check in versionable entity %s with id %s since it is "
- + "checked out by other user: %s.";
+ "Can not check in versionable entity %s with id %s since it is checked out by other "
+ + "user: %s.";
/**
* Instantiates a new Checkin on entity locked by other error builder.
@@ -44,7 +41,7 @@ public class CheckinOnEntityLockedByOtherErrorBuilder extends BaseErrorBuilder {
*/
public CheckinOnEntityLockedByOtherErrorBuilder(String entityType, String entityId,
String lockingUser) {
- getErrorCodeBuilder().withId(CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER);
+ getErrorCodeBuilder().withId(VersioningErrorCodes.CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER);
getErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION);
getErrorCodeBuilder().withMessage(String
.format(CHECKIN_ON_ENTITY_LOCKED_BY_OTHER_USER_MSG, entityType, entityId, lockingUser));
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckoutOnLockedEntityErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckoutOnLockedEntityErrorBuilder.java
index 60c02474ad..9784782c70 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckoutOnLockedEntityErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/CheckoutOnLockedEntityErrorBuilder.java
@@ -29,8 +29,8 @@ import org.openecomp.sdc.common.errors.ErrorCategory;
public class CheckoutOnLockedEntityErrorBuilder extends BaseErrorBuilder {
private static final String CHECKOT_ON_LOCKED_ENTITY_MSG =
- "Can not check out versionable entity %s with id %s since it is "
- + "checked out by other user: %s.";
+ "Can not check out versionable entity %s with id %s since it is checked out by "
+ + "other user: %s.";
/**
* Instantiates a new Checkout on locked entity error builder.
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EditOnUnlockedEntityErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EditOnUnlockedEntityErrorBuilder.java
index fb61cce1f0..4de5618e75 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EditOnUnlockedEntityErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EditOnUnlockedEntityErrorBuilder.java
@@ -20,6 +20,8 @@
package org.openecomp.sdc.versioning.errors;
+import static org.openecomp.sdc.versioning.errors.VersioningErrorCodes.EDIT_ON_UNLOCKED_ENTITY;
+
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
@@ -38,7 +40,7 @@ public class EditOnUnlockedEntityErrorBuilder extends BaseErrorBuilder {
* @param entityId the entity id
*/
public EditOnUnlockedEntityErrorBuilder(String entityType, String entityId) {
- getErrorCodeBuilder().withId(VersioningErrorCodes.EDIT_ON_UNLOCKED_ENTITY);
+ getErrorCodeBuilder().withId(EDIT_ON_UNLOCKED_ENTITY);
getErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION);
getErrorCodeBuilder()
.withMessage(String.format(EDIT_ON_UNLOCKED_ENTITY_MSG, entityType, entityId));
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EntityAlreadyFinalizedErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EntityAlreadyFinalizedErrorBuilder.java
index 22643ddc26..bff3e82f87 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EntityAlreadyFinalizedErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/EntityAlreadyFinalizedErrorBuilder.java
@@ -20,9 +20,6 @@
package org.openecomp.sdc.versioning.errors;
-import static org.openecomp.sdc.versioning.errors.VersioningErrorCodes
- .SUBMIT_FINALIZED_ENTITY_NOT_ALLOWED;
-
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
@@ -41,7 +38,7 @@ public class EntityAlreadyFinalizedErrorBuilder extends BaseErrorBuilder {
* @param entityId the entity id
*/
public EntityAlreadyFinalizedErrorBuilder(String entityType, String entityId) {
- getErrorCodeBuilder().withId(SUBMIT_FINALIZED_ENTITY_NOT_ALLOWED);
+ getErrorCodeBuilder().withId(VersioningErrorCodes.SUBMIT_FINALIZED_ENTITY_NOT_ALLOWED);
getErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION);
getErrorCodeBuilder()
.withMessage(String.format(SUBMIT_FINALIZED_ENTITY_NOT_ALLOWED_MSG, entityType, entityId));
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/RequestedVersionInvalidErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/RequestedVersionInvalidErrorBuilder.java
index 7d3afcb94a..d44b2c488b 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/RequestedVersionInvalidErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/RequestedVersionInvalidErrorBuilder.java
@@ -37,4 +37,12 @@ public class RequestedVersionInvalidErrorBuilder extends BaseErrorBuilder {
getErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION);
getErrorCodeBuilder().withMessage(REQUESTED_VERSION_INVALID_MSG);
}
+
+/* private static List<String> toStringList(Set<Version> versions) {
+ List<String> versionStrings = new ArrayList<>(versions.size());
+ for (Version version : versions) {
+ versionStrings.add(version.toString());
+ }
+ return versionStrings;
+ }*/
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/SubmitLockedEntityNotAllowedErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/SubmitLockedEntityNotAllowedErrorBuilder.java
index 3f4fc81b76..959c277005 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/SubmitLockedEntityNotAllowedErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/SubmitLockedEntityNotAllowedErrorBuilder.java
@@ -29,8 +29,8 @@ import org.openecomp.sdc.common.errors.ErrorCategory;
public class SubmitLockedEntityNotAllowedErrorBuilder extends BaseErrorBuilder {
private static final String SUBMIT_LOCKED_ENTITY_NOT_ALLOWED_MSG =
- "Versionable entity %s with id %s can not be submitted since it is currently "
- + "locked by user %s.";
+ "Versionable entity %s with id %s can not be submitted since it is currently"
+ + " locked by user %s.";
/**
* Instantiates a new Submit locked entity not allowed error builder.
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnEntityLockedByOtherErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnEntityLockedByOtherErrorBuilder.java
index 5e2be13d61..2b90338ae2 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnEntityLockedByOtherErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnEntityLockedByOtherErrorBuilder.java
@@ -20,9 +20,6 @@
package org.openecomp.sdc.versioning.errors;
-import static org.openecomp.sdc.versioning.errors.VersioningErrorCodes
- .UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER;
-
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
@@ -32,8 +29,8 @@ import org.openecomp.sdc.common.errors.ErrorCategory;
public class UndoCheckoutOnEntityLockedByOtherErrorBuilder extends BaseErrorBuilder {
private static final String UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER_MSG =
- "Can not undo checkout on versionable entity %s with id %s since it is checked out by "
- + "other user: %s.";
+ "Can not undo checkout on versionable entity %s with id %s since it is checked "
+ + "out by other user: %s.";
/**
* Instantiates a new Undo checkout on entity locked by other error builder.
@@ -44,7 +41,8 @@ public class UndoCheckoutOnEntityLockedByOtherErrorBuilder extends BaseErrorBuil
*/
public UndoCheckoutOnEntityLockedByOtherErrorBuilder(String entityType, String entityId,
String lockingUser) {
- getErrorCodeBuilder().withId(UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER);
+ getErrorCodeBuilder().withId(
+ VersioningErrorCodes.UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER);
getErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION);
getErrorCodeBuilder().withMessage(String
.format(UNDO_CHECKOUT_ON_ENTITY_LOCKED_BY_OTHER_USER_MSG, entityType, entityId,
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnUnlockedEntityErrorBuilder.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnUnlockedEntityErrorBuilder.java
index 36ca5b5c41..d56473f297 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnUnlockedEntityErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/errors/UndoCheckoutOnUnlockedEntityErrorBuilder.java
@@ -20,13 +20,9 @@
package org.openecomp.sdc.versioning.errors;
-import static org.openecomp.sdc.versioning.errors.VersioningErrorCodes
- .UNDO_CHECKOUT_ON_UNLOCKED_ENTITY;
-
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
-
/**
* The type Undo checkout on unlocked entity error builder.
*/
@@ -42,7 +38,7 @@ public class UndoCheckoutOnUnlockedEntityErrorBuilder extends BaseErrorBuilder {
* @param entityId the entity id
*/
public UndoCheckoutOnUnlockedEntityErrorBuilder(String entityType, String entityId) {
- getErrorCodeBuilder().withId(UNDO_CHECKOUT_ON_UNLOCKED_ENTITY);
+ getErrorCodeBuilder().withId(VersioningErrorCodes.UNDO_CHECKOUT_ON_UNLOCKED_ENTITY);
getErrorCodeBuilder().withCategory(ErrorCategory.APPLICATION);
getErrorCodeBuilder()
.withMessage(String.format(UNDO_CHECKOUT_ON_UNLOCKED_ENTITY_MSG, entityType, entityId));
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityAction.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityAction.java
index c7413858e5..ef9fef2bda 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityAction.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityAction.java
@@ -22,5 +22,5 @@ package org.openecomp.sdc.versioning.types;
public enum VersionableEntityAction {
Read,
- Write
+ Write;
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityMetadata.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityMetadata.java
index 161221abe3..8ec54c9980 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityMetadata.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityMetadata.java
@@ -25,25 +25,33 @@ import java.util.List;
public class VersionableEntityMetadata {
+ private VersionableEntityStoreType storeType;
private String name;
private String identifierName;
private String versionIdentifierName;
private List<UniqueValueMetadata> uniqueValuesMetadata = new ArrayList<>();
- /**
- * Instantiates a new Versionable entity metadata.
- *
- * @param name the name
- * @param identifierName the identifier name
- * @param versionIdentifierName the version identifier name
- */
public VersionableEntityMetadata(String name, String identifierName,
String versionIdentifierName) {
+ this(VersionableEntityStoreType.Cassandra, name, identifierName, versionIdentifierName);
+ }
+
+ public VersionableEntityMetadata(VersionableEntityStoreType storeType, String name,
+ String identifierName, String versionIdentifierName) {
+ this.storeType = storeType;
this.name = name;
this.identifierName = identifierName;
this.versionIdentifierName = versionIdentifierName;
}
+ public VersionableEntityStoreType getStoreType() {
+ return storeType;
+ }
+
+ public void setStoreType(VersionableEntityStoreType storeType) {
+ this.storeType = storeType;
+ }
+
public String getName() {
return name;
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityStoreType.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityStoreType.java
new file mode 100644
index 0000000000..72c5ecdba1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/types/VersionableEntityStoreType.java
@@ -0,0 +1,6 @@
+package org.openecomp.sdc.versioning.types;
+
+public enum VersionableEntityStoreType {
+ Cassandra,
+ Zusammen
+}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/resources/factoryConfiguration.json b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/resources/factoryConfiguration.json
index f36c2d5a43..e38ad1a8b4 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/resources/factoryConfiguration.json
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/resources/factoryConfiguration.json
@@ -1,7 +1,6 @@
{
"org.openecomp.sdc.versioning.VersioningManagerFactory": "org.openecomp.sdc.versioning.impl.VersioningManagerFactoryImpl",
- "org.openecomp.sdc.versioning.dao.VersionableEntityDaoFactory" : "org.openecomp.sdc.versioning.dao.impl.VersionableEntityDaoFactoryImpl",
+ "org.openecomp.sdc.versioning.dao.VersionableEntityDaoFactory": "org.openecomp.sdc.versioning.dao.impl.VersionableEntityDaoFactoryImpl",
"org.openecomp.sdc.versioning.dao.VersionInfoDaoFactory": "org.openecomp.sdc.versioning.dao.impl.VersionInfoDaoFactoryImpl",
"org.openecomp.sdc.versioning.dao.VersionInfoDeletedDaoFactory": "org.openecomp.sdc.versioning.dao.impl.VersionInfoDeletedDaoFactoryImpl"
-
} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml
index 89e53b20d8..fa693dc03f 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml
@@ -1,7 +1,12 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-versioning-core</name>
+ <artifactId>openecomp-sdc-versioning-core</artifactId>
+
+
<parent>
<groupId>org.openecomp.sdc</groupId>
<artifactId>openecomp-sdc-lib</artifactId>
@@ -9,10 +14,6 @@
<relativePath>../..</relativePath>
</parent>
- <name>openecomp-sdc-versioning-core</name>
- <artifactId>openecomp-sdc-versioning-core</artifactId>
-
-
<dependencies>
<dependency>
<groupId>org.openecomp.sdc</groupId>
@@ -20,23 +21,21 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>2.3.1</version>
- <scope>test</scope>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-api</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>1.14</version>
- <scope>test</scope>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-zusammen-core</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
</dependency>
-
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
- <version>1.10.19</version>
+ <version>${mockito.all.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
@@ -54,8 +53,13 @@
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
- <version>RELEASE</version>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
</dependency>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml.versionsBackup
new file mode 100644
index 0000000000..ce41a59e20
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/pom.xml.versionsBackup
@@ -0,0 +1,54 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-versioning-core</name>
+ <artifactId>openecomp-sdc-versioning-core</artifactId>
+
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <relativePath>../..</relativePath>
+ </parent>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-versioning-api</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-all</artifactId>
+ <scope>test</scope>
+ <version>1.10.19</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <scope>test</scope>
+ <version>6.8.5</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>snakeyaml</artifactId>
+ <groupId>org.yaml</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionHistoryCassandraDaoImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionHistoryCassandraDaoImpl.java
index a50a8b7beb..b364da0772 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionHistoryCassandraDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionHistoryCassandraDaoImpl.java
@@ -36,7 +36,8 @@ import org.openecomp.sdc.versioning.dao.types.VersionableEntityId;
import java.util.Collection;
public class VersionHistoryCassandraDaoImpl extends CassandraBaseDao<VersionHistoryEntity>
- implements VersionHistoryDao {
+ implements
+ VersionHistoryDao {
private static NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
private static Mapper<VersionHistoryEntity> mapper =
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDaoImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDaoImpl.java
index a45c211f94..7bc73ce3d5 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDaoImpl.java
@@ -40,8 +40,6 @@ public class VersionInfoDaoImpl extends CassandraBaseDao<VersionInfoEntity>
noSqlDb.getMappingManager().mapper(VersionInfoEntity.class);
private static VersionInfoAccessor accessor =
noSqlDb.getMappingManager().createAccessor(VersionInfoAccessor.class);
- //private static UDTMapper<VersionableEntityId> versionedEntityIdMapper = noSqlDb
- //.getMappingManager().udtMapper(VersionableEntityId.class);
@Override
protected Mapper<VersionInfoEntity> getMapper() {
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDeletedDaoImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDeletedDaoImpl.java
index 82e4edcd80..af6b20252e 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDeletedDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionInfoDeletedDaoImpl.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.versioning.dao.impl;
+
import com.datastax.driver.mapping.Mapper;
import com.datastax.driver.mapping.Result;
import com.datastax.driver.mapping.annotations.Accessor;
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoCassandraImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoCassandraImpl.java
index f02ea89e34..5673da7070 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoCassandraImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoCassandraImpl.java
@@ -24,6 +24,8 @@ import com.datastax.driver.core.ColumnDefinitions;
import com.datastax.driver.core.ResultSet;
import com.datastax.driver.core.Row;
import com.datastax.driver.mapping.UDTMapper;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.core.nosqldb.api.NoSqlDb;
import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
import org.openecomp.core.util.UniqueValueUtil;
@@ -33,8 +35,6 @@ import org.openecomp.sdc.versioning.dao.types.Version;
import org.openecomp.sdc.versioning.types.UniqueValueMetadata;
import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
-import org.slf4j.LoggerFactory;
-
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -45,8 +45,8 @@ import java.util.stream.Collectors;
class VersionableEntityDaoCassandraImpl implements VersionableEntityDao {
private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static org.slf4j.Logger Logger =
- LoggerFactory.getLogger(VersionableEntityDaoCassandraImpl.class);
+ private static Logger Logger =
+ (Logger) LoggerFactory.getLogger(VersionableEntityDaoCassandraImpl.class);
private static UDTMapper<Version> versionMapper =
noSqlDb.getMappingManager().udtMapper(Version.class);
@@ -96,6 +96,22 @@ class VersionableEntityDaoCassandraImpl implements VersionableEntityDao {
}
}
+ @Override
+ public void deleteVersion(VersionableEntityMetadata metadata, String entityId,
+ Version versionToDelete, Version backToVersion) {
+ deleteRowsUniqueValues(metadata, entityId, versionToDelete);
+
+ String deleteCql = String.format("delete from %s where %s=? and %s=?", metadata.getName(),
+ metadata.getIdentifierName(), metadata.getVersionIdentifierName());
+ noSqlDb.execute(deleteCql, entityId, versionMapper.toUDT(versionToDelete));
+ }
+
+ @Override
+ public void closeVersion(VersionableEntityMetadata versionableTableMetadata, String entityId,
+ Version versionToClose) {
+ // redundant in cassandra impl.
+ }
+
private ResultSet loadVersionRows(VersionableEntityMetadata metadata, String entityId,
Version version) {
String selectCql = String.format("select * from %s where %s=? and %s=?", metadata.getName(),
@@ -107,16 +123,6 @@ class VersionableEntityDaoCassandraImpl implements VersionableEntityDao {
return noSqlDb.execute(selectCql, entityId, versionMapper.toUDT(version));
}
- @Override
- public void deleteVersion(VersionableEntityMetadata metadata, String entityId,
- Version versionToDelete) {
- deleteRowsUniqueValues(metadata, entityId, versionToDelete);
-
- String deleteCql = String.format("delete from %s where %s=? and %s=?", metadata.getName(),
- metadata.getIdentifierName(), metadata.getVersionIdentifierName());
- noSqlDb.execute(deleteCql, entityId, versionMapper.toUDT(versionToDelete));
- }
-
private void initRowUniqueValues(List<UniqueValueMetadata> metadata,
Map<String, Object> columnNameToValue) {
for (UniqueValueMetadata uniqueMetadata : metadata) {
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoFactoryImpl.java
index 8ec0814fc9..3ab6560c71 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoFactoryImpl.java
@@ -20,14 +20,31 @@
package org.openecomp.sdc.versioning.dao.impl;
+import org.openecomp.core.zusammen.api.ZusammenAdaptorFactory;
import org.openecomp.sdc.versioning.dao.VersionableEntityDao;
import org.openecomp.sdc.versioning.dao.VersionableEntityDaoFactory;
+import org.openecomp.sdc.versioning.types.VersionableEntityStoreType;
public class VersionableEntityDaoFactoryImpl extends VersionableEntityDaoFactory {
- private static VersionableEntityDao INSTANCE = new VersionableEntityDaoCassandraImpl();
+ private static VersionableEntityDao CASSANDRA_INSTANCE = new VersionableEntityDaoCassandraImpl();
+ private static VersionableEntityDao ZUSAMMEN_INSTANCE =
+ new VersionableEntityDaoZusammenImpl(ZusammenAdaptorFactory.getInstance().createInterface());
@Override
public VersionableEntityDao createInterface() {
- return INSTANCE;
+ throw new UnsupportedOperationException
+ ("Please use createInterface api with VersionableEntityStoreType argument.");
+ }
+
+ @Override
+ public VersionableEntityDao createInterface(VersionableEntityStoreType storeType) {
+ switch (storeType) {
+ case Cassandra:
+ return CASSANDRA_INSTANCE;
+ case Zusammen:
+ return ZUSAMMEN_INSTANCE;
+ default:
+ throw new IllegalArgumentException("Unssported state store");
+ }
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoZusammenImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoZusammenImpl.java
new file mode 100644
index 0000000000..9e12d0dec9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/dao/impl/VersionableEntityDaoZusammenImpl.java
@@ -0,0 +1,55 @@
+package org.openecomp.sdc.versioning.dao.impl;
+
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.SessionContext;
+import com.amdocs.zusammen.datatypes.item.ItemVersion;
+import com.amdocs.zusammen.datatypes.itemversion.Tag;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.core.zusammen.api.ZusammenUtil;
+import org.openecomp.sdc.versioning.dao.VersionableEntityDao;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
+
+import java.util.Optional;
+
+public class VersionableEntityDaoZusammenImpl implements VersionableEntityDao {
+
+ private ZusammenAdaptor zusammenAdaptor;
+
+ public VersionableEntityDaoZusammenImpl(ZusammenAdaptor zusammenAdaptor) {
+ this.zusammenAdaptor = zusammenAdaptor;
+ }
+
+ @Override
+ public void initVersion(VersionableEntityMetadata versionableTableMetadata, String entityId,
+ Version baseVersion, Version newVersion) {
+ // redundant in zusammen impl.
+ }
+
+ @Override
+ public void deleteVersion(VersionableEntityMetadata versionableTableMetadata, String entityId,
+ Version versionToDelete, Version backToVersion) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entityId);
+ Id versionId = getItemVersionId(itemId, context);
+ zusammenAdaptor.resetVersionHistory(context, itemId, versionId, backToVersion.toString());
+ }
+
+ @Override
+ public void closeVersion(VersionableEntityMetadata versionableTableMetadata, String entityId,
+ Version versionToClose) {
+ SessionContext context = ZusammenUtil.createSessionContext();
+ Id itemId = new Id(entityId);
+ Id versionId = getItemVersionId(itemId, context);
+ zusammenAdaptor
+ .tagVersion(context, itemId, versionId, new Tag(versionToClose.toString(), null));
+ }
+
+ // TODO: 3/19/2017 move to a common util
+ private Id getItemVersionId(Id itemId, SessionContext context) {
+ Optional<ItemVersion> itemVersionOptional = zusammenAdaptor.getFirstVersion(context, itemId);
+ ItemVersion itemVersion = itemVersionOptional.orElseThrow(() ->
+ new RuntimeException(String.format("No version was found for item %s.", itemId)));
+ return itemVersion.getId();
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerFactoryImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerFactoryImpl.java
index f7065cfda4..8ab5c608bf 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerFactoryImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerFactoryImpl.java
@@ -22,9 +22,14 @@ package org.openecomp.sdc.versioning.impl;
import org.openecomp.sdc.versioning.VersioningManager;
import org.openecomp.sdc.versioning.VersioningManagerFactory;
+import org.openecomp.sdc.versioning.dao.VersionInfoDaoFactory;
+import org.openecomp.sdc.versioning.dao.VersionInfoDeletedDaoFactory;
public class VersioningManagerFactoryImpl extends VersioningManagerFactory {
- private static final VersioningManager INSTANCE = new VersioningManagerImpl();
+ private static final VersioningManager INSTANCE = new VersioningManagerImpl(
+ VersionInfoDaoFactory.getInstance().createInterface(),
+ VersionInfoDeletedDaoFactory.getInstance().createInterface()
+ );
@Override
public VersioningManager createInterface() {
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerImpl.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerImpl.java
index 6aa2a9f63c..0bbe3f81e7 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/main/java/org/openecomp/sdc/versioning/impl/VersioningManagerImpl.java
@@ -21,12 +21,16 @@
package org.openecomp.sdc.versioning.impl;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.versioning.VersioningManager;
import org.openecomp.sdc.versioning.dao.VersionInfoDao;
-import org.openecomp.sdc.versioning.dao.VersionInfoDaoFactory;
import org.openecomp.sdc.versioning.dao.VersionInfoDeletedDao;
-import org.openecomp.sdc.versioning.dao.VersionInfoDeletedDaoFactory;
-import org.openecomp.sdc.versioning.dao.VersionableEntityDao;
import org.openecomp.sdc.versioning.dao.VersionableEntityDaoFactory;
import org.openecomp.sdc.versioning.dao.types.UserCandidateVersion;
import org.openecomp.sdc.versioning.dao.types.Version;
@@ -51,6 +55,7 @@ import org.openecomp.sdc.versioning.errors.UndoCheckoutOnUnlockedEntityErrorBuil
import org.openecomp.sdc.versioning.types.VersionInfo;
import org.openecomp.sdc.versioning.types.VersionableEntityAction;
import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
+import org.slf4j.MDC;
import java.util.Collection;
import java.util.HashMap;
@@ -63,15 +68,18 @@ import java.util.stream.Collectors;
public class VersioningManagerImpl implements VersioningManager {
private static final Version INITIAL_ACTIVE_VERSION = new Version(0, 0);
- private static VersionInfoDao versionInfoDao =
- VersionInfoDaoFactory.getInstance().createInterface();
- private static VersionInfoDeletedDao versionInfoDeletedDao =
- VersionInfoDeletedDaoFactory.getInstance().createInterface();
- private static VersionableEntityDao versionableEntityDao =
- VersionableEntityDaoFactory.getInstance().createInterface();
-
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
private static Map<String, Set<VersionableEntityMetadata>> versionableEntities = new HashMap<>();
+ private VersionInfoDao versionInfoDao;
+ private VersionInfoDeletedDao versionInfoDeletedDao;
+
+ public VersioningManagerImpl(VersionInfoDao versionInfoDao,
+ VersionInfoDeletedDao versionInfoDeletedDao) {
+ this.versionInfoDao = versionInfoDao;
+ this.versionInfoDeletedDao = versionInfoDeletedDao;
+ }
+
private static VersionInfo getVersionInfo(VersionInfoEntity versionInfoEntity, String user,
VersionableEntityAction action) {
return getVersionInfo(versionInfoEntity.getEntityId(),
@@ -103,6 +111,10 @@ public class VersioningManagerImpl implements VersioningManager {
Version latestFinalVersion,
Set<Version> viewableVersions,
VersionableEntityAction action, String user) {
+
+
+ mdcDataDebugMessage.debugEntryMessage("entity Id", entityId);
+
Version activeVersion;
if (action == VersionableEntityAction.Write) {
@@ -110,11 +122,17 @@ public class VersioningManagerImpl implements VersioningManager {
if (user.equals(candidate.getUser())) {
activeVersion = candidate.getVersion();
} else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_VERSION_INFO, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(), "Can't get entity version info");
throw new CoreException(
new EditOnEntityLockedByOtherErrorBuilder(entityType, entityId, candidate.getUser())
.build());
}
} else {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_VERSION_INFO, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(), "Can't get entity version info");
throw new CoreException(new EditOnUnlockedEntityErrorBuilder(entityType, entityId).build());
}
} else {
@@ -126,17 +144,23 @@ public class VersioningManagerImpl implements VersioningManager {
}
VersionInfo versionInfo = new VersionInfo();
+ versionInfo.setStatus(status);
+ activeVersion.setStatus(status);
+ if(latestFinalVersion!= null) latestFinalVersion.setStatus(status);
+ if(viewableVersions != null) viewableVersions.forEach(version->version.setStatus(status));
versionInfo.setActiveVersion(activeVersion);
versionInfo.setLatestFinalVersion(latestFinalVersion);
versionInfo.setViewableVersions(toSortedList(viewableVersions));
versionInfo.setFinalVersions(getFinalVersions(viewableVersions));
- versionInfo.setStatus(status);
if (candidate != null) {
+ candidate.getVersion().setStatus(status);
versionInfo.setLockingUser(candidate.getUser());
if (user.equals(candidate.getUser())) {
versionInfo.getViewableVersions().add(candidate.getVersion());
}
}
+
+ mdcDataDebugMessage.debugExitMessage("entity Id", entityId);
return versionInfo;
}
@@ -150,24 +174,24 @@ public class VersioningManagerImpl implements VersioningManager {
}
private static List<Version> getFinalVersions(Set<Version> versions) {
- return versions.stream().filter(version -> version.isFinal()).collect(Collectors.toList());
+ return versions.stream().filter(Version::isFinal).collect(Collectors.toList());
}
@Override
public void register(String entityType, VersionableEntityMetadata entityMetadata) {
- Set<VersionableEntityMetadata> entitiesMetadata = versionableEntities.get(entityType);
- if (entitiesMetadata == null) {
- entitiesMetadata = new HashSet<>();
- versionableEntities.put(entityType, entitiesMetadata);
- }
+ Set<VersionableEntityMetadata> entitiesMetadata =
+ versionableEntities.computeIfAbsent(entityType, k -> new HashSet<>());
entitiesMetadata.add(entityMetadata);
}
@Override
public Version create(String entityType, String entityId, String user) {
- VersionInfoEntity versionInfoEntity =
- versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
+ VersionInfoEntity
+ versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
if (versionInfoEntity != null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't create versionable entity");
throw new CoreException(new EntityAlreadyExistErrorBuilder(entityType, entityId).build());
}
@@ -180,16 +204,63 @@ public class VersioningManagerImpl implements VersioningManager {
}
@Override
+ public void delete(String entityType, String entityId, String user) {
+ VersionInfoEntity versionInfoEntity =
+ versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
+ if (versionInfoEntity == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.DELETE_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't delete versionable entity");
+ throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
+ }
+
+ switch (versionInfoEntity.getStatus()) {
+ case Locked:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.DELETE_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(), "Can't delete versionable entity");
+ throw new CoreException(new DeleteOnLockedEntityErrorBuilder(entityType, entityId,
+ versionInfoEntity.getCandidate().getUser()).build());
+ default:
+ //do nothing
+ break;
+ }
+
+ doDelete(versionInfoEntity);
+ }
+
+ @Override
+ public void undoDelete(String entityType, String entityId, String user) {
+ VersionInfoDeletedEntity versionInfoDeletedEntity =
+ versionInfoDeletedDao.get(new VersionInfoDeletedEntity(entityType, entityId));
+ if (versionInfoDeletedEntity == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.UNDO_DELETE_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't undo delete for versionable entity");
+ throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
+ }
+
+ doUndoDelete(versionInfoDeletedEntity);
+ }
+
+ @Override
public Version checkout(String entityType, String entityId, String user) {
VersionInfoEntity versionInfoEntity =
versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
+ MDC.put(LoggerConstants.TARGET_SERVICE_NAME, LoggerTragetServiceName.CHECKOUT_ENTITY);
if (versionInfoEntity == null) {
+ MDC.put(LoggerConstants.ERROR_CATEGORY, ErrorLevel.ERROR.name());
+ MDC.put(LoggerConstants.TARGET_ENTITY, LoggerConstants.TARGET_ENTITY_DB);
+ MDC.put(LoggerConstants.ERROR_DESCRIPTION, LoggerErrorDescription.CHECKOUT_ENTITY);
throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
}
Version checkoutVersion = null;
switch (versionInfoEntity.getStatus()) {
case Locked:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CHECKOUT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(), "Can't checkout versionable entity");
throw new CoreException(new CheckoutOnLockedEntityErrorBuilder(entityType, entityId,
versionInfoEntity.getCandidate().getUser()).build());
case Final:
@@ -197,7 +268,10 @@ public class VersioningManagerImpl implements VersioningManager {
checkoutVersion = doCheckout(versionInfoEntity, user);
break;
default:
+ //do nothing
+ break;
}
+
return checkoutVersion;
}
@@ -206,6 +280,9 @@ public class VersioningManagerImpl implements VersioningManager {
VersionInfoEntity versionInfoEntity =
versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
if (versionInfoEntity == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.UNDO_CHECKOUT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't undo checkout for versionable entity");
throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
}
@@ -213,6 +290,10 @@ public class VersioningManagerImpl implements VersioningManager {
switch (versionInfoEntity.getStatus()) {
case Locked:
if (!user.equals(versionInfoEntity.getCandidate().getUser())) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.UNDO_CHECKOUT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(),
+ "Can't undo checkout for versionable entity");
throw new CoreException(
new UndoCheckoutOnEntityLockedByOtherErrorBuilder(entityType, entityId,
versionInfoEntity.getCandidate().getUser()).build());
@@ -221,16 +302,23 @@ public class VersioningManagerImpl implements VersioningManager {
break;
case Final:
case Available:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.UNDO_CHECKOUT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(),
+ "Can't undo checkout for versionable entity");
throw new CoreException(
new UndoCheckoutOnUnlockedEntityErrorBuilder(entityType, entityId).build());
default:
+ //do nothing
+ break;
}
+
return activeVersion;
}
private Version undoCheckout(VersionInfoEntity versionInfoEntity) {
deleteVersionFromEntity(versionInfoEntity.getEntityType(), versionInfoEntity.getEntityId(),
- versionInfoEntity.getCandidate().getVersion());
+ versionInfoEntity.getCandidate().getVersion(), versionInfoEntity.getActiveVersion());
versionInfoEntity.setStatus(versionInfoEntity.getActiveVersion().isFinal() ? VersionStatus.Final
: VersionStatus.Available);
@@ -245,6 +333,9 @@ public class VersioningManagerImpl implements VersioningManager {
VersionInfoEntity versionInfoEntity =
versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
if (versionInfoEntity == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CHECKIN_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't checkin versionable entity");
throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
}
@@ -252,17 +343,26 @@ public class VersioningManagerImpl implements VersioningManager {
switch (versionInfoEntity.getStatus()) {
case Available:
case Final:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CHECKIN_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(), "Can't checkin versionable entity");
throw new CoreException(
new CheckinOnUnlockedEntityErrorBuilder(entityType, entityId).build());
case Locked:
if (!user.equals(versionInfoEntity.getCandidate().getUser())) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CHECKIN_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(), "Can't checkin versionable entity");
throw new CoreException(new CheckinOnEntityLockedByOtherErrorBuilder(entityType, entityId,
versionInfoEntity.getCandidate().getUser()).build());
}
checkedInVersion = doCheckin(versionInfoEntity, checkinDescription);
break;
default:
+ //do nothing
+ break;
}
+
return checkedInVersion;
}
@@ -271,22 +371,34 @@ public class VersioningManagerImpl implements VersioningManager {
VersionInfoEntity versionInfoEntity =
versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
if (versionInfoEntity == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SUBMIT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't submit versionable entity");
throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
}
Version submitVersion = null;
switch (versionInfoEntity.getStatus()) {
case Final:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SUBMIT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't submit versionable entity");
throw new CoreException(
new EntityAlreadyFinalizedErrorBuilder(entityType, entityId).build());
case Locked:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.SUBMIT_ENTITY, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.PERMISSION_ERROR.getErrorCode(), "Can't submit versionable entity");
throw new CoreException(new SubmitLockedEntityNotAllowedErrorBuilder(entityType, entityId,
versionInfoEntity.getCandidate().getUser()).build());
case Available:
submitVersion = doSubmit(versionInfoEntity, user, submitDescription);
break;
default:
+ //do nothing
+ break;
}
+
return submitVersion;
}
@@ -296,6 +408,9 @@ public class VersioningManagerImpl implements VersioningManager {
VersionInfoEntity versionInfoEntity =
versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
if (versionInfoEntity == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.GET_VERSION_INFO, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), "Can't get entity version info");
throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
}
return getVersionInfo(versionInfoEntity, user, action);
@@ -329,35 +444,6 @@ public class VersioningManagerImpl implements VersioningManager {
return activeVersions;
}
- @Override
- public void delete(String entityType, String entityId, String user) {
- VersionInfoEntity versionInfoEntity =
- versionInfoDao.get(new VersionInfoEntity(entityType, entityId));
- if (versionInfoEntity == null) {
- throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
- }
-
- switch (versionInfoEntity.getStatus()) {
- case Locked:
- throw new CoreException(new DeleteOnLockedEntityErrorBuilder(entityType, entityId,
- versionInfoEntity.getCandidate().getUser()).build());
- default:
- }
-
- doDelete(versionInfoEntity, user);
- }
-
- @Override
- public void undoDelete(String entityType, String entityId, String user) {
- VersionInfoDeletedEntity versionInfoDeletedEntity =
- versionInfoDeletedDao.get(new VersionInfoDeletedEntity(entityType, entityId));
- if (versionInfoDeletedEntity == null) {
- throw new CoreException(new EntityNotExistErrorBuilder(entityType, entityId).build());
- }
-
- doUndoDelete(versionInfoDeletedEntity, user);
- }
-
private void markAsCheckedOut(VersionInfoEntity versionInfoEntity, String checkingOutUser) {
versionInfoEntity.setStatus(VersionStatus.Locked);
versionInfoEntity.setCandidate(new UserCandidateVersion(checkingOutUser,
@@ -374,8 +460,7 @@ public class VersioningManagerImpl implements VersioningManager {
return versionInfoEntity.getCandidate().getVersion();
}
- private void doDelete(VersionInfoEntity versionInfoEntity, String user) {
-
+ private void doDelete(VersionInfoEntity versionInfoEntity) {
VersionInfoDeletedEntity versionInfoDeletedEntity = new VersionInfoDeletedEntity();
versionInfoDeletedEntity.setStatus(versionInfoEntity.getStatus());
versionInfoDeletedEntity.setViewableVersions(versionInfoEntity.getViewableVersions());
@@ -386,11 +471,9 @@ public class VersioningManagerImpl implements VersioningManager {
versionInfoDeletedEntity.setLatestFinalVersion(versionInfoEntity.getLatestFinalVersion());
versionInfoDeletedDao.create(versionInfoDeletedEntity);
versionInfoDao.delete(versionInfoEntity);
-
}
- private void doUndoDelete(VersionInfoDeletedEntity versionInfoDeletedEntity, String user) {
-
+ private void doUndoDelete(VersionInfoDeletedEntity versionInfoDeletedEntity) {
VersionInfoEntity versionInfoEntity = new VersionInfoEntity();
versionInfoEntity.setStatus(versionInfoDeletedEntity.getStatus());
versionInfoEntity.setViewableVersions(versionInfoDeletedEntity.getViewableVersions());
@@ -401,7 +484,6 @@ public class VersioningManagerImpl implements VersioningManager {
versionInfoEntity.setLatestFinalVersion(versionInfoDeletedEntity.getLatestFinalVersion());
versionInfoDao.create(versionInfoEntity);
versionInfoDeletedDao.delete(versionInfoDeletedEntity);
-
}
private Version doCheckin(VersionInfoEntity versionInfoEntity, String checkinDescription) {
@@ -412,6 +494,9 @@ public class VersioningManagerImpl implements VersioningManager {
versionInfoEntity.setStatus(VersionStatus.Available);
versionInfoDao.update(versionInfoEntity);
+ closeVersionOnEntity(versionInfoEntity.getEntityType(), versionInfoEntity.getEntityId(),
+ versionInfoEntity.getActiveVersion());
+
return versionInfoEntity.getActiveVersion();
}
@@ -420,6 +505,8 @@ public class VersioningManagerImpl implements VersioningManager {
Version finalVersion = versionInfoEntity.getActiveVersion().calculateNextFinal();
initVersionOnEntity(versionInfoEntity.getEntityType(), versionInfoEntity.getEntityId(),
versionInfoEntity.getActiveVersion(), finalVersion);
+ closeVersionOnEntity(versionInfoEntity.getEntityType(), versionInfoEntity.getEntityId(),
+ finalVersion);
Set<Version> viewableVersions = new HashSet<>();
for (Version version : versionInfoEntity.getViewableVersions()) {
@@ -444,6 +531,7 @@ public class VersioningManagerImpl implements VersioningManager {
versionHistory.setUser(user);
versionHistory.setDescription(description);
versionHistory.setType(type);
+ //versionHistoryDao.create(versionHistory);
}
private void initVersionOnEntity(String entityType, String entityId, Version baseVersion,
@@ -451,17 +539,29 @@ public class VersioningManagerImpl implements VersioningManager {
Set<VersionableEntityMetadata> entityMetadatas = versionableEntities.get(entityType);
if (entityMetadatas != null) {
for (VersionableEntityMetadata entityMetadata : entityMetadatas) {
- versionableEntityDao.initVersion(entityMetadata, entityId, baseVersion, newVersion);
+ VersionableEntityDaoFactory.getInstance().createInterface(entityMetadata.getStoreType())
+ .initVersion(entityMetadata, entityId, baseVersion, newVersion);
}
}
}
private void deleteVersionFromEntity(String entityType, String entityId,
- Version versionToDelete) {
+ Version versionToDelete, Version backToVersion) {
+ Set<VersionableEntityMetadata> entityMetadatas = versionableEntities.get(entityType);
+ if (entityMetadatas != null) {
+ for (VersionableEntityMetadata entityMetadata : entityMetadatas) {
+ VersionableEntityDaoFactory.getInstance().createInterface(entityMetadata.getStoreType())
+ .deleteVersion(entityMetadata, entityId, versionToDelete, backToVersion);
+ }
+ }
+ }
+
+ private void closeVersionOnEntity(String entityType, String entityId, Version versionToClose) {
Set<VersionableEntityMetadata> entityMetadatas = versionableEntities.get(entityType);
if (entityMetadatas != null) {
for (VersionableEntityMetadata entityMetadata : entityMetadatas) {
- versionableEntityDao.deleteVersion(entityMetadata, entityId, versionToDelete);
+ VersionableEntityDaoFactory.getInstance().createInterface(entityMetadata.getStoreType())
+ .closeVersion(entityMetadata, entityId, versionToClose);
}
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/VersioningManagerTest.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/VersioningManagerTest.java
deleted file mode 100644
index 3695f9ef2d..0000000000
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/VersioningManagerTest.java
+++ /dev/null
@@ -1,364 +0,0 @@
-package org.openecomp.sdc.versioning;
-
-
-import org.openecomp.sdc.common.errors.CoreException;
-import org.openecomp.sdc.versioning.dao.VersionInfoDao;
-import org.openecomp.sdc.versioning.dao.VersionInfoDaoFactory;
-import org.openecomp.sdc.versioning.dao.VersionInfoDeletedDao;
-import org.openecomp.sdc.versioning.dao.VersionInfoDeletedDaoFactory;
-import org.openecomp.sdc.versioning.dao.types.Version;
-import org.openecomp.sdc.versioning.dao.types.VersionInfoDeletedEntity;
-import org.openecomp.sdc.versioning.dao.types.VersionInfoEntity;
-import org.openecomp.sdc.versioning.dao.types.VersionStatus;
-import org.openecomp.sdc.versioning.types.VersionInfo;
-import org.openecomp.sdc.versioning.types.VersionableEntityAction;
-import org.openecomp.sdc.versioning.types.VersionableEntityMetadata;
-import org.openecomp.core.nosqldb.api.NoSqlDb;
-import org.openecomp.core.nosqldb.factory.NoSqlDbFactory;
-import com.datastax.driver.core.ResultSet;
-import com.datastax.driver.mapping.UDTMapper;
-
-import org.testng.Assert;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-public class VersioningManagerTest {
- private static final VersioningManager versioningManager =
- VersioningManagerFactory.getInstance().createInterface();
- private static final VersionInfoDao versionInfoDao =
- VersionInfoDaoFactory.getInstance().createInterface();
- private static final VersionInfoDeletedDao versionInfoDeletedDao =
- VersionInfoDeletedDaoFactory.getInstance().createInterface();
- private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
- private static final String USR1 = "usr1";
- private static final String USR2 = "usr2";
- private static final String USR3 = "usr3";
- private static final String TYPE1 = "Type1";
- private static final String TYPE2 = "Type2";
- private static final String ID1 = "Id1";
- private static final String ID2 = "Id2";
- private static final String ID3 = "Id3";
- private static final String TYPE1_TABLE_NAME = "vendor_license_model";
- private static final String TYPE1_ID_NAME = "vlm_id";
- private static final String TYPE1_VERSION_NAME = "version";
- private static final String TYPE2_TABLE_NAME = "feature_group";
- private static final String TYPE2_ID_NAME = "vlm_id";
- private static final String TYPE2_VERSION_NAME = "version";
- private static final Version VERSION01 = new Version(0, 1);
- private static final Version VERSION02 = new Version(0, 2);
- private static final Version VERSION10 = new Version(1, 0);
- private static final Version VERSION11 = new Version(1, 1);
- private static UDTMapper<Version> versionMapper =
- noSqlDb.getMappingManager().udtMapper(Version.class);
- private static Set<Version> expectedViewableVersionsType1Id1 = new HashSet<>();
-
- private static void assretVersionInfoEntity(VersionInfoEntity actual, String entityType,
- String entityId, Version activeVersion,
- Version candidateVersion, String candidateUser,
- VersionStatus status, Set<Version> viewbleVersions,
- Version latestFinalVersion) {
- Assert.assertNotNull(actual);
- Assert.assertEquals(actual.getEntityType(), entityType);
- Assert.assertEquals(actual.getEntityId(), entityId);
- Assert.assertEquals(actual.getActiveVersion(), activeVersion);
- if (candidateVersion != null && candidateUser != null) {
- Assert.assertEquals(actual.getCandidate().getVersion(), candidateVersion);
- Assert.assertEquals(actual.getCandidate().getUser(), candidateUser);
- } else {
- Assert.assertNull(actual.getCandidate());
- }
- Assert.assertEquals(actual.getStatus(), status);
- Assert.assertEquals(actual.getViewableVersions().size(), viewbleVersions.size());
- Assert.assertEquals(actual.getViewableVersions(), viewbleVersions);
- Assert.assertEquals(actual.getLatestFinalVersion(), latestFinalVersion);
- }
-
- private static void assretVersionInfo(VersionInfo actual, Version activeVersion,
- VersionStatus status, String lockingUser,
- Set<Version> viewableVersions, Version latestFinalVersion) {
- Assert.assertNotNull(actual);
- Assert.assertEquals(actual.getActiveVersion(), activeVersion);
- Assert.assertEquals(actual.getStatus(), status);
- Assert.assertEquals(actual.getLockingUser(), lockingUser);
- Assert.assertEquals(actual.getViewableVersions().size(), viewableVersions.size());
- Assert.assertEquals(actual.getViewableVersions(), viewableVersions);
- Assert.assertEquals(actual.getLatestFinalVersion(), latestFinalVersion);
- }
-
-// @BeforeClass
- private void init() {
- versionInfoDao.delete(new VersionInfoEntity(TYPE1, ID1));
- versionInfoDao.delete(new VersionInfoEntity(TYPE1, ID2));
- versionInfoDao.delete(new VersionInfoEntity(TYPE2, ID3));
- String deleteFromType1 = String
- .format("delete from %s where %s=? and %s=?", TYPE1_TABLE_NAME, TYPE1_ID_NAME,
- TYPE1_VERSION_NAME);
- noSqlDb.execute(deleteFromType1, ID1, versionMapper.toUDT(VERSION01));
- noSqlDb.execute(deleteFromType1, ID1, versionMapper.toUDT(VERSION02));
- noSqlDb.execute(deleteFromType1, ID1, versionMapper.toUDT(VERSION11));
-
- versioningManager.register(TYPE1,
- new VersionableEntityMetadata(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME));
- versioningManager.register(TYPE2,
- new VersionableEntityMetadata(TYPE2_TABLE_NAME, TYPE2_ID_NAME, TYPE2_VERSION_NAME));
- }
-
-// @Test
- public void createTest() {
- Version version = versioningManager.create(TYPE1, ID1, USR1);
- createVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
- version);
-
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, new Version(0, 0), VERSION01, USR1,
- VersionStatus.Locked, expectedViewableVersionsType1Id1, null);
- }
-
-// @Test(dependsOnMethods = "createTest")
- public void checkinTest() {
- Version version = versioningManager.checkin(TYPE1, ID1, USR1, "checkin 0.1");
- Assert.assertEquals(version, VERSION01);
-
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- expectedViewableVersionsType1Id1.add(VERSION01);
- assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION01, null, null,
- VersionStatus.Available, expectedViewableVersionsType1Id1, null);
- }
-
-// @Test(dependsOnMethods = "checkinTest")
- public void getVersionInfoForReadOnAvailableTest() {
- VersionInfo versionInfo =
- versioningManager.getEntityVersionInfo(TYPE1, ID1, USR2, VersionableEntityAction.Read);
- assretVersionInfo(versionInfo, VERSION01, VersionStatus.Available, null,
- expectedViewableVersionsType1Id1, null);
- }
-
-// @Test(dependsOnMethods = "getVersionInfoForReadOnAvailableTest",
-// expectedExceptions = CoreException.class)
- public void getVersionInfoForWriteOnAvailableTest() {
- versioningManager.getEntityVersionInfo(TYPE1, ID1, USR2, VersionableEntityAction.Write);
- }
-
-// @Test(dependsOnMethods = "getVersionInfoForWriteOnAvailableTest",
-// expectedExceptions = CoreException.class)
- public void checkinOnAvailableTest() {
- versioningManager.checkin(TYPE1, ID1, USR1, "fail checkin");
- }
-
-// @Test(dependsOnMethods = "checkinOnAvailableTest", expectedExceptions = CoreException.class)
- public void undoCheckoutOnAvailableTest() {
- versioningManager.undoCheckout(TYPE1, ID1, USR1);
- }
-
-// @Test(dependsOnMethods = "undoCheckoutOnAvailableTest")
- public void checkoutTest() {
- Version version = versioningManager.checkout(TYPE1, ID1, USR2);
- Assert.assertEquals(version, VERSION02);
-
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION01, VERSION02, USR2,
- VersionStatus.Locked, expectedViewableVersionsType1Id1, null);
-
- ResultSet results =
- loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
- VERSION02);
- Assert.assertTrue(results.iterator().hasNext());
- }
-
-// @Test(dependsOnMethods = "checkoutTest")
- public void getVersionInfoForReadOnLockedSameUserTest() {
- VersionInfo versionInfo =
- versioningManager.getEntityVersionInfo(TYPE1, ID1, USR2, VersionableEntityAction.Read);
- Set<Version> expectedViewableVersions = new HashSet<>();
- expectedViewableVersions.addAll(expectedViewableVersionsType1Id1);
- expectedViewableVersions.add(VERSION02);
- assretVersionInfo(versionInfo, VERSION02, VersionStatus.Locked, USR2, expectedViewableVersions,
- null);
- }
-
-// @Test(dependsOnMethods = "getVersionInfoForReadOnLockedSameUserTest")
- public void getVersionInfoForReadOnLockedOtherUserTest() {
- VersionInfo entityVersionInfo =
- versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Read);
- Assert.assertEquals(entityVersionInfo.getActiveVersion(), VERSION01);
- }
-
-// @Test(dependsOnMethods = "getVersionInfoForReadOnLockedOtherUserTest",
-// expectedExceptions = CoreException.class)
- public void getVersionInfoForWriteOnLockedOtherUserTest() {
- versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Write)
- .getActiveVersion();
- }
-
-// @Test(dependsOnMethods = "getVersionInfoForWriteOnLockedOtherUserTest")
- public void getVersionInfoForWriteOnLockedSameUserTest() {
- Version activeVersion =
- versioningManager.getEntityVersionInfo(TYPE1, ID1, USR2, VersionableEntityAction.Write)
- .getActiveVersion();
- Assert.assertEquals(activeVersion, VERSION02);
- }
-
-// @Test(dependsOnMethods = "getVersionInfoForWriteOnLockedSameUserTest",
-// expectedExceptions = CoreException.class)
- public void checkoutOnLockedSameUserTest() {
- versioningManager.checkout(TYPE1, ID1, USR2);
- }
-
-// @Test(dependsOnMethods = "checkoutOnLockedSameUserTest", expectedExceptions = CoreException.class)
- public void checkoutOnLockedOtherUserTest() {
- versioningManager.checkout(TYPE1, ID1, USR1);
- }
-
-// @Test(dependsOnMethods = "checkoutOnLockedSameUserTest", expectedExceptions = CoreException.class)
- public void undoCheckoutOnLockedOtherUserTest() {
- versioningManager.undoCheckout(TYPE1, ID1, USR1);
- }
-
-// @Test(dependsOnMethods = "undoCheckoutOnLockedOtherUserTest",
-// expectedExceptions = CoreException.class)
- public void submitOnLockedTest() {
- versioningManager.submit(TYPE1, ID1, USR2, "failed submit");
- }
-
-// @Test(dependsOnMethods = "submitOnLockedTest")
- public void undoCheckoutTest() {
- Version version = versioningManager.undoCheckout(TYPE1, ID1, USR2);
- Assert.assertEquals(version, VERSION01);
-
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION01, null, null,
- VersionStatus.Available, expectedViewableVersionsType1Id1, null);
-
- ResultSet results =
- loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
- VERSION02);
- Assert.assertFalse(results.iterator().hasNext());
- }
-
-// @Test(dependsOnMethods = "undoCheckoutTest")
- public void submitTest() {
- Version version = versioningManager.submit(TYPE1, ID1, USR3, "submit msg");
- Assert.assertEquals(version, VERSION10);
- expectedViewableVersionsType1Id1 = new HashSet<>();
- expectedViewableVersionsType1Id1.add(version);
-
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION10, null, null,
- VersionStatus.Final, expectedViewableVersionsType1Id1, VERSION10);
-
- ResultSet results =
- loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
- VERSION10);
- Assert.assertTrue(results.iterator().hasNext());
- }
-
-// @Test(dependsOnMethods = "submitTest", expectedExceptions = CoreException.class)
- public void checkinOnFinalizedTest() {
- versioningManager.checkin(TYPE1, ID1, USR2, "failed checkin");
- }
-
-// @Test(dependsOnMethods = "checkinOnFinalizedTest", expectedExceptions = CoreException.class)
- public void undoCheckouOnFinalizedTest() {
- versioningManager.undoCheckout(TYPE1, ID1, USR2);
- }
-
-// @Test(dependsOnMethods = "undoCheckouOnFinalizedTest", expectedExceptions = CoreException.class)
- public void submitOnFinalizedTest() {
- versioningManager.submit(TYPE1, ID1, USR2, "failed submit");
- }
-
-// @Test(dependsOnMethods = "submitOnFinalizedTest")
- public void checkoutOnFinalizedTest() {
- Version version = versioningManager.checkout(TYPE1, ID1, USR3);
- Assert.assertEquals(version, VERSION11);
-
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION10, VERSION11, USR3,
- VersionStatus.Locked, expectedViewableVersionsType1Id1, VERSION10);
-
- ResultSet results =
- loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
- VERSION11);
- Assert.assertTrue(results.iterator().hasNext());
- }
-
-// @Test(dependsOnMethods = "checkoutOnFinalizedTest")
- public void viewableVersionsTest() {
- versioningManager.checkin(TYPE1, ID1, USR3, "check in 1.1");
- versioningManager.checkout(TYPE1, ID1, USR3);
- versioningManager.checkin(TYPE1, ID1, USR3, "check in 1.2");
- versioningManager.submit(TYPE1, ID1, USR3, "submit in 2.0");
- versioningManager.checkout(TYPE1, ID1, USR3);
- versioningManager.checkin(TYPE1, ID1, USR3, "check in 2.1");
- versioningManager.submit(TYPE1, ID1, USR3, "submit in 3.0");
- versioningManager.checkout(TYPE1, ID1, USR3);
- versioningManager.checkin(TYPE1, ID1, USR3, "check in 3.1");
- versioningManager.checkout(TYPE1, ID1, USR3);
- versioningManager.checkin(TYPE1, ID1, USR3, "check in 3.2");
- versioningManager.checkout(TYPE1, ID1, USR2);
-
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- HashSet<Version> expectedViewableVersions = new HashSet<>();
- expectedViewableVersions.add(VERSION10);
- expectedViewableVersions.add(new Version(2, 0));
- expectedViewableVersions.add(new Version(3, 0));
- expectedViewableVersions.add(new Version(3, 1));
- expectedViewableVersions.add(new Version(3, 2));
- assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, new Version(3, 2), new Version(3, 3),
- USR2, VersionStatus.Locked, expectedViewableVersions, new Version(3, 0));
- }
-
-// @Test(dependsOnMethods = "viewableVersionsTest")
- public void listActiveVersionsTest() {
- versioningManager.create(TYPE1, ID2, USR3);
- versioningManager.checkin(TYPE1, ID2, USR3, "check in 0.1");
-
- versioningManager.create(TYPE2, ID3, USR3);
- versioningManager.checkin(TYPE2, ID3, USR3, "check in 0.1");
-
- Map<String, VersionInfo> idToVersionInfo =
- versioningManager.listEntitiesVersionInfo(TYPE1, USR2, VersionableEntityAction.Read);
- Assert.assertEquals(idToVersionInfo.size(), 2);
- Assert.assertEquals(idToVersionInfo.get(ID1).getActiveVersion(), new Version(3, 3));
- Assert.assertEquals(idToVersionInfo.get(ID2).getActiveVersion(), VERSION01);
- }
-
-// @Test(dependsOnMethods = "listActiveVersionsTest")
- public void deleteTest() {
- versioningManager.checkin(TYPE1, ID1, USR2, "check in for delete");
- versioningManager.delete(TYPE1, ID1, USR1);
-
- VersionInfoDeletedEntity versionInfoDeletedEntity =
- versionInfoDeletedDao.get(new VersionInfoDeletedEntity(TYPE1, ID1));
- Assert.assertNotNull(versionInfoDeletedEntity);
-
- Map<String, VersionInfo> entitiesInfoMap =
- versioningManager.listDeletedEntitiesVersionInfo(TYPE1, USR2, null);
- Assert.assertEquals(entitiesInfoMap.size(), 1);
- VersionInfoEntity versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- Assert.assertNull(versionInfoEntity);
- versioningManager.undoDelete(TYPE1, ID1, USR1);
- versionInfoEntity = versionInfoDao.get(new VersionInfoEntity(TYPE1, ID1));
- Assert.assertNotNull(versionInfoEntity);
-
-
- }
-
- private void createVersionableEntityRecord(String tableName, String idName, String versionName,
- String id, Version version) {
- noSqlDb.execute(
- String.format("insert into %s (%s,%s) values (?,?)", tableName, idName, versionName), id,
- versionMapper.toUDT(version));
- }
-
- private ResultSet loadVersionableEntityRecord(String tableName, String idName, String versionName,
- String id, Version version) {
- return noSqlDb.execute(
- String.format("select * from %s where %s=? and %s=?", tableName, idName, versionName), id,
- versionMapper.toUDT(version));
- }
-}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/impl/VersioningManagerImplTest.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/impl/VersioningManagerImplTest.java
new file mode 100644
index 0000000000..d4bccc677b
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/java/org/openecomp/sdc/versioning/impl/VersioningManagerImplTest.java
@@ -0,0 +1,558 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.versioning.impl;
+
+
+import org.mockito.ArgumentCaptor;
+import org.mockito.Captor;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.versioning.dao.VersionInfoDao;
+import org.openecomp.sdc.versioning.dao.VersionInfoDeletedDao;
+import org.openecomp.sdc.versioning.dao.VersionableEntityDao;
+import org.openecomp.sdc.versioning.dao.types.UserCandidateVersion;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.dao.types.VersionInfoDeletedEntity;
+import org.openecomp.sdc.versioning.dao.types.VersionInfoEntity;
+import org.openecomp.sdc.versioning.dao.types.VersionStatus;
+import org.openecomp.sdc.versioning.types.VersionInfo;
+import org.openecomp.sdc.versioning.types.VersionableEntityAction;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import static org.mockito.Matchers.anyObject;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.verify;
+
+public class VersioningManagerImplTest {
+ private static final String USR1 = "usr1";
+ private static final String USR2 = "usr2";
+ private static final String TYPE1 = "Type1";
+/* private static final String TYPE2 = "Type2";*/
+ private static final String ID1 = "Id1";
+/* private static final String ID2 = "Id2";
+ private static final String ID3 = "Id3";
+ private static final String TYPE1_TABLE_NAME = "vendor_license_model";
+ private static final String TYPE1_ID_NAME = "vlm_id";
+ private static final String TYPE1_VERSION_NAME = "version";
+ private static final String TYPE2_TABLE_NAME = "feature_group";
+ private static final String TYPE2_ID_NAME = "vlm_id";
+ private static final String TYPE2_VERSION_NAME = "version";*/
+ private static final Version VERSION0 = new Version(0, 0);
+ private static final Version VERSION01 = new Version(0, 1);
+ private static final Version VERSION02 = new Version(0, 2);
+ private static final Version VERSION10 = new Version(1, 0);
+ private static final Version VERSION11 = new Version(1, 1);
+
+ /* private static final NoSqlDb noSqlDb = NoSqlDbFactory.getInstance().createInterface();
+
+ private static UDTMapper<Version> versionMapper =
+ noSqlDb.getMappingManager().udtMapper(Version.class);*/
+ @Mock
+ private VersionInfoDao versionInfoDaoMock;
+ @Mock
+ private VersionInfoDeletedDao versionInfoDeletedDaoMock;
+ @InjectMocks
+ private VersioningManagerImpl versioningManager;
+
+ @Captor
+ private ArgumentCaptor<VersionInfoEntity> versionInfoEntityArg;
+
+ @BeforeMethod
+ public void setUp() throws Exception {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ /* @BeforeClass
+ private void init() {
+ versionInfoDaoMock.delete(new VersionInfoEntity(TYPE1, ID1));
+ versionInfoDaoMock.delete(new VersionInfoEntity(TYPE1, ID2));
+ versionInfoDaoMock.delete(new VersionInfoEntity(TYPE2, ID3));
+ String deleteFromType1 = String
+ .format("delete from %s where %s=? and %s=?", TYPE1_TABLE_NAME, TYPE1_ID_NAME,
+ TYPE1_VERSION_NAME);
+ noSqlDb.execute(deleteFromType1, ID1, versionMapper.toUDT(VERSION01));
+ noSqlDb.execute(deleteFromType1, ID1, versionMapper.toUDT(VERSION02));
+ noSqlDb.execute(deleteFromType1, ID1, versionMapper.toUDT(VERSION11));
+
+ versioningManager.register(TYPE1,
+ new VersionableEntityMetadata(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME));
+ versioningManager.register(TYPE2,
+ new VersionableEntityMetadata(TYPE2_TABLE_NAME, TYPE2_ID_NAME, TYPE2_VERSION_NAME));
+ }*/
+
+/* @Test
+ public void testRegister() throws Exception {
+ VersionableEntityMetadata entityMetadata =
+ new VersionableEntityMetadata(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME);
+ versioningManager.register(TYPE1, entityMetadata);
+
+ Map<String, Set<VersionableEntityMetadata>> versionableEntities =
+ versionableEntitiesCapture.capture();
+ Set<VersionableEntityMetadata> type1Entities = versionableEntities.get(TYPE1);
+ Assert.assertNotNull(type1Entities);
+ Assert.assertTrue(type1Entities.contains(entityMetadata));
+ }*/
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCreateAlreadyExisting() {
+ doReturn(new VersionInfoEntity()).when(versionInfoDaoMock).get(anyObject());
+ versioningManager.create(TYPE1, ID1, USR1);
+ }
+
+ @Test
+ public void testCreate() {
+ Version version = versioningManager.create(TYPE1, ID1, USR1);
+ Assert.assertEquals(version, VERSION01);
+
+/* createVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
+ version);*/
+ verify(versionInfoDaoMock).create(versionInfoEntityArg.capture());
+ VersionInfoEntity versionInfoEntity = versionInfoEntityArg.getValue();
+ assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, new Version(0, 0), VERSION01, USR1,
+ VersionStatus.Locked, new HashSet<>(), null);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testDeleteNonExisting() {
+ versioningManager.delete(TYPE1, ID1, USR1);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testDeleteLocked() {
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION0,
+ new UserCandidateVersion(USR1, VERSION01), Collections.emptySet(), null);
+ versioningManager.delete(TYPE1, ID1, USR1);
+ }
+
+ @Test
+ public void testDelete() {
+ VersionInfoEntity versionInfoEntity = new VersionInfoEntity();
+ versionInfoEntity.setStatus(VersionStatus.Available);
+ doReturn(versionInfoEntity).when(versionInfoDaoMock).get(anyObject());
+
+ versioningManager.delete(TYPE1, ID1, USR1);
+
+ verify(versionInfoDaoMock).delete(versionInfoEntity);
+ ArgumentCaptor<VersionInfoDeletedEntity> versionInfoDeletedEntityArg =
+ ArgumentCaptor.forClass(VersionInfoDeletedEntity.class);
+ verify(versionInfoDeletedDaoMock).create(versionInfoDeletedEntityArg.capture());
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testUndoDeleteNonExisting() {
+ versioningManager.undoDelete(TYPE1, ID1, USR1);
+ }
+
+ @Test
+ public void testUndoDelete() {
+ VersionInfoDeletedEntity versionInfoDeletedEntity = new VersionInfoDeletedEntity();
+ versionInfoDeletedEntity.setStatus(VersionStatus.Available);
+ doReturn(versionInfoDeletedEntity).when(versionInfoDeletedDaoMock).get(anyObject());
+
+ versioningManager.undoDelete(TYPE1, ID1, USR1);
+
+ verify(versionInfoDeletedDaoMock).delete(versionInfoDeletedEntity);
+ verify(versionInfoDaoMock).create(versionInfoEntityArg.capture());
+/*
+ VersionInfoDeletedEntity versionInfoDeletedEntity =
+ versionInfoDeletedDaoMock.get(new VersionInfoDeletedEntity(TYPE1, ID1));
+ Assert.assertNotNull(versionInfoDeletedEntity);
+
+ Map<String, VersionInfo> entitiesInfoMap =
+ versioningManager.listDeletedEntitiesVersionInfo(TYPE1, USR2, null);
+ Assert.assertEquals(entitiesInfoMap.size(), 1);
+ VersionInfoEntity versionInfoEntity = versionInfoDaoMock.get(new VersionInfoEntity(TYPE1, ID1));
+ Assert.assertNull(versionInfoEntity);
+ versioningManager.undoDelete(TYPE1, ID1, USR1);
+ versionInfoEntity = versionInfoDaoMock.get(new VersionInfoEntity(TYPE1, ID1));
+ Assert.assertNotNull(versionInfoEntity);*/
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCheckoutNonExisting() {
+ versioningManager.checkout(TYPE1, ID1, USR2);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCheckoutOnLockedSameUser() {
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION0,
+ new UserCandidateVersion(USR1, VERSION01), Collections.emptySet(), null);
+ versioningManager.checkout(TYPE1, ID1, USR1);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCheckoutOnLockedOtherUser() {
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION0,
+ new UserCandidateVersion(USR2, VERSION01), Collections.emptySet(), null);
+ versioningManager.checkout(TYPE1, ID1, USR1);
+ }
+
+ @Test
+ public void testCheckoutOnFinalized() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION10);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Final, VERSION10, null, viewableVersions,
+ VERSION10);
+
+ Version version = versioningManager.checkout(TYPE1, ID1, USR1);
+ Assert.assertEquals(version, VERSION11);
+
+ VersionInfoEntity versionInfoEntity = versionInfoDaoMock.get(new VersionInfoEntity(TYPE1, ID1));
+ assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION10, VERSION11, USR1,
+ VersionStatus.Locked, viewableVersions, VERSION10);
+/*
+ ResultSet results =
+ loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
+ VERSION11);
+ Assert.assertTrue(results.iterator().hasNext());*/
+ }
+
+ @Test
+ public void testCheckout() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Available, VERSION01, null, viewableVersions,
+ null);
+
+ Version version = versioningManager.checkout(TYPE1, ID1, USR1);
+ Assert.assertEquals(version, VERSION02);
+
+ verify(versionInfoDaoMock).update(versionInfoEntityArg.capture());
+ VersionInfoEntity versionInfoEntity = versionInfoEntityArg.getValue();
+
+ assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION01, VERSION02, USR1,
+ VersionStatus.Locked, viewableVersions, null);
+
+/* ResultSet results =
+ loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
+ VERSION02);
+ Assert.assertTrue(results.iterator().hasNext());*/
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testUndoCheckoutNonExisting() {
+ versioningManager.undoCheckout(TYPE1, ID1, USR1);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testUndoCheckoutOnAvailable() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Available, VERSION01, null, viewableVersions,
+ null);
+
+ versioningManager.undoCheckout(TYPE1, ID1, USR1);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testUndoCheckouOnFinalized() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION10);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Final, VERSION10, null, viewableVersions,
+ VERSION10);
+ versioningManager.undoCheckout(TYPE1, ID1, USR2);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testUndoCheckoutOnLockedOtherUser() {
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION0,
+ new UserCandidateVersion(USR2, VERSION01), Collections.emptySet(), null);
+
+ versioningManager.undoCheckout(TYPE1, ID1, USR1);
+ }
+
+ @Test
+ public void testUndoCheckout() {
+ HashSet<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION01,
+ new UserCandidateVersion(USR1, VERSION02), viewableVersions, null);
+
+ Version version = versioningManager.undoCheckout(TYPE1, ID1, USR1);
+ Assert.assertEquals(version, VERSION01);
+
+ VersionInfoEntity versionInfoEntity = versionInfoDaoMock.get(new VersionInfoEntity(TYPE1, ID1));
+ assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION01, null, null,
+ VersionStatus.Available, viewableVersions, null);
+
+/* ResultSet results =
+ loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
+ VERSION02);
+ Assert.assertFalse(results.iterator().hasNext());*/
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCheckinNonExisting() {
+ versioningManager.checkin(TYPE1, ID1, USR1, "");
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCheckinOnAvailable() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Available, VERSION01, null, viewableVersions,
+ null);
+
+ versioningManager.checkin(TYPE1, ID1, USR1, "fail checkin");
+ }
+
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCheckinOnFinalized() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION10);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Final, VERSION10, null, viewableVersions,
+ VERSION10);
+
+ versioningManager.checkin(TYPE1, ID1, USR1, "failed checkin");
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testCheckinOnLockedOtherUser() {
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION0,
+ new UserCandidateVersion(USR2, VERSION01), Collections.emptySet(), null);
+
+ versioningManager.checkin(TYPE1, ID1, USR1, "");
+ }
+
+ @Test
+ public void testCheckin() {
+ HashSet<Version> viewableVersions = new HashSet<>();
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION0,
+ new UserCandidateVersion(USR1, VERSION01), viewableVersions, null);
+
+ Version version = versioningManager.checkin(TYPE1, ID1, USR1, "checkin 0.1");
+ Assert.assertEquals(version, VERSION01);
+
+ verify(versionInfoDaoMock).update(versionInfoEntityArg.capture());
+ VersionInfoEntity versionInfoEntity = versionInfoEntityArg.getValue();
+
+ viewableVersions.add(VERSION01);
+ assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, VERSION01, null, null,
+ VersionStatus.Available, viewableVersions, null);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testSubmitNonExisting() {
+ versioningManager.submit(TYPE1, ID1, USR2, "failed submit");
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testSubmitOnLocked() {
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION0,
+ new UserCandidateVersion(USR1, VERSION01), Collections.emptySet(), null);
+ versioningManager.submit(TYPE1, ID1, USR2, "failed submit");
+ }
+
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testSubmitOnFinalized() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION10);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Final, VERSION10, null, viewableVersions,
+ VERSION10);
+ versioningManager.submit(TYPE1, ID1, USR2, "failed submit");
+ }
+
+ @Test
+ public void testSubmit() {
+ Version version32 = new Version(3, 2);
+ Version version40 = new Version(4, 0);
+
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION10);
+ viewableVersions.add(new Version(2, 0));
+ viewableVersions.add(new Version(3, 0));
+ viewableVersions.add(new Version(3, 1));
+ viewableVersions.add(version32);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Available, version32, null, viewableVersions,
+ new Version(3, 0));
+
+ Version version = versioningManager.submit(TYPE1, ID1, USR1, "submit msg");
+ Assert.assertEquals(version, version40);
+ viewableVersions.remove(new Version(3, 1));
+ viewableVersions.remove(version32);
+ viewableVersions.add(version40);
+
+ verify(versionInfoDaoMock).update(versionInfoEntityArg.capture());
+ VersionInfoEntity versionInfoEntity = versionInfoEntityArg.getValue();
+
+ assretVersionInfoEntity(versionInfoEntity, TYPE1, ID1, version40, null, null,
+ VersionStatus.Final, viewableVersions, version40);
+
+/* ResultSet results =
+ loadVersionableEntityRecord(TYPE1_TABLE_NAME, TYPE1_ID_NAME, TYPE1_VERSION_NAME, ID1,
+ VERSION10);
+ Assert.assertTrue(results.iterator().hasNext());*/
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testGetVersionInfoOnNonExistingEntity() {
+ versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Read);
+ }
+
+ @Test
+ public void testGetVersionInfoForReadOnAvailable() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Available, VERSION01, null, viewableVersions,
+ null);
+
+ VersionInfo versionInfo =
+ versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Read);
+ assertVersionInfo(versionInfo, VERSION01, VersionStatus.Available, null,
+ viewableVersions, null);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testGetVersionInfoForWriteOnAvailable() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Available, VERSION01, null, viewableVersions,
+ null);
+
+ versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Write);
+ }
+
+ @Test
+ public void testGetVersionInfoForReadOnLockedSameUser() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION01,
+ new UserCandidateVersion(USR1, VERSION02), viewableVersions, null);
+
+ VersionInfo versionInfo =
+ versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Read);
+ viewableVersions.add(VERSION02);
+ assertVersionInfo(versionInfo, VERSION02, VersionStatus.Locked, USR1, viewableVersions, null);
+ }
+
+ @Test
+ public void testGetVersionInfoForReadOnLockedOtherUser() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION01,
+ new UserCandidateVersion(USR2, VERSION02), viewableVersions, null);
+
+ VersionInfo versionInfo =
+ versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Read);
+ Assert.assertEquals(versionInfo.getActiveVersion(), VERSION01);
+ assertVersionInfo(versionInfo, VERSION01, VersionStatus.Locked, USR2, viewableVersions, null);
+ }
+
+ @Test(expectedExceptions = CoreException.class)
+ public void testGetVersionInfoForWriteOnLockedOtherUser() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION01,
+ new UserCandidateVersion(USR2, VERSION02), viewableVersions, null);
+
+ versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Write);
+ }
+
+ @Test
+ public void testGetVersionInfoForWriteOnLockedSameUser() {
+ Set<Version> viewableVersions = new HashSet<>();
+ viewableVersions.add(VERSION01);
+ mockVersionInfoEntity(TYPE1, ID1, VersionStatus.Locked, VERSION01,
+ new UserCandidateVersion(USR1, VERSION02), viewableVersions, null);
+
+ VersionInfo versionInfo =
+ versioningManager.getEntityVersionInfo(TYPE1, ID1, USR1, VersionableEntityAction.Write);
+ viewableVersions.add(VERSION02);
+ assertVersionInfo(versionInfo, VERSION02, VersionStatus.Locked, USR1, viewableVersions, null);
+ }
+
+/* private void createVersionableEntityRecord(String tableName, String idName, String versionName,
+ String id, Version version) {
+ noSqlDb.execute(
+ String.format("insert into %s (%s,%s) values (?,?)", tableName, idName, versionName), id,
+ versionMapper.toUDT(version));
+ }
+
+ private ResultSet loadVersionableEntityRecord(String tableName, String idName, String versionName,
+ String id, Version version) {
+ return noSqlDb.execute(
+ String.format("select * from %s where %s=? and %s=?", tableName, idName, versionName), id,
+ versionMapper.toUDT(version));
+ }*/
+
+
+ private static void assretVersionInfoEntity(VersionInfoEntity actual, String entityType,
+ String entityId, Version activeVersion,
+ Version candidateVersion, String candidateUser,
+ VersionStatus status, Set<Version> viewbleVersions,
+ Version latestFinalVersion) {
+ Assert.assertNotNull(actual);
+ Assert.assertEquals(actual.getEntityType(), entityType);
+ Assert.assertEquals(actual.getEntityId(), entityId);
+ Assert.assertEquals(actual.getActiveVersion(), activeVersion);
+ if (candidateVersion != null && candidateUser != null) {
+ Assert.assertEquals(actual.getCandidate().getVersion(), candidateVersion);
+ Assert.assertEquals(actual.getCandidate().getUser(), candidateUser);
+ } else {
+ Assert.assertNull(actual.getCandidate());
+ }
+ Assert.assertEquals(actual.getStatus(), status);
+ Assert.assertEquals(actual.getViewableVersions().size(), viewbleVersions.size());
+ Assert.assertEquals(actual.getViewableVersions(), viewbleVersions);
+ Assert.assertEquals(actual.getLatestFinalVersion(), latestFinalVersion);
+ }
+
+ private static void assertVersionInfo(VersionInfo actual, Version activeVersion,
+ VersionStatus status, String lockingUser,
+ Set<Version> viewableVersions, Version latestFinalVersion) {
+ Assert.assertNotNull(actual);
+ Assert.assertEquals(actual.getActiveVersion(), activeVersion);
+ Assert.assertEquals(actual.getStatus(), status);
+ Assert.assertEquals(actual.getLockingUser(), lockingUser);
+ Assert.assertEquals(actual.getViewableVersions().size(), viewableVersions.size());
+ Assert.assertEquals(actual.getViewableVersions(), viewableVersions);
+ Assert.assertEquals(actual.getLatestFinalVersion(), latestFinalVersion);
+ }
+
+ private VersionInfoEntity mockVersionInfoEntity(String entityType, String entityId,
+ VersionStatus status, Version activeVersion,
+ UserCandidateVersion candidate,
+ Set<Version> viewableVersions,
+ Version latestFinalVersion) {
+ VersionInfoEntity mock = new VersionInfoEntity();
+ mock.setEntityType(entityType);
+ mock.setEntityId(entityId);
+ mock.setStatus(status);
+ mock.setActiveVersion(activeVersion);
+ mock.setCandidate(candidate);
+ mock.setViewableVersions(viewableVersions);
+ mock.setLatestFinalVersion(latestFinalVersion);
+
+ doReturn(mock).when(versionInfoDaoMock).get(anyObject());
+ return mock;
+ }
+}
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/resources/logback.xml b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/resources/logback.xml
new file mode 100644
index 0000000000..c1932e31e8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-core/src/test/resources/logback.xml
@@ -0,0 +1,15 @@
+<configuration>
+
+ <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+ <!-- encoders are assigned the type
+ ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
+ <encoder>
+ <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
+ </encoder>
+ </appender>
+
+ <root level="warn">
+ <appender-ref ref="STDOUT" />
+ </root>
+
+</configuration> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml b/openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml
index 94b2729130..32c8207247 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml
@@ -1,17 +1,19 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-versioning-lib</name>
+ <artifactId>openecomp-sdc-versioning-lib</artifactId>
+ <packaging>pom</packaging>
+
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <artifactId>openecomp-sdc-versioning-lib</artifactId>
- <packaging>pom</packaging>
- <name>openecomp-sdc-versioning-lib</name>
-
<modules>
<module>openecomp-sdc-versioning-api</module>
<module>openecomp-sdc-versioning-core</module>
@@ -20,4 +22,4 @@
<dependencies>
</dependencies>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..7804ebfabc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/pom.xml.versionsBackup
@@ -0,0 +1,24 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-versioning-lib</name>
+ <artifactId>openecomp-sdc-versioning-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-sdc-versioning-api</module>
+ <module>openecomp-sdc-versioning-core</module>
+ </modules>
+
+ <dependencies>
+
+ </dependencies>
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-tosca-lib/pom.xml b/openecomp-be/lib/openecomp-tosca-lib/pom.xml
index bcca8e70c2..52a4061c2f 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/pom.xml
+++ b/openecomp-be/lib/openecomp-tosca-lib/pom.xml
@@ -1,23 +1,22 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
-
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-tosca-lib</name>
+ <artifactId>openecomp-tosca-lib</artifactId>
<parent>
<artifactId>openecomp-sdc-lib</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
-
- <artifactId>openecomp-tosca-lib</artifactId>
- <name>openecomp-tosca-lib</name>
-
-
<dependencies>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-utilities-lib</artifactId>
<version>${project.version}</version>
</dependency>
@@ -27,37 +26,61 @@
<version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.openecomp.sdc</groupId>
+ <groupId>org.openecomp.core</groupId>
<artifactId>openecomp-common-lib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
+ <version>${logback.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>RELEASE</version>
+ <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <version>1.10.19</version>
- <scope>test</scope>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>19.0</version>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-tosca-datatype</artifactId>
+ <version>${openecomp.sdc.common.version}</version>
</dependency>
-
</dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>${mvn.surefire.version}</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
-
-
-
-
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/openecomp-tosca-lib/pom.xml.versionsBackup b/openecomp-be/lib/openecomp-tosca-lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..be3c3509ad
--- /dev/null
+++ b/openecomp-be/lib/openecomp-tosca-lib/pom.xml.versionsBackup
@@ -0,0 +1,87 @@
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.core</groupId>
+ <name>openecomp-tosca-lib</name>
+ <dependencies>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-utilities-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-datatypes-lib</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.core</groupId>
+ <artifactId>openecomp-common-lib</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ <version>${logback.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>RELEASE</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>openecomp-sdc-logging-core</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-core</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ <scope>runtime</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-configuration-management-api</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.openecomp.sdc.common</groupId>
+ <artifactId>openecomp-tosca-datatype</artifactId>
+ <version>1707.0.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.19.1</version>
+ <configuration>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+
+ <artifactId>openecomp-tosca-lib</artifactId>
+
+ <parent>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+
+</project> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaArtifactType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaArtifactType.java
index 2da60c0b79..9e353a25df 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaArtifactType.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaArtifactType.java
@@ -21,19 +21,17 @@
package org.openecomp.sdc.tosca.datatypes;
-public enum ToscaArtifactType {
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
- DEPLOYMENT("tosca.artifacts.Deployment"),;
+public class ToscaArtifactType {
- private String displayName;
+ private static Configuration config = ConfigurationManager.lookup();
- ToscaArtifactType(String displayName) {
- this.displayName = displayName;
- }
-
- public String getDisplayName() {
- return displayName;
- }
+ public static String ARTIFACT_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_ARTIFACT_TYPE);
+ public static String NATIVE_DEPLOYMENT = "tosca.artifacts.Deployment";
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaCapabilityType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaCapabilityType.java
index d26eb3a83a..b3a0e69c88 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaCapabilityType.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaCapabilityType.java
@@ -21,32 +21,34 @@
package org.openecomp.sdc.tosca.datatypes;
-public enum ToscaCapabilityType {
-
- ROOT("tosca.capabilities.Root"),
- NODE("tosca.capabilities.Node"),
- CONTAINER("tosca.capabilities.Container"),
- NETWORK_BINDABLE("tosca.capabilities.network.Bindable"),
- SCALABLE("tosca.capabilities.Scalable"),
- OPERATING_SYSTEM("tosca.capabilities.OperatingSystem"),
- ENDPOINT_ADMIN("tosca.capabilities.Endpoint.Admin"),
- ATTACHMENT("tosca.capabilities.Attachment"),
- NETWORK_LINKABLE("tosca.capabilities.network.Linkable"),
- METRIC("org.openecomp.capabilities.Metric"),
- NFV_METRIC("tosca.capabilities.nfv.Metric"),
- METRIC_CEILOMETER("org.openecomp.capabilities.metric.Ceilometer"),
- METRIC_SNMP_TRAP("org.openecomp.capabilities.metric.SnmpTrap"),
- METRIC_SNMP_POLLING("org.openecomp.capabilities.metric.SnmpPolling"),;
-
- private String displayName;
-
- ToscaCapabilityType(String displayName) {
- this.displayName = displayName;
- }
-
- public String getDisplayName() {
- return displayName;
- }
-
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
+
+public class ToscaCapabilityType {
+
+ private static Configuration config = ConfigurationManager.lookup();
+
+ public static String CAPABILITY_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_CAPABILITY_TYPE);
+
+ //TOSCA native types
+ public static String NATIVE_ROOT = "tosca.capabilities.Root";
+ public static String NATIVE_NODE = "tosca.capabilities.Node";
+ public static String NATIVE_CONTAINER = "tosca.capabilities.Container";
+ public static String NATIVE_COMPUTE = "tosca.capabilities.Compute";
+ public static String NATIVE_NETWORK_BINDABLE = "tosca.capabilities.network.Bindable";
+ public static String NATIVE_SCALABLE = "tosca.capabilities.Scalable";
+ public static String NATIVE_OPERATING_SYSTEM = "tosca.capabilities.OperatingSystem";
+ public static String NATIVE_ENDPOINT_ADMIN = "tosca.capabilities.Endpoint.Admin";
+ public static String NATIVE_ATTACHMENT = "tosca.capabilities.Attachment";
+ public static String NATIVE_NETWORK_LINKABLE = "tosca.capabilities.network.Linkable";
+ public static String NATIVE_NFV_METRIC = "tosca.capabilities.nfv.Metric";
+
+ //Additional types
+ public static String METRIC = CAPABILITY_PREFIX + "Metric";
+ public static String METRIC_CEILOMETER = CAPABILITY_PREFIX + "metric.Ceilometer";
+ public static String METRIC_SNMP_TRAP = CAPABILITY_PREFIX + "metric.SnmpTrap";
+ public static String METRIC_SNMP_POLLING = CAPABILITY_PREFIX + "metric.SnmpPolling";
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaDataType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaDataType.java
index 2a9df65b17..37d1d2c4ba 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaDataType.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaDataType.java
@@ -21,64 +21,83 @@
package org.openecomp.sdc.tosca.datatypes;
-public enum ToscaDataType {
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
- ROOT("tosca.datatypes.Root"),
- NETWORK_NETWORK_INFO("tosca.datatypes.network.NetworkInfo"),
- NETWORK_PORT_INFO("tosca.datatypes.network.PortInfo"),
- NOVA_SERVER_PORT_EXTRA_PROPERTIES(
- "org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties"),
- NETWORK_ADDRESS_PAIR("org.openecomp.datatypes.heat.network.AddressPair"),
- NEUTRON_PORT_FIXED_IPS("org.openecomp.datatypes.heat.neutron.port.FixedIps"),
- CONTRAIL_NETWORK_RULE("org.openecomp.datatypes.heat.contrail.network.rule.Rule"),
- CONTRAIL_NETWORK_RULE_LIST("org.openecomp.datatypes.heat.contrail.network.rule.RuleList"),
- CONTRAIL_NETWORK_RULE_PORT_PAIRS("org.openecomp.datatypes.heat.contrail.network.rule.PortPairs"),
- CONTRAIL_NETWORK_RULE_VIRTUAL_NETWORK(
- "org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork"),
- CONTRAILV2_NETWORK_RULE("org.openecomp.datatypes.heat.contrailV2.network.rule.Rule"),
- CONTRAILV2_NETWORK_RULE_LIST("org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList"),
- CONTRAILV2_NETWORK_RULE_SRC_PORT_PAIRS(
- "org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs"),
- CONTRAILV2_NETWORK_RULE_DST_PORT_PAIRS(
- "org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs"),
- CONTRAILV2_NETWORK_RULE_DST_VIRTUAL_NETWORK(
- "org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork"),
- CONTRAILV2_NETWORK_RULE_SRC_VIRTUAL_NETWORK(
- "org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork"),
- CONTRAILV2_VIRTUAL_MACHINE_INTERFACE_PROPERTIES(
- "org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties"),
- CONTRAILV2_NETWORK_RULE_ACTION_LIST(
- "org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList"),
- CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA(
- "org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData"),
- CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET_LIST(
- "org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList"),
- CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET(
- "org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet"),
- CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA(
- "org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData"),
- CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA_SEQUENCE(
- "org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence"),
- NOVA_SERVER_NETWORK_ADDRESS_INFO("org.openecomp.datatypes.heat.novaServer.network.AddressInfo"),
- NEUTRON_SUBNET("org.openecomp.datatypes.heat.network.neutron.Subnet"),
- NETWORK_ALLOCATION_POOL("org.openecomp.datatypes.heat.network.AllocationPool"),
- NETWORK_HOST_ROUTE("org.openecomp.datatypes.heat.network.subnet.HostRoute"),
- SUBSTITUTION_FILTER("org.openecomp.datatypes.heat.substitution.SubstitutionFilter"),
- SUBSTITUTION_FILTERING("org.openecomp.datatypes.heat.substitution.SubstitutionFiltering"),
- NEUTRON_SECURITY_RULES_RULE("org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule"),
- CONTRAIL_STATIC_ROUTE("org.openecomp.datatypes.heat.network.contrail.port.StaticRoute"),
- CONTRAIL_ADDRESS_PAIR("org.openecomp.datatypes.heat.network.contrail.AddressPair"),
- CONTRAIL_INTERFACE_DATA("org.openecomp.datatypes.heat.network.contrail.InterfaceData");
+public class ToscaDataType {
- private String displayName;
+ private static Configuration config = ConfigurationManager.lookup();
- ToscaDataType(String displayName) {
- this.displayName = displayName;
- }
-
- public String getDisplayName() {
- return displayName;
- }
+ public static String DATA_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_DATA_TYPE);
+ //TOSCA native types
+ public static String NATIVE_ROOT = "tosca.datatypes.Root";
+ public static String NATIVE_NETWORK_NETWORK_INFO = "tosca.datatypes.network.NetworkInfo";
+ public static String NATIVE_NETWORK_PORT_INFO = "tosca.datatypes.network.PortInfo";
+ //Additional types
+ public static String NOVA_SERVER_PORT_EXTRA_PROPERTIES =
+ DATA_TYPE_PREFIX + "heat.novaServer.network.PortExtraProperties";
+ public static String NETWORK_ADDRESS_PAIR = DATA_TYPE_PREFIX + "heat.network.AddressPair";
+ public static String NEUTRON_PORT_FIXED_IPS = DATA_TYPE_PREFIX + "heat.neutron.port.FixedIps";
+ public static String CONTRAIL_NETWORK_RULE = DATA_TYPE_PREFIX + "heat.contrail.network.rule.Rule";
+ public static String CONTRAIL_NETWORK_RULE_LIST =
+ DATA_TYPE_PREFIX + "heat.contrail.network.rule.RuleList";
+ public static String CONTRAIL_NETWORK_RULE_PORT_PAIRS =
+ DATA_TYPE_PREFIX + "heat.contrail.network.rule.PortPairs";
+ public static String CONTRAIL_NETWORK_RULE_VIRTUAL_NETWORK =
+ DATA_TYPE_PREFIX + "heat.contrail.network.rule.VirtualNetwork";
+ public static String CONTRAILV2_NETWORK_RULE =
+ DATA_TYPE_PREFIX + "heat.contrailV2.network.rule.Rule";
+ public static String CONTRAILV2_NETWORK_RULE_LIST =
+ DATA_TYPE_PREFIX + "heat.contrailV2.network.rule.RuleList";
+ public static String CONTRAILV2_NETWORK_RULE_SRC_PORT_PAIRS =
+ DATA_TYPE_PREFIX + "heat.contrailV2.network.rule.SrcPortPairs";
+ public static String CONTRAILV2_NETWORK_RULE_DST_PORT_PAIRS =
+ DATA_TYPE_PREFIX + "heat.contrailV2.network.rule.DstPortPairs";
+ public static String CONTRAILV2_NETWORK_RULE_DST_VIRTUAL_NETWORK =
+ DATA_TYPE_PREFIX + "heat.contrailV2.network.rule.DstVirtualNetwork";
+ public static String CONTRAILV2_NETWORK_RULE_SRC_VIRTUAL_NETWORK =
+ DATA_TYPE_PREFIX + "heat.contrailV2.network.rule.SrcVirtualNetwork";
+ public static String CONTRAILV2_VIRTUAL_MACHINE_INTERFACE_PROPERTIES =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.machine.interface.Properties";
+ public static String CONTRAILV2_NETWORK_RULE_ACTION_LIST =
+ DATA_TYPE_PREFIX + "heat.contrailV2.network.rule.ActionList";
+ public static String CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.network.rule.IpamRefData";
+ public static String CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET_LIST =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList";
+ public static String CONTRAILV2_VIRTUAL_NETWORK_IPAM_REF_DATA_IPAM_SUBNET =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet";
+ public static String CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.network.rule.RefData";
+ public static String CONTRAILV2_VIRTUAL_NETWORK_POLICY_REF_DATA_SEQUENCE =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.network.rule.RefDataSequence";
+ public static String NOVA_SERVER_NETWORK_ADDRESS_INFO =
+ DATA_TYPE_PREFIX + "heat.novaServer.network.AddressInfo";
+ public static String NEUTRON_SUBNET = DATA_TYPE_PREFIX + "heat.network.neutron.Subnet";
+ public static String NETWORK_ALLOCATION_POOL = DATA_TYPE_PREFIX + "heat.network.AllocationPool";
+ public static String NETWORK_HOST_ROUTE = DATA_TYPE_PREFIX + "heat.network.subnet.HostRoute";
+ public static String SUBSTITUTION_FILTERING =
+ DATA_TYPE_PREFIX + "heat.substitution.SubstitutionFiltering";
+ public static String NEUTRON_SECURITY_RULES_RULE =
+ DATA_TYPE_PREFIX + "heat.network.neutron.SecurityRules.Rule";
+ public static String CONTRAIL_STATIC_ROUTE =
+ DATA_TYPE_PREFIX + "heat.network.contrail.port.StaticRoute";
+ public static String CONTRAIL_ADDRESS_PAIR =
+ DATA_TYPE_PREFIX + "heat.network.contrail.AddressPair";
+ public static String CONTRAIL_INTERFACE_DATA =
+ DATA_TYPE_PREFIX + "heat.network.contrail.InterfaceData";
+ public static String CONTRAILV2_VIRTUAL_MACHINE_SUB_INTERFACE_PROPERTIES =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.machine.subInterface.Properties";
+ public static String CONTRAILV2_VIRTUAL_MACHINE_SUB_INTERFACE_MAC_ADDRESS =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.machine.subInterface.MacAddress";
+ public static String CONTRAILV2_VIRTUAL_MACHINE_SUB_INTERFACE_ADDRESS_PAIRS =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.machine.subInterface.AddressPairs";
+ public static String CONTRAILV2_VIRTUAL_MACHINE_SUB_INTERFACE_ADDRESS_PAIR =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.machine.subInterface.AddressPair";
+ public static String CONTRAILV2_VIRTUAL_MACHINE_SUB_INTERFACE_ADDRESS_PAIR_IP =
+ DATA_TYPE_PREFIX + "heat.contrailV2.virtual.machine.subInterface.AddressPairIp";
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaElementTypes.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaElementTypes.java
index 97fec7ae7d..584bf3036f 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaElementTypes.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaElementTypes.java
@@ -21,5 +21,12 @@
package org.openecomp.sdc.tosca.datatypes;
public enum ToscaElementTypes {
- CAPABILITY_TYPE
+ CAPABILITY_TYPE,
+ NODE_TYPE,
+ ARTIFACT_TYPE,
+ DATA_TYPE,
+ INTERFCAE_TYPE,
+ RELATIONSHIP_TYPE,
+ GROUP_TYPE,
+ POLICY_TYPE
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaGroupType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaGroupType.java
index 5422fa6dc9..c2070c34f4 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaGroupType.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaGroupType.java
@@ -20,21 +20,22 @@
package org.openecomp.sdc.tosca.datatypes;
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
-public enum ToscaGroupType {
+public class ToscaGroupType {
- ROOT("tosca.groups.Root"),
- HEAT_STACK("org.openecomp.groups.heat.HeatStack"),;
+ private static Configuration config = ConfigurationManager.lookup();
- private String displayName;
+ public static String GROUP_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_GROUP_TYPE);
- ToscaGroupType(String displayName) {
- this.displayName = displayName;
- }
+ //TOSCA native types
+ public static String NATIVE_ROOT = "tosca.groups.Root";
- public String getDisplayName() {
- return displayName;
- }
+ //Additional types
+ public static String HEAT_STACK = GROUP_TYPE_PREFIX + "heat.HeatStack";
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaNodeType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaNodeType.java
index c7c5a6e64e..22658c8b1c 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaNodeType.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaNodeType.java
@@ -20,143 +20,66 @@
package org.openecomp.sdc.tosca.datatypes;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+public class ToscaNodeType {
-/**
- * The enum Tosca node type.
- */
-public enum ToscaNodeType {
+ private static Configuration config = ConfigurationManager.lookup();
- /**
- * Compute tosca node type.
- */
- COMPUTE("tosca.nodes.Compute"),
- /**
- * Root tosca node type.
- */
- ROOT("tosca.nodes.Root"),
- /**
- * Block storage tosca node type.
- */
- BLOCK_STORAGE("tosca.nodes.BlockStorage"),
- /**
- * Network tosca node type.
- */
- NETWORK("tosca.nodes.network.Network"),
- /**
- * Network port tosca node type.
- */
- NETWORK_PORT("tosca.nodes.network.Port"),
- /**
- * Nova server tosca node type.
- */
- NOVA_SERVER(ToscaConstants.NODES_PREFIX + "nova.Server"),
- /**
- * Cinder volume tosca node type.
- */
- CINDER_VOLUME(ToscaConstants.NODES_PREFIX + "cinder.Volume"),
- /**
- * Neutron net tosca node type.
- */
- NEUTRON_NET("org.openecomp.resource.vl.nodes.heat.network.neutron.Net"),
- /**
- * Neutron port tosca node type.
- */
- NEUTRON_PORT("org.openecomp.resource.cp.nodes.heat.network.neutron.Port"),
- /**
- * Neutron security rules tosca node type.
- */
- NEUTRON_SECURITY_RULES("org.openecomp.resource.vfc.rules.nodes"
- + ".heat.network.neutron.SecurityRules"),
- /**
- * Contrail virtual network tosca node type.
- */
- CONTRAIL_VIRTUAL_NETWORK("org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork"),
- /**
- * Contrail network rule tosca node type.
- */
- CONTRAIL_NETWORK_RULE("org.openecomp.resource.vfc."
- + "rules.nodes.heat.network.contrail.NetworkRules"),
- /**
- * Contrailv 2 virtual network tosca node type.
- */
- CONTRAILV2_VIRTUAL_NETWORK("org.openecomp.resource.vl.nodes."
- + "heat.network.contrailV2.VirtualNetwork"),
- /**
- * Contrailv 2 network rule tosca node type.
- */
- CONTRAILV2_NETWORK_RULE(
- "org.openecomp.resource.vfc.rules.nodes.heat.network.contrailV2.NetworkRules"),
- /**
- * Contrailv 2 virtual machine interface tosca node type.
- */
- CONTRAILV2_VIRTUAL_MACHINE_INTERFACE(
- "org.openecomp.resource.cp.nodes.heat.contrailV2.VirtualMachineInterface"),
- /**
- * Abstract substitute tosca node type.
- */
- ABSTRACT_SUBSTITUTE("org.openecomp.resource.abstract.nodes.AbstractSubstitute"),
- /**
- * Contrail compute tosca node type.
- */
- CONTRAIL_COMPUTE(ToscaConstants.NODES_PREFIX + "contrail.Compute"),
- /**
- * Contrail port tosca node type.
- */
- CONTRAIL_PORT("org.openecomp.resource.cp.nodes.heat.network.contrail.Port"),
- /**
- * Contrail abstract substitute tosca node type.
- */
- CONTRAIL_ABSTRACT_SUBSTITUTE("org.openecomp.resource.abstract."
- + "nodes.contrail.AbstractSubstitute"),;
+ public static String VFC_NODE_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_VFC);
+ public static String CP_NODE_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_CP);
+ public static String NETWORK_NODE_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_NETWORK);
+ public static String ABSTRACT_NODE_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_ABSTARCT);
+ public static String RULE_NODE_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_NODE_TYPE_RULE);
- private static final Map<String, ToscaNodeType> mMap =
- Collections.unmodifiableMap(initializeMapping());
- private String displayName;
+ //TOSCA native types
+ public static String NATIVE_COMPUTE = "tosca.nodes.Compute";
+ public static String NATIVE_ROOT = "tosca.nodes.Root";
+ public static String NATIVE_BLOCK_STORAGE = "tosca.nodes.BlockStorage";
+ public static String NATIVE_NETWORK = "tosca.nodes.network.Network";
+ public static String NATIVE_NETWORK_PORT = "tosca.nodes.network.Port";
- ToscaNodeType(String displayName) {
- this.displayName = displayName;
- }
+ //Additional types
+ public static String NOVA_SERVER = VFC_NODE_TYPE_PREFIX + "heat.nova.Server";
+ public static String CINDER_VOLUME = VFC_NODE_TYPE_PREFIX + "heat.cinder.Volume";
+ public static String COMPUTE = VFC_NODE_TYPE_PREFIX + "Compute";
+ public static String CONTRAIL_COMPUTE = VFC_NODE_TYPE_PREFIX + "heat.contrail.Compute";
- /**
- * Initialize mapping map.
- *
- * @return the map
- */
- public static Map<String, ToscaNodeType> initializeMapping() {
- Map<String, ToscaNodeType> toscaMap = new HashMap<>();
- for (ToscaNodeType v : ToscaNodeType.values()) {
- toscaMap.put(v.displayName, v);
- }
- return toscaMap;
- }
+ public static String NEUTRON_SECURITY_RULES =
+ RULE_NODE_TYPE_PREFIX + "heat.network.neutron.SecurityRules";
+ public static String CONTRAILV2_NETWORK_RULE =
+ RULE_NODE_TYPE_PREFIX + "heat.network.contrailV2.NetworkRules";
+ public static String CONTRAIL_NETWORK_RULE =
+ RULE_NODE_TYPE_PREFIX + "heat.network.contrail.NetworkRules";
- /**
- * Gets tosca node type by display name.
- *
- * @param displayName the display name
- * @return the tosca node type by display name
- */
- public static ToscaNodeType getToscaNodeTypeByDisplayName(String displayName) {
- if (mMap.containsKey(displayName)) {
- return mMap.get(displayName);
- }
- return null;
- }
+ public static String NEUTRON_NET = NETWORK_NODE_TYPE_PREFIX + "heat.network.neutron.Net";
+ public static String CONTRAILV2_VIRTUAL_NETWORK =
+ NETWORK_NODE_TYPE_PREFIX + "heat.network.contrailV2.VirtualNetwork";
+ public static String CONTRAIL_VIRTUAL_NETWORK =
+ NETWORK_NODE_TYPE_PREFIX + "heat.network.contrail.VirtualNetwork";
+ public static String NETWORK = NETWORK_NODE_TYPE_PREFIX + "network.Network";
- /**
- * Gets display name.
- *
- * @return the display name
- */
- public String getDisplayName() {
- return displayName;
- }
+ public static String NEUTRON_PORT = CP_NODE_TYPE_PREFIX + "heat.network.neutron.Port";
+ public static String CONTRAILV2_VIRTUAL_MACHINE_INTERFACE =
+ CP_NODE_TYPE_PREFIX + "heat.contrailV2.VirtualMachineInterface";
+ public static String CONTRAIL_PORT = CP_NODE_TYPE_PREFIX + "heat.network.contrail.Port";
+ public static String NETWORK_PORT = CP_NODE_TYPE_PREFIX + "network.Port";
+ public static String NETWORK_SUB_INTERFACE = CP_NODE_TYPE_PREFIX + "network.SubInterface";
+ public static String CONTRAILV2_VLAN_SUB_INTERFACE = CP_NODE_TYPE_PREFIX
+ + "heat.network.contrailV2.VLANSubInterface";
+ public static String ABSTRACT_SUBSTITUTE = ABSTRACT_NODE_TYPE_PREFIX + "AbstractSubstitute";
+ public static String VFC_ABSTRACT_SUBSTITUTE = ABSTRACT_NODE_TYPE_PREFIX + "VFC";
+ public static String CONTRAIL_ABSTRACT_SUBSTITUTE =
+ ABSTRACT_NODE_TYPE_PREFIX + "contrail.AbstractSubstitute";
}
+
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaPolicyType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaPolicyType.java
index 38195782d2..ed0232929b 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaPolicyType.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaPolicyType.java
@@ -20,24 +20,21 @@
package org.openecomp.sdc.tosca.datatypes;
-public enum ToscaPolicyType {
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
- PLACEMENT("tosca.policy.placement"),
- PLACEMENT_ANTILOCATE("org.openecomp.policies.placement.Antilocate"),
- PLACEMENT_COLOCATE("org.openecomp.policies.placement.Colocate"),
- PLACEMENT_VALET_AFFINITY("org.openecomp.policies.placement.valet.Affinity"),
- PLACEMENT_VALET_EXCLUSIVITY("org.openecomp.policies.placement.valet.Exclusivity"),
- PLACEMENT_VALET_DIVERSITY("org.openecomp.policies.placement.valet.Diversity");
+public class ToscaPolicyType {
- private String displayName;
+ private static Configuration config = ConfigurationManager.lookup();
- ToscaPolicyType(String displayName) {
- this.displayName = displayName;
- }
-
- public String getDisplayName() {
- return displayName;
- }
+ public static String POLICY_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_POLICY_TYPE);
+ //TOSCA native types
+ public static String NATIVE_PLACEMENT = "tosca.policy.placement";
+ //Additional types
+ public static String PLACEMENT_ANTILOCATE = POLICY_TYPE_PREFIX + "placement.Antilocate";
+ public static String PLACEMENT_COLOCATE = POLICY_TYPE_PREFIX + "placement.Colocate";
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaRelationshipType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaRelationshipType.java
index 03a35bd4d0..f1ef5ab234 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaRelationshipType.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaRelationshipType.java
@@ -20,25 +20,24 @@
package org.openecomp.sdc.tosca.datatypes;
-public enum ToscaRelationshipType {
+import org.openecomp.config.api.Configuration;
+import org.openecomp.config.api.ConfigurationManager;
+import org.openecomp.sdc.tosca.services.ConfigConstants;
- ROOT("tosca.relationships.Root"),
- NATIVE_ATTACHES_TO("tosca.relationships.AttachesTo"),
- DEPENDS_ON("tosca.relationships.DependsOn"),
- NETWORK_LINK_TO("tosca.relationships.network.LinksTo"),
- NETWORK_BINDS_TO("tosca.relationships.network.BindsTo"),
- CINDER_VOLUME_ATTACHES_TO("org.openecomp.relationships.heat.cinder.VolumeAttachesTo"),
- ATTACHES_TO("org.openecomp.relationships.AttachesTo"),;
+public class ToscaRelationshipType {
- private String displayName;
+ private static Configuration config = ConfigurationManager.lookup();
- ToscaRelationshipType(String displayName) {
- this.displayName = displayName;
- }
-
- public String getDisplayName() {
- return displayName;
- }
+ public static String RELATIONSHIP_TYPE_PREFIX =
+ config.getAsString(ConfigConstants.NAMESPACE, ConfigConstants.PREFIX_RELATIONSHIP_TYPE);
+ public static String NATIVE_ROOT = "tosca.relationships.Root";
+ public static String NATIVE_ATTACHES_TO = "tosca.relationships.AttachesTo";
+ public static String NATIVE_DEPENDS_ON = "tosca.relationships.DependsOn";
+ public static String NATIVE_NETWORK_LINK_TO = "tosca.relationships.network.LinksTo";
+ public static String NATIVE_NETWORK_BINDS_TO = "tosca.relationships.network.BindsTo";
+ public static String CINDER_VOLUME_ATTACHES_TO =
+ RELATIONSHIP_TYPE_PREFIX + "VolumeAttachesTo";
+ public static String ATTACHES_TO = RELATIONSHIP_TYPE_PREFIX + "AttachesTo";
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaServiceModel.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaServiceModel.java
index 70b23ae3f6..573ce395d5 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaServiceModel.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaServiceModel.java
@@ -27,6 +27,9 @@ import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import java.util.Collections;
import java.util.Map;
+/**
+ * Tosca service model.
+ */
public class ToscaServiceModel implements AsdcModel {
private FileContentHandler artifactFiles;
private Map<String, ServiceTemplate> serviceTemplates;
@@ -48,24 +51,48 @@ public class ToscaServiceModel implements AsdcModel {
}
+ /**
+ * Gets artifact files.
+ *
+ * @return the artifact files
+ */
public FileContentHandler getArtifactFiles() {
- return artifactFiles;//MapUtils.isEmpty(artifactFiles) ? Collections.EMPTY_MAP
- // : Collections.unmodifiableMap(artifactFiles);
+ return artifactFiles;
}
+ /**
+ * Gets service templates.
+ *
+ * @return the service templates
+ */
public Map<String, ServiceTemplate> getServiceTemplates() {
return Collections.unmodifiableMap(serviceTemplates);
}
+ /**
+ * Sets service templates.
+ *
+ * @param serviceTemplates the service templates
+ */
public void setServiceTemplates(Map<String, ServiceTemplate> serviceTemplates) {
this.serviceTemplates = serviceTemplates;
}
+ /**
+ * Gets entry definition service template.
+ *
+ * @return the entry definition service template
+ */
public String getEntryDefinitionServiceTemplate() {
return entryDefinitionServiceTemplate;
}
+ /**
+ * Sets entry definition service template.
+ *
+ * @param entryDefinitionServiceTemplate the entry definition service template
+ */
public void setEntryDefinitionServiceTemplate(String entryDefinitionServiceTemplate) {
this.entryDefinitionServiceTemplate = entryDefinitionServiceTemplate;
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaTopologyTemplateElements.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaTopologyTemplateElements.java
new file mode 100644
index 0000000000..576bab5df1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/ToscaTopologyTemplateElements.java
@@ -0,0 +1,10 @@
+package org.openecomp.sdc.tosca.datatypes;
+
+public enum ToscaTopologyTemplateElements {
+ NODE_TEMPLATE,
+ RELATIONSHIP_TEMPLATE,
+ GROUP,
+ POLICY,
+ WORKFLOW
+}
+
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ArtifactType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ArtifactType.java
deleted file mode 100644
index 80580e97f3..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ArtifactType.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class ArtifactType {
-
- private String derived_from;
- private String version;
- private String description;
- private String mime_type;
- private List<String> file_ext;
- private Map<String, PropertyDefinition> properties;
-
-
- public String getDerived_from() {
- return derived_from;
- }
-
- public void setDerived_from(String derivedFrom) {
- this.derived_from = derivedFrom;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public String getMime_type() {
- return mime_type;
- }
-
- public void setMime_type(String mimeType) {
- this.mime_type = mimeType;
- }
-
- public List<String> getFile_ext() {
- return file_ext;
- }
-
- public void setFile_ext(List<String> fileExt) {
- this.file_ext = fileExt;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/AttributeDefinition.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/AttributeDefinition.java
deleted file mode 100644
index 13c93a283d..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/AttributeDefinition.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-public class AttributeDefinition {
-
- private String type;
- private String description;
- private Object _default;
- private Status status;
- private EntrySchema entry_schema;
-
- public AttributeDefinition() {
- status = Status.SUPPORTED;
- }
-
- public EntrySchema getEntry_schema() {
- return entry_schema;
- }
-
- public void setEntry_schema(EntrySchema entrySchema) {
- this.entry_schema = entrySchema;
- }
-
- public Status getStatus() {
- return status;
- }
-
- public void setStatus(Status status) {
- this.status = status;
- }
-
- public Object get_default() {
- return _default;
- }
-
- public void set_default(Object defaultValue) {
- this._default = defaultValue;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- @Override
- public AttributeDefinition clone() {
- AttributeDefinition attributeDefinition = new AttributeDefinition();
- attributeDefinition.setType(this.getType());
- attributeDefinition.setDescription(this.getDescription());
- attributeDefinition.set_default(this.get_default());
- attributeDefinition.setStatus(this.getStatus());
- attributeDefinition.setEntry_schema(this.getEntry_schema().clone());
- return attributeDefinition;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinition.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinition.java
deleted file mode 100644
index 36dccad6eb..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinition.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-
-import java.util.List;
-import java.util.Map;
-
-public class CapabilityDefinition {
-
- private String type;
- private String description;
- private Map<String, PropertyDefinition> properties;
- private Map<String, AttributeDefinition> attributes;
- private List<String> valid_source_types;
- private Object[] occurrences;
-
-
- /**
- * Instantiates a new Capability definition.
- */
- public CapabilityDefinition() {
- occurrences = new Object[2];
- occurrences[0] = 1;
- occurrences[1] = ToscaConstants.UNBOUNDED;
- }
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-
- public Map<String, AttributeDefinition> getAttributes() {
- return attributes;
- }
-
- public void setAttributes(Map<String, AttributeDefinition> attributes) {
- this.attributes = attributes;
- }
-
- public List<String> getValid_source_types() {
- return valid_source_types;
- }
-
- public void setValid_source_types(List<String> validSourceTypes) {
- this.valid_source_types = validSourceTypes;
- }
-
- public Object[] getOccurrences() {
- return occurrences;
- }
-
- public void setOccurrences(Object[] occurrences) {
- this.occurrences = occurrences;
- }
-
- @Override
- public CapabilityDefinition clone() {
- CapabilityDefinition capabilityDefinition = new CapabilityDefinition();
- capabilityDefinition
- .setOccurrences(new Object[]{this.getOccurrences()[0], this.getOccurrences()[1]});
- capabilityDefinition
- .setProperties(DataModelUtil.clonePropertyDefinitions(this.getProperties()));
- capabilityDefinition.setType(this.getType());
- capabilityDefinition
- .setAttributes(DataModelUtil.cloneAttributeDefinitions(this.getAttributes()));
- capabilityDefinition.setDescription(this.getDescription());
- capabilityDefinition
- .setValid_source_types(DataModelUtil.cloneValidSourceTypes(this.getValid_source_types()));
- return capabilityDefinition;
-
- }
-
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityType.java
deleted file mode 100644
index b0281b4ca0..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityType.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class CapabilityType {
-
- private String derived_from;
- private String version;
- private String description;
- private Map<String, PropertyDefinition> properties;
- private Map<String, AttributeDefinition> attributes;
- private List<String> valid_source_types;
-
- public String getDerived_from() {
- return derived_from;
- }
-
- public void setDerived_from(String derivedFrom) {
- this.derived_from = derivedFrom;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-
- public Map<String, AttributeDefinition> getAttributes() {
- return attributes;
- }
-
- public void setAttributes(Map<String, AttributeDefinition> attributes) {
- this.attributes = attributes;
- }
-
- public List<String> getValid_source_types() {
- return valid_source_types;
- }
-
- public void setValid_source_types(List<String> validSourceTypes) {
- this.valid_source_types = validSourceTypes;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Constraint.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Constraint.java
deleted file mode 100644
index 2c39ce3902..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Constraint.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class Constraint {
- private Object equal;
- private Object greater_or_equal;
- private Object greater_than;
- private Object less_than;
- private Object less_or_equal;
- private Object[] in_range;
- private List<Object> valid_values;
- private Integer length;
- private Integer min_length;
- private Integer max_length;
- private Object pattern;
-
- public Constraint() {
- }
-
- public Object getGreater_or_equal() {
- return greater_or_equal;
- }
-
- public void setGreater_or_equal(Object greaterOrEqual) {
- this.greater_or_equal = greaterOrEqual;
- }
-
- public Object getEqual() {
- return equal;
- }
-
- public void setEqual(Object equal) {
- this.equal = equal;
- }
-
- public Object getGreater_than() {
- return greater_than;
- }
-
- public void setGreater_than(Object greaterThan) {
- this.greater_than = greaterThan;
- }
-
- public Object getLess_than() {
- return less_than;
- }
-
- public void setLess_than(Object lessThan) {
- this.less_than = lessThan;
- }
-
- public Object getLess_or_equal() {
- return less_or_equal;
- }
-
- public void setLess_or_equal(Object lessOrEqual) {
- this.less_or_equal = lessOrEqual;
- }
-
- public Object[] getIn_range() {
- return in_range;
- }
-
- /**
- * Sets in range.
- *
- * @param inRange the in range
- */
- public void setIn_range(Object[] inRange) {
- this.in_range = new Object[2];
- this.in_range[0] = inRange[0];
- this.in_range[1] = inRange[1];
- }
-
- public List<Object> getValid_values() {
- return valid_values;
- }
-
- public void setValid_values(List<Object> validValues) {
- this.valid_values = validValues;
- }
-
- /**
- * Add valid value.
- *
- * @param validValue the valid value
- */
- public void addValidValue(Object validValue) {
- if (this.valid_values == null) {
- this.valid_values = new ArrayList<>();
- }
- valid_values.add(validValue);
- }
-
- public Integer getLength() {
- return length;
- }
-
- public void setLength(Integer length) {
- this.length = length;
- }
-
- public Integer getMin_length() {
- return min_length;
- }
-
- public void setMin_length(Integer minLength) {
- this.min_length = minLength;
- }
-
- public Integer getMax_length() {
- return max_length;
- }
-
- public void setMax_length(Integer maxLength) {
- this.max_length = maxLength;
- }
-
- public Object getPattern() {
- return pattern;
- }
-
- public void setPattern(Object pattern) {
- this.pattern = pattern;
- }
-
- @Override
- public Constraint clone() {
- Constraint constraint = new Constraint();
- constraint.setEqual(this.getEqual());
- constraint.setGreater_or_equal(this.getGreater_or_equal());
- constraint.setGreater_than(this.getGreater_than());
- cloneInRange(constraint);
- constraint.setLength(this.getLength());
- constraint.setLess_or_equal(this.getLess_or_equal());
- constraint.setLess_than(this.getLess_than());
- constraint.setMax_length(this.getMax_length());
- constraint.setMin_length(this.getMin_length());
- constraint.setPattern(this.getPattern());
- cloneValidValues(constraint);
-
- return constraint;
- }
-
- private void cloneInRange(Constraint constraint) {
- if (this.getIn_range() != null) {
- constraint.setIn_range(new Object[]{this.getIn_range()[0], this.getIn_range()[1]});
- }
- }
-
- private void cloneValidValues(Constraint constraint) {
- if (this.getValid_values() != null) {
- constraint.setValid_values(new ArrayList<>());
- for (Object entry : this.getValid_values()) {
- constraint.getValid_values().add(entry);
- }
- }
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/DataType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/DataType.java
deleted file mode 100644
index 866c5774d8..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/DataType.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class DataType {
-
- private String derived_from;
- private String version;
- private String description;
- private List<Constraint> constraints;
- private Map<String, PropertyDefinition> properties;
-
- public String getDerived_from() {
- return derived_from;
- }
-
- public void setDerived_from(String derivedFrom) {
- this.derived_from = derivedFrom;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public List<Constraint> getConstraints() {
- return constraints;
- }
-
- public void setConstraints(List<Constraint> constraints) {
- this.constraints = constraints;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/EntrySchema.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/EntrySchema.java
deleted file mode 100644
index 8b08e54c01..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/EntrySchema.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-
-import java.util.List;
-
-public class EntrySchema {
-
- private String description;
- private String type;
- private List<Constraint> constraints;
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public List<Constraint> getConstraints() {
- return constraints;
- }
-
- public void setConstraints(List<Constraint> constraints) {
- this.constraints = constraints;
- }
-
- @Override
- public EntrySchema clone() {
- EntrySchema entrySchema = new EntrySchema();
- entrySchema.setDescription(this.getDescription());
- entrySchema.setType(this.getType());
- entrySchema.setConstraints(DataModelUtil.cloneConstraints(this.getConstraints()));
- return entrySchema;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/GroupType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/GroupType.java
deleted file mode 100644
index 4bbb861286..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/GroupType.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class GroupType {
-
- private String derived_from;
- private String version;
- private String description;
- private Map<String, PropertyDefinition> properties;
- private List<String> members;
- private Map<String, InterfaceDefinition> interfaces;
-
- public String getDerived_from() {
- return derived_from;
- }
-
- public void setDerived_from(String derivedFrom) {
- this.derived_from = derivedFrom;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-
- public List<String> getMembers() {
- return members;
- }
-
- public void setMembers(List<String> members) {
- this.members = members;
- }
-
- public Map<String, InterfaceDefinition> getInterfaces() {
- return interfaces;
- }
-
- public void setInterfaces(Map<String, InterfaceDefinition> interfaces) {
- this.interfaces = interfaces;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Import.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Import.java
deleted file mode 100644
index 207a1b520a..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Import.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-public class Import {
-
- private String file;
- private String repository;
- private String namespace_uri;
- private String namespace_prefix;
-
- public String getFile() {
- return file;
- }
-
- public void setFile(String file) {
- this.file = file;
- }
-
- public String getRepository() {
- return repository;
- }
-
- public void setRepository(String repository) {
- this.repository = repository;
- }
-
- public String getNamespace_uri() {
- return namespace_uri;
- }
-
- public void setNamespace_uri(String namespaceUri) {
- this.namespace_uri = namespaceUri;
- }
-
- public String getNamespace_prefix() {
- return namespace_prefix;
- }
-
- public void setNamespace_prefix(String namespacePrefix) {
- this.namespace_prefix = namespacePrefix;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeTemplate.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeTemplate.java
deleted file mode 100644
index 41ac232605..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeTemplate.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class NodeTemplate implements Template {
-
- private String type;
- private String description;
- private List<String> directives;
- private Map<String, Object> properties;
- private Map<String, Object> attributes;
- private List<Map<String, RequirementAssignment>> requirements;
- private List<Map<String, CapabilityAssignment>> capabilities;
- private Map<String, InterfaceDefinition> interfaces;
- private Map<String, ArtifactDefinition> artifacts;
- private NodeFilter node_filter;
- private String copy;
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public List<String> getDirectives() {
- return directives;
- }
-
- public void setDirectives(List<String> directives) {
- this.directives = directives;
- }
-
- public Map<String, Object> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, Object> properties) {
- this.properties = properties;
- }
-
- public Map<String, Object> getAttributes() {
- return attributes;
- }
-
- public void setAttributes(Map<String, Object> attributes) {
- this.attributes = attributes;
- }
-
- public List<Map<String, RequirementAssignment>> getRequirements() {
- return requirements;
- }
-
- public void setRequirements(List<Map<String, RequirementAssignment>> requirements) {
- this.requirements = requirements;
- }
-
- public List<Map<String, CapabilityAssignment>> getCapabilities() {
- return capabilities;
- }
-
- public void setCapabilities(List<Map<String, CapabilityAssignment>> capabilities) {
- this.capabilities = capabilities;
- }
-
- public Map<String, InterfaceDefinition> getInterfaces() {
- return interfaces;
- }
-
- public void setInterfaces(Map<String, InterfaceDefinition> interfaces) {
- this.interfaces = interfaces;
- }
-
- public Map<String, ArtifactDefinition> getArtifacts() {
- return artifacts;
- }
-
- public void setArtifacts(Map<String, ArtifactDefinition> artifacts) {
- this.artifacts = artifacts;
- }
-
- public NodeFilter getNode_filter() {
- return node_filter;
- }
-
- public void setNode_filter(NodeFilter nodeFilter) {
- this.node_filter = nodeFilter;
- }
-
- public String getCopy() {
- return copy;
- }
-
- public void setCopy(String copy) {
- this.copy = copy;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeType.java
deleted file mode 100644
index d477f286ee..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/NodeType.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class NodeType {
-
- private String derived_from;
- private String version;
- private String description;
- private Map<String, PropertyDefinition> properties;
- private Map<String, AttributeDefinition> attributes;
- private List<Map<String, RequirementDefinition>> requirements;
- private Map<String, CapabilityDefinition> capabilities;
- private Map<String, InterfaceDefinition> interfaces;
- private Map<String, ArtifactDefinition> artifacts;
-
-
- public String getDerived_from() {
- return derived_from;
- }
-
- public void setDerived_from(String derivedFrom) {
- this.derived_from = derivedFrom;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-
- public Map<String, AttributeDefinition> getAttributes() {
- return attributes;
- }
-
- public void setAttributes(Map<String, AttributeDefinition> attributes) {
- this.attributes = attributes;
- }
-
- public List<Map<String, RequirementDefinition>> getRequirements() {
- return requirements;
- }
-
- public void setRequirements(List<Map<String, RequirementDefinition>> requirements) {
- this.requirements = requirements;
- }
-
- public Map<String, CapabilityDefinition> getCapabilities() {
- return capabilities;
- }
-
- public void setCapabilities(Map<String, CapabilityDefinition> capabilities) {
- this.capabilities = capabilities;
- }
-
- public Map<String, InterfaceDefinition> getInterfaces() {
- return interfaces;
- }
-
- public void setInterfaces(Map<String, InterfaceDefinition> interfaces) {
- this.interfaces = interfaces;
- }
-
- public Map<String, ArtifactDefinition> getArtifacts() {
- return artifacts;
- }
-
- public void setArtifacts(Map<String, ArtifactDefinition> artifacts) {
- this.artifacts = artifacts;
- }
-
- @Override
- public NodeType clone() {
- NodeType clone = new NodeType();
- clone.setCapabilities(this.getCapabilities());
- clone.setDerived_from(this.getDerived_from());
- clone.setProperties(this.getProperties());
- clone.setRequirements(this.getRequirements());
- clone.setDescription(this.getDescription());
- clone.setAttributes(this.getAttributes());
- clone.setInterfaces(this.getInterfaces());
- clone.setVersion(this.getVersion());
- clone.setArtifacts(this.getArtifacts());
- return clone;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Old1610ServiceTemplate.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Old1610ServiceTemplate.java
new file mode 100644
index 0000000000..2ee7bca5bc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/Old1610ServiceTemplate.java
@@ -0,0 +1,152 @@
+package org.openecomp.sdc.tosca.datatypes.model;
+
+import org.openecomp.sdc.tosca.datatypes.model.ArtifactType;
+import org.openecomp.sdc.tosca.datatypes.model.CapabilityType;
+import org.openecomp.sdc.tosca.datatypes.model.DataType;
+import org.openecomp.sdc.tosca.datatypes.model.GroupType;
+import org.openecomp.sdc.tosca.datatypes.model.Import;
+import org.openecomp.sdc.tosca.datatypes.model.InterfaceType;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.PolicyType;
+import org.openecomp.sdc.tosca.datatypes.model.RelationshipType;
+import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.Template;
+import org.openecomp.sdc.tosca.datatypes.model.TopologyTemplate;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Created by Talio on 3/30/2017.
+ */
+public class Old1610ServiceTemplate {
+
+ private String tosca_definitions_version;
+ private Map<String, String> metadata;
+ private String description;
+ private Map<String, Import> imports;
+ private Map<String, ArtifactType> artifact_types;
+ private Map<String, DataType> data_types;
+ private Map<String, CapabilityType> capability_types;
+ private Map<String, Object> interface_types;
+ private Map<String, RelationshipType> relationship_types;
+ private Map<String, NodeType> node_types;
+ private Map<String, GroupType> group_types;
+ private Map<String, PolicyType> policy_types;
+ private TopologyTemplate topology_template;
+
+ public String getTosca_definitions_version() {
+ return tosca_definitions_version;
+ }
+
+ public void setTosca_definitions_version(String tosca_definitions_version) {
+ this.tosca_definitions_version = tosca_definitions_version;
+ }
+
+ public Map<String, String> getMetadata() {
+ return metadata;
+ }
+
+ public void setMetadata(Map<String, String> metadata) {
+ this.metadata = metadata;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+
+ public Map<String, Import> getImports() {
+ return this.imports;
+ }
+
+ public void setImports(
+ Map<String, Import> imports) {
+ this.imports = imports;
+ }
+
+ public Map<String, ArtifactType> getArtifact_types() {
+ return artifact_types;
+ }
+
+ public void setArtifact_types(
+ Map<String, ArtifactType> artifact_types) {
+ this.artifact_types = artifact_types;
+ }
+
+ public Map<String, DataType> getData_types() {
+ return data_types;
+ }
+
+ public void setData_types(
+ Map<String, DataType> data_types) {
+ this.data_types = data_types;
+ }
+
+ public Map<String, CapabilityType> getCapability_types() {
+ return capability_types;
+ }
+
+ public void setCapability_types(
+ Map<String, CapabilityType> capability_types) {
+ this.capability_types = capability_types;
+ }
+
+ public Map<String, Object> getInterface_types() {
+ return interface_types;
+ }
+
+ public void setInterface_types(Map<String, Object> interface_types) {
+ this.interface_types = interface_types;
+ }
+
+ public Map<String, RelationshipType> getRelationship_types() {
+ return relationship_types;
+ }
+
+ public void setRelationship_types(
+ Map<String, RelationshipType> relationship_types) {
+ this.relationship_types = relationship_types;
+ }
+
+ public Map<String, NodeType> getNode_types() {
+ return node_types;
+ }
+
+ public void setNode_types(
+ Map<String, NodeType> node_types) {
+ this.node_types = node_types;
+ }
+
+ public Map<String, GroupType> getGroup_types() {
+ return group_types;
+ }
+
+ public void setGroup_types(
+ Map<String, GroupType> group_types) {
+ this.group_types = group_types;
+ }
+
+ public Map<String, PolicyType> getPolicy_types() {
+ return policy_types;
+ }
+
+ public void setPolicy_types(
+ Map<String, PolicyType> policy_types) {
+ this.policy_types = policy_types;
+ }
+
+ public TopologyTemplate getTopology_template() {
+ return topology_template;
+ }
+
+ public void setTopology_template(
+ TopologyTemplate topology_template) {
+ this.topology_template = topology_template;
+ }
+}
+
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ParameterDefinition.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ParameterDefinition.java
deleted file mode 100644
index 6ef4c782f5..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ParameterDefinition.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-
-public class ParameterDefinition {
-
- private String type;
- private String description;
- private Object value;
- private Boolean required;
- private Object _default;
- private Status status;
- private List<Constraint> constraints;
- private EntrySchema entry_schema;
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Object getValue() {
- return value;
- }
-
- public void setValue(Object value) {
- this.value = value;
- }
-
- public Boolean getRequired() {
- return required;
- }
-
- public void setRequired(Boolean required) {
- this.required = required;
- }
-
- public Object get_default() {
- return _default;
- }
-
- public void set_default(Object defaultValue) {
- this._default = defaultValue;
- }
-
- public Status getStatus() {
- return status;
- }
-
- public void setStatus(Status status) {
- this.status = status;
- }
-
- public List<Constraint> getConstraints() {
- return constraints;
- }
-
- public void setConstraints(List<Constraint> constraints) {
- this.constraints = constraints;
- }
-
- public EntrySchema getEntry_schema() {
- return entry_schema;
- }
-
- public void setEntry_schema(EntrySchema entrySchema) {
- this.entry_schema = entrySchema;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PolicyType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PolicyType.java
deleted file mode 100644
index 07412cda59..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PolicyType.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class PolicyType {
-
- private String derived_from;
- private String version;
- private String description;
- private Map<String, PropertyDefinition> properties;
- private List<String> targets;
-
- public String getDerived_from() {
- return derived_from;
- }
-
- public void setDerived_from(String derivedFrom) {
- this.derived_from = derivedFrom;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-
- public List<String> getTargets() {
- return targets;
- }
-
- public void setTargets(List<String> targets) {
- this.targets = targets;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyDefinition.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyDefinition.java
deleted file mode 100644
index cf47d0b113..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyDefinition.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import org.openecomp.sdc.tosca.services.DataModelUtil;
-
-import java.util.List;
-
-public class PropertyDefinition {
-
- private String type;
- private String description;
- private Boolean required;
- private Object _default;
- private Status status;
- private List<Constraint> constraints;
- private EntrySchema entry_schema;
-
- public PropertyDefinition() {
- status = Status.SUPPORTED;
- required = true;
- }
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Boolean getRequired() {
- return required;
- }
-
- public void setRequired(Boolean required) {
- this.required = required;
- }
-
- public Object get_default() {
- return _default;
- }
-
- public void set_default(Object defaultValue) {
- this._default = defaultValue;
- }
-
- public Status getStatus() {
- return status;
- }
-
- public void setStatus(Status status) {
- this.status = status;
- }
-
- public List<Constraint> getConstraints() {
- return constraints;
- }
-
- public void setConstraints(List<Constraint> constraints) {
- this.constraints = constraints;
- }
-
- public EntrySchema getEntry_schema() {
- return entry_schema;
- }
-
- public void setEntry_schema(EntrySchema entrySchema) {
- this.entry_schema = entrySchema;
- }
-
- @Override
- public PropertyDefinition clone() {
- PropertyDefinition propertyDefinition = new PropertyDefinition();
- propertyDefinition.setType(this.getType());
- propertyDefinition.setDescription(this.getDescription());
- propertyDefinition.setRequired(this.getRequired());
- propertyDefinition.set_default(this.get_default());
- propertyDefinition.setStatus(this.getStatus());
- propertyDefinition.setEntry_schema(this.getEntry_schema().clone());
- propertyDefinition.setConstraints(DataModelUtil.cloneConstraints(this.getConstraints()));
- return propertyDefinition;
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyType.java
deleted file mode 100644
index 3fdd9bba0e..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/PropertyType.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * The enum Property type.
- */
-public enum PropertyType {
-
- /**
- * String property type.
- */
- STRING("string"),
- /**
- * Integer property type.
- */
- INTEGER("integer"),
- /**
- * Float property type.
- */
- FLOAT("float"),
- /**
- * Boolean property type.
- */
- BOOLEAN("boolean"),
- /**
- * Timestamp property type.
- */
- TIMESTAMP("timestamp"),
- /**
- * Null property type.
- */
- NULL("null"),
- /**
- * Map property type.
- */
- MAP("map"),
- /**
- * List property type.
- */
- LIST("list"),
- /**
- * Scalar unit size property type.
- */
- SCALAR_UNIT_SIZE("scalar-unit.size");
-
- private static final Map<String, PropertyType> mMap =
- Collections.unmodifiableMap(initializeMapping());
- private String displayName;
-
- PropertyType(String displayName) {
-
- this.displayName = displayName;
- }
-
- /**
- * Initialize mapping map.
- *
- * @return the map
- */
- public static Map<String, PropertyType> initializeMapping() {
- Map<String, PropertyType> typeMap = new HashMap<String, PropertyType>();
- for (PropertyType v : PropertyType.values()) {
- typeMap.put(v.displayName, v);
- }
- return typeMap;
- }
-
- /**
- * Gets property type by display name.
- *
- * @param displayName the display name
- * @return the property type by display name
- */
- public static PropertyType getPropertyTypeByDisplayName(String displayName) {
- if (mMap == null) {
- initializeMapping();
- }
- if (mMap.containsKey(displayName)) {
- return mMap.get(displayName);
- }
- return null;
- }
-
- /**
- * Gets display name.
- *
- * @return the display name
- */
- public String getDisplayName() {
- return displayName;
- }
-
-
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipTemplate.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipTemplate.java
deleted file mode 100644
index c3a1195565..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipTemplate.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.Map;
-
-public class RelationshipTemplate implements Template {
-
- private String type;
- private String description;
- private Map<String, Object> properties;
- private Map<String, Object> attributes;
- private Map<String, RequirementAssignment> requirements;
- private Map<String, CapabilityAssignment> capabilities;
- private Map<String, InterfaceDefinition> interfaces;
- private String copy;
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, Object> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, Object> properties) {
- this.properties = properties;
- }
-
- public Map<String, Object> getAttributes() {
- return attributes;
- }
-
- public void setAttributes(Map<String, Object> attributes) {
- this.attributes = attributes;
- }
-
- public Map<String, RequirementAssignment> getRequirements() {
- return requirements;
- }
-
- public void setRequirements(Map<String, RequirementAssignment> requirements) {
- this.requirements = requirements;
- }
-
- public Map<String, CapabilityAssignment> getCapabilities() {
- return capabilities;
- }
-
- public void setCapabilities(Map<String, CapabilityAssignment> capabilities) {
- this.capabilities = capabilities;
- }
-
- public Map<String, InterfaceDefinition> getInterfaces() {
- return interfaces;
- }
-
- public void setInterfaces(Map<String, InterfaceDefinition> interfaces) {
- this.interfaces = interfaces;
- }
-
- public String getCopy() {
- return copy;
- }
-
- public void setCopy(String copy) {
- this.copy = copy;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipType.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipType.java
deleted file mode 100644
index 173a8a0f64..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RelationshipType.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class RelationshipType {
-
- private String derived_from;
- private String version;
- private String description;
- private Map<String, PropertyDefinition> properties;
- private Map<String, AttributeDefinition> attributes;
- private Map<String, InterfaceDefinition> interfaces;
- private List<String> valid_target_types;
- //An optional list of one or more names of Capability Types that are valid targets
- //for this relationship
-
- public String getDerived_from() {
- return derived_from;
- }
-
- public void setDerived_from(String derivedFrom) {
- this.derived_from = derivedFrom;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, PropertyDefinition> getProperties() {
- return properties;
- }
-
- public void setProperties(Map<String, PropertyDefinition> properties) {
- this.properties = properties;
- }
-
- public Map<String, AttributeDefinition> getAttributes() {
- return attributes;
- }
-
- public void setAttributes(Map<String, AttributeDefinition> attributes) {
- this.attributes = attributes;
- }
-
- public Map<String, InterfaceDefinition> getInterfaces() {
- return interfaces;
- }
-
- public void setInterfaces(Map<String, InterfaceDefinition> interfaces) {
- this.interfaces = interfaces;
- }
-
- public List<String> getValid_target_types() {
- return valid_target_types;
- }
-
- public void setValid_target_types(List<String> validTargetTypes) {
- this.valid_target_types = validTargetTypes;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementAssignment.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementAssignment.java
deleted file mode 100644
index 445063a3ed..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementAssignment.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-public class RequirementAssignment {
-
- private String capability;
- private String node;
- private String relationship;
- private NodeFilter node_filter;
- private Object[] occurrences;
-
- public String getCapability() {
- return capability;
- }
-
- public void setCapability(String capability) {
- this.capability = capability;
- }
-
- public String getNode() {
- return node;
- }
-
- public void setNode(String node) {
- this.node = node;
- }
-
- public String getRelationship() {
- return relationship;
- }
-
- public void setRelationship(String relationship) {
- this.relationship = relationship;
- }
-
- public NodeFilter getNode_filter() {
- return node_filter;
- }
-
- public void setNode_filter(NodeFilter nodeFilter) {
- this.node_filter = nodeFilter;
- }
-
- public Object[] getOccurrences() {
- return occurrences;
- }
-
- public void setOccurrences(Object[] occurrences) {
- this.occurrences = occurrences;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinition.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinition.java
deleted file mode 100644
index fe3238f1b5..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinition.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-public class RequirementDefinition {
-
- private String capability;
- private String node;
- private String relationship;
- private Object[] occurrences;
-
- /**
- * Instantiates a new Requirement definition.
- */
- public RequirementDefinition() {
- occurrences = new Object[2];
- occurrences[0] = 1;
- occurrences[1] = 1;
- }
-
- public String getCapability() {
- return capability;
- }
-
- public void setCapability(String capability) {
- this.capability = capability;
- }
-
- public String getNode() {
- return node;
- }
-
- public void setNode(String node) {
- this.node = node;
- }
-
- public String getRelationship() {
- return relationship;
- }
-
- public void setRelationship(String relationship) {
- this.relationship = relationship;
- }
-
- public Object[] getOccurrences() {
- return occurrences;
- }
-
- public void setOccurrences(Object[] occurrences) {
- this.occurrences = occurrences;
- }
-
- @Override
- public RequirementDefinition clone() {
- RequirementDefinition requirementDefinition = new RequirementDefinition();
- requirementDefinition.setNode(this.getNode());
- requirementDefinition.setRelationship(this.getRelationship());
- requirementDefinition.setCapability(this.getCapability());
- requirementDefinition
- .setOccurrences(new Object[]{this.getOccurrences()[0], this.getOccurrences()[1]});
- return requirementDefinition;
- }
-
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ServiceTemplate.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ServiceTemplate.java
deleted file mode 100644
index 98da0104b8..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/ServiceTemplate.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.Map;
-
-public class ServiceTemplate implements Template {
-
- private String tosca_definitions_version;
- private Metadata metadata;
- private String description;
- private Map<String, Import> imports;
- private Map<String, ArtifactType> artifact_types;
- private Map<String, DataType> data_types;
- private Map<String, CapabilityType> capability_types;
- private Map<String, InterfaceType> interface_types;
- private Map<String, RelationshipType> relationship_types;
- private Map<String, NodeType> node_types;
- private Map<String, GroupType> group_types;
- private Map<String, PolicyType> policy_types;
- private TopologyTemplate topology_template;
-
- public String getTosca_definitions_version() {
- return tosca_definitions_version;
- }
-
- public void setTosca_definitions_version(String toscaDefinitionsVersion) {
- this.tosca_definitions_version = toscaDefinitionsVersion;
- }
-
- public Metadata getMetadata() {
- return metadata;
- }
-
- public void setMetadata(Metadata metadata) {
- this.metadata = metadata;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, Import> getImports() {
- return imports;
- }
-
- public void setImports(Map<String, Import> imports) {
- this.imports = imports;
- }
-
- public Map<String, ArtifactType> getArtifact_types() {
- return artifact_types;
- }
-
- public void setArtifact_types(Map<String, ArtifactType> artifactTypes) {
- this.artifact_types = artifactTypes;
- }
-
- public Map<String, DataType> getData_types() {
- return data_types;
- }
-
- public void setData_types(Map<String, DataType> dataTypes) {
- this.data_types = dataTypes;
- }
-
- public Map<String, CapabilityType> getCapability_types() {
- return capability_types;
- }
-
- public void setCapability_types(Map<String, CapabilityType> capabilityTypes) {
- this.capability_types = capabilityTypes;
- }
-
- public Map<String, RelationshipType> getRelationship_types() {
- return relationship_types;
- }
-
- public void setRelationship_types(Map<String, RelationshipType> relationshipTypes) {
- this.relationship_types = relationshipTypes;
- }
-
- public Map<String, NodeType> getNode_types() {
- return node_types;
- }
-
- public void setNode_types(Map<String, NodeType> nodeTypes) {
- this.node_types = nodeTypes;
- }
-
- public Map<String, GroupType> getGroup_types() {
- return group_types;
- }
-
- public void setGroup_types(Map<String, GroupType> groupTypes) {
- this.group_types = groupTypes;
- }
-
- public Map<String, InterfaceType> getInterface_types() {
- return interface_types;
- }
-
- public void setInterface_types(Map<String, InterfaceType> interfaceTypes) {
- this.interface_types = interfaceTypes;
- }
-
- public Map<String, PolicyType> getPolicy_types() {
- return policy_types;
- }
-
- public void setPolicy_types(Map<String, PolicyType> policyTypes) {
- this.policy_types = policyTypes;
- }
-
- public TopologyTemplate getTopology_template() {
- return topology_template;
- }
-
- public void setTopology_template(TopologyTemplate topologyTemplate) {
- this.topology_template = topologyTemplate;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/SubstitutionMapping.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/SubstitutionMapping.java
deleted file mode 100644
index 50c262dc42..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/SubstitutionMapping.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.List;
-import java.util.Map;
-
-public class SubstitutionMapping {
- private String node_type;
- private Map<String, List<String>> capabilities;
- private Map<String, List<String>> requirements;
-
- public String getNode_type() {
- return node_type;
- }
-
- public void setNode_type(String nodeType) {
- this.node_type = nodeType;
- }
-
- public Map<String, List<String>> getRequirements() {
- return requirements;
- }
-
- public void setRequirements(Map<String, List<String>> requirements) {
- this.requirements = requirements;
- }
-
- public Map<String, List<String>> getCapabilities() {
- return capabilities;
- }
-
- public void setCapabilities(Map<String, List<String>> capabilities) {
- this.capabilities = capabilities;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/TopologyTemplate.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/TopologyTemplate.java
deleted file mode 100644
index 288242946a..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/datatypes/model/TopologyTemplate.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.datatypes.model;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Objects;
-
-public class TopologyTemplate {
-
- private String description;
- private Map<String, ParameterDefinition> inputs;
- private Map<String, NodeTemplate> node_templates;
- private Map<String, RelationshipTemplate> relationship_templates;
- private Map<String, GroupDefinition> groups;
- private Map<String, ParameterDefinition> outputs;
- private SubstitutionMapping substitution_mappings;
- private Map<String, PolicyDefinition> policies;
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Map<String, ParameterDefinition> getInputs() {
- return inputs;
- }
-
- public void setInputs(Map<String, ParameterDefinition> inputs) {
- this.inputs = inputs;
- }
-
- public Map<String, NodeTemplate> getNode_templates() {
- return node_templates;
- }
-
- public void setNode_templates(Map<String, NodeTemplate> nodeTemplates) {
- this.node_templates = nodeTemplates;
- }
-
- public Map<String, RelationshipTemplate> getRelationship_templates() {
- return relationship_templates;
- }
-
- public void setRelationship_templates(Map<String, RelationshipTemplate> relationshipTemplates) {
- this.relationship_templates = relationshipTemplates;
- }
-
- public Map<String, GroupDefinition> getGroups() {
- return groups;
- }
-
- public void setGroups(Map<String, GroupDefinition> groups) {
- this.groups = groups;
- }
-
- /**
- * Add group.
- *
- * @param groupKey the group key
- * @param groupDefinition the group definition
- */
- public void addGroup(String groupKey, GroupDefinition groupDefinition) {
- if (Objects.isNull(this.groups)) {
- this.groups = new HashMap<>();
- }
- this.groups.put(groupKey, groupDefinition);
- }
-
- public Map<String, ParameterDefinition> getOutputs() {
- return outputs;
- }
-
- public void setOutputs(Map<String, ParameterDefinition> outputs) {
- this.outputs = outputs;
- }
-
- public SubstitutionMapping getSubstitution_mappings() {
- return substitution_mappings;
- }
-
- public void setSubstitution_mappings(SubstitutionMapping substitutionMapping) {
- this.substitution_mappings = substitutionMapping;
- }
-
- public Map<String, PolicyDefinition> getPolicies() {
- return policies;
- }
-
- public void setPolicies(Map<String, PolicyDefinition> policies) {
- this.policies = policies;
- }
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidAddActionNullEntityErrorBuilder.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidAddActionNullEntityErrorBuilder.java
index 02bee69251..68d7da1b36 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidAddActionNullEntityErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidAddActionNullEntityErrorBuilder.java
@@ -23,9 +23,6 @@ package org.openecomp.sdc.tosca.errors;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
-/**
- * The type Invalid add action null entity error builder.
- */
public class InvalidAddActionNullEntityErrorBuilder {
private static final String INVALID_ACTION_NULL_ENTITY_ERR_MSG =
@@ -34,10 +31,9 @@ public class InvalidAddActionNullEntityErrorBuilder {
private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
/**
- * Instantiates a new Invalid add action null entity error builder.
- *
- * @param addedData the added data
- * @param updatedEntity the updated entity
+ * Invalid Action Error builder.
+ * @param addedData Added data
+ * @param updatedEntity Updated Entity
*/
public InvalidAddActionNullEntityErrorBuilder(String addedData, String updatedEntity) {
builder.withId(ToscaErrorCodes.TOSCA_INVALID_ADD_ACTION_NULL_ENTITY);
@@ -46,11 +42,6 @@ public class InvalidAddActionNullEntityErrorBuilder {
String.format(INVALID_ACTION_NULL_ENTITY_ERR_MSG, addedData, updatedEntity, updatedEntity));
}
- /**
- * Build error code.
- *
- * @return the error code
- */
public ErrorCode build() {
return builder.build();
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidRequirementAssignmentErrorBuilder.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidRequirementAssignmentErrorBuilder.java
index cc0b821748..1947ce950b 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidRequirementAssignmentErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/InvalidRequirementAssignmentErrorBuilder.java
@@ -23,9 +23,6 @@ package org.openecomp.sdc.tosca.errors;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
-/**
- * The type Invalid requirement assignment error builder.
- */
public class InvalidRequirementAssignmentErrorBuilder {
private static final String INVALID_REQ_ASSIGNMENT_ERR_ID = "INVALID_REQ_ASSIGNMENT_ERR_ID";
@@ -35,9 +32,8 @@ public class InvalidRequirementAssignmentErrorBuilder {
private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
/**
- * Instantiates a new Invalid requirement assignment error builder.
- *
- * @param requirementId the requirement id
+ * Invalid Requirement Assignment Error Builder.
+ * @param requirementId.
*/
public InvalidRequirementAssignmentErrorBuilder(String requirementId) {
builder.withId(INVALID_REQ_ASSIGNMENT_ERR_ID);
@@ -45,11 +41,6 @@ public class InvalidRequirementAssignmentErrorBuilder {
builder.withMessage(String.format(INVALID_REQ_ASSIGNMENT_ERR_MSG, requirementId));
}
- /**
- * Build error code.
- *
- * @return the error code
- */
public ErrorCode build() {
return builder.build();
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaInvalidSubstituteNodeTemplateErrorBuilder.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaInvalidSubstituteNodeTemplateErrorBuilder.java
index 5913e5ffba..bab2e77c75 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaInvalidSubstituteNodeTemplateErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaInvalidSubstituteNodeTemplateErrorBuilder.java
@@ -29,8 +29,8 @@ import org.openecomp.sdc.common.errors.ErrorCode;
*/
public class ToscaInvalidSubstituteNodeTemplateErrorBuilder {
private static final String INVALID_SUBSTITUTE_NODE_TEMPLATE_MSG =
- "Invalid substitute node template, directives with substitutable value must be defined. "
- + "node template id %s";
+ "Invalid substitute node template, directives with substitutable value must be defined."
+ + " node template id %s";
private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
/**
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaMissingSubstitutionMappingForReqCapErrorBuilder.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaMissingSubstitutionMappingForReqCapErrorBuilder.java
index 74392cdcdb..c41e2fa137 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaMissingSubstitutionMappingForReqCapErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaMissingSubstitutionMappingForReqCapErrorBuilder.java
@@ -60,13 +60,7 @@ public class ToscaMissingSubstitutionMappingForReqCapErrorBuilder {
*/
public enum MappingExposedEntry {
- /**
- * Capability mapping exposed entry.
- */
CAPABILITY("Capability"),
- /**
- * Requirement mapping exposed entry.
- */
REQUIREMENT("Requirement"),;
private String displayName;
@@ -75,11 +69,6 @@ public class ToscaMissingSubstitutionMappingForReqCapErrorBuilder {
this.displayName = displayName;
}
- /**
- * Gets display name.
- *
- * @return the display name
- */
public String getDisplayName() {
return displayName;
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaNodeTypeNotFoundErrorBuilder.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaNodeTypeNotFoundErrorBuilder.java
index 3d51970d50..1a2c124f4f 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaNodeTypeNotFoundErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/errors/ToscaNodeTypeNotFoundErrorBuilder.java
@@ -23,6 +23,9 @@ package org.openecomp.sdc.tosca.errors;
import org.openecomp.sdc.common.errors.ErrorCategory;
import org.openecomp.sdc.common.errors.ErrorCode;
+/**
+ * The type Tosca node type not found error builder.
+ */
public class ToscaNodeTypeNotFoundErrorBuilder {
private static final String ENTRY_NOT_FOUND_MSG =
"NodeType '%s' or one of its derivedFrom node type hierarchy, "
@@ -40,6 +43,11 @@ public class ToscaNodeTypeNotFoundErrorBuilder {
builder.withMessage(String.format(ENTRY_NOT_FOUND_MSG, nodeType));
}
+ /**
+ * Build error code.
+ *
+ * @return the error code
+ */
public ErrorCode build() {
return builder.build();
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarCreationErrorBuilder.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarCreationErrorBuilder.java
index c7b9bc2da4..42e38a854a 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarCreationErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarCreationErrorBuilder.java
@@ -23,9 +23,6 @@ package org.openecomp.sdc.tosca.exceptions;
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
-/**
- * The type Csar creation error builder.
- */
public class CsarCreationErrorBuilder extends BaseErrorBuilder {
private static final String MANDATORY_PROPERTY_IS_MISSING_MSG =
@@ -33,7 +30,7 @@ public class CsarCreationErrorBuilder extends BaseErrorBuilder {
private static final String ZIP_FILE_CREATION = "ZIP_FILE_CREATION";
/**
- * Instantiates a new Csar creation error builder.
+ * Constructor.
*/
public CsarCreationErrorBuilder() {
getErrorCodeBuilder().withId(ZIP_FILE_CREATION);
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarMissingEntryPointErrorBuilder.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarMissingEntryPointErrorBuilder.java
index 9b9257ad33..94dd138d03 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarMissingEntryPointErrorBuilder.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/exceptions/CsarMissingEntryPointErrorBuilder.java
@@ -23,18 +23,15 @@ package org.openecomp.sdc.tosca.exceptions;
import org.openecomp.sdc.common.errors.BaseErrorBuilder;
import org.openecomp.sdc.common.errors.ErrorCategory;
-/**
- * The type Csar missing entry point error builder.
- */
public class CsarMissingEntryPointErrorBuilder extends BaseErrorBuilder {
private static final String MANDATORY_PROPERTY_IS_MISSING_MSG =
"Failed to create CSAR file from ToscaServiceModel,missing mandatory "
- + "EntryDefinitionServiceTemplate ";
+ + "EntryDefinitionServiceTemplate ";
private static final String ZIP_FILE_CREATION = "ZIP_FILE_CREATION__MISSING_ENTRY_DEFINITION";
/**
- * Instantiates a new Csar missing entry point error builder.
+ * Constructor.
*/
public CsarMissingEntryPointErrorBuilder() {
getErrorCodeBuilder().withId(ZIP_FILE_CREATION);
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ConfigConstants.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ConfigConstants.java
new file mode 100644
index 0000000000..df6eb195d8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ConfigConstants.java
@@ -0,0 +1,49 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdc.tosca.services;
+
+public class ConfigConstants {
+ //namespaces
+ public static final String NAMESPACE = "ToscaModel";
+
+ //keys
+ public static final String PREFIX_CAPABILITY_TYPE =
+ "tosca.entity.namespace.prefix.capabilityType";
+ public static final String PREFIX_DATA_TYPE = "tosca.entity.namespace.prefix.dataType";
+ public static final String PREFIX_GROUP_TYPE = "tosca.entity.namespace.prefix.groupType";
+ public static final String PREFIX_POLICY_TYPE = "tosca.entity.namespace.prefix.policyType";
+ public static final String PREFIX_ARTIFACT_TYPE = "tosca.entity.namespace.prefix.artifactType";
+ public static final String PREFIX_RELATIONSHIP_TYPE =
+ "tosca.entity.namespace.prefix.relationshipType";
+
+ public static final String PREFIX_NODE_TYPE_VFC = "tosca.entity.namespace.prefix.nodeType.vfc";
+ public static final String PREFIX_NODE_TYPE_NETWORK =
+ "tosca.entity.namespace.prefix.nodeType.network";
+ public static final String PREFIX_NODE_TYPE_CP =
+ "tosca.entity.namespace.prefix.nodeType.connectionPoint";
+ public static final String PREFIX_NODE_TYPE_ABSTARCT =
+ "tosca.entity.namespace.prefix.nodeType.abstract";
+ public static final String PREFIX_NODE_TYPE_RULE = "tosca.entity.namespace.prefix.nodeType.rule";
+
+
+ private ConfigConstants() {
+ }
+}
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 d0d7ccf621..63080641e3 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
@@ -20,15 +20,29 @@
package org.openecomp.sdc.tosca.services;
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.collections4.MapUtils;
+import org.openecomp.core.utilities.CommonMethods;
+import org.openecomp.core.utilities.yaml.YamlUtil;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataDebugMessage;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaFunctions;
import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.CapabilityType;
import org.openecomp.sdc.tosca.datatypes.model.Constraint;
import org.openecomp.sdc.tosca.datatypes.model.EntrySchema;
import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.Metadata;
+import org.openecomp.sdc.tosca.datatypes.model.Import;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
import org.openecomp.sdc.tosca.datatypes.model.PolicyDefinition;
import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
import org.openecomp.sdc.tosca.datatypes.model.RelationshipTemplate;
@@ -41,15 +55,18 @@ import org.openecomp.sdc.tosca.datatypes.model.TopologyTemplate;
import org.openecomp.sdc.tosca.datatypes.model.heatextend.ParameterDefinitionExt;
import org.openecomp.sdc.tosca.errors.InvalidAddActionNullEntityErrorBuilder;
import org.openecomp.sdc.tosca.errors.InvalidRequirementAssignmentErrorBuilder;
+import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
+import java.util.ListIterator;
import java.util.Map;
import java.util.Objects;
-import java.util.stream.Collectors;
+import java.util.Optional;
/**
* The type Data model util.
@@ -58,13 +75,24 @@ public class DataModelUtil {
/**
* Add substitution mapping.
+ */
+
+ private static MdcDataDebugMessage mdcDataDebugMessage = new MdcDataDebugMessage();
+
+ /**
+ * Add substitution mapping.
*
* @param serviceTemplate the service template
* @param substitutionMapping the substitution mapping
*/
public static void addSubstitutionMapping(ServiceTemplate serviceTemplate,
SubstitutionMapping substitutionMapping) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Substitution Mapping", "Service Template")
.build());
@@ -74,6 +102,8 @@ public class DataModelUtil {
serviceTemplate.setTopology_template(new TopologyTemplate());
}
serviceTemplate.getTopology_template().setSubstitution_mappings(substitutionMapping);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -86,7 +116,14 @@ public class DataModelUtil {
public static void addSubstitutionMappingReq(ServiceTemplate serviceTemplate,
String substitutionMappingRequirementId,
List<String> substitutionMappingRequirementList) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Substitution Mapping Requirements",
"Service Template").build());
@@ -106,6 +143,8 @@ public class DataModelUtil {
serviceTemplate.getTopology_template().getSubstitution_mappings().getRequirements()
.put(substitutionMappingRequirementId, substitutionMappingRequirementList);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -117,7 +156,14 @@ public class DataModelUtil {
*/
public static void addNodeTemplate(ServiceTemplate serviceTemplate, String nodeTemplateId,
NodeTemplate nodeTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Node Template", "Service Template").build());
}
@@ -130,6 +176,66 @@ public class DataModelUtil {
topologyTemplate.setNode_templates(new HashMap<>());
}
topologyTemplate.getNode_templates().put(nodeTemplateId, nodeTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+
+ }
+
+ /**
+ * Add capability def.
+ *
+ * @param nodeType the node type
+ * @param capabilityId the capability id
+ * @param capabilityDefinition the capability definition
+ */
+ public static void addCapabilityDef(NodeType nodeType, String capabilityId,
+ CapabilityDefinition capabilityDefinition) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (nodeType == null) {
+ throw new CoreException(
+ new InvalidAddActionNullEntityErrorBuilder("Capability Definition", "Node Type").build());
+ }
+ if (Objects.isNull(nodeType.getCapabilities())) {
+ nodeType.setCapabilities(new HashMap<>());
+ }
+ nodeType.getCapabilities().put(capabilityId, capabilityDefinition);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ /**
+ * Add capabilities def to node type.
+ *
+ * @param nodeType the node type
+ * @param capabilities the capability definitions
+ */
+ public static void addNodeTypeCapabilitiesDef(NodeType nodeType,
+ Map<String, CapabilityDefinition> capabilities) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (capabilities == null || capabilities.entrySet().size() == 0) {
+ return;
+ }
+
+ if (nodeType == null) {
+ throw new CoreException(
+ new InvalidAddActionNullEntityErrorBuilder("Capability Definition", "Node Type").build());
+ }
+
+ if (MapUtils.isEmpty(nodeType.getCapabilities())) {
+ nodeType.setCapabilities(new HashMap<>());
+ }
+ if (capabilities.size() > 0) {
+ nodeType.setCapabilities(new HashMap<>());
+ }
+ for (Map.Entry<String, CapabilityDefinition> entry : capabilities.entrySet()) {
+ nodeType.getCapabilities().put(entry.getKey(), entry.getValue());
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -141,7 +247,14 @@ public class DataModelUtil {
*/
public static void addPolicyDefinition(ServiceTemplate serviceTemplate, String policyId,
PolicyDefinition policyDefinition) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Policy Definition", "Service Template")
.build());
@@ -155,6 +268,8 @@ public class DataModelUtil {
topologyTemplate.setPolicies(new HashMap<>());
}
topologyTemplate.getPolicies().put(policyId, policyDefinition);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -166,7 +281,14 @@ public class DataModelUtil {
*/
public static void addNodeType(ServiceTemplate serviceTemplate, String nodeTypeId,
NodeType nodeType) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Node Type", "Service Template").build());
}
@@ -174,6 +296,8 @@ public class DataModelUtil {
serviceTemplate.setNode_types(new HashMap<>());
}
serviceTemplate.getNode_types().put(nodeTypeId, nodeType);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -186,7 +310,14 @@ public class DataModelUtil {
public static void addRelationshipTemplate(ServiceTemplate serviceTemplate,
String relationshipTemplateId,
RelationshipTemplate relationshipTemplate) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Relationship Template", "Service Template")
.build());
@@ -199,6 +330,8 @@ public class DataModelUtil {
}
serviceTemplate.getTopology_template().getRelationship_templates()
.put(relationshipTemplateId, relationshipTemplate);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -210,12 +343,22 @@ public class DataModelUtil {
*/
public static void addRequirementAssignment(NodeTemplate nodeTemplate, String requirementId,
RequirementAssignment requirementAssignment) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (nodeTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Requirement Assignment", "Node Template")
.build());
}
if (requirementAssignment.getNode() == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(new InvalidRequirementAssignmentErrorBuilder(requirementId).build());
}
@@ -225,6 +368,8 @@ public class DataModelUtil {
Map<String, RequirementAssignment> requirement = new HashMap<>();
requirement.put(requirementId, requirementAssignment);
nodeTemplate.getRequirements().add(requirement);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -236,11 +381,16 @@ public class DataModelUtil {
*/
public static NodeTemplate getNodeTemplate(ServiceTemplate serviceTemplate,
String nodeTemplateId) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null
|| serviceTemplate.getTopology_template() == null
|| serviceTemplate.getTopology_template().getNode_templates() == null) {
return null;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return serviceTemplate.getTopology_template().getNode_templates().get(nodeTemplateId);
}
@@ -252,13 +402,92 @@ public class DataModelUtil {
* @return the node type
*/
public static NodeType getNodeType(ServiceTemplate serviceTemplate, String nodeTypeId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
if (serviceTemplate == null || serviceTemplate.getNode_types() == null) {
return null;
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return serviceTemplate.getNode_types().get(nodeTypeId);
}
/**
+ * Gets requirement definition.
+ *
+ * @param nodeType the node type
+ * @param requirementDefinitionId the requirement definition id
+ * @return the requirement definition
+ */
+ public static Optional<RequirementDefinition> getRequirementDefinition(
+ NodeType nodeType,
+ String requirementDefinitionId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (nodeType == null || nodeType.getRequirements() == null || requirementDefinitionId == null) {
+ return Optional.empty();
+ }
+ for (Map<String, RequirementDefinition> reqMap : nodeType.getRequirements()) {
+ if (reqMap.containsKey(requirementDefinitionId)) {
+ return Optional.of(reqMap.get(requirementDefinitionId));
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+
+ /**
+ * get requirement defenition from requirement defenition list by req key.
+ *
+ * @param requirementsDefinitionList requirement defenition list
+ * @param requirementKey requirement key
+ */
+ public static Optional<RequirementDefinition> getRequirementDefinition(
+ List<Map<String, RequirementDefinition>> requirementsDefinitionList,
+ String requirementKey) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ if (CollectionUtils.isEmpty(requirementsDefinitionList)) {
+ return Optional.empty();
+ }
+
+ for (Map<String, RequirementDefinition> requirementMap : requirementsDefinitionList) {
+ if (requirementMap.containsKey(requirementKey)) {
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.of(requirementMap.get(requirementKey));
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.empty();
+ }
+
+ /**
+ * Gets capability definition.
+ *
+ * @param nodeType the node type
+ * @param capabilityDefinitionId the capability definition id
+ * @return the capability definition
+ */
+ public static Optional<CapabilityDefinition> getCapabilityDefinition(
+ NodeType nodeType,
+ String capabilityDefinitionId) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (nodeType == null || nodeType.getCapabilities() == null || capabilityDefinitionId == null) {
+ return Optional.empty();
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.ofNullable(nodeType.getCapabilities().get(capabilityDefinitionId));
+ }
+
+ /**
* Add group definition to topology template.
*
* @param serviceTemplate the service template
@@ -267,7 +496,14 @@ public class DataModelUtil {
*/
public static void addGroupDefinitionToTopologyTemplate(ServiceTemplate serviceTemplate,
String groupName, GroupDefinition group) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (serviceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
throw new CoreException(
new InvalidAddActionNullEntityErrorBuilder("Group Definition", "Service Template")
.build());
@@ -285,7 +521,9 @@ public class DataModelUtil {
Map<String, GroupDefinition> groups = new HashMap<>();
serviceTemplate.getTopology_template().setGroups(groups);
}
+
serviceTemplate.getTopology_template().getGroups().put(groupName, group);
+ mdcDataDebugMessage.debugExitMessage(null, null);
}
/**
@@ -306,6 +544,10 @@ public class DataModelUtil {
Status status,
EntrySchema entrySchema,
Object defaultVal) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
PropertyDefinition propDef = new PropertyDefinition();
propDef.setType(type);
propDef.setDescription(description);
@@ -317,10 +559,50 @@ public class DataModelUtil {
propDef.setEntry_schema(entrySchema);
propDef.set_default(defaultVal);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return propDef;
}
/**
+ * Create parameter definition property definition.
+ *
+ * @param type the type
+ * @param description the description
+ * @param value the value
+ * @param required the required
+ * @param constraints the constraints
+ * @param status the status
+ * @param entrySchema the entry schema
+ * @param defaultVal the default val
+ * @return the property definition
+ */
+ public static ParameterDefinition createParameterDefinition(String type, String description,
+ Object value, boolean required,
+ List<Constraint> constraints,
+ Status status,
+ EntrySchema entrySchema,
+ Object defaultVal) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ ParameterDefinition paramDef = new ParameterDefinition();
+ paramDef.setType(type);
+ paramDef.setDescription(description);
+ paramDef.setValue(value);
+ paramDef.setRequired(required);
+ paramDef.setConstraints(constraints);
+ if (status != null) {
+ paramDef.setStatus(status);
+ }
+ paramDef.setEntry_schema(entrySchema);
+ paramDef.set_default(defaultVal);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return paramDef;
+ }
+
+ /**
* Create requirement requirement definition.
*
* @param capability the capability
@@ -331,6 +613,10 @@ public class DataModelUtil {
*/
public static RequirementDefinition createRequirement(String capability, String node,
String relationship, Object[] occurrences) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
RequirementDefinition requirementDefinition = new RequirementDefinition();
requirementDefinition.setCapability(capability);
requirementDefinition.setNode(node);
@@ -338,6 +624,8 @@ public class DataModelUtil {
if (occurrences != null) {
requirementDefinition.setOccurrences(occurrences);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return requirementDefinition;
}
@@ -355,6 +643,10 @@ public class DataModelUtil {
Status status,
EntrySchema entrySchema,
Object defaultVal) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
AttributeDefinition attributeDef = new AttributeDefinition();
attributeDef.setType(type);
@@ -367,6 +659,7 @@ public class DataModelUtil {
attributeDef.setEntry_schema(entrySchema);
attributeDef.set_default(defaultVal);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return attributeDef;
}
@@ -377,10 +670,16 @@ public class DataModelUtil {
* @return the constraint
*/
public static Constraint createValidValuesConstraint(Object... values) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
Constraint validValues = new Constraint();
for (Object value : values) {
validValues.addValidValue(value);
}
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return validValues;
}
@@ -392,13 +691,17 @@ public class DataModelUtil {
* @param templateAuthor the template author
* @return the metadata
*/
- public static Metadata createMetadata(String templateName, String templateVersion,
+ public static Map<String, String> createMetadata(String templateName, String templateVersion,
String templateAuthor) {
- Metadata metadata = new Metadata();
- metadata.setTemplate_name(templateName);
- metadata.setTemplate_version(templateVersion);
- metadata.setTemplate_author(templateAuthor);
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ Map<String, String> metadata = new HashMap<>();
+ metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, templateName);
+ metadata.put("template_version", templateVersion);
+ metadata.put("template_author", templateAuthor);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return metadata;
}
@@ -412,10 +715,16 @@ public class DataModelUtil {
*/
public static EntrySchema createEntrySchema(String type, String description,
List<Constraint> constraints) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
EntrySchema entrySchema = new EntrySchema();
entrySchema.setType(type);
entrySchema.setDescription(description);
entrySchema.setConstraints(constraints);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return entrySchema;
}
@@ -426,11 +735,17 @@ public class DataModelUtil {
* @return the list
*/
public static List<Constraint> createValidValuesConstraintsList(String... values) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List<Constraint> constraints;
Constraint validValues;
constraints = new ArrayList<>();
validValues = DataModelUtil.createValidValuesConstraint(values);
constraints.add(validValues);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return constraints;
}
@@ -441,9 +756,12 @@ public class DataModelUtil {
* @return the constraint
*/
public static Constraint createGreaterOrEqualConstrain(Object value) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
Constraint constraint = new Constraint();
constraint.setGreater_or_equal(value);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return constraint;
}
@@ -469,6 +787,10 @@ public class DataModelUtil {
public static Map createGetInputPropertyValueFromListParameter(String inputPropertyListName,
int indexInTheList,
String... nestedPropertyName) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
List propertyList = new ArrayList<>();
propertyList.add(inputPropertyListName);
propertyList.add(indexInTheList);
@@ -477,6 +799,8 @@ public class DataModelUtil {
}
Map getInputProperty = new HashMap<>();
getInputProperty.put(ToscaFunctions.GET_INPUT.getDisplayName(), propertyList);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return getInputProperty;
}
@@ -488,6 +812,10 @@ public class DataModelUtil {
*/
public static ParameterDefinitionExt convertPropertyDefToParameterDef(
PropertyDefinition propertyDefinition) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (propertyDefinition == null) {
return null;
}
@@ -499,10 +827,12 @@ public class DataModelUtil {
parameterDefinition.set_default(propertyDefinition.get_default());
parameterDefinition.setStatus(propertyDefinition.getStatus());
parameterDefinition.setConstraints(propertyDefinition.getConstraints());
- parameterDefinition.setEntry_schema(propertyDefinition.getEntry_schema());
+ parameterDefinition.setEntry_schema(Objects.isNull(propertyDefinition.getEntry_schema()) ? null
+ : propertyDefinition.getEntry_schema().clone());
parameterDefinition.setHidden(false);
parameterDefinition.setImmutable(false);
+ mdcDataDebugMessage.debugExitMessage(null, null);
return parameterDefinition;
}
@@ -515,74 +845,535 @@ public class DataModelUtil {
*/
public static ParameterDefinitionExt convertAttributeDefToParameterDef(
AttributeDefinition attributeDefinition, Map<String, List> outputValue) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
if (attributeDefinition == null) {
return null;
}
ParameterDefinitionExt parameterDefinition = new ParameterDefinitionExt();
parameterDefinition.setDescription(attributeDefinition.getDescription());
parameterDefinition.setValue(outputValue);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
return parameterDefinition;
}
/**
- * Clone constraints list.
+ * Convert capability type to capability definition capability definition.
*
- * @param constraints the constraints
- * @return the list
+ * @param capabilityTypeId the capability type id
+ * @param capabilityType the capability type
+ * @param properties the properties
+ * @return the capability definition
*/
- public static List<Constraint> cloneConstraints(List<Constraint> constraints) {
- if (constraints == null) {
+ public static CapabilityDefinition convertCapabilityTypeToCapabilityDefinition(
+ String capabilityTypeId, CapabilityType capabilityType, Map<String, Object> properties) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ CapabilityDefinition capabilityDefinition = new CapabilityDefinition();
+ capabilityDefinition.setAttributes(cloneAttributeDefinitionMap(capabilityType.getAttributes()));
+ capabilityDefinition.setProperties(clonePropertyDefinitionMap(capabilityType.getProperties()));
+ capabilityDefinition.setDescription(capabilityType.getDescription());
+ capabilityDefinition.setType(capabilityTypeId);
+
+ capabilityDefinition.getProperties()
+ .entrySet()
+ .stream()
+ .filter(entry -> properties.containsKey(entry.getKey()))
+ .forEach(entry -> entry.getValue()
+ .set_default(properties.get(entry.getKey())));
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return capabilityDefinition;
+ }
+
+ /**
+ * Clone property definition map map.
+ *
+ * @param propertyDefinitionMap the property definition map
+ * @return the map
+ */
+ public static Map clonePropertyDefinitionMap(
+ Map<String, PropertyDefinition> propertyDefinitionMap) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map outMap = new HashMap<>();
+ for (String propertyDefKey : propertyDefinitionMap.keySet()) {
+ PropertyDefinition propertyDefValue = propertyDefinitionMap.get(propertyDefKey);
+ outMap.put(new String(propertyDefKey), propertyDefValue.clone());
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return outMap;
+ }
+
+ /**
+ * Clone attribute definition map map.
+ *
+ * @param attributeDefinitionMap the attribute definition map
+ * @return the map
+ */
+ public static Map cloneAttributeDefinitionMap(
+ Map<String, AttributeDefinition> attributeDefinitionMap) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ Map outMap = new HashMap<>();
+ for (String attributeDefKey : attributeDefinitionMap.keySet()) {
+ AttributeDefinition attributeDefinition = attributeDefinitionMap.get(attributeDefKey);
+ outMap.put(new String(attributeDefKey), attributeDefinition.clone());
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return outMap;
+ }
+
+ public static boolean isNodeTemplate(String entryId, ServiceTemplate serviceTemplate) {
+ return serviceTemplate.getTopology_template().getNode_templates() != null
+ && serviceTemplate.getTopology_template().getNode_templates().get(entryId) != null;
+ }
+
+ /**
+ * Add Input parameter.
+ *
+ * @param serviceTemplate the service template
+ * @param parameterDefinitionId the parameter definition id
+ * @param parameterDefinition the parameter definition
+ */
+ public static void addInputParameterToTopologyTemplate(ServiceTemplate serviceTemplate,
+ String parameterDefinitionId,
+ ParameterDefinition parameterDefinition) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (Objects.isNull(serviceTemplate)) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
+ throw new CoreException(
+ new InvalidAddActionNullEntityErrorBuilder("Topology Template Input Parameter",
+ "Service Template").build());
+ }
+ TopologyTemplate topologyTemplate = serviceTemplate.getTopology_template();
+ if (Objects.isNull(topologyTemplate)) {
+ topologyTemplate = new TopologyTemplate();
+ serviceTemplate.setTopology_template(topologyTemplate);
+ }
+ if (topologyTemplate.getInputs() == null) {
+ topologyTemplate.setInputs(new HashMap<>());
+ }
+ topologyTemplate.getInputs().put(parameterDefinitionId, parameterDefinition);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+
+ }
+
+ /**
+ * Add Output parameter.
+ *
+ * @param serviceTemplate the service template
+ * @param parameterDefinitionId the parameter definition id
+ * @param parameterDefinition the parameter definition
+ */
+ public static void addOutputParameterToTopologyTemplate(ServiceTemplate serviceTemplate,
+ String parameterDefinitionId,
+ ParameterDefinition parameterDefinition) {
+
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (Objects.isNull(serviceTemplate)) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_ADD_ACTION);
+ throw new CoreException(
+ new InvalidAddActionNullEntityErrorBuilder("Topology Template Ouput Parameter",
+ "Service Template").build());
+ }
+ TopologyTemplate topologyTemplate = serviceTemplate.getTopology_template();
+ if (Objects.isNull(topologyTemplate)) {
+ topologyTemplate = new TopologyTemplate();
+ serviceTemplate.setTopology_template(topologyTemplate);
+ }
+ if (topologyTemplate.getOutputs() == null) {
+ topologyTemplate.setOutputs(new HashMap<>());
+ }
+ topologyTemplate.getOutputs().put(parameterDefinitionId, parameterDefinition);
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+
+ }
+
+ /**
+ * Add requirement def to requirement def list.
+ *
+ * @param requirementList requirement list
+ * @param requirementDef added requirement def
+ */
+ public static void addRequirementToList(List<Map<String, RequirementDefinition>> requirementList,
+ Map<String, RequirementDefinition> requirementDef) {
+ if (requirementDef == null) {
+ return;
+ }
+ if (requirementList == null) {
+ requirementList = new ArrayList<Map<String, RequirementDefinition>>();
+ }
+
+ for (Map.Entry<String, RequirementDefinition> entry : requirementDef.entrySet()) {
+ CommonMethods.mergeEntryInList(entry.getKey(), entry.getValue(), requirementList);
+ }
+ }
+
+ /**
+ * get node template requirement.
+ *
+ * @param nodeTemplate node template
+ */
+ public static Map<String, RequirementAssignment> getNodeTemplateRequirements(
+ NodeTemplate nodeTemplate) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (Objects.isNull(nodeTemplate)) {
return null;
}
- return constraints.stream().map(Constraint::clone).collect(Collectors.toList());
+ List<Map<String, RequirementAssignment>> templateRequirements = nodeTemplate.getRequirements();
+
+ Map<String, RequirementAssignment> nodeTemplateRequirementsAssignment = new HashMap<>();
+ if (CollectionUtils.isEmpty(templateRequirements)) {
+ return nodeTemplateRequirementsAssignment;
+ }
+ YamlUtil yamlUtil = new YamlUtil();
+ for (Map<String, RequirementAssignment> requirementAssignmentMap : templateRequirements) {
+ for (Map.Entry<String, RequirementAssignment> requirementEntry : requirementAssignmentMap
+ .entrySet()) {
+ RequirementAssignment requirementAssignment = (yamlUtil
+ .yamlToObject(yamlUtil.objectToYaml(requirementEntry.getValue()),
+ RequirementAssignment.class));
+ nodeTemplateRequirementsAssignment
+ .put(requirementEntry.getKey(), requirementAssignment);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return nodeTemplateRequirementsAssignment;
}
/**
- * Clone valid source types list.
+ * Gets the list of requirements for the node template.
*
- * @param validSourceTypes the valid source types
- * @return the list
+ * @param nodeTemplate the node template
+ * @return the node template requirement list and null if the node has no requirements
*/
- public static List<String> cloneValidSourceTypes(List<String> validSourceTypes) {
- if (validSourceTypes == null) {
+ public static List<Map<String, RequirementAssignment>> getNodeTemplateRequirementList(
+ NodeTemplate nodeTemplate) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ //Creating concrete objects
+ List<Map<String, RequirementAssignment>> requirements = nodeTemplate.getRequirements();
+ List<Map<String, RequirementAssignment>> concreteRequirementList = null;
+ if (requirements != null) {
+ concreteRequirementList = new ArrayList<>();
+ ListIterator<Map<String, RequirementAssignment>> reqListIterator = requirements
+ .listIterator();
+ while (reqListIterator.hasNext()) {
+ Map<String, RequirementAssignment> requirement = reqListIterator.next();
+ Map<String, RequirementAssignment> concreteRequirement = new HashMap<>();
+ for (Map.Entry<String, RequirementAssignment> reqEntry : requirement.entrySet()) {
+ RequirementAssignment requirementAssignment = (toscaExtensionYamlUtil
+ .yamlToObject(toscaExtensionYamlUtil.objectToYaml(reqEntry.getValue()),
+ RequirementAssignment.class));
+ concreteRequirement.put(reqEntry.getKey(), requirementAssignment);
+ concreteRequirementList.add(concreteRequirement);
+ reqListIterator.remove();
+ }
+ }
+ requirements.clear();
+ requirements.addAll(concreteRequirementList);
+ nodeTemplate.setRequirements(requirements);
+ }
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return concreteRequirementList;
+ }
+
+ /**
+ * get requirement assignment from requirement assignment list by req key.
+ *
+ * @param requirementsAssignmentList requirement defenition list
+ * @param requirementKey requirement key
+ */
+ public static Optional<List<RequirementAssignment>> getRequirementAssignment(
+ List<Map<String, RequirementAssignment>> requirementsAssignmentList,
+ String requirementKey) {
+
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ if (CollectionUtils.isEmpty(requirementsAssignmentList)) {
+ return Optional.empty();
+ }
+
+ List<RequirementAssignment> matchRequirementAssignmentList = new ArrayList<>();
+ for (Map<String, RequirementAssignment> requirementMap : requirementsAssignmentList) {
+ if (requirementMap.containsKey(requirementKey)) {
+ YamlUtil yamlUtil = new YamlUtil();
+ RequirementAssignment requirementAssignment = (yamlUtil
+ .yamlToObject(yamlUtil.objectToYaml(requirementMap.get(requirementKey)),
+ RequirementAssignment.class));
+ matchRequirementAssignmentList.add(requirementAssignment);
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return Optional.ofNullable(matchRequirementAssignmentList);
+ }
+
+ /**
+ * remove requirement defenition from requirement defenition list by req key.
+ *
+ * @param requirementsDefinitionList requirement defenition list
+ * @param requirementKey requirement key
+ */
+ public static void removeRequirementsDefinition(
+ List<Map<String, RequirementDefinition>> requirementsDefinitionList,
+ String requirementKey) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ if (requirementsDefinitionList == null) {
+ return;
+ }
+
+ List<Map<String, RequirementDefinition>> mapToBeRemoved = new ArrayList<>();
+ for (Map<String, RequirementDefinition> reqMap : requirementsDefinitionList) {
+ reqMap.remove(requirementKey);
+ if (reqMap.isEmpty()) {
+ mapToBeRemoved.add(reqMap);
+ }
+ }
+ for (Map<String, RequirementDefinition> removeMap : mapToBeRemoved) {
+ requirementsDefinitionList.remove(removeMap);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ /**
+ * remove requirement assignment from requirement defenition list by req key.
+ *
+ * @param requirementsAssignmentList requirement Assignment list
+ * @param requirementKey requirement key
+ */
+ public static void removeRequirementsAssignment(
+ List<Map<String, RequirementAssignment>> requirementsAssignmentList,
+ String requirementKey) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ if (requirementsAssignmentList == null) {
+ return;
+ }
+
+ List<Map<String, RequirementAssignment>> mapToBeRemoved = new ArrayList<>();
+ for (Map<String, RequirementAssignment> reqMap : requirementsAssignmentList) {
+ reqMap.remove(requirementKey);
+ if (reqMap.isEmpty()) {
+ mapToBeRemoved.add(reqMap);
+ }
+ }
+ for (Map<String, RequirementAssignment> removeMap : mapToBeRemoved) {
+ requirementsAssignmentList.remove(removeMap);
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+
+ /**
+ * Remove requirement assignment.
+ *
+ * @param nodeTemplate the node template
+ * @param requirementKey the requirement key
+ * @param requirementAssignmentToBeDeleted the requirement assignment to be deleted
+ */
+ public static void removeRequirementAssignment(
+ NodeTemplate nodeTemplate,
+ String requirementKey,
+ RequirementAssignment requirementAssignmentToBeDeleted) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+ ToscaAnalyzerService toscaAnalyzerService = new ToscaAnalyzerServiceImpl();
+ List<Map<String, RequirementAssignment>> nodeTemplateRequirements = nodeTemplate
+ .getRequirements();
+ if (nodeTemplateRequirements == null) {
+ return;
+ }
+
+ Map<String, RequirementAssignment> mapToBeRemoved = new HashMap<>();
+ ListIterator<Map<String, RequirementAssignment>> iter = nodeTemplateRequirements.listIterator();
+ while (iter.hasNext()) {
+ Map<String, RequirementAssignment> reqMap = iter.next();
+ RequirementAssignment requirementAssignment = reqMap.get(requirementKey);
+ if (requirementAssignment != null) {
+ boolean isDesiredRequirementAssignment = toscaAnalyzerService
+ .isDesiredRequirementAssignment(requirementAssignment,
+ requirementAssignmentToBeDeleted.getCapability(),
+ requirementAssignmentToBeDeleted.getNode(),
+ requirementAssignmentToBeDeleted.getRelationship());
+ if (isDesiredRequirementAssignment) {
+ iter.remove();
+ }
+ }
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ }
+
+ /**
+ * Return the suffix of the input namespace
+ * For an exmpale - for abc.sdf.vsrx, retrun vsrx
+ *
+ * @param namespace namespace
+ * @return String namespace suffix
+ */
+ public static String getNamespaceSuffix(String namespace) {
+ if (namespace == null) {
return null;
}
- return validSourceTypes.stream().collect(Collectors.toList());
+ String delimiterChar = ".";
+ if (namespace.contains(delimiterChar)) {
+ return namespace.substring(namespace.lastIndexOf(delimiterChar) + 1);
+ }
+ return namespace;
}
/**
- * Clone property definitions map.
+ * Return true if the input import exist in the input imports list.
*
- * @param propertyDefinitions the property definitions
- * @return the map
+ * @param imports namespace
+ * @param importId namespace
+ * @return true if exist, flase if not exist
+ */
+ public static boolean isImportAddedToServiceTemplate(List<Map<String, Import>> imports,
+ String importId) {
+ for (Map<String, Import> anImport : imports) {
+ if (anImport.containsKey(importId)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Get output parameter according to the input outputParameterId.
+ *
+ * @param serviceTemplate service template
+ * @param outputParameterId output parameter id
+ * @return ParameterDefinition - output parameter
*/
- public static Map<String, PropertyDefinition> clonePropertyDefinitions(
- Map<String, PropertyDefinition> propertyDefinitions) {
- if (propertyDefinitions == null) {
+ public static ParameterDefinition getOuputParameter(ServiceTemplate serviceTemplate,
+ String outputParameterId) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (serviceTemplate == null
+ || serviceTemplate.getTopology_template() == null
+ || serviceTemplate.getTopology_template().getOutputs() == null) {
return null;
}
- Map<String, PropertyDefinition> clonedProperties = new HashMap<>();
- for (String propertyKey : propertyDefinitions.keySet()) {
- clonedProperties.put(propertyKey, propertyDefinitions.get(propertyKey).clone());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return serviceTemplate.getTopology_template().getOutputs().get(outputParameterId);
+ }
+
+ /**
+ * Gets input parameters in a service template.
+ *
+ * @param serviceTemplate the service template
+ * @return the input parameters
+ */
+ public static Map<String, ParameterDefinition> getInputParameters(ServiceTemplate
+ serviceTemplate) {
+ if (serviceTemplate == null
+ || serviceTemplate.getTopology_template() == null
+ || serviceTemplate.getTopology_template().getInputs() == null) {
+ return null;
}
- return clonedProperties;
+ return serviceTemplate.getTopology_template().getInputs();
}
/**
- * Clone attribute definitions map.
+ * Gets relationship templates in a service template.
*
- * @param attributeDefinitions the attribute definitions
- * @return the map
+ * @param serviceTemplate the service template
+ * @return the relationship template
+ */
+ public static Map<String, RelationshipTemplate> getRelationshipTemplates(ServiceTemplate
+ serviceTemplate) {
+ if (serviceTemplate == null
+ || serviceTemplate.getTopology_template() == null
+ || serviceTemplate.getTopology_template().getRelationship_templates() == null) {
+ return null;
+ }
+ return serviceTemplate.getTopology_template().getRelationship_templates();
+ }
+
+ /**
+ * Get property value according to the input propertyId.
+ *
+ * @param nodeTemplate node template
+ * @param propertyId property id
+ * @return Object property Value
*/
- public static Map<String, AttributeDefinition> cloneAttributeDefinitions(
- Map<String, AttributeDefinition> attributeDefinitions) {
- if (attributeDefinitions == null) {
+ public static Object getPropertyValue(NodeTemplate nodeTemplate,
+ String propertyId) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (nodeTemplate == null
+ || nodeTemplate.getProperties() == null) {
return null;
}
- Map<String, AttributeDefinition> clonedAttributeDefinitions = new HashMap<>();
- for (String attributeKey : attributeDefinitions.keySet()) {
- clonedAttributeDefinitions.put(attributeKey, attributeDefinitions.get(attributeKey).clone());
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return nodeTemplate.getProperties().get(propertyId);
+ }
+
+ /**
+ * Get node template properties according to the input node template id.
+ *
+ * @param serviceTemplate service template
+ * @param nodeTemplateId node template id
+ * @return node template properties
+ */
+ public static Map<String, Object> getNodeTemplateProperties(ServiceTemplate serviceTemplate,
+ String nodeTemplateId) {
+ mdcDataDebugMessage.debugEntryMessage(null, null);
+
+ if (serviceTemplate == null
+ || serviceTemplate.getTopology_template() == null
+ || serviceTemplate.getTopology_template().getNode_templates() == null
+ || serviceTemplate.getTopology_template().getNode_templates().get(nodeTemplateId) == null) {
+ return null;
+ }
+
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return serviceTemplate.getTopology_template().getNode_templates().get(nodeTemplateId)
+ .getProperties();
+ }
+
+ /**
+ * Compare two requirement assignment objects for equality.
+ *
+ * @param first the first requirement assignement object
+ * @param second the second requirement assignement object
+ * @return true if objects are equal and false otherwise
+ */
+ public static boolean compareRequirementAssignment(RequirementAssignment first,
+ RequirementAssignment second) {
+ if (first.getCapability().equals(second.getCapability())
+ && first.getNode().equals(second.getNode())
+ && first.getRelationship().equals(second.getRelationship())) {
+ return true;
}
- return clonedAttributeDefinitions;
+ return false;
}
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaAnalyzerService.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaAnalyzerService.java
index 271c471922..7d408ab82e 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaAnalyzerService.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaAnalyzerService.java
@@ -23,9 +23,11 @@ package org.openecomp.sdc.tosca.services;
import org.openecomp.sdc.tosca.datatypes.ToscaElementTypes;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
+import org.openecomp.sdc.tosca.datatypes.model.NodeType;
import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -38,6 +40,8 @@ public interface ToscaAnalyzerService {
Map<String, NodeTemplate> getNodeTemplatesByType(ServiceTemplate serviceTemplate, String nodeType,
ToscaServiceModel toscaServiceModel);
+ Optional<NodeType> fetchNodeType(String nodeTypeKey, Collection<ServiceTemplate> serviceTemplates);
+
boolean isTypeOf(NodeTemplate nodeTemplate, String nodeType, ServiceTemplate serviceTemplate,
ToscaServiceModel toscaServiceModel);
@@ -63,4 +67,13 @@ public interface ToscaAnalyzerService {
Object getFlatEntity(ToscaElementTypes elementType, String type, ServiceTemplate serviceTemplate,
ToscaServiceModel toscaModel);
+
+ boolean isSubstitutableNodeTemplate(NodeTemplate nodeTemplate);
+
+ NodeType createInitSubstitutionNodeType(ServiceTemplate substitutionServiceTemplate,
+ String nodeTypeDerivedFromValue);
+
+ boolean isRequirementExistInNodeTemplate(NodeTemplate nodeTemplate,
+ String requirementId,
+ RequirementAssignment requirementAssignment);
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java
index 27cf07e166..cf0c763846 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java
@@ -23,11 +23,6 @@ package org.openecomp.sdc.tosca.services;
public class ToscaConstants {
- //TOSCA Node Types prefix
- public static final String NODES_PREFIX = "org.openecomp.resource.vfc.nodes.heat.";
- public static final String NODES_SUBSTITUTION_PREFIX
- = "org.openecomp.resource.abstract.nodes.heat.";
-
//TOSCA Requirement Ids
public static final String DEPENDS_ON_REQUIREMENT_ID = "dependency";
public static final String BINDING_REQUIREMENT_ID = "binding";
@@ -43,6 +38,8 @@ public class ToscaConstants {
public static final String ENDPOINT_CAPABILITY_ID = "endpoint";
public static final String OS_CAPABILITY_ID = "os";
public static final String SCALABLE_CAPABILITY_ID = "scalable";
+ public static final String ATTACHMENT_CAPABILITY_ID = "attachment";
+ public static final String FEATURE_CAPABILITY_ID = "feature";
//General
public static final String TOSCA_DEFINITIONS_VERSION = "tosca_simple_yaml_1_0_0";
@@ -50,6 +47,8 @@ public class ToscaConstants {
public static final String NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE = "substitutable";
public static final String NATIVE_TYPES_SERVICE_TEMPLATE_NAME = "NativeTypesServiceTemplate";
public static final String UNBOUNDED = "UNBOUNDED";
+ public static final String ST_METADATA_FILE_NAME = "filename";
+ public static final String ST_METADATA_TEMPLATE_NAME = "template_name";
//properties
public static final String SERVICE_TEMPLATE_FILTER_PROPERTY_NAME = "service_template_filter";
@@ -61,5 +60,12 @@ public class ToscaConstants {
public static final String DHCP_ENABLED_PROPERTY_NAME = "dhcp_enabled";
+ public static final String PORT_FIXED_IPS = "fixed_ips";
+ public static final String PORT_ALLOWED_ADDRESS_PAIRS = "allowed_address_pairs";
+ public static final String MAC_ADDRESS = "mac_address";
+
+ public static final String COMPUTE_IMAGE = "image";
+ public static final String COMPUTE_FLAVOR = "flavor";
+
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaNativeTypesServiceTemplate.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaNativeTypesServiceTemplate.java
deleted file mode 100644
index 013d761168..0000000000
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaNativeTypesServiceTemplate.java
+++ /dev/null
@@ -1,309 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.tosca.services;
-
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
-import org.openecomp.sdc.tosca.datatypes.ToscaDataType;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaRelationshipType;
-
-import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.InterfaceDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
-import org.openecomp.sdc.tosca.datatypes.model.RequirementDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-/**
- * The type Tosca native types service template.
- */
-public class ToscaNativeTypesServiceTemplate {
- /**
- * Create service template service template.
- *
- * @return the service template
- */
- public static ServiceTemplate createServiceTemplate() {
- ServiceTemplate nativeNodeTypesServiceTemplate = new ServiceTemplate();
- nativeNodeTypesServiceTemplate
- .setTosca_definitions_version(ToscaConstants.TOSCA_DEFINITIONS_VERSION);
- nativeNodeTypesServiceTemplate.setMetadata(DataModelUtil
- .createMetadata(ToscaConstants.NATIVE_TYPES_SERVICE_TEMPLATE_NAME, "1.0.0", null));
- nativeNodeTypesServiceTemplate.setDescription("TOSCA Native Node Types");
- nativeNodeTypesServiceTemplate.setNode_types(createNativeNodeTypes());
- return nativeNodeTypesServiceTemplate;
- }
-
- private static Map<String, NodeType> createNativeNodeTypes() {
- Map<String, NodeType> nativeNodeTypes = new HashMap<>();
- nativeNodeTypes.put(ToscaNodeType.COMPUTE.getDisplayName(), createToscaNodesComputeNodeType());
- nativeNodeTypes.put(ToscaNodeType.ROOT.getDisplayName(), createToscaNodesRootNodeType());
- nativeNodeTypes
- .put(ToscaNodeType.NETWORK_PORT.getDisplayName(), createToscaNodesPortsNodeType());
- nativeNodeTypes
- .put(ToscaNodeType.BLOCK_STORAGE.getDisplayName(), createToscaNodesBlockStorageNodeType());
- nativeNodeTypes.put(ToscaNodeType.NETWORK.getDisplayName(), createToscaNodesNetworkNodeType());
- return nativeNodeTypes;
- }
-
- private static NodeType createToscaNodesComputeNodeType() {
- NodeType computeNodeType = new NodeType();
- computeNodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- computeNodeType.setAttributes(createComputeAttributes());
- computeNodeType.setRequirements(createComputeRequirements());
- computeNodeType.setCapabilities(createComputeCapabilities());
- return computeNodeType;
- }
-
- private static NodeType createToscaNodesRootNodeType() {
- NodeType computeNodeType = new NodeType();
- computeNodeType.setAttributes(createRootAttributes());
- computeNodeType.setInterfaces(createRootInterfaces());
- return computeNodeType;
- }
-
- private static NodeType createToscaNodesPortsNodeType() {
- NodeType computeNodeType = new NodeType();
- computeNodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- computeNodeType.setProperties(createToscaNodesPortProperties());
- computeNodeType.setRequirements(createToscaNodesPortRequirements());
- return computeNodeType;
- }
-
- private static NodeType createToscaNodesBlockStorageNodeType() {
- NodeType computeNodeType = new NodeType();
- computeNodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- computeNodeType.setProperties(createToscaNodesBlockStorageProperties());
- computeNodeType.setCapabilities(createToscaNodesBlockStorageCapabilities());
- return computeNodeType;
- }
-
- private static NodeType createToscaNodesNetworkNodeType() {
- NodeType computeNodeType = new NodeType();
- computeNodeType.setDerived_from(ToscaNodeType.ROOT.getDisplayName());
- computeNodeType.setProperties(createToscaNodesNetworkProperties());
- computeNodeType.setCapabilities(createToscaNodesNetworkCapabilities());
- return computeNodeType;
- }
-
- private static Map<String, PropertyDefinition> createToscaNodesPortProperties() {
- Map<String, PropertyDefinition> propertyDefinitionMap = new HashMap<>();
- propertyDefinitionMap.put("ip_address", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("order", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(), null, true,
- DataModelUtil.getConstrainList(DataModelUtil.createGreaterOrEqualConstrain(0)), null,
- null, 0));
- propertyDefinitionMap.put("is_default", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(), null, false, null, null,
- null, false));
- propertyDefinitionMap.put("ip_range_start", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("ip_range_end", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- return propertyDefinitionMap;
- }
-
- private static Map<String, PropertyDefinition> createToscaNodesBlockStorageProperties() {
- Map<String, PropertyDefinition> propertyDefinitionMap = new HashMap<>();
- propertyDefinitionMap.put("size", DataModelUtil
- .createPropertyDefinition(PropertyType.SCALAR_UNIT_SIZE.getDisplayName(), null, false,
- DataModelUtil.getConstrainList(DataModelUtil.createGreaterOrEqualConstrain("1 MB")),
- null, null, null));
- propertyDefinitionMap.put("volume_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("snapshot_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- return propertyDefinitionMap;
- }
-
- private static Map<String, PropertyDefinition> createToscaNodesNetworkProperties() {
- Map<String, PropertyDefinition> propertyDefinitionMap = new HashMap<>();
- propertyDefinitionMap.put("ip_version", DataModelUtil
- .createPropertyDefinition(PropertyType.INTEGER.getDisplayName(), null, false,
- DataModelUtil.getConstrainList(DataModelUtil.createValidValuesConstraint(4, 6)), null,
- null, 4));
- propertyDefinitionMap.put("cidr", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("start_ip", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("end_ip", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("gateway_ip", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("network_name", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("network_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("segmentation_id", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("network_type", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("physical_network", DataModelUtil
- .createPropertyDefinition(PropertyType.STRING.getDisplayName(), null, false, null, null,
- null, null));
- propertyDefinitionMap.put("dhcp_enabled", DataModelUtil
- .createPropertyDefinition(PropertyType.BOOLEAN.getDisplayName(), null, false, null, null,
- null, true));
-
- return propertyDefinitionMap;
- }
-
- private static Map<String, InterfaceDefinition> createRootInterfaces() {
- return new HashMap<>();
- }
-
- private static Map<String, CapabilityDefinition> createComputeCapabilities() {
- Map<String, CapabilityDefinition> computeCapabilities = new HashMap<>();
- computeCapabilities.put(ToscaConstants.HOST_CAPABILITY_ID,
- createCapabilityDefinition(ToscaCapabilityType.CONTAINER.getDisplayName(),
- createValidSourceTypes("tosca.nodes.SoftwareComponent")));
- computeCapabilities.put(ToscaConstants.ENDPOINT_CAPABILITY_ID,
- createCapabilityDefinition(ToscaCapabilityType.ENDPOINT_ADMIN.getDisplayName(), null));
- computeCapabilities.put(ToscaConstants.OS_CAPABILITY_ID,
- createCapabilityDefinition(ToscaCapabilityType.OPERATING_SYSTEM.getDisplayName(), null));
- computeCapabilities.put(ToscaConstants.SCALABLE_CAPABILITY_ID,
- createCapabilityDefinition(ToscaCapabilityType.SCALABLE.getDisplayName(), null));
- computeCapabilities.put(ToscaConstants.BINDING_CAPABILITY_ID,
- createCapabilityDefinition(ToscaCapabilityType.NETWORK_BINDABLE.getDisplayName(), null));
- return computeCapabilities;
- }
-
- private static Map<String, CapabilityDefinition> createToscaNodesBlockStorageCapabilities() {
- Map<String, CapabilityDefinition> computeCapabilities = new HashMap<>();
- computeCapabilities.put("attachment",
- createCapabilityDefinition(ToscaCapabilityType.ATTACHMENT.getDisplayName(), null));
- return computeCapabilities;
- }
-
- private static Map<String, CapabilityDefinition> createToscaNodesNetworkCapabilities() {
- Map<String, CapabilityDefinition> computeCapabilities = new HashMap<>();
- computeCapabilities.put(ToscaConstants.LINK_CAPABILITY_ID,
- createCapabilityDefinition(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName(), null));
- return computeCapabilities;
- }
-
- private static List<String> createValidSourceTypes(String... validSourceTypes) {
- return Arrays.asList(validSourceTypes);
- }
-
- private static CapabilityDefinition createCapabilityDefinition(String type,
- List<String> validSourceTypes) {
- CapabilityDefinition capabilityDefinition = new CapabilityDefinition();
- capabilityDefinition.setType(type);
- capabilityDefinition.setValid_source_types(validSourceTypes);
- return capabilityDefinition;
- }
-
- private static List<Map<String, RequirementDefinition>> createComputeRequirements() {
- List<Map<String, RequirementDefinition>> computeRequirementList = new ArrayList<>();
- Map<String, RequirementDefinition> localStorageRequirement = new HashMap<>();
- localStorageRequirement.put("local_storage", DataModelUtil
- .createRequirement(ToscaCapabilityType.ATTACHMENT.getDisplayName(),
- ToscaNodeType.BLOCK_STORAGE.getDisplayName(),
- ToscaRelationshipType.NATIVE_ATTACHES_TO.getDisplayName(),
- createOccurrences(0, ToscaConstants.UNBOUNDED)));
- computeRequirementList.add(localStorageRequirement);
- return computeRequirementList;
- }
-
- private static List<Map<String, RequirementDefinition>> createToscaNodesPortRequirements() {
- List<Map<String, RequirementDefinition>> requirements = new ArrayList<>();
-
- Map<String, RequirementDefinition> linkRequirement = new HashMap<>();
- linkRequirement.put(ToscaConstants.LINK_REQUIREMENT_ID, DataModelUtil
- .createRequirement(ToscaCapabilityType.NETWORK_LINKABLE.getDisplayName(),
- ToscaNodeType.ROOT.getDisplayName(),
- ToscaRelationshipType.NETWORK_LINK_TO.getDisplayName(), null));
- requirements.add(linkRequirement);
-
- Map<String, RequirementDefinition> bindingRequirement = new HashMap<>();
- bindingRequirement.put(ToscaConstants.BINDING_REQUIREMENT_ID, DataModelUtil
- .createRequirement(ToscaCapabilityType.NETWORK_BINDABLE.getDisplayName(),
- ToscaNodeType.ROOT.getDisplayName(),
- ToscaRelationshipType.NETWORK_BINDS_TO.getDisplayName(), null));
- requirements.add(bindingRequirement);
-
- return requirements;
- }
-
-
- private static Object[] createOccurrences(Object min, Object max) {
- return new Object[]{min, max};
-
- }
-
- private static Map<String, AttributeDefinition> createComputeAttributes() {
- Map<String, AttributeDefinition> computeAttributesDefMap = new HashMap<>();
- computeAttributesDefMap.put("private_address", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "private address", null,
- null, null));
- computeAttributesDefMap.put("public_address", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "public_address", null,
- null, null));
- computeAttributesDefMap.put("networks", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(), "networks", null,
- DataModelUtil
- .createEntrySchema(ToscaDataType.NETWORK_NETWORK_INFO.getDisplayName(), null, null),
- null));
- computeAttributesDefMap.put("ports", DataModelUtil
- .createAttributeDefinition(PropertyType.MAP.getDisplayName(), "ports", null, DataModelUtil
- .createEntrySchema(ToscaDataType.NETWORK_PORT_INFO.getDisplayName(), null, null),
- null));
- return computeAttributesDefMap;
- }
-
- private static Map<String, AttributeDefinition> createRootAttributes() {
- Map<String, AttributeDefinition> attributesDefMap = new HashMap<>();
- attributesDefMap.put("tosca_id", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "tosca id", null, null,
- null));
- attributesDefMap.put("tosca_name", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "tosca name", null, null,
- null));
- attributesDefMap.put("state", DataModelUtil
- .createAttributeDefinition(PropertyType.STRING.getDisplayName(), "state", null, null,
- null));
- return attributesDefMap;
- }
-
-}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java
index 4f9c70267d..f3bf3280dc 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaUtil.java
@@ -20,18 +20,10 @@
package org.openecomp.sdc.tosca.services;
-import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.CapabilityType;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import java.util.ArrayList;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
import java.util.UUID;
/**
@@ -52,100 +44,40 @@ public class ToscaUtil {
if (serviceTemplate.getMetadata() == null) {
return UUID.randomUUID().toString() + "ServiceTemplate.yaml";
}
- return getServiceTemplateFileName(serviceTemplate.getMetadata().getTemplate_name());
+ return getServiceTemplateFileName(serviceTemplate.getMetadata());
}
/**
* Gets service template file name.
*
- * @param templateName the template name
+ * @param metaData the file name
* @return the service template file name
*/
- public static String getServiceTemplateFileName(String templateName) {
- return (Objects.isNull(templateName) ? UUID.randomUUID().toString() : templateName)
- + "ServiceTemplate.yaml";
- }
-
- /**
- * Add service template to map with key file name.
- *
- * @param serviceTemplates the service templates
- * @param commonServiceTemplate the common service template
- */
- public static void addServiceTemplateToMapWithKeyFileName(
- Map<String, ServiceTemplate> serviceTemplates, ServiceTemplate commonServiceTemplate) {
- serviceTemplates
- .put(ToscaUtil.getServiceTemplateFileName(commonServiceTemplate), commonServiceTemplate);
- }
-
- /**
- * Convert type to definition capability definition.
- *
- * @param type the type
- * @param capabilityType the capability type
- * @param properties the properties
- * @param description the description
- * @return the capability definition
- */
- public static CapabilityDefinition convertTypeToDefinition(String type,
- CapabilityType capabilityType,
- Map<String, Object> properties,
- String description) {
- CapabilityDefinition capabilityDefinition = new CapabilityDefinition();
- capabilityDefinition.setAttributes(capabilityType.getAttributes());
- capabilityDefinition.setProperties(capabilityType.getProperties());
- if (description == null) {
- capabilityDefinition.setDescription(capabilityType.getDescription());
- } else {
- capabilityDefinition.setDescription(description);
+ public static String getServiceTemplateFileName(Map<String, String> metadata) {
+ if (metadata.get(ToscaConstants.ST_METADATA_FILE_NAME) != null) {
+ return metadata.get(ToscaConstants.ST_METADATA_FILE_NAME);
+ } else if (metadata.get(ToscaConstants.ST_METADATA_TEMPLATE_NAME) != null) {
+ return metadata.get(ToscaConstants.ST_METADATA_TEMPLATE_NAME) + "ServiceTemplate.yaml";
}
- capabilityDefinition.setType(type);
-
- capabilityDefinition.getProperties()
- .entrySet()
- .stream()
- .filter(entry -> properties.containsKey(entry.getKey()))
- .forEach(entry -> entry.getValue()
- .set_default(properties.get(entry.getKey())));
-
-
- return capabilityDefinition;
+ return UUID.randomUUID().toString() + "ServiceTemplate.yaml";
}
+
/**
- * Normalize component name node type map.
+ * Add service template to map with key file name.
*
- * @param toscaModel the tosca model
- * @param components the components
- * @return the map
+ * @param serviceTemplateMap the service template map
+ * @param serviceTemplate the service template
*/
- public static Map<String, List<NodeType>> normalizeComponentNameNodeType(
- ToscaServiceModel toscaModel, Set<String> components) {
-
- Map<String, List<NodeType>> normalizedData = new HashMap<>();
- toscaModel
- .getServiceTemplates()
- .entrySet().stream().filter(entry -> entry
- .getValue()
- .getNode_types() != null)
- .forEach(entry -> entry
- .getValue()
- .getNode_types()
- .entrySet().stream()
- .filter(nodeTypeEntry -> components
- .contains(nodeTypeEntry
- .getKey()))
- .forEach(nodeTypeEntry -> addNodeType(nodeTypeEntry.getKey(), nodeTypeEntry.getValue(),
- normalizedData)));
- return normalizedData;
+ public static void addServiceTemplateToMapWithKeyFileName(
+ Map<String, ServiceTemplate> serviceTemplateMap, ServiceTemplate serviceTemplate) {
+ serviceTemplateMap.put(ToscaUtil.getServiceTemplateFileName(serviceTemplate), serviceTemplate);
}
- private static void addNodeType(String key, NodeType value,
- Map<String, List<NodeType>> normalizedData) {
- if (!normalizedData.containsKey(key)) {
- normalizedData.put(key, new ArrayList<>());
- }
- normalizedData.get(key).add(value);
+ public static String getServiceTemplateFileName(String templateName) {
+ Map<String, String> metadata = new HashMap<>();
+ metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, templateName);
+ return getServiceTemplateFileName(metadata);
}
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImpl.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImpl.java
index a11bff4b6a..e7aacb96cf 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImpl.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImpl.java
@@ -24,25 +24,37 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.openecomp.core.utilities.CommonMethods;
import org.openecomp.sdc.common.errors.CoreException;
-import org.openecomp.sdc.tosca.datatypes.ToscaCapabilityType;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaElementTypes;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
+import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
import org.openecomp.sdc.tosca.datatypes.model.CapabilityType;
import org.openecomp.sdc.tosca.datatypes.model.Import;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
+import org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
+import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.errors.ToscaInvalidEntryNotFoundErrorBuilder;
import org.openecomp.sdc.tosca.errors.ToscaInvalidSubstituteNodeTemplatePropertiesErrorBuilder;
import org.openecomp.sdc.tosca.errors.ToscaInvalidSubstitutionServiceTemplateErrorBuilder;
import org.openecomp.sdc.tosca.errors.ToscaNodeTypeNotFoundErrorBuilder;
+import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.tosca.services.ToscaUtil;
import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -53,7 +65,7 @@ import java.util.Set;
public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
/*
- node template with type equal to node type or derived from node type.
+ node template with type equal to node type or derived from node type
*/
@Override
public Map<String, NodeTemplate> getNodeTemplatesByType(ServiceTemplate serviceTemplate,
@@ -75,6 +87,19 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
}
@Override
+ public Optional<NodeType> fetchNodeType(String nodeTypeKey, Collection<ServiceTemplate>
+ serviceTemplates) {
+ Optional<Map<String, NodeType>> nodeTypeMap = serviceTemplates.stream()
+ .map(st -> st.getNode_types())
+ .filter(nodeTypes -> Objects.nonNull(nodeTypes) && nodeTypes.containsKey(nodeTypeKey))
+ .findFirst();
+ if (nodeTypeMap.isPresent()) {
+ return Optional.ofNullable(nodeTypeMap.get().values().iterator().next());
+ }
+ return Optional.empty();
+ }
+
+ @Override
public boolean isTypeOf(NodeTemplate nodeTemplate, String nodeType,
ServiceTemplate serviceTemplate, ToscaServiceModel toscaServiceModel) {
if (nodeTemplate == null) {
@@ -92,88 +117,6 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
new ToscaNodeTypeNotFoundErrorBuilder(nodeTemplate.getType()).build()));
}
-
- private Optional<Boolean> isNodeTypeExistInServiceTemplateHierarchy(String nodeTypeToMatch,
- String nodeTypeToSearch,
- ServiceTemplate serviceTemplate,
- ToscaServiceModel toscaServiceModel,
- Set<String> analyzedImportFiles) {
- Map<String, NodeType> searchableNodeTypes = serviceTemplate.getNode_types();
- if (!MapUtils.isEmpty(searchableNodeTypes)) {
- NodeType nodeType = searchableNodeTypes.get(nodeTypeToSearch);
- if (Objects.nonNull(nodeType)) {
- if (Objects.equals(nodeType.getDerived_from(), nodeTypeToMatch)) {
- return Optional.of(true);
- } else if (isNodeTypeIsToscaRoot(nodeType)) {
- return Optional.of(false);
- } else {
- return isNodeTypeExistInServiceTemplateHierarchy(nodeTypeToMatch,
- nodeType.getDerived_from(), serviceTemplate, toscaServiceModel, null);
- }
- } else {
- return isNodeTypeExistInImports(nodeTypeToMatch, nodeTypeToSearch, serviceTemplate,
- toscaServiceModel, analyzedImportFiles);
- }
- }
- return isNodeTypeExistInImports(nodeTypeToMatch, nodeTypeToSearch, serviceTemplate,
- toscaServiceModel, analyzedImportFiles);
-
- }
-
- private Optional<Boolean> isNodeTypeExistInImports(String nodeTypeToMatch,
- String nodeTypeToSearch,
- ServiceTemplate serviceTemplate,
- ToscaServiceModel toscaServiceModel,
- Set<String> analyzedImportFiles) {
- Map<String, Import> imports = serviceTemplate.getImports();
- if (imports == null) {
- return Optional.empty();
- }
-
- analyzedImportFiles = createAnalyzedImportFilesSet(analyzedImportFiles);
- for (Import anImport : imports.values()) {
- if (Objects.isNull(anImport) || Objects.isNull(anImport.getFile())) {
- throw new RuntimeException("import without file entry");
- }
- String importFile = anImport.getFile();
- if (analyzedImportFiles.contains(importFile)) {
- continue;
- }
- addImportFileToAnalyzedImportFilesSet(analyzedImportFiles, importFile);
- ServiceTemplate template = toscaServiceModel.getServiceTemplates().get(importFile);
- Optional<Boolean> nodeTypeExistInServiceTemplateHierarchy =
- isNodeTypeExistInServiceTemplateHierarchy(nodeTypeToMatch, nodeTypeToSearch, template,
- toscaServiceModel, analyzedImportFiles);
- if (nodeTypeExistInServiceTemplateHierarchy.isPresent()) {
- if (nodeTypeExistInServiceTemplateHierarchy.get()) {
- return Optional.of(true);
- }
- }
- }
- return Optional.of(false);
- }
-
- private Set<String> addImportFileToAnalyzedImportFilesSet(Set<String> analyzedImportFiles,
- String importFile) {
- analyzedImportFiles.add(importFile);
- return analyzedImportFiles;
- }
-
- private Set<String> createAnalyzedImportFilesSet(Set<String> analyzedImportFiles) {
- if (Objects.isNull(analyzedImportFiles)) {
- analyzedImportFiles = new HashSet<>();
- }
- return analyzedImportFiles;
- }
-
- private boolean isNodeTypeIsToscaRoot(NodeType stNodeType) {
- return Objects.equals(stNodeType.getDerived_from(), ToscaNodeType.ROOT.getDisplayName());
- }
-
- private boolean isNodeTemplateOfTypeNodeType(NodeTemplate nodeTemplate, String nodeType) {
- return Objects.equals(nodeTemplate.getType(), nodeType);
- }
-
@Override
public List<RequirementAssignment> getRequirements(NodeTemplate nodeTemplate,
String requirementId) {
@@ -197,8 +140,8 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
String nodeTemplateId) {
if ((serviceTemplate.getTopology_template() != null)
&& (serviceTemplate.getTopology_template().getNode_templates() != null)
- && (serviceTemplate.getTopology_template().getNode_templates()
- .get(nodeTemplateId) != null)) {
+ && (serviceTemplate.getTopology_template().getNode_templates().get(nodeTemplateId)
+ != null)) {
return Optional
.of(serviceTemplate.getTopology_template().getNode_templates().get(nodeTemplateId));
}
@@ -214,13 +157,16 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
if (substitutableNodeTemplate.getProperties() != null
&& substitutableNodeTemplate.getProperties()
- .get(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME) != null) {
+ .get(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME) != null) {
Object serviceTemplateFilter = substitutableNodeTemplate.getProperties()
.get(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME);
if (serviceTemplateFilter != null && serviceTemplateFilter instanceof Map) {
Object substituteServiceTemplate = ((Map) serviceTemplateFilter)
.get(ToscaConstants.SUBSTITUTE_SERVICE_TEMPLATE_PROPERTY_NAME);
if (substituteServiceTemplate == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_PROPERTY);
throw new CoreException(
new ToscaInvalidSubstituteNodeTemplatePropertiesErrorBuilder(substituteNodeTemplateId)
.build());
@@ -228,6 +174,9 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
return Optional.of(substituteServiceTemplate.toString());
}
}
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.INVALID_PROPERTY);
throw new CoreException(
new ToscaInvalidSubstituteNodeTemplatePropertiesErrorBuilder(substituteNodeTemplateId)
.build());
@@ -255,28 +204,6 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
return substitutableNodeTemplates;
}
- private boolean isSubstitutableNodeTemplate(NodeTemplate nodeTemplate) {
- return nodeTemplate.getDirectives() != null
- && nodeTemplate.getDirectives().contains(ToscaConstants
- .NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE);
- }
-
- private boolean isSubstitutionServiceTemplate(String substituteServiceTemplateFileName,
- ServiceTemplate substituteServiceTemplate) {
- if (substituteServiceTemplate != null
- && substituteServiceTemplate.getTopology_template() != null
- && substituteServiceTemplate.getTopology_template().getSubstitution_mappings() != null) {
- if (substituteServiceTemplate.getTopology_template().getSubstitution_mappings()
- .getNode_type() == null) {
- throw new CoreException(new ToscaInvalidSubstitutionServiceTemplateErrorBuilder(
- substituteServiceTemplateFileName).build());
- }
- return true;
- }
- return false;
-
- }
-
@Override
public Optional<Map.Entry<String, NodeTemplate>> getSubstitutionMappedNodeTemplateByExposedReq(
String substituteServiceTemplateFileName, ServiceTemplate substituteServiceTemplate,
@@ -319,7 +246,6 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
return Optional.empty();
}
-
/*
match only for the input which is not null
*/
@@ -361,62 +287,245 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
case CAPABILITY_TYPE:
returnEntity = new CapabilityType();
break;
+ case NODE_TYPE:
+ returnEntity = new NodeType();
+ break;
default:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.UNSUPPORTED_ENTITY);
throw new RuntimeException(
"Entity[" + elementType + "] id[" + typeId + "] flat not supported");
}
- scanAnFlatEntity(elementType, typeId, returnEntity, serviceTemplate, toscaModel);
+ scanAnFlatEntity(elementType, typeId, returnEntity, serviceTemplate, toscaModel,
+ new ArrayList<String>(), 0);
return returnEntity;
}
- private void scanAnFlatEntity(ToscaElementTypes elementType, String typeId, Object entity,
- ServiceTemplate serviceTemplate, ToscaServiceModel toscaModel) {
+ @Override
+ public boolean isSubstitutableNodeTemplate(NodeTemplate nodeTemplate) {
+ return nodeTemplate.getDirectives() != null
+ && nodeTemplate.getDirectives().contains(ToscaConstants
+ .NODE_TEMPLATE_DIRECTIVE_SUBSTITUTABLE);
+ }
+
+ private Optional<Boolean> isNodeTypeExistInServiceTemplateHierarchy(
+ String nodeTypeToMatch,
+ String nodeTypeToSearch,
+ ServiceTemplate serviceTemplate,
+ ToscaServiceModel toscaServiceModel,
+ Set<String> analyzedImportFiles) {
+ Map<String, NodeType> searchableNodeTypes = serviceTemplate.getNode_types();
+ if (!MapUtils.isEmpty(searchableNodeTypes)) {
+ NodeType nodeType = searchableNodeTypes.get(nodeTypeToSearch);
+ if (Objects.nonNull(nodeType)) {
+ if (Objects.equals(nodeType.getDerived_from(), nodeTypeToMatch)) {
+ return Optional.of(true);
+ } else if (isNodeTypeIsToscaRoot(nodeType)) {
+ return Optional.of(false);
+ } else {
+ return isNodeTypeExistInServiceTemplateHierarchy(nodeTypeToMatch,
+ nodeType.getDerived_from(), serviceTemplate, toscaServiceModel, null);
+ }
+ } else {
+ return isNodeTypeExistInImports(nodeTypeToMatch, nodeTypeToSearch, serviceTemplate,
+ toscaServiceModel, analyzedImportFiles);
+ }
+ }
+ return isNodeTypeExistInImports(nodeTypeToMatch, nodeTypeToSearch, serviceTemplate,
+ toscaServiceModel, analyzedImportFiles);
+
+ }
+
+ private Optional<Boolean> isNodeTypeExistInImports(String nodeTypeToMatch,
+ String nodeTypeToSearch,
+ ServiceTemplate serviceTemplate,
+ ToscaServiceModel toscaServiceModel,
+ Set<String> filesScanned) {
+ List<Map<String, Import>> imports = serviceTemplate.getImports();
+ if (CollectionUtils.isEmpty(imports)) {
+ return Optional.empty();
+ }
+
+ filesScanned = createFilesScannedSet(filesScanned);
+
+ for (Map<String, Import> map : imports) {
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ Import anImport = toscaExtensionYamlUtil
+ .yamlToObject(toscaExtensionYamlUtil.objectToYaml(map.values().iterator().next()),
+ Import.class);
+ if (Objects.isNull(anImport) || Objects.isNull(anImport.getFile())) {
+ throw new RuntimeException("import without file entry");
+ }
+ String importFile = anImport.getFile();
+ ServiceTemplate template =
+ toscaServiceModel.getServiceTemplates().get(fetchFileNameForImport(importFile,
+ serviceTemplate.getMetadata() == null ? null
+ : serviceTemplate.getMetadata().get("filename")));
+ if (filesScanned.contains(ToscaUtil.getServiceTemplateFileName(template))) {
+ continue;
+ } else {
+ filesScanned.add(ToscaUtil.getServiceTemplateFileName(template));
+ }
+ Optional<Boolean> nodeTypeExistInServiceTemplateHierarchy =
+ isNodeTypeExistInServiceTemplateHierarchy(nodeTypeToMatch, nodeTypeToSearch, template,
+ toscaServiceModel, filesScanned);
+ if (nodeTypeExistInServiceTemplateHierarchy.isPresent()) {
+ if (nodeTypeExistInServiceTemplateHierarchy.get()) {
+ filesScanned.clear();
+ return Optional.of(true);
+ }
+ }
+
+ }
+ return Optional.of(false);
+ }
+
+ private Set<String> addImportFileToAnalyzedImportFilesSet(Set<String> analyzedImportFiles,
+ String importFile) {
+ analyzedImportFiles.add(importFile);
+ return analyzedImportFiles;
+ }
+
+ private Set<String> createFilesScannedSet(Set<String> filesScanned) {
+ if (Objects.isNull(filesScanned)) {
+ filesScanned = new HashSet<>();
+ }
+ return filesScanned;
+ }
+
+ private boolean isNodeTypeIsToscaRoot(NodeType stNodeType) {
+ return Objects.equals(stNodeType.getDerived_from(), ToscaNodeType.NATIVE_ROOT);
+ }
+
+ private boolean isNodeTemplateOfTypeNodeType(NodeTemplate nodeTemplate, String nodeType) {
+ return Objects.equals(nodeTemplate.getType(), nodeType);
+ }
+
+ private boolean isSubstitutionServiceTemplate(String substituteServiceTemplateFileName,
+ ServiceTemplate substituteServiceTemplate) {
+ if (substituteServiceTemplate != null
+ && substituteServiceTemplate.getTopology_template() != null
+ && substituteServiceTemplate.getTopology_template().getSubstitution_mappings() != null) {
+ if (substituteServiceTemplate.getTopology_template().getSubstitution_mappings()
+ .getNode_type() == null) {
+ throw new CoreException(new ToscaInvalidSubstitutionServiceTemplateErrorBuilder(
+ substituteServiceTemplateFileName).build());
+ }
+ return true;
+ }
+ return false;
+
+ }
+
+ private boolean scanAnFlatEntity(ToscaElementTypes elementType, String typeId, Object entity,
+ ServiceTemplate serviceTemplate, ToscaServiceModel toscaModel,
+ List<String> filesScanned, int rootScanStartInx) {
boolean entityFound =
enrichEntityFromCurrentServiceTemplate(elementType, typeId, entity, serviceTemplate,
- toscaModel);
+ toscaModel, filesScanned, rootScanStartInx);
if (!entityFound) {
- Map<String, Import> imports = serviceTemplate.getImports();
- if (MapUtils.isEmpty(imports)) {
- return;
+ List<Map<String, Import>> imports = serviceTemplate.getImports();
+ if (CollectionUtils.isEmpty(imports)) {
+ return false;
}
- for (Import importServiceTemplate : imports.values()) {
- ServiceTemplate template =
- toscaModel.getServiceTemplates().get(importServiceTemplate.getFile());
- scanAnFlatEntity(elementType, typeId, entity, template, toscaModel);
+ ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
+ boolean found = false;
+ for (Map<String, Import> importMap : imports) {
+ if (found) {
+ return true;
+ }
+ String filename = "";
+ for (Object importObject : importMap.values()) {
+ Import importServiceTemplate = toscaExtensionYamlUtil
+ .yamlToObject(toscaExtensionYamlUtil.objectToYaml(importObject), Import.class);
+ filename = fetchFileNameForImport(importServiceTemplate.getFile(),
+ serviceTemplate.getMetadata() == null ? null : serviceTemplate.getMetadata().get
+ ("filename"));
+ if (filesScanned.contains(filename)) {
+ return false;
+ } else {
+ filesScanned.add(filename);
+ }
+ ServiceTemplate template =
+ toscaModel.getServiceTemplates()
+ .get(filename);
+ found =
+ scanAnFlatEntity(elementType, typeId, entity, template, toscaModel, filesScanned,
+ filesScanned.size());
+ }
}
+ return found;
}
+ return true;
+ }
+ private String fetchFileNameForImport(String importServiceTemplateFile,
+ String currentMetadatafileName) {
+ if (importServiceTemplateFile.contains("../")) {
+ return importServiceTemplateFile.replace("../", "");
+ } else if (importServiceTemplateFile.contains("/")) {
+ return importServiceTemplateFile;
+ } else if (currentMetadatafileName != null) {
+ return currentMetadatafileName.substring(0, currentMetadatafileName.indexOf("/")) + "/" +
+ importServiceTemplateFile;
+ } else {
+ return importServiceTemplateFile;
+ }
}
private boolean enrichEntityFromCurrentServiceTemplate(ToscaElementTypes elementType,
String typeId, Object entity,
ServiceTemplate serviceTemplate,
- ToscaServiceModel toscaModel) {
+ ToscaServiceModel toscaModel,
+ List<String> filesScanned,
+ int rootScanStartInx) {
String derivedFrom;
switch (elementType) {
case CAPABILITY_TYPE:
if (serviceTemplate.getCapability_types() != null
&& serviceTemplate.getCapability_types().containsKey(typeId)) {
+ filesScanned.clear();
CapabilityType targetCapabilityType = ((CapabilityType) entity);
CapabilityType sourceCapabilityType = serviceTemplate.getCapability_types().get(typeId);
derivedFrom = sourceCapabilityType.getDerived_from();
- if (derivedFrom != null
- && !ToscaCapabilityType.NFV_METRIC.getDisplayName().equals(derivedFrom)) {
- scanAnFlatEntity(elementType, derivedFrom, entity, serviceTemplate, toscaModel);
+ if (derivedFrom != null) {
+ scanAnFlatEntity(elementType, derivedFrom, entity, serviceTemplate, toscaModel,
+ filesScanned, rootScanStartInx);
}
combineCapabilityTypeInfo(sourceCapabilityType, targetCapabilityType);
} else {
return false;
}
break;
+ case NODE_TYPE:
+ if (serviceTemplate.getNode_types() != null
+ && serviceTemplate.getNode_types().containsKey(typeId)) {
+
+ filesScanned.clear();
+ NodeType targetNodeType = ((NodeType) entity);
+ NodeType sourceNodeType = serviceTemplate.getNode_types().get(typeId);
+ derivedFrom = sourceNodeType.getDerived_from();
+ if (derivedFrom != null) {
+ scanAnFlatEntity(elementType, derivedFrom, entity, serviceTemplate, toscaModel,
+ filesScanned, rootScanStartInx);
+ }
+ combineNodeTypeInfo(sourceNodeType, targetNodeType);
+ } else {
+ return false;
+ }
+ break;
default:
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.ADD_ENTITIES_TO_TOSCA, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.UNSUPPORTED_ENTITY);
throw new RuntimeException(
"Entity[" + elementType + "] id[" + typeId + "] flat not supported");
}
@@ -426,37 +535,44 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
}
+ private void combineNodeTypeInfo(NodeType sourceNodeType, NodeType targetNodeType) {
+ targetNodeType.setDerived_from(sourceNodeType.getDerived_from());
+ targetNodeType.setDescription(sourceNodeType.getDescription());
+ targetNodeType.setVersion(sourceNodeType.getVersion());
+ targetNodeType.setProperties(
+ CommonMethods.mergeMaps(targetNodeType.getProperties(), sourceNodeType.getProperties()));
+ targetNodeType.setInterfaces(
+ CommonMethods.mergeMaps(targetNodeType.getInterfaces(), sourceNodeType.getInterfaces()));
+ targetNodeType.setArtifacts(
+ CommonMethods.mergeMaps(targetNodeType.getArtifacts(), sourceNodeType.getArtifacts()));
+ targetNodeType.setAttributes(
+ CommonMethods.mergeMaps(targetNodeType.getAttributes(), sourceNodeType.getAttributes()));
+ targetNodeType.setCapabilities(CommonMethods
+ .mergeMaps(targetNodeType.getCapabilities(), sourceNodeType.getCapabilities()));
+ targetNodeType.setRequirements(CommonMethods
+ .mergeListsOfMap(targetNodeType.getRequirements(), sourceNodeType.getRequirements()));
+
+ }
+
+
private void combineCapabilityTypeInfo(CapabilityType sourceCapabilityType,
CapabilityType targetCapabilityType) {
- if (MapUtils.isNotEmpty(sourceCapabilityType.getAttributes())) {
- if (targetCapabilityType.getAttributes() == null) {
- targetCapabilityType.setAttributes(new HashMap<>());
- }
- targetCapabilityType.getAttributes().putAll(sourceCapabilityType.getAttributes());
- }
- if (MapUtils.isNotEmpty(sourceCapabilityType.getProperties())) {
- if (targetCapabilityType.getProperties() == null) {
- targetCapabilityType.setProperties(new HashMap<>());
- }
- targetCapabilityType.getProperties().putAll(sourceCapabilityType.getProperties());
- }
+ targetCapabilityType.setAttributes(CommonMethods
+ .mergeMaps(targetCapabilityType.getAttributes(), sourceCapabilityType.getAttributes()));
+ targetCapabilityType.setProperties(CommonMethods
+ .mergeMaps(targetCapabilityType.getProperties(), sourceCapabilityType.getProperties()));
+ targetCapabilityType.setValid_source_types(CommonMethods
+ .mergeLists(targetCapabilityType.getValid_source_types(),
+ sourceCapabilityType.getValid_source_types()));
- if (CollectionUtils.isNotEmpty(sourceCapabilityType.getValid_source_types())) {
- if (targetCapabilityType.getValid_source_types() == null) {
- targetCapabilityType.setValid_source_types(new ArrayList<>());
- }
- targetCapabilityType.getValid_source_types()
- .addAll(sourceCapabilityType.getValid_source_types());
- }
-
- if (CommonMethods.isEmpty(sourceCapabilityType.getDerived_from())) {
+ if (!CommonMethods.isEmpty(sourceCapabilityType.getDerived_from())) {
targetCapabilityType.setDerived_from(sourceCapabilityType.getDerived_from());
}
- if (CommonMethods.isEmpty(sourceCapabilityType.getDescription())) {
+ if (!CommonMethods.isEmpty(sourceCapabilityType.getDescription())) {
targetCapabilityType.setDescription(sourceCapabilityType.getDescription());
}
- if (CommonMethods.isEmpty(sourceCapabilityType.getVersion())) {
+ if (!CommonMethods.isEmpty(sourceCapabilityType.getVersion())) {
targetCapabilityType.setVersion(sourceCapabilityType.getVersion());
}
@@ -464,4 +580,121 @@ public class ToscaAnalyzerServiceImpl implements ToscaAnalyzerService {
}
+ /*
+ * Create node type according to the input substitution service template, while the substitution
+ * service template can be mappted to this node type, for substitution mapping.
+ *
+ * @param substitutionServiceTemplate substitution serivce template
+ * @param nodeTypeDerivedFromValue derived from value for the created node type
+ * @return the node type
+ */
+ @Override
+ public NodeType createInitSubstitutionNodeType(ServiceTemplate substitutionServiceTemplate,
+ String nodeTypeDerivedFromValue) {
+ NodeType substitutionNodeType = new NodeType();
+ substitutionNodeType.setDerived_from(nodeTypeDerivedFromValue);
+ substitutionNodeType.setDescription(substitutionServiceTemplate.getDescription());
+ substitutionNodeType
+ .setProperties(manageSubstitutionNodeTypeProperties(substitutionServiceTemplate));
+ substitutionNodeType
+ .setAttributes(manageSubstitutionNodeTypeAttributes(substitutionServiceTemplate));
+ return substitutionNodeType;
+ }
+
+ private Map<String, PropertyDefinition> manageSubstitutionNodeTypeProperties(
+ ServiceTemplate substitutionServiceTemplate) {
+ Map<String, PropertyDefinition> substitutionNodeTypeProperties = new HashMap<>();
+ Map<String, ParameterDefinition> properties =
+ substitutionServiceTemplate.getTopology_template().getInputs();
+ if (properties == null) {
+ return null;
+ }
+
+ PropertyDefinition propertyDefinition;
+ String toscaPropertyName;
+ for (Map.Entry<String, ParameterDefinition> entry : properties.entrySet()) {
+ toscaPropertyName = entry.getKey();
+ propertyDefinition = new PropertyDefinition();
+ ParameterDefinition parameterDefinition =
+ substitutionServiceTemplate.getTopology_template().getInputs().get(toscaPropertyName);
+ propertyDefinition.setType(parameterDefinition.getType());
+ propertyDefinition.setDescription(parameterDefinition.getDescription());
+ propertyDefinition.set_default(parameterDefinition.get_default());
+ if (parameterDefinition.getRequired() != null) {
+ propertyDefinition.setRequired(parameterDefinition.getRequired());
+ }
+ if (propertyDefinition.get_default() != null) {
+ propertyDefinition.setRequired(false);
+ }
+ if (!CollectionUtils.isEmpty(parameterDefinition.getConstraints())) {
+ propertyDefinition.setConstraints(parameterDefinition.getConstraints());
+ }
+ propertyDefinition.setEntry_schema(parameterDefinition.getEntry_schema());
+ if (parameterDefinition.getStatus() != null) {
+ propertyDefinition.setStatus(parameterDefinition.getStatus());
+ }
+ substitutionNodeTypeProperties.put(toscaPropertyName, propertyDefinition);
+ }
+ return substitutionNodeTypeProperties;
+ }
+
+ private Map<String, AttributeDefinition> manageSubstitutionNodeTypeAttributes(
+ ServiceTemplate substitutionServiceTemplate) {
+ Map<String, AttributeDefinition> substitutionNodeTypeAttributes = new HashMap<>();
+ Map<String, ParameterDefinition> attributes =
+ substitutionServiceTemplate.getTopology_template().getOutputs();
+ if (attributes == null) {
+ return null;
+ }
+ AttributeDefinition attributeDefinition;
+ String toscaAttributeName;
+
+ for (Map.Entry<String, ParameterDefinition> entry : attributes.entrySet()) {
+ attributeDefinition = new AttributeDefinition();
+ toscaAttributeName = entry.getKey();
+ ParameterDefinition parameterDefinition =
+ substitutionServiceTemplate.getTopology_template().getOutputs().get(toscaAttributeName);
+ if (parameterDefinition.getType() != null && !parameterDefinition.getType().isEmpty()) {
+ attributeDefinition.setType(parameterDefinition.getType());
+ } else {
+ attributeDefinition.setType(PropertyType.STRING.getDisplayName());
+ }
+ attributeDefinition.setDescription(parameterDefinition.getDescription());
+ attributeDefinition.set_default(parameterDefinition.get_default());
+ attributeDefinition.setEntry_schema(parameterDefinition.getEntry_schema());
+ if (Objects.nonNull(parameterDefinition.getStatus())) {
+ attributeDefinition.setStatus(parameterDefinition.getStatus());
+ }
+ substitutionNodeTypeAttributes.put(toscaAttributeName, attributeDefinition);
+ }
+ return substitutionNodeTypeAttributes;
+ }
+
+ /**
+ * Checks if the requirement exists in the node template.
+ *
+ * @param nodeTemplate the node template
+ * @param requirementId the requirement id
+ * @param requirementAssignment the requirement assignment
+ * @return true if the requirement already exists and false otherwise
+ */
+ public boolean isRequirementExistInNodeTemplate(NodeTemplate nodeTemplate,
+ String requirementId,
+ RequirementAssignment requirementAssignment) {
+ boolean result = false;
+ List<Map<String, RequirementAssignment>> nodeTemplateRequirements = nodeTemplate
+ .getRequirements();
+ if (nodeTemplateRequirements != null) {
+ for (Map<String, RequirementAssignment> requirement : nodeTemplateRequirements) {
+ if (requirement.containsKey(requirementId)) {
+ result = DataModelUtil.compareRequirementAssignment(requirementAssignment,
+ requirement.get(requirementId));
+ if (result) {
+ break;
+ }
+ }
+ }
+ }
+ return result;
+ }
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImpl.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImpl.java
index d4c22f105f..b518057e35 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImpl.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImpl.java
@@ -23,6 +23,12 @@ package org.openecomp.sdc.tosca.services.impl;
import org.openecomp.core.utilities.file.FileContentHandler;
import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.datatypes.error.ErrorLevel;
+import org.openecomp.sdc.logging.context.impl.MdcDataErrorMessage;
+import org.openecomp.sdc.logging.types.LoggerConstants;
+import org.openecomp.sdc.logging.types.LoggerErrorCode;
+import org.openecomp.sdc.logging.types.LoggerErrorDescription;
+import org.openecomp.sdc.logging.types.LoggerTragetServiceName;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.exceptions.CsarCreationErrorBuilder;
@@ -39,6 +45,7 @@ import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
+
public class ToscaFileOutputServiceCsarImpl implements ToscaFileOutputService {
static final String EXTERNAL_ARTIFACTS_FOLDER_NAME = "Artifacts";
private static final String DEFINITIONS_FOLDER_NAME = "Definitions";
@@ -57,6 +64,7 @@ public class ToscaFileOutputServiceCsarImpl implements ToscaFileOutputService {
private static final String SPACE = " ";
private static final String FILE_SEPARATOR = File.separator;
+
@Override
public byte[] createOutputFile(ToscaServiceModel toscaServiceModel,
FileContentHandler externalArtifacts) {
@@ -68,18 +76,25 @@ public class ToscaFileOutputServiceCsarImpl implements ToscaFileOutputService {
packArtifacts(zos, artifactFiles);
}
if (toscaServiceModel.getEntryDefinitionServiceTemplate() == null) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_CSAR, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.CREATE_CSAR);
throw new CoreException(new CsarMissingEntryPointErrorBuilder().build());
}
createAndPackToscaMetaFile(zos, toscaServiceModel.getEntryDefinitionServiceTemplate());
if (externalArtifacts != null) {
packExternalArtifacts(zos, externalArtifacts);
}
- } catch (IOException exc) {
- throw new CoreException(new CsarCreationErrorBuilder().build(), exc);
+ } catch (IOException ex) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.CREATE_CSAR, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.CREATE_CSAR);
+ throw new CoreException(new CsarCreationErrorBuilder().build(), ex);
}
return baos.toByteArray();
}
+
@Override
public String createMetaFile(String entryDefinitionsFileName) {
return TOSCA_META_FILE_VERSION + META_FILE_DELIMITER + SPACE + TOSCA_META_FILE_VERSION_VALUE
@@ -87,7 +102,8 @@ public class ToscaFileOutputServiceCsarImpl implements ToscaFileOutputService {
+ CSAR_VERSION + META_FILE_DELIMITER + SPACE + CSAR_VERSION_VALUE + System.lineSeparator()
+ CREATED_BY + META_FILE_DELIMITER + SPACE + CREATED_BY_VALUE + System.lineSeparator()
+ ENTRY_DEFINITIONS + META_FILE_DELIMITER + SPACE + DEFINITIONS_FOLDER_NAME
- + FILE_SEPARATOR + entryDefinitionsFileName;
+ + FILE_SEPARATOR
+ + entryDefinitionsFileName;
}
@Override
@@ -120,8 +136,11 @@ public class ToscaFileOutputServiceCsarImpl implements ToscaFileOutputService {
zos.putNextEntry(new ZipEntry(filenameIncludingPath));
writeBytesToZip(zos, externalArtifacts.getFileContent(filenameIncludingPath));
- } catch (IOException exc) {
- throw new RuntimeException(exc);
+ } catch (IOException ex) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.PACK_ARTIFACTS, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.PACK_ARTIFACTS);
+ throw new RuntimeException(ex);
} finally {
try {
zos.closeEntry();
@@ -140,8 +159,11 @@ public class ToscaFileOutputServiceCsarImpl implements ToscaFileOutputService {
zos.putNextEntry(new ZipEntry((ARTIFACTS_FOLDER_NAME + FILE_SEPARATOR + fileName)));
writeBytesToZip(zos, artifacts.getFileContent(fileName));
- } catch (IOException exc) {
- throw new RuntimeException(exc);
+ } catch (IOException ex) {
+ MdcDataErrorMessage.createErrorMessageAndUpdateMdc(LoggerConstants.TARGET_ENTITY_DB,
+ LoggerTragetServiceName.PACK_ARTIFACTS, ErrorLevel.ERROR.name(),
+ LoggerErrorCode.DATA_ERROR.getErrorCode(), LoggerErrorDescription.PACK_ARTIFACTS);
+ throw new RuntimeException(ex);
} finally {
try {
zos.closeEntry();
@@ -150,6 +172,7 @@ public class ToscaFileOutputServiceCsarImpl implements ToscaFileOutputService {
}
}
}
+
}
private void writeBytesToZip(ZipOutputStream zos, InputStream is) throws IOException {
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/yamlutil/ToscaExtensionYamlUtil.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/yamlutil/ToscaExtensionYamlUtil.java
index a1c11c2483..2b806fbea0 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/yamlutil/ToscaExtensionYamlUtil.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/yamlutil/ToscaExtensionYamlUtil.java
@@ -46,13 +46,13 @@ public class ToscaExtensionYamlUtil extends YamlUtil {
public Property getProperty(Class<? extends Object> type, String name)
throws IntrospectionException {
try {
- if (type.equals(
- Class.forName("org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition"))) {
- type = Class.forName(
- "org.openecomp.sdc.tosca.datatypes.model.heatextend.ParameterDefinitionExt");
+ if (type
+ .equals(Class.forName("org.openecomp.sdc.tosca.datatypes.model.ParameterDefinition"))) {
+ type = Class
+ .forName("org.openecomp.sdc.tosca.datatypes.model.heatextend.ParameterDefinitionExt");
}
- } catch (ClassNotFoundException exception) {
- throw new RuntimeException(exception);
+ } catch (ClassNotFoundException ex) {
+ throw new RuntimeException(ex);
}
return super.getProperty(type, name);
}
@@ -80,9 +80,8 @@ public class ToscaExtensionYamlUtil extends YamlUtil {
// create JavaBean
return super.constructJavaBean2ndStep(node, object);
}
- } catch (ClassNotFoundException | InstantiationException
- | IllegalAccessException exception) {
- throw new RuntimeException(exception);
+ } catch (ClassNotFoundException | InstantiationException | IllegalAccessException ex) {
+ throw new RuntimeException(ex);
}
}
}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/resources/config.properties b/openecomp-be/lib/openecomp-tosca-lib/src/main/resources/config.properties
new file mode 100644
index 0000000000..cf7596c176
--- /dev/null
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/resources/config.properties
@@ -0,0 +1,17 @@
+tosca.entity.namespace.prefix=org.openecomp.
+tosca.entity.namespace.prefix.capabilityType=${tosca.entity.namespace.prefix}capabilities.
+tosca.entity.namespace.prefix.dataType=${tosca.entity.namespace.prefix}datatypes.
+tosca.entity.namespace.prefix.groupType=${tosca.entity.namespace.prefix}groups.
+tosca.entity.namespace.prefix.policyType=${tosca.entity.namespace.prefix}policies.
+tosca.entity.namespace.prefix.relationshipType=${tosca.entity.namespace.prefix}relationships.
+tosca.entity.namespace.prefix.artifactType=${tosca.entity.namespace.prefix}artifacts.
+
+tosca.entity.namespace.prefix.nodeType.vfc=${tosca.entity.namespace.prefix}resource.vfc.nodes.
+tosca.entity.namespace.prefix.nodeType.network=${tosca.entity.namespace.prefix}resource.vl.nodes.
+tosca.entity.namespace.prefix.nodeType.connectionPoint=${tosca.entity.namespace.prefix}resource.cp.nodes.
+tosca.entity.namespace.prefix.nodeType.abstract=${tosca.entity.namespace.prefix}resource.abstract.nodes.
+tosca.entity.namespace.prefix.nodeType.rule=${tosca.entity.namespace.prefix}resource.vfc.rules.nodes.
+
+
+
+_config.namespace=ToscaModel \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/TestUtil.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/TestUtil.java
index da3ae76f27..773b902182 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/TestUtil.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/TestUtil.java
@@ -1,10 +1,34 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
-import java.io.*;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
import java.net.URL;
import java.nio.file.NotDirectoryException;
import java.util.HashMap;
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/PropertyTypeTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/PropertyTypeTest.java
index 470dd9784a..820d79184e 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/PropertyTypeTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/PropertyTypeTest.java
@@ -1,8 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca.datatypes;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
import org.junit.Assert;
import org.junit.Test;
+import org.openecomp.sdc.tosca.datatypes.model.PropertyType;
public class PropertyTypeTest {
@Test
@@ -17,4 +37,4 @@ public class PropertyTypeTest {
Assert
.assertEquals(PropertyType.getPropertyTypeByDisplayName(s), PropertyType.SCALAR_UNIT_SIZE);
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java
index 13b05543fb..c7b0659c21 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/ToscaModelTest.java
@@ -1,5 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca.datatypes;
+import org.junit.Assert;
+import org.junit.Test;
+import org.openecomp.core.utilities.yaml.YamlUtil;
import org.openecomp.sdc.tosca.datatypes.model.ArtifactType;
import org.openecomp.sdc.tosca.datatypes.model.AttributeDefinition;
import org.openecomp.sdc.tosca.datatypes.model.CapabilityAssignment;
@@ -7,7 +30,6 @@ import org.openecomp.sdc.tosca.datatypes.model.CapabilityDefinition;
import org.openecomp.sdc.tosca.datatypes.model.Constraint;
import org.openecomp.sdc.tosca.datatypes.model.Directive;
import org.openecomp.sdc.tosca.datatypes.model.Import;
-import org.openecomp.sdc.tosca.datatypes.model.Metadata;
import org.openecomp.sdc.tosca.datatypes.model.NodeFilter;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
@@ -23,10 +45,6 @@ import org.openecomp.sdc.tosca.datatypes.model.heatextend.ParameterDefinitionExt
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
-import org.openecomp.core.utilities.yaml.YamlUtil;
-import org.junit.Assert;
-import org.junit.Test;
-
import java.io.InputStream;
import java.util.ArrayList;
@@ -41,21 +59,24 @@ public class ToscaModelTest {
public void testServiceTemplateJavaToYaml() {
ServiceTemplate serviceTemplate = new ServiceTemplate();
- Metadata metadata = new Metadata();
- metadata.setTemplate_author("OPENECOMP");
- metadata.setTemplate_name("Test");
- metadata.setTemplate_version("1.0.0");
+ Map<String, String> metadata = new HashMap<>();
+ metadata.put("Template_author", "OPENECOMP");
+ metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, "Test");
+ metadata.put("Template_version", "1.0.0");
serviceTemplate.setTosca_definitions_version("tosca_simple_yaml_1_0_0");
serviceTemplate.setDescription("testing desc tosca service template");
- serviceTemplate.setMetadata(metadata);
Import fileImport1 = new Import();
fileImport1.setFile("path1/path2/file1.yaml");
Import fileImport2 = new Import();
fileImport2.setFile("path1/path2/file2.yaml");
- Map<String, Import> imports = new HashMap<>();
- imports.put("myfile1", fileImport1);
- imports.put("myfile2", fileImport2);
+ List<Map<String, Import>> imports = new ArrayList<>();
+ Map<String, Import> importsMap = new HashMap<>();
+ importsMap.put("myfile1", fileImport1);
+ imports.add(importsMap);
+ importsMap = new HashMap<>();
+ importsMap.put("myfile2", fileImport2);
+ imports.add(importsMap);
serviceTemplate.setImports(imports);
ArtifactType artifact = new ArtifactType();
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinitionTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinitionTest.java
index 2b0f88fdea..4cd76ce6ec 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinitionTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/CapabilityDefinitionTest.java
@@ -1,15 +1,39 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca.datatypes.model;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.core.utilities.yaml.YamlUtil;
import org.junit.Assert;
import org.junit.Test;
+import org.openecomp.core.utilities.yaml.YamlUtil;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+/**
+ * @author shiria
+ * @since September 06, 2016.
+ */
public class CapabilityDefinitionTest {
@Test
@@ -64,7 +88,7 @@ public class CapabilityDefinitionTest {
private ArtifactDefinition getMockArtifactDefinition() {
ArtifactDefinition artifactDefinition = new ArtifactDefinition();
artifactDefinition.setType("type1");
- artifactDefinition.setDescription("description of OPENECOMP def");
+ artifactDefinition.setDescription("description of openecomp def");
artifactDefinition.setDeploy_path("my deployment path");
artifactDefinition.setFile("my file");
artifactDefinition.setRepository("my repository");
@@ -98,4 +122,4 @@ public class CapabilityDefinitionTest {
return constraints;
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinitionTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinitionTest.java
index 3109a8abff..38d8aba3ec 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinitionTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/datatypes/model/RequirementDefinitionTest.java
@@ -1,14 +1,38 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca.datatypes.model;
-import org.openecomp.core.utilities.yaml.YamlUtil;
import org.junit.Assert;
import org.junit.Test;
+import org.openecomp.core.utilities.yaml.YamlUtil;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+/**
+ * @author shiria
+ * @since September 07, 2016.
+ */
public class RequirementDefinitionTest {
@Test
@@ -37,4 +61,4 @@ public class RequirementDefinitionTest {
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/DataModelUtilTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/DataModelUtilTest.java
index 893f7a1a5e..e15f59dac4 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/DataModelUtilTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/DataModelUtilTest.java
@@ -1,11 +1,31 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca.services;
-import org.openecomp.sdc.common.errors.CoreException;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.junit.runner.RunWith;
import org.mockito.runners.MockitoJUnitRunner;
+import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.tosca.datatypes.model.GroupDefinition;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
@@ -16,6 +36,10 @@ import org.openecomp.sdc.tosca.datatypes.model.SubstitutionMapping;
import java.util.ArrayList;
+/**
+ * @author shiria
+ * @since September 15, 2016.
+ */
@RunWith(MockitoJUnitRunner.class)
public class DataModelUtilTest {
@@ -101,4 +125,4 @@ public class DataModelUtilTest {
"Invalid action, can't add 'Group Definition' to 'Service Template', 'Service Template' entity is NULL.");
DataModelUtil.addGroupDefinitionToTopologyTemplate(null, "123", new GroupDefinition());
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java
index 47f0bd9aef..2afe6033b5 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaAnalyzerServiceImplTest.java
@@ -1,12 +1,31 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca.services.impl;
-import org.openecomp.sdc.common.errors.CoreException;
-import org.openecomp.sdc.tosca.TestUtil;
-import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
-import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
-import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
-import org.openecomp.sdc.tosca.services.ToscaConstants;
-import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.when;
+
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Rule;
@@ -16,6 +35,10 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.mockito.runners.MockitoJUnitRunner;
+import org.openecomp.sdc.common.errors.CoreException;
+import org.openecomp.sdc.tosca.TestUtil;
+import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
+import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
import org.openecomp.sdc.tosca.datatypes.model.Import;
import org.openecomp.sdc.tosca.datatypes.model.NodeTemplate;
import org.openecomp.sdc.tosca.datatypes.model.NodeType;
@@ -23,17 +46,23 @@ import org.openecomp.sdc.tosca.datatypes.model.RequirementAssignment;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.datatypes.model.SubstitutionMapping;
import org.openecomp.sdc.tosca.datatypes.model.TopologyTemplate;
+import org.openecomp.sdc.tosca.services.ToscaAnalyzerService;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
+import org.openecomp.sdc.tosca.services.yamlutil.ToscaExtensionYamlUtil;
import java.io.IOException;
import java.io.InputStream;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
-import static org.junit.Assert.*;
-import static org.mockito.Mockito.when;
+/**
+ * @author Avrahamg
+ * @since July 14, 2016
+ */
@RunWith(MockitoJUnitRunner.class)
public class ToscaAnalyzerServiceImplTest {
/*
@@ -70,7 +99,8 @@ public class ToscaAnalyzerServiceImplTest {
ToscaExtensionYamlUtil toscaExtensionYamlUtil = new ToscaExtensionYamlUtil();
InputStream yamlFile = toscaExtensionYamlUtil
.loadYamlFileIs("/mock/analyzerService/NestedServiceTemplateReqTest.yaml");
- ServiceTemplate serviceTemplateFromYaml =
+ ServiceTemplate
+ serviceTemplateFromYaml =
toscaExtensionYamlUtil.yamlToObject(yamlFile, ServiceTemplate.class);
NodeTemplate port_0 =
@@ -112,35 +142,44 @@ public class ToscaAnalyzerServiceImplTest {
thrown.expectMessage(
"Invalid Substitute Node Template invalid2, mandatory map property service_template_filter with mandatory key substitute_service_template must be defined.");
+ Optional<String> substituteServiceTemplateName;
+
ServiceTemplate mainServiceTemplate = toscaServiceModel.getServiceTemplates()
.get(toscaServiceModel.getEntryDefinitionServiceTemplate());
Optional<NodeTemplate> notSubstitutableNodeTemplate =
toscaAnalyzerService.getNodeTemplateById(mainServiceTemplate, "test_net");
- Optional<String> substituteServiceTemplateName = toscaAnalyzerService
- .getSubstituteServiceTemplateName("test_net", notSubstitutableNodeTemplate.get());
- assertEquals(false, substituteServiceTemplateName.isPresent());
+ assertEquals(true, notSubstitutableNodeTemplate.isPresent());
+
+ if (notSubstitutableNodeTemplate.isPresent()) {
+ substituteServiceTemplateName = toscaAnalyzerService
+ .getSubstituteServiceTemplateName("test_net", notSubstitutableNodeTemplate.get());
+ assertEquals(false, substituteServiceTemplateName.isPresent());
+ }
Optional<NodeTemplate> substitutableNodeTemplate =
toscaAnalyzerService.getNodeTemplateById(mainServiceTemplate, "test_nested");
- substituteServiceTemplateName = toscaAnalyzerService
- .getSubstituteServiceTemplateName("test_nested", substitutableNodeTemplate.get());
- assertEquals(true, substituteServiceTemplateName.isPresent());
- assertEquals("nestedServiceTemplate.yaml", substituteServiceTemplateName.get());
+ assertEquals(true, substitutableNodeTemplate.isPresent());
+ if (substitutableNodeTemplate.isPresent()) {
+ substituteServiceTemplateName = toscaAnalyzerService
+ .getSubstituteServiceTemplateName("test_nested", substitutableNodeTemplate.get());
+ assertEquals(true, substituteServiceTemplateName.isPresent());
+ assertEquals("nestedServiceTemplate.yaml", substituteServiceTemplateName.get());
+ }
NodeTemplate invalidSubstitutableNodeTemplate1 = new NodeTemplate();
substituteServiceTemplateName = toscaAnalyzerService
.getSubstituteServiceTemplateName("invalid1", invalidSubstitutableNodeTemplate1);
assertEquals(false, substituteServiceTemplateName.isPresent());
+ if (substitutableNodeTemplate.isPresent()) {
+ NodeTemplate invalidSubstitutableNodeTemplate2 = substitutableNodeTemplate.get();
+ Object serviceTemplateFilter = invalidSubstitutableNodeTemplate2.getProperties()
+ .get(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME);
+ ((Map) serviceTemplateFilter).clear();
+ toscaAnalyzerService
+ .getSubstituteServiceTemplateName("invalid2", invalidSubstitutableNodeTemplate2);
- NodeTemplate invalidSubstitutableNodeTemplate2 = substitutableNodeTemplate.get();
- Object serviceTemplateFilter = invalidSubstitutableNodeTemplate2.getProperties()
- .get(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME);
- ((Map) serviceTemplateFilter).clear();
- toscaAnalyzerService
- .getSubstituteServiceTemplateName("invalid2", invalidSubstitutableNodeTemplate2);
-
-
+ }
}
@@ -186,14 +225,20 @@ public class ToscaAnalyzerServiceImplTest {
Optional<Map.Entry<String, NodeTemplate>> mappedNodeTemplate = toscaAnalyzerService
.getSubstitutionMappedNodeTemplateByExposedReq("NestedServiceTemplateSubstituteTest.yaml",
nestedServiceTemplateFromYaml, "local_storage_server_cmaui");
- assertEquals("server_cmaui", mappedNodeTemplate.get().getKey());
- assertNotNull(mappedNodeTemplate.get().getValue());
+ assertEquals(true, mappedNodeTemplate.isPresent());
+ if (mappedNodeTemplate.isPresent()) {
+ assertEquals("server_cmaui", mappedNodeTemplate.get().getKey());
+ assertNotNull(mappedNodeTemplate.get().getValue());
+ }
mappedNodeTemplate = toscaAnalyzerService
.getSubstitutionMappedNodeTemplateByExposedReq("NestedServiceTemplateSubstituteTest.yaml",
nestedServiceTemplateFromYaml, "link_cmaui_port_invalid");
- assertEquals("server_cmaui", mappedNodeTemplate.get().getKey());
- assertNotNull(mappedNodeTemplate.get().getValue());
+ assertEquals(true, mappedNodeTemplate.isPresent());
+ if (mappedNodeTemplate.isPresent()) {
+ assertEquals("server_cmaui", mappedNodeTemplate.get().getKey());
+ assertNotNull(mappedNodeTemplate.get().getValue());
+ }
ServiceTemplate mainServiceTemplate = toscaServiceModel.getServiceTemplates()
.get(toscaServiceModel.getEntryDefinitionServiceTemplate());
@@ -310,33 +355,33 @@ public class ToscaAnalyzerServiceImplTest {
@Test
public void shouldReturnFalseIfNdTmpIsNull() {
assertFalse(toscaAnalyzerService
- .isTypeOf(null, ToscaNodeType.NETWORK.getDisplayName(), new ServiceTemplate(),
+ .isTypeOf(null, ToscaNodeType.NATIVE_NETWORK, new ServiceTemplate(),
toscaServiceModelMock));
}
@Test
public void shouldReturnTrueIfNdTmpTypeIsOfRequestedType() {
NodeTemplate nodeTemplate = new NodeTemplate();
- ToscaNodeType nodeTypeToSearch = ToscaNodeType.BLOCK_STORAGE;
- nodeTemplate.setType(nodeTypeToSearch.getDisplayName());
+ String nodeTypeToSearch = ToscaNodeType.NATIVE_BLOCK_STORAGE;
+ nodeTemplate.setType(nodeTypeToSearch);
assertTrue(toscaAnalyzerService
- .isTypeOf(nodeTemplate, nodeTypeToSearch.getDisplayName(), new ServiceTemplate(),
+ .isTypeOf(nodeTemplate, nodeTypeToSearch, new ServiceTemplate(),
toscaServiceModelMock));
}
@Test
public void shouldReturnTrueIfNdTmpTypeIsFoundInSrvTmpNdTyAndNdTyDerivedFromRequestedType() {
- String typeToMatch = ToscaNodeType.CINDER_VOLUME.getDisplayName();
+ String typeToMatch = ToscaNodeType.CINDER_VOLUME;
when(nodeTemplateMock.getType()).thenReturn(typeToMatch);
Map<String, NodeType> stNodeTypes = new HashMap<>();
- addNodeType(stNodeTypes, ToscaNodeType.COMPUTE.getDisplayName(), new NodeType());
- NodeType nodeType = createNodeType(ToscaNodeType.BLOCK_STORAGE.getDisplayName());
+ addNodeType(stNodeTypes, ToscaNodeType.NATIVE_COMPUTE, new NodeType());
+ NodeType nodeType = createNodeType(ToscaNodeType.NATIVE_BLOCK_STORAGE);
addNodeType(stNodeTypes, typeToMatch, nodeType);
ServiceTemplate serviceTemplate = new ServiceTemplate();
serviceTemplate.setNode_types(stNodeTypes);
assertTrue(toscaAnalyzerService
- .isTypeOf(nodeTemplateMock, ToscaNodeType.BLOCK_STORAGE.getDisplayName(), serviceTemplate,
- toscaServiceModelMock));
+ .isTypeOf(nodeTemplateMock, ToscaNodeType.NATIVE_BLOCK_STORAGE,
+ serviceTemplate, toscaServiceModelMock));
}
@@ -351,7 +396,7 @@ public class ToscaAnalyzerServiceImplTest {
ServiceTemplate serviceTemplate = new ServiceTemplate();
serviceTemplate.setNode_types(stNodeTypes);
toscaAnalyzerService
- .isTypeOf(nodeTemplateMock, ToscaNodeType.COMPUTE.getDisplayName(), serviceTemplate,
+ .isTypeOf(nodeTemplateMock, ToscaNodeType.NATIVE_COMPUTE, serviceTemplate,
toscaServiceModelMock);
}
@@ -398,19 +443,21 @@ public class ToscaAnalyzerServiceImplTest {
@Test
public void shouldReturnTrueIfNdTmpTypeIsFoundInSrvTmpNdTyButRequestedTypeNotMatchButFoundIn1stLevelImports() {
- String typeToMatch = ToscaNodeType.CINDER_VOLUME.getDisplayName();
+ String typeToMatch = ToscaNodeType.CINDER_VOLUME;
when(nodeTemplateMock.getType()).thenReturn(typeToMatch);
ServiceTemplate mainST = new ServiceTemplate();
- Map<String, Import> imports = new HashMap<>();
+ List<Map<String, Import>> imports = new ArrayList<>();
+ Map<String, Import> importMap = new HashMap<>();
Import anImport = new Import();
anImport.setFile("mainImport");
- imports.put("bla bla", anImport);
+ importMap.put("bla bla", anImport);
+ imports.add(importMap);
mainST.setImports(imports);
//create searchable service template
Map<String, NodeType> stNodeTypes = new HashMap<>();
- addNodeType(stNodeTypes, ToscaNodeType.COMPUTE.getDisplayName(), new NodeType());
- NodeType nodeType = createNodeType(ToscaNodeType.BLOCK_STORAGE.getDisplayName());
+ addNodeType(stNodeTypes, ToscaNodeType.NATIVE_COMPUTE, new NodeType());
+ NodeType nodeType = createNodeType(ToscaNodeType.NATIVE_BLOCK_STORAGE);
addNodeType(stNodeTypes, typeToMatch, nodeType);
ServiceTemplate serviceTemplate = new ServiceTemplate();
serviceTemplate.setNode_types(stNodeTypes);
@@ -422,36 +469,39 @@ public class ToscaAnalyzerServiceImplTest {
when(toscaServiceModelMock.getServiceTemplates()).thenReturn(serviceTemplates);
assertTrue(toscaAnalyzerService
- .isTypeOf(nodeTemplateMock, ToscaNodeType.BLOCK_STORAGE.getDisplayName(), mainST,
+ .isTypeOf(nodeTemplateMock, ToscaNodeType.NATIVE_BLOCK_STORAGE, mainST,
toscaServiceModelMock));
}
@Test
public void shouldReturnTrueIfNdTmpTypeIsFoundInSrvTmpNdTyButRequestedTypeNotMatchButFoundIn2ndLevelImports() {
- String typeToMatch = ToscaNodeType.CINDER_VOLUME.getDisplayName();
+ String typeToMatch = ToscaNodeType.CINDER_VOLUME;
when(nodeTemplateMock.getType()).thenReturn(typeToMatch);
ServiceTemplate mainST = new ServiceTemplate();
- Map<String, Import> imports = new HashMap<>();
+ List<Map<String, Import>> imports = new ArrayList<>();
+ Map<String, Import> importMap = new HashMap<>();
Import anImport = new Import();
anImport.setFile("refToMainImport");
- imports.put("bla bla", anImport);
+ importMap.put("bla bla", anImport);
+ imports.add(importMap);
mainST.setImports(imports);
//create searchable service template
Map<String, NodeType> stNodeTypes = new HashMap<>();
- addNodeType(stNodeTypes, ToscaNodeType.COMPUTE.getDisplayName(), new NodeType());
- NodeType nodeType = createNodeType(ToscaNodeType.BLOCK_STORAGE.getDisplayName());
+ addNodeType(stNodeTypes, ToscaNodeType.NATIVE_COMPUTE, new NodeType());
+ NodeType nodeType = createNodeType(ToscaNodeType.NATIVE_BLOCK_STORAGE);
addNodeType(stNodeTypes, typeToMatch, nodeType);
ServiceTemplate serviceTemplate = new ServiceTemplate();
serviceTemplate.setNode_types(stNodeTypes);
// create 1st level service template with import only
ServiceTemplate firstLevelST = new ServiceTemplate();
- Map<String, Import> firstLevelImports = new HashMap<>();
+ List<Map<String, Import>> firstLevelImports = new ArrayList<>();
+ Map<String, Import> firstLevelImportsMap = new HashMap<>();
Import firstLevelImport = new Import();
firstLevelImport.setFile("mainImport");
- firstLevelImports.put("bla bla 2", firstLevelImport);
-
+ firstLevelImportsMap.put("bla bla 2", firstLevelImport);
+ firstLevelImports.add(firstLevelImportsMap);
firstLevelST.setImports(firstLevelImports);
// add service templates to tosca service model
@@ -462,11 +512,11 @@ public class ToscaAnalyzerServiceImplTest {
when(toscaServiceModelMock.getServiceTemplates()).thenReturn(serviceTemplates);
assertTrue(toscaAnalyzerService
- .isTypeOf(nodeTemplateMock, ToscaNodeType.BLOCK_STORAGE.getDisplayName(), mainST,
+ .isTypeOf(nodeTemplateMock, ToscaNodeType.NATIVE_BLOCK_STORAGE, mainST,
toscaServiceModelMock));
}
// not found at all should throw core exception
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImplTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImplTest.java
index 963b8a6f57..4d025e1540 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImplTest.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/services/impl/ToscaFileOutputServiceCsarImplTest.java
@@ -1,12 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
package org.openecomp.sdc.tosca.services.impl;
+import org.junit.Assert;
+import org.junit.Test;
+import org.openecomp.core.utilities.file.FileContentHandler;
import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
-import org.openecomp.sdc.tosca.datatypes.model.Metadata;
import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
+import org.openecomp.sdc.tosca.services.ToscaConstants;
import org.openecomp.sdc.tosca.services.ToscaUtil;
-import org.openecomp.core.utilities.file.FileContentHandler;
-import org.junit.Assert;
-import org.junit.Test;
import java.io.File;
import java.io.FileOutputStream;
@@ -21,12 +41,12 @@ import java.util.zip.ZipFile;
public class ToscaFileOutputServiceCsarImplTest {
- private ToscaFileOutputServiceCsarImpl toscaFileOutputServiceCsarImpl =
+ private ToscaFileOutputServiceCsarImpl toscaFileOutputServiceCSARImpl =
new ToscaFileOutputServiceCsarImpl();
@Test
public void testCreationMetaFile() {
- String createdMeta = toscaFileOutputServiceCsarImpl.createMetaFile("entryFile.yaml");
+ String createdMeta = toscaFileOutputServiceCSARImpl.createMetaFile("entryFile.yaml");
String expectedMeta =
"TOSCA-Meta-File-Version: 1.0\n" +
"CSAR-Version: 1.1\n" +
@@ -38,19 +58,19 @@ public class ToscaFileOutputServiceCsarImplTest {
@Test
public void testCSARFileCreationWithExternalArtifacts() throws IOException {
ServiceTemplate mainServiceTemplate = new ServiceTemplate();
- Metadata metadata1 = new Metadata();
- metadata1.setTemplate_author("OPENECOMP");
- metadata1.setTemplate_name("ST1");
- metadata1.setTemplate_version("1.0.0");
+ Map<String, String> metadata1 = new HashMap<>();
+ metadata1.put("Template_author", "OPENECOMP");
+ metadata1.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME,"ST1");
+ metadata1.put("Template_version", "1.0.0");
+ mainServiceTemplate.setMetadata(metadata1);
mainServiceTemplate.setTosca_definitions_version("tosca_simple_yaml_1_0_0");
mainServiceTemplate.setDescription("testing desc tosca service template");
- mainServiceTemplate.setMetadata(metadata1);
ServiceTemplate additionalServiceTemplate = new ServiceTemplate();
- Metadata metadata2 = new Metadata();
- metadata2.setTemplate_author("OPENECOMP");
- metadata2.setTemplate_name("ST2");
- metadata2.setTemplate_version("1.0.0");
+ Map<String, String> metadata2 = new HashMap<>();
+ metadata2.put("Template_author", "OPENECOMP");
+ metadata2.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, "ST2");
+ metadata2.put("Template_version", "1.0.0");
additionalServiceTemplate.setTosca_definitions_version("tosca_simple_yaml_1_0_0");
additionalServiceTemplate.setDescription("testing desc tosca service template");
additionalServiceTemplate.setMetadata(metadata2);
@@ -86,7 +106,7 @@ public class ToscaFileOutputServiceCsarImplTest {
licenseArtifactsFiles.putAll(licenseArtifacts);
- byte[] csarFile = toscaFileOutputServiceCsarImpl.createOutputFile(
+ byte[] csarFile = toscaFileOutputServiceCSARImpl.createOutputFile(
new ToscaServiceModel(heatFiles, definitionsInput,
ToscaUtil.getServiceTemplateFileName(mainServiceTemplate)), licenseArtifactsFiles);
@@ -113,17 +133,17 @@ public class ToscaFileOutputServiceCsarImplTest {
@Test
public void testCSARFileCreation_noArtifacts() throws IOException {
ServiceTemplate serviceTemplate = new ServiceTemplate();
- Metadata metadata = new Metadata();
- metadata.setTemplate_author("OPENECOMP");
- metadata.setTemplate_name("Test");
- metadata.setTemplate_version("1.0.0");
+ Map<String, String> metadata = new HashMap<>();
+ metadata.put("Template_author", "OPENECOMP");
+ metadata.put(ToscaConstants.ST_METADATA_TEMPLATE_NAME, "Test");
+ metadata.put("Template_version", "1.0.0");
serviceTemplate.setTosca_definitions_version("tosca_simple_yaml_1_0_0");
serviceTemplate.setDescription("testing desc tosca service template");
serviceTemplate.setMetadata(metadata);
Map<String, ServiceTemplate> definitionsInput = new HashMap<>();
String serviceTemplateFileName = ToscaUtil.getServiceTemplateFileName(serviceTemplate);
definitionsInput.put(serviceTemplateFileName, serviceTemplate);
- byte[] csarFile = toscaFileOutputServiceCsarImpl
+ byte[] csarFile = toscaFileOutputServiceCSARImpl
.createOutputFile(new ToscaServiceModel(null, definitionsInput, serviceTemplateFileName),
null);
@@ -147,4 +167,4 @@ public class ToscaFileOutputServiceCsarImplTest {
zipFile.close();
Files.delete(Paths.get(file.getPath()));
}
-} \ No newline at end of file
+}
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/NestedServiceTemplateReqTest.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/NestedServiceTemplateReqTest.yaml
index f64cb709f0..ce02d0c034 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/NestedServiceTemplateReqTest.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/NestedServiceTemplateReqTest.yaml
@@ -2,25 +2,25 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- nested:
+- nested:
file: GlobalSubstitutionTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui_image:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/ServiceTemplateSubstituteTest.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/ServiceTemplateSubstituteTest.yaml
index c4df76a1aa..8d63ac21ae 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/ServiceTemplateSubstituteTest.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/ServiceTemplateSubstituteTest.yaml
@@ -2,23 +2,23 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
topology_template:
inputs:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/MainServiceTemplate.yaml
index 65b90ef5b1..c9affb7442 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/MainServiceTemplate.yaml
@@ -2,23 +2,23 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: Main
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
topology_template:
inputs:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/nestedServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/nestedServiceTemplate.yaml
index cd27e7ba1a..9c6c7311d0 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/nestedServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/analyzerService/toscasubstitution/nestedServiceTemplate.yaml
@@ -2,25 +2,25 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: nested
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
- nested:
+- nested:
file: GlobalSubstitutionTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vfc.nodes.heat.cmaui_image:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml
index 8813b0abf6..449f0939ee 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/AbstractSubstituteGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Abstract Substitute Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.substitution.SubstitutionFilter:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml
index 3ef94f22e7..9b0655bf36 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/CinderVolumeGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Cinder Volume TOSCA Global Types
relationship_types:
- org.openecomp.relationships.heat.cinder.VolumeAttachesTo:
+ org.openecomp.relationships.VolumeAttachesTo:
derived_from: tosca.relationships.AttachesTo
description: This type represents an attachment relationship for associating volume
properties:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
index 98317310fa..044d759bc0 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Contrail Network Rule Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
index 0927e3dd0e..cbbb979029 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Contrail Virtual Network Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
index 08c47bc646..1ce3fc54ff 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -2,23 +2,23 @@ tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
template_name: GlobalSubstitutionTypes
imports:
- NeutronPortGlobalTypes:
+- NeutronPortGlobalTypes:
file: NeutronPortGlobalTypesServiceTemplate.yaml
- NeutronNetGlobalTypes:
+- NeutronNetGlobalTypes:
file: NeutronNetGlobalTypesServiceTemplate.yaml
- CommonGlobalTypes:
+- CommonGlobalTypes:
file: CommonGlobalTypesServiceTemplate.yaml
- CinderVolumeGlobalTypes:
+- CinderVolumeGlobalTypes:
file: CinderVolumeGlobalTypesServiceTemplate.yaml
- ContrailNetworkRuleGlobalType:
+- ContrailNetworkRuleGlobalType:
file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
- NeutronSecurityRulesGlobalTypes:
+- NeutronSecurityRulesGlobalTypes:
file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
- NovaServerGlobalTypes:
+- NovaServerGlobalTypes:
file: NovaServerGlobalTypesServiceTemplate.yaml
- ContrailVirtualNetworkGlobalType:
+- ContrailVirtualNetworkGlobalType:
file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
- AbstractSubstituteGlobalTypes:
+- AbstractSubstituteGlobalTypes:
file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.abstract.nodes.heat.nested:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml
index e80e2727c7..494b44c126 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronNetGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Neutron Network TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
node_types:
org.openecomp.resource.vl.nodes.heat.network.neutron.Net:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml
index a337d6ed18..a561d79b8f 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronPortGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Neutron Port TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.neutron.port.FixedIps:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
index 49c9a102c8..83fc31520a 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Neutron Security Rules TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml
index 2253a1e4af..d77e378a79 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/globalServiceTemplates/NovaServerGlobalTypesServiceTemplate.yaml
@@ -4,7 +4,7 @@ metadata:
template_version: 1.0.0
description: Nova Server TOSCA Global Types
imports:
- common_definitions:
+- common_definitions:
file: CommonGlobalTypesServiceTemplate.yaml
data_types:
org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplate.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplate.yaml
index 612bc2d2fa..2fb8042e00 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplate.yaml
@@ -5,9 +5,9 @@ metadata:
template_version: 1.0.0
description: testing desc tosca service template
imports:
- myfile1:
+- myfile1:
file: path1/path2/file1.yaml
- myfile2:
+- myfile2:
file: path1/path2/file2.yaml
artifact_types:
one_artifact:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplateHeatExtend.yaml b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplateHeatExtend.yaml
index 4515e3dee3..6f34a76ab4 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplateHeatExtend.yaml
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/resources/mock/model/serviceTemplateHeatExtend.yaml
@@ -5,9 +5,9 @@ metadata:
template_version: 1.0.0
description: testing desc tosca service template
imports:
- myfile1:
+- myfile1:
file: path1/path2/file1.yaml
- myfile2:
+- myfile2:
file: path1/path2/file2.yaml
artifact_types:
one_artifact:
@@ -57,6 +57,10 @@ node_types:
topology_template:
description: topologi template descroption
inputs:
+ OS::stack_name:
+ type: string
+ description: desc
+ required: false
inParam1:
type: string
description: desc
diff --git a/openecomp-be/lib/pom.xml b/openecomp-be/lib/pom.xml
index d992a82ec6..183f4187c1 100644
--- a/openecomp-be/lib/pom.xml
+++ b/openecomp-be/lib/pom.xml
@@ -2,16 +2,17 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
+ <name>openecomp-sdc-lib</name>
+ <artifactId>openecomp-sdc-lib</artifactId>
+ <packaging>pom</packaging>
+
<parent>
<artifactId>openecomp-sdc</artifactId>
<groupId>org.openecomp.sdc</groupId>
<version>1.1.0-SNAPSHOT</version>
+ <relativePath>..</relativePath>
</parent>
- <name>openecomp-sdc-lib</name>
- <artifactId>openecomp-sdc-lib</artifactId>
- <packaging>pom</packaging>
-
<modules>
<module>openecomp-core-lib</module>
<module>openecomp-common-lib</module>
@@ -26,5 +27,9 @@
<module>openecomp-tosca-lib</module>
<module>openecomp-sdc-action-lib</module>
<module>openecomp-sdc-enrichment-lib</module>
+ <module>openecomp-logging-lib</module>
+ <module>openecomp-healing-lib</module>
+ <module>openecomp-migration-lib</module>
+ <module>openecomp-sdc-activity-log-lib</module>
</modules>
-</project> \ No newline at end of file
+</project>
diff --git a/openecomp-be/lib/pom.xml.versionsBackup b/openecomp-be/lib/pom.xml.versionsBackup
new file mode 100644
index 0000000000..18594461f4
--- /dev/null
+++ b/openecomp-be/lib/pom.xml.versionsBackup
@@ -0,0 +1,33 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <name>openecomp-sdc-lib</name>
+ <artifactId>openecomp-sdc-lib</artifactId>
+
+ <packaging>pom</packaging>
+ <parent>
+ <artifactId>openecomp-sdc</artifactId>
+ <groupId>org.openecomp.sdc</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <modules>
+ <module>openecomp-core-lib</module>
+ <module>openecomp-common-lib</module>
+ <module>openecomp-sdc-versioning-lib</module>
+ <module>openecomp-sdc-vendor-license-lib</module>
+ <module>openecomp-sdc-vendor-software-product-lib</module>
+ <module>openecomp-sdc-translator-lib</module>
+ <module>openecomp-sdc-model-lib</module>
+ <module>openecomp-sdc-validation-lib</module>
+ <module>openecomp-sdc-datatypes-lib</module>
+ <module>openecomp-heat-lib</module>
+ <module>openecomp-tosca-lib</module>
+ <module>openecomp-sdc-action-lib</module>
+ <module>openecomp-sdc-enrichment-lib</module>
+ <module>openecomp-logging-lib</module>
+ <module>openecomp-healing-lib</module>
+ <module>openecomp-migration-lib</module>
+ </modules>
+</project> \ No newline at end of file